深度残差网(deep residual networks)的训练过程

时间:2021-07-27 20:37:38

这里介绍一种深度残差网(deep residual networks)的训练过程:

1、通过下面的地址下载基于python的训练代码:

https://github.com/dnlcrl/deep-residual-networks-pyfunt

2、这些训练代码需要和pydataset包。下面介绍这两个包的安装方法。

(1)pyfunt需要安装。

用命令:pip install git+git://github.com/dnlcrl/PyFunt.git  进行下载安计。

       安装时numpy需要1.11及以上,但笔者机器上的numpy为1.10,因此,还采用了如下命令对其进行升级:

pip install numpy --upgrade

(2)pydataset

pydataset主要用于数据预处理。 由于pydataset包需要cv2(opencv for python),但无法用pip安装cv2(该项目好像停止了)。因此只有通过下载opencv3.0(我下载的是opencv-3.0.0.exe),然后解压,在解压后的\build\python\2.7\x64目录下将cv2.pyd文件拷贝到python的site-packages目录下,注意,笔者机器上安装的是64位的python2.7,所以选择的是这个路径,不同的python版本和平台,其路径不一样。

然后需要设置opencv的路径。具体设置方法见下图(注意,笔者的opencv是安装在F:\tool\opencv,不同的opencv安装路径,其设置内容不一样):

深度残差网(deep residual networks)的训练过程

然后下载通过: https://github.com/dnlcrl//PyDatSet  下载PyDatSet,解压,在所解压的目录python setup.py install来安装。

3、下载cafir10 for python的数据集,然后解压,记住这个目录,在第一次运行train.py时,需要输入这个目录的全路径。

4、由于源代码有bug,需要修改源代码。

主要修改的源代码有:

(1) train.py中的  NUM_TRAIN = 40000 (源代码是5000);

(2)cifar10.py文件(在python安装目录下的lib\site-packages\pydatset目录下)中的load函数中的 for b in range(1, 5);(源代码为6)

(3)cifar10.py文件(在python安装目录下的lib\site-packages\pydatset目录下)中的load_CIFAR_batch函数中的with open(filename, 'rb') as f;(源代码为'r');

5、通过执行python train.py就可以进行训练了。