原文链接:http://blog.sciencenet.cn/blog-1583812-844177.html
Caffe作为DL的一个学习框架,Caffe is a deep learning framework made with expression, speed, and modularity in mind.It is developed by the Berkeley Vision and Learning Center (BVLC) and by community contributors.Yangqing Jia created the project during his PhD at UC Berkeley.Caffe is released under theBSD 2-Clause license.
为什么是深度学习?............
现有的DL框架:
Caffe的不同之处:使用纯C++作为底层库,开放Python、Matlab接口,基于CUDA
Caffe的网络结构:一个块作为数据结构
Caffe单层网络定义(数据结构):
Caffe的基本Blob结构:
如何训练Caffe网络:参数配置在solver.prototxt中
生成Caffe的数据结构:
参数调整 : --将一个训练好的模型 参数调整 到一个新任务中......
方法:使用ImageNet训练的模型到任务,只需在定义里有一小点改变......
#设定好模型路径和想要分类的图片
方法一:直接初始化....
Model_File = caffe_root + "examples/baby/deploy.prototxt" PreTrained = caffe_root + "examples/baby/caffenet_train_iter_6001.caffemodel" net = caffe.Classifier(Model_File,PreTrained);
方法二:New一下就可以了....
Net = new Caffe::Net( "style_solver.prototxt" ) Net.CopyTrainedNetFrom( pretrained_model ); solver.Solve(net);
SoftMax 函数损失层:
SigMoid 交叉熵 损失函数:
欧式损失:
多重 损失:
参考:DIY Deep Learning for Vision with Caffe slides
https://docs.google.com/presentation/d/1UeKXVgRvvxg9OUdh_UiC5G71UMscNPlvArsWER41PsU/preview?sle=true#slide=id.p