0x00 前言
前言什麼的也懶得說了……
總之:
聽說你Pytorch很牛,
不樂意讓我Windows用,
而我又聽說pytorch用來訓練模型超好用,
不僅沒頭腦而且不高興!我要在我的windows上配一個!
[NEW] PyTorch在0.4.0版已完美適配Windows,詳情請見這篇文章
https://blog.csdn.net/okcd00/article/details/80077799
0x01 準備工作
- Win10 64位操作系統
- Anaconda3:本人用的是3,2應該也可以(吧?)
- Pytorch 的 conda離線安裝包 (Thx to 知乎@蒲嘉宸)
鏈接:http://pan.baidu.com/s/1jH9F7Si 密碼:8s5a
0x02 配置開始
首先,我們需要一個比較配pytorch的環境,此處使用python3.6.1,因爲我把離線安裝包下載到了D盤的Downloads目錄下,所以我們就在D:\Downloads\
這裏操作吧,根據你們想放在哪裏自行安排。
$ conda create -n torch python=3.6.1
Fetching package metadata ...........
Solving package specifications: .
Package plan for installation in environment C:\ProgramData\Anaconda3\envs\torch:
The following NEW packages will be INSTALLED:
certifi: 2016.2.28-py36_0
pip: 9.0.1-py36_1
python: 3.6.1-2
setuptools: 36.4.0-py36_0
vs2015_runtime: 14.0.25420-0
wheel: 0.29.0-py36_0
wincertstore: 0.2-py36_0
Proceed ([y]/n)? y
vs2015_runtime 100% |###############################| Time: 0:01:28 23.07 kB/s
python-3.6.1-2 100% |###############################| Time: 0:28:32 19.29 kB/s
certifi-2016.2 100% |###############################| Time: 0:00:10 21.24 kB/s
wincertstore-0 100% |###############################| Time: 0:00:00 45.54 kB/s
setuptools-36. 100% |###############################| Time: 0:00:21 28.14 kB/s
#
# To activate this environment, use:
# > activate torch
#
# To deactivate an active environment, use:
# > deactivate
#
# * for power-users using bash, you must source
#
然後我們進入這個只有默認包的conda環境中,至少把numpy啥的pytorch必備組件給他裝上:
(torch) D:\Downloads>conda install numpy mkl cffi
Fetching package metadata ...........
Solving package specifications: .
Package plan for installation in environment C:\ProgramData\Anaconda3\envs\torch:
The following NEW packages will be INSTALLED:
cffi: 1.10.0-py36_0
mkl: 2017.0.3-0
numpy: 1.13.1-py36_0
pycparser: 2.18-py36_0
Proceed ([y]/n)?
pycparser-2.18 100% |###############################| Time: 0:00:06 27.88 kB/s
然後就是激動人心的裝這個離線包了!
(torch) D:\Downloads>conda install --offline pytorch-0.2.1-py36he6bf560_0.2.1cu80.tar.bz2
CondaError: EOFError('Compressed file ended before the end-of-stream marker was reached',)
CondaError: EOFError('Compressed file ended before the end-of-stream marker was reached',)
CondaError: EOFError('Compressed file ended before the end-of-stream marker was reached',)
我很想大聲的喊一句“不可能只有我一個人,不會只有我遇到這種情況!”
在check了一下下載的壓縮包並沒有損壞之後,查到一個解決方案:(Thx to @李新鵬):
解決‘CondaError: EOFError(‘Compressed file ended before the end-of-stream marker was reached’,)’問題,在
anaconda/pkgs
文件夾刪除緩存的pytorch安裝包再安裝比較好,不會刪去其餘完好的安裝包
然後在anaconda目錄(比如我的在C:\ProgramData\Anaconda3\pkgs\
)下,找到先前緩存的pytorch包(比如我的是C:\ProgramData\Anaconda3\pkgs\pytorch-0.2.1-py36he6bf560_0.2.1cu80.tar.bz2
),直接把這個文件刪掉,然後回到CMD中,再次輸入
(torch) D:\Downloads>conda install --offline pytorch-0.2.1-py36he6bf560_0.2.1cu80.tar.bz2
(torch) D:\Downloads>python
Python 3.6.1 |Continuum Analytics, Inc.| (default, May 11 2017, 13:25:24) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pytorch
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'pytorch'
>>> import torch
>>> x = torch.Tensor([1.0])
>>> xx = x.cuda()
>>> print(xx)
1
[torch.cuda.FloatTensor of size 1 (GPU 0)]
可喜可賀,可喜可賀~
哦對了最後還可以放進jupyter notebook的kernel裏用
sudo pip install -U ipykernel
# source activate torch
python -m ipykernel install --user