1. 学会将数据转换成caffe所需要的数据格式:
使用了leveldb或者lmdb数据库,leveldb中数据按key/value形式存储。
leveldb的使用介绍: http://zh.wikipedia.org/wiki/LevelDB
将图像以及标注信息,先经过Datum序列化成字符串,再存到leveldb数据库中。见tools/convert_imageset.cpp
leveldb学习资料: http://blog.csdn.net/hzqhbc/article/details/9367327
2.熟悉网络结构配置,会自己动手配置网络:
首先要熟悉一下protobuffer:
https://developers.google.com/protocol-buffers/docs/cpptutorial
caffe.proto中定义了配置网络结构的规则,对应到例如mnist中的lenet_train_test.prototxt之类的文件中
层次结构是:
NetParameter---->LayerParameter---->各种不同的Layer的Parameter的定义,如DataParameter等等。
3. 跟examples中的一个例子:
例如mnist等,可以先看看readme文件,熟悉整个流程。然后就可以自己根据需要处理自己的数据,然后配置自己的网络,跑自己的任务了。
有关优化方法的定义和学习率的设置问题:http://caffe.berkeleyvision.org/tutorial/solver.html
时间: 2024-11-25 14:34:35