- 安裝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()