一些不错的caffe初学者的教程链接

来源:互联网 发布:什么软件可以备份数据 编辑:程序博客网 时间:2024/05/29 12:08

直接放链接了:

1.这个是关于人脸识别的:http://www.jianshu.com/p/a76c18a3c6d5

2.这个是讲解了一些基础的fine tuning,caffe的基础入门教程:http://www.voidcn.com/article/p-nigpneqn-bac.html

3.github上的一个教程,因为github不仅仅可以上传代码,还可以上传教程,类似于csdn的博客,放链接:

https://github.com/humphd/have-fun-with-machine-learning/blob/master/README_zh-tw.md


可以尝试减小学习率base_lr(默认为0.01),同样对于fine-tuning,也应设置个较低的base_lr(0.001)

对于fine-tuning,还应适当降低stepsize的值(20000),其实就是避免初始模型变得太快而导致发散


输入数据格式改为imagedata,相应的data_param也改为image_data_param,mean_file也不用了,此外由于图像尺寸较大(340*250),需要适当缩小batch_size的值,否则使用GPU时可能超出其缓存大小而报错

最后一层的全连接层的输出改为2(因为这个例子是2元分类),对于fine-tuning,这一层的lr_mult需要适当增加(10),因为这一层在fine-tuning中需要变的最多


4.讲fine-tuning 的一个博客园的博客:http://www.cnblogs.com/louyihang-loves-baiyan/p/5038758.html

具体再看一下这个链接,写的还不错吧,当做第一个fine tuning例子用来跑DenseNet的fine tuning,试一下是否可行


fine-tuning的原因:在这种情况下重新训练一个新的网络是比较复杂的,而且参数不好调整,数据量也不够,因此fine-tuning微调就是一个比较理想的选择。


fine-tuning与training from scratch(重新训练的区别:fine-tuning是基于之前已经训练好的caffemodel进行继续训练,training from scratch表示重新训练


那么在网络的微调中,我们的整个流程分为以下几步:

  1. 依然是准备好我们的训练数据和测试数据
  2. 计算数据集的均值文件,因为集中特定领域的图像均值文件会跟ImageNet上比较General的数据的均值不太一样
  3. 修改网络最后一层的输出类别,并且需要加快最后一层的参数学习速率
  4. 调整Solver的配置参数,通常学习速率和步长,迭代次数都要适当减少
  5. 启动训练,并且需要加载pretrained模型的参数