Windows下使用Caffe-Resnet
来源:互联网 发布:什么自拍软件最好 编辑:程序博客网 时间:2024/05/16 09:50
参考文章:
编译历程参考:CNN:Windows下编译使用Caffe和Caffe2
caffe的VS版本源代码直接保留了sample里面的shell命令,当然这些shell命令在Windows平台下是不能运行的,需要稍微修改一下,转换为CMD可以理解的脚本代码。
一、使用cifar数据集合。
1.获取cifar10数据集get_cifar10数据集:
echo "Downloading..." wget --no-check-certificate http://www.cs.toronto.edu/~kriz/cifar-10-binary.tar.gz echo "Unzipping..." tar -xf cifar-10-binary.tar.gz && rm -f cifar-10-binary.tar.gz mv cifar-10-batches-bin/* . && rm -rf cifar-10-batches-bin
还是直接下载划算。
2. 生成标准格式的数据集合create_cifar10.sh:
set -e EXAMPLE=examples/cifar10 DATA=data/cifar10 DBTYPE=lmdb echo "Creating $DBTYPE..." rm -rf $EXAMPLE/cifar10_train_$DBTYPE $EXAMPLE/cifar10_test_$DBTYPE ./build/examples/cifar10/convert_cifar_data.bin $DATA $EXAMPLE $DBTYPE echo "Computing image mean..." ./build/tools/compute_image_mean -backend=$DBTYPE \ $EXAMPLE/cifar10_train_$DBTYPE $EXAMPLE/mean.binaryproto echo "Done."
cifar10数据集合使用了二进制的bin文件,对于我们来说几乎没有任何意义,只是作为一个测试流程使用。
修改为cmd命令:
convert_cifar_data.exe E:/DataSet/cifar10 E:/DataSet/cifar10 lmdb
把e盘cifar10文件夹下面的文件转换为lmdb格式,到同目录下。
分别生成train和test文件夹,每个文件夹下面存在两个lock.lmdb和data.lmdb文件。
至于为何使用lmdb格式的文件,请到知乎搜索....................
然后修改为cmd命令:
compute_image_mean.exe -backend=lmdb E:/DataSet/cifar10/cifar10_train_lmdb E:/DataSet/cifar10/mean.binaryprot
依次生成lmdb文件,mean.binaryproto文件
二、开始使用Caffe网络
修改Caffe的train_quick命令,修改为:
caffe.exe train --solver=E:/DataSet/cifar10/net/cifar10_quick_solver.prototxt
可以从
cifar10_quick_solver.prototxt
启动简单的caffe网络,开始训练过程
prototxt配置文件里面初始参数是这样的:
name: "CIFAR10_quick" layer { name: "cifar" type: "Data" top: "data" top: "label" include { phase: TRAIN } transform_param { mean_file: "E:/DataSet/cifar10/mean.binaryproto" } data_param{ source: "E:/DataSet/cifar10/cifar10_train_lmdb" batch_size: 100 backend: LMDB } } layer{ name: "cifar" type: "Data" top: "data" top: "label" include { phase: TEST } transform_param { mean_file: "E:/DataSet/cifar10/mean.binaryproto" } data_param { source: "E:/DataSet/cifar10/cifar10_test_lmdb" batch_size: 100 backend: LMDB } }
训练完成后,生成.model文件。留作使用。
三、注意事项
1. 在使用初始化的过程中,使用protobuf解析网络配置文件,出现默认初始化问题。
在solver_param.mutable_train_state()->set_level(FLAGS_level);
CHECK(ReadProtoFromTextFile(param_file, param));
ReadProtoFromTextFile(filename.c_str(), proto);
bool success = google::protobuf::TextFormat::Parse(input, proto);/
调用栈之中,解析文件目录为 filename = 0x0000029ed8a371a0 "E:/DataSet/cifar10/net/cifar10_quick_solver.prototxt"
而 默认初始化 net 目录和+ snapshot_prefix_ 为 0x0000029ee0ead6b0 "examples/cifar10/cifar10_quick" ,是相当悲剧的行为。
下载源码,编译后,调试进入,
载回头来看这些繁琐的东西,真是蛋疼。
三、开始使用残差网络
修改E:/DataSet/cifar10/net/cifar10_quick_solver.prototxt 文件,修改为:
#net: "E:/DataSet/cifar10/Net/cifar10_quick_train_test.prototxt"
net: "E:/DataSet/Net/ResNet-50-deploy.prototxt"
可以直接使用caffe的ResNet50网络
- Windows下使用Caffe-Resnet
- caffe-windows下使用pycaffe绘制网络图
- windows下安装caffe
- Windows下编译caffe
- caffe-windows下编译
- windows下配置Caffe
- Windows下编译caffe
- windows下编译caffe
- windows下使用caffe finetune自己的数据
- windows下使用caffe的lmdb数据库问题
- VS2013 下 使用Windows Caffe开发之配置属性文件
- Windows环境下使用 Caffe在ImageNet上训练网络
- Caffe Windows下 使用snapshot来继续网络训练
- Caffe--windows下的初使用及简单测试
- CNN:Windows下编译使用Caffe和Caffe2
- caffe-windows使用心得
- 【Caffe】Windows下caffe安装详解
- 在windows下配置caffe
- bzoj1218 [HNOI2003]激光炸弹(二维前缀和+暴力/线段树+离散化+扫描线)
- 51nod 1279 扔盘子
- day60-struts2_02:笔记。--整理版
- 利用muduo原线程池修改的可调度线程池源码
- JavaScript面向对象核心知识归纳
- Windows下使用Caffe-Resnet
- 机器学习(5)-理解softmax的损失函数和梯度表达式的实现+编程总结
- 怎么用java swing制作一个柱状图
- PHP面试总结(4)--Nginx
- 交叉编译工具链制作
- 约瑟夫问题
- Python|笨方法学Python学习笔记1
- MQTT初探
- 大型网站架构