学习参考博客:
https://blog.csdn.net/la_fe_/article/details/81532012
https://blog.csdn.net/la_fe_/article/details/81533690
https://blog.csdn.net/dcrmg/article/details/75209098
https://blog.csdn.net/m0_37357063/article/details/84305927
1. Caffe的目录结构
1.1从github上下载的Caffe包含下面所示文档
其具体的功能如下所示:
1.2 主要文件及其作用:
主要使用的文件是三个:
data 用于存放训练数据集
example 用于存放代码样例,经典模型,训练文件
models 用于存放模型,权值/卷积核
1.3 网络可视化:
caffe提供Python脚本文件能够让网络模型图形化,有助于我们直观理解,通过下面的方法可以让网络可视化
# python文件内具有一个 网络图形化工具 draw_net.py
# 使用方法:本例中将网络模型文件复制到了python目录下
cd caffe/python/
python draw_net.py lenet.prototxt a.png --rankdir=BT
# 最后一个参数是网络结构的绘制方向 BT 表示从底部往顶部画 还可以是 TB/LR/RL
# 或者在caffe一级目录下运行以下命令:
cd caffe/
python python/draw_net.py python/lenet.prototxt b.png --rankdir=BT
2.训练Mnist数据集
2.1获取mnist数据集.
运行caffe中的./data/mnist/get_mnist.sh 文件实现了下载mnist数据库的功能
cd ~/caffe
sudo ./data/mnist/get_mnist.sh
执行之后,在./data/mnist文件夹下生成4个文件,分别是测试、训练数据库和测试、训练标签:
2.2 将二进制数据库文件转换成lmdb数据库格式
create_mnist.sh脚本文件能将二进制数据库文件转换成lmdb格式文件
sudo ./examples/mnist/create_mnist.sh
通过运行上面的命令获取lmdb文件的训练集和测试集
2.3 训练lenet网络
如果只是用CPU训练的话,需要先在 lenet_solver.prototxt 文件中修改训练模式为CPU,使用gedit打开.prototxt文件:
sudo gedit ./examples/mnist/lenet_solver.prototxt
修改文件最后一行的 solver_mode的配置为 CPU
以下指令执行训练:
sudo ./examples/mnist/train_lenet.sh
如图已经开始训练