- 安装python3.7版本、pytorch、jupyter、tqdm、opencv-python、matplotlib、pandas,在windows环境下安装的,没有GPU,安装的过程和教程中给的有点点差异,好在顺利安装完成。直接按照教程中命令执行,报错,找不到相应的包,命令修改为
conda install pytorch=1.3.1 torchvision cudatoolkit=10.0 –c pytorch
-c是从官方源下载,配置了国内源的话,不加-c更快;
或者配置国内的源,不加-c,用下面的命令:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64
安装成功了,但是导入的时候还是报错,使用下面的命令安装:
pip3 install https://download.pytorch.org/whl/cpu/torch-1.1.0-cp37-cp37m-win_amd64.whl -i https://pypi.tuna.tsinghua.edu.cn/
安装0.2.1版本的torchvision,解决,import成功
2. Baseline流程梳理:
1)定义读取图像的Dataset;
2)定义训练数据和验证数据的Dataset;
3)定义字符分类模型,使用ResNet18的模型进行特征提取;
4)定义训练、验证和预测模块;
5)迭代训练和验证模型;
6)对测试集样本进行预测,生成提交文件
3. 实现过程
1)训练模型时报错
解决方法:该问题的产生是由于windows下多线程的问题,和DataLoader类有关,具体细节点这里Fix memory leak when using multiple workers on Windows。
解决方案:修改调用torch.utils.data.DataLoader()函数时的num_workers参数。该参数官方API解释如下:
|
该参数是指在进行数据集加载时,启用的线程数目。截止当前2018年5月9日11:15:52,如官方未解决该BUG,则可以通过修改num_works参数为 0 ,只启用一个主进程加载数据集,避免在windows使用多线程即可。
2)训练模型时报错
解决方法:target=target.long()