1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > win10caffe-GPU环境配置+mnist手写体训练以及python接口导入详细教程(一步成功)

win10caffe-GPU环境配置+mnist手写体训练以及python接口导入详细教程(一步成功)

时间:2021-08-08 22:13:26

相关推荐

win10caffe-GPU环境配置+mnist手写体训练以及python接口导入详细教程(一步成功)

什么是caffe

Caffe是一个深度学习框架,具有表达力强、速度快和模块化的思想,由伯克利视觉学习中心(BVLC)和社区贡献者开发。Yangqing Jia在加州大学伯克利分校攻读博士期间创建了这个项目。

为什么选择caffe?

富有表现力的架构鼓励应用和创新使用Caffe,可以在配置中定义模型和优化,不需要硬编码。通过设置一个GPU机器训练标记在CPU和GPU之间转换,接着调配商品化集群系统或移动设备来完成。

代码的可扩展性让开发更加活跃在Caffe项目的第一年,它就被开发者fork超过1000次,由他们完成许多重要的修改并反馈回来。多亏那些贡献者,这个框架在代码和模型两方面都在追踪最先进的技术。

速度使Caffe完美的用于研究实验和工业开发使用一个NVIDIA K40 GPU Caffe每天可以处理超过60M的图像。推理过程为1ms/一幅图像,而学习过程为4ms/一幅图像。我们相信Caffe是现在可使用最快的ConvNet应用。

社区在视觉、速度和多媒体方面,Caffe已经有能力用于学术研究项目、启动原型,甚至大规模的工业应用。

软件需要

1、vs或vs,其他版本不行,博主使用的vs社区版

2、cmake3.4或者更高版本,博主使用过cmake3.9.2和3.14.2,都可以使用,下载地址在下方,选择cmake-3.14.2-win64-x64.zip即可,下载完后,需要在环境变量的path中添加cmake的.exe文件的位置,如下图所示,环境配置的相似方法在我的另一篇博客配置CUDA8.0和CUDA5.1中有说明。

/Kitware/CMake/releases

3、GPU配置所需的CUDA8.0和CUDNN5.1的下载和环境配置在我的另一篇博客

/qiongyaoxinpo/article/details/89036658

4、使用python接口导入caffe,还需要下载anaconda,caffe支持的python版本为2.7和3.5,因此,博主下载的为python3.5版本的anaconda3,之前是在清华镜像下载,不过.4.16清华镜像似乎已经挂了,这里就不给出下载地址了。

5、notepad++,使用notepad++来查看代码十分方便

caffe环境配置

caffe环境配置其实很简单,只要按照github官网上的要求一步一步来就可以了,这里对官网的指令进行了翻译并介绍了自己的实践与成功经历。github官网如下

/BVLC/caffe/tree/windows

1、同时按下win+r,输入cmd后打开cmd prompt,然后cd到你想下载caffe并运行的地方,例如想下载在F盘的caffe文件夹下,则按如下图操作即可

之后在该目录下依次输入

F:\caffe>git clone /BVLC/caffe.gitF:\caffe>cd caffeF:\caffe\caffe>git checkout windowsF:\caffe\caffe>scripts\build_win.cmd

2、找到F:\caffe\caffe\scrpts文件夹中的build_win.cmd文件,使用notepad++打开,进行如下修改,修改完成后,再运行一次F:\caffe\caffe>scripts\build_win.cmd命令即可进行caffe在windows环境下的文件生成,因为其原本是在ubantu系统下建立的。

3、进入F:\caffe\caffe\build文件夹下,打开Caffe.sln文件,按如下操作,release和x64,生成解决方案

4、编译完成后可以在F:\caffe\caffe\build\tools\Release文件夹中找到caffe.exe文件,可以在F:\caffe\caffe\build\examples\mnist\Release中找到convert_mnist_data.exe,如下图所示,caffe.exe文件是用于使用c++进行训练的程序,convert_mnist_data.exe是用来将mnist手写体数据转换成caffe可以使用的数据格式,值得注意的是caffe中不包含训练数据。

5、在开始调用caffe进行训练样本之前,首先得获取数据,数据在手写体官网可以直接下载,也可以通过下方传送门进行下载

/exdb/mnist/,一共需要下载4个文件,将所有压缩文件下载于F:\caffe\caffe\data\mnist中,并解压出来,如下图所示

6、在F:\caffe\caffe\examples\mnist文件夹中,创建create_mnist.bat的文件,使用notepad++打开后,输入程序,程序如下,其实是对create_mnist.sh的改写,因为.sh只能在linux环境下运行。按照自己的文件位置,分别修改如下4条语句即可,保存完毕后,进入cmd prompt命令行界面,在caffe根目录F:\caffe\caffe下运行如下语句:examples\mnist\create_mnist.bat,运行完毕后即可在F:\caffe\caffe\examples\mnist中发现2个可以进行训练的数据集,如下图所示

1、set EXAMPLE=F:\caffe\caffe\examples\mnist

2、set DATA=F:\caffe\caffe\data\mnist

3、set BUILD=F:\caffe\caffe\build\examples\mnist\Release

4、set exename=convert_mnist_data.exe

@echo off & setlocal enabledelayedexpansion:: This script converts the mnist data into lmdb/leveldb format,:: depending on the value assigned to %BACKEND%.:: 在caffe 根目录运行examples\mnist\create_mnist.bat%~d0cd %~dp0echo %cd%echo currentpath: %~dp0:: 网络定义文件的位置,生成lmdb文件也在这里set EXAMPLE=F:\caffe\caffe\examples\mnist:: 测试数据的位置set DATA=F:\caffe\caffe\data\mnist:: 工程文件生成的位置::set cfg=Debug::set BUILD=..\..\build\x64\examples\mnist\%cfg%::set exename=convert_mnist_data-d.exe:: 发布文件所在位置,即vs工程中运行INSTALL后,文件的安装位置set BUILD=F:\caffe\caffe\build\examples\mnist\Release:: 可发布的release版本lmdb生成工具set exename=convert_mnist_data.exe:: 生成数据类型set BACKEND=lmdbecho "Creating !BACKEND! start":: 删除存在的数据库目录,如果目录存在,会运行失败IF EXIST %EXAMPLE%\mnist_train_%BACKEND%. echo rmdir /S /Q %EXAMPLE%\mnist_train_%BACKEND%.IF EXIST %EXAMPLE%\mnist_train_%BACKEND%. rmdir /S /Q %EXAMPLE%\mnist_train_%BACKEND%.IF EXIST %EXAMPLE%\mnist_test_%BACKEND%. echo rmdir /S /Q %EXAMPLE%\mnist_test_%BACKEND%.IF EXIST %EXAMPLE%\mnist_test_%BACKEND%. rmdir /S /Q %EXAMPLE%\mnist_test_%BACKEND%.:: 生成训练数据库::echo %BUILD%\%exename% %DATA%\train-images.idx3-ubyte ^%DATA%\train-labels.idx1-ubyte %EXAMPLE%\mnist_train_%BACKEND% --backend=%BACKEND%%BUILD%\%exename% %DATA%\train-images.idx3-ubyte %DATA%\train-labels.idx1-ubyte %EXAMPLE%\mnist_train_%BACKEND% --backend=%BACKEND%:: 生成测试数据库::echo %BUILD%\%exename% %DATA%\t10k-images.idx3-ubyte ^%DATA%\t10k-labels.idx1-ubyte %EXAMPLE%\mnist_test_%BACKEND% --backend=%BACKEND%%BUILD%\%exename% %DATA%\t10k-images.idx3-ubyte %DATA%\t10k-labels.idx1-ubyte %EXAMPLE%\mnist_test_%BACKEND% --backend=%BACKEND%echo "Create !BACKEND! Done.":: 根据example\mnist\下面的*.sh运行测试::mkdir build\x64\log\::build\x64\install\bin\caffe.exe train --solver=examples/mnist/lenet_solver.prototxt > build\x64\log\lenet_solver.log 2>&1endlocal&goto :EOF:EOF

7、开始使用caffe对mnist训练集进行测试,进行cmd prompt命令行,cd至caffe根文件F:\caffe\caffe,然后运行如下语句,caffe训练开始!如下图

F:\caffe\caffe>build\tools\Release\caffe.exe train --solver=examples/mnist/lenet_solver.prototxt

8、在将caffe模型导入python中前,需要对python进行设置环境配置,打开anaconda prompt,输入如下3条语句,下载完毕后,将F:\caffe\caffe\python中的caffe文件夹复制到D:\anaconda3\Lib\site-packages中即可。

conda config --add channels conda-forgeconda config --add channels willydconda install --yes cmake ninja numpy scipy protobuf==3.1.0 six scikit-image pyyaml pydotplus graphviz

8、运行anaconda3,import caffe成功!至此,完毕。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。