Windows下使用Caffe-Resnet

原创 2017年09月24日 16:14:27

参考文章:

        编译历程参考: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网络

      

caffe+鉴黄︱yahoo+open_nsfw 中resnet_50_1by2、遇到问题

NSFW:Not Suitable for Work; SFW:Suitable for Work github:https://github.com/yahoo/open_nsfw ...

Caffe在Cifar10上复现ResNet

Caffe在Cifar10上复现ResNetResNet在2015年的ImageNet竞赛上的识别率达到了非常高的水平,这里我将使用Caffe在Cifar10上复现论文4.2节的Cifar实验。 Re...
  • a_1937
  • a_1937
  • 2016年05月26日 17:14
  • 22482

caffe Resnet-50模型训练及测试

caffe Resnet-50模型训练及测试 1.       注意事项 Resnet-50计算精度比较高,而且运算量较小,因此是一种理想的残差网络的训练模型。采用Resnet-50模型进行训...

常用网络模型结构LeNet,AlexNET,VGG,BN-inception,ResNet网络模型简介和资料整理--caffe学习(8)

在使用深度神经网络时我们一般推荐使用大牛的组推出的和成功的网络。如最近的google团队推出的BN-inception网络和inception-v3以及微软最新的深度残差网络ResNET。 我们从简...

caffe Resnet-50 finetune 所有代码+需要注意的地方

之前一直只专注于VGG-16,围绕VGG-16做了很多实验,心想其他网络也都差不多,这次实习时候又是分类问题,就心想换一个网络试试,因为数据有240W,比较大,就选Resnet吧,参数少,训练快,效果...
  • jzrita
  • jzrita
  • 2017年06月08日 20:02
  • 649

caffe Resnet-50 finetune 所有代码+需要注意的地方

之前一直只专注于VGG-16,围绕VGG-16做了很多实验,心想其他网络也都差不多,这次实习时候又是分类问题,就心想换一个网络试试,因为数据有240W,比较大,就选Resnet吧,参数少,训练快,效果...

【caffe-Windows】cifar实例编译之model的使用

本文讲解如何对网上下载的一个图片利用训练好的cifar模型进行分类 第一步 上一篇文章训练好以后会得到两个文件 从网上查阅资料解释来看,第一个caffemodel是训练完毕得到的模型参数文件,第二...

CAFFE 在windows平台的使用

CAFFE 在windows平台的使用是时候跟进一下深度学习框架的使用方法了。先从caffe下手。caffe安装caffe的安装方式有两种,第一种是自己编译源码的安装方式,第二种是下载编译好的库,包含...

VS2013 下 使用Windows Caffe开发之配置属性文件

新建一个工程,添加新的属性文件,名字为: Caffe_x64.props。 所有caffe需要的配置如下。...

如何快糙好猛地在Windows下编译CAFFE并使用其matlab和python接口

一、准备   需要用到的东西我已经帮大家全部准备好了,有3月31日刚刚从caffe官方dev分支fork过来的源代码:https://www.github.com/happynear/caffe-wi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Windows下使用Caffe-Resnet
举报原因:
原因补充:

(最多只允许输入30个字)