一、緣由(環(huán)境配置原因)
近期在閱讀一篇關(guān)于跨域推薦中用戶冷啟動(dòng)問(wèn)題的論文《Cross-Domain Recommendation to Cold-Start Users via Variational Information Bottleneck》。
在死磕文章算法的時(shí)候發(fā)現(xiàn)自己屬于“懂-不懂-懂-不懂…”的無(wú)限循環(huán)中,突發(fā)奇想“是否可以通過(guò)代碼輔助理解文章算法?”于是開始琢磨起了論文作者提供的源碼,走上了環(huán)境搭配的“不歸路”,在越過(guò)千千萬(wàn)萬(wàn)坑之后又突發(fā)奇想“為什么不把這些記錄下來(lái)呢?”于是孵化出了這第一篇博客,嘿嘿。
目的唯二:一是想幫助和我一樣想干這類事情的孩紙們少走彎路;二是借助此平臺(tái)記錄科研中的一些過(guò)程、方法、試錯(cuò)、教訓(xùn)等等。
論文鏈接: https://arxiv.org/pdf/2203.16863.pdf
代碼鏈接: https://github.com/cjx96/CDRIB
二、前期準(zhǔn)備
(一)Anaconda3下載、安裝及環(huán)境配置
看這篇博客就好啦!(安利其他博主的教程,我是按照這篇博客來(lái)的)
Anaconda超詳細(xì)安裝教程(Windows環(huán)境下): https://blog.csdn.net/fan18317517352/article/details/123035625
(二)PyCharm社區(qū)版Hello world!
因?yàn)楸救藢I(yè)版用密鑰總是過(guò)期,所以之前就下載了社區(qū)版替換了專業(yè)版,作為學(xué)生黨自仍為社區(qū)版碼代碼也夠用了,如果有條件當(dāng)然專業(yè)版肯定會(huì)更好,給大家提供一個(gè)博主的安裝教程(網(wǎng)絡(luò)平臺(tái)類似教程很多,大家可以根據(jù)自己的需求度娘搜索)。
pycharm community (社區(qū)版)詳細(xì)安裝教程和使用指南: https://blog.csdn.net/wangmeixi/article/details/103840541
三、搭建pytorch1.6.0(CPU)虛擬環(huán)境
不需要卸載電腦中原有的python,因?yàn)閍naconda搭建的虛擬環(huán)境中的python是獨(dú)立存在的。
接下來(lái)就是重點(diǎn)啦啦啦啦啦!
首先聲明因?yàn)檎撐脑创a需要的環(huán)境是Python3.7.9 + PyTorch1.6.0 + Scipy1.5.2 + Numpy1.19.1,所以下面是按照此要求配置的虛擬環(huán)境。
在準(zhǔn)備好anaconda和pycharm之后,進(jìn)行下面的步驟。
(一)激活虛擬環(huán)境
1、打開Anaconda Prompt,接下來(lái)的命令行均在此中完成。
2、將下載源恢復(fù)為默認(rèn)源。因?yàn)榍迦A大學(xué)鏡像源暫停了Anaconda鏡像服務(wù),因此需使用如下命令將下載源恢復(fù)為默認(rèn)源。(如果之前沒設(shè)置過(guò)鏡像的可以選擇跳過(guò)此步驟,不跳過(guò)其實(shí)也沒什么問(wèn)題的啦)
conda config --remove-key channels
若使用命令后出現(xiàn)如下錯(cuò)誤,便是下載源已是默認(rèn)源,繼續(xù)后續(xù)步驟就行:
CondaKeyError: 'channels ' : key 'channels' is not in the config file
3、創(chuàng)建pytorch的虛擬環(huán)境。pytorch1.6.0為環(huán)境名稱,可自行更改。python3.7.9為此環(huán)境需要的Python版本(可以指定也可以省略用默認(rèn)的),創(chuàng)建命令如下:
conda create -n pytorch1.6.0 python==3.7.9 //選擇時(shí)輸入“y”回車即可。
4、激活環(huán)境。
conda activate pytorch1.6.0
出現(xiàn)下面這樣的就是進(jìn)入搭建好的虛擬環(huán)境了
5、退出環(huán)境。代碼如下:
conda deactivate
恢復(fù)到“base”開頭就是退出虛擬環(huán)境了。
(二)下載指定版本的pytorch(CPU)
1、設(shè)置timeout配置。因?yàn)闆]有鏡像源可能會(huì)導(dǎo)致conda包的時(shí)候速度過(guò)慢或者直接中斷,出現(xiàn)timeout的可能性,所以在下載pytorch之前先進(jìn)行超時(shí)配置。
conda config --set remote_read_timeout_secs 10000.0
2、到網(wǎng)站中找到自己要的Pytorch版本: https://pytorch.org/get-started/previous-versions/
復(fù)制CPU版本的安裝語(yǔ)句即可:
# CPU Only
conda install pytorch==1.6.0 torchvision==0.7.0 cpuonly -c pytorch
這邊是已經(jīng)安裝過(guò)了所以沒有下載安裝的過(guò)程,第一次安裝過(guò)程可能會(huì)很慢,然后就是靜靜地等待啦~~~
(三)測(cè)試
以上如果沒有問(wèn)題的話,就是已經(jīng)安裝好了cpu版的PyTorch1.6.0,這時(shí)我們可以測(cè)試一下是否安裝正確:最后的語(yǔ)句輸出FALSE的原因是:檢測(cè)到?jīng)]有符合的CUDA匹配。這是當(dāng)然的啦,因?yàn)榇罱ǖ氖荂PU版本嘛
代碼如下(可以復(fù)制哦~):
python
import torch
import torchvision
print(torch.__version__)
print(torchvision.__version__)
print(torch.cuda.is_available())
exit()
以上虛擬環(huán)境配置到此結(jié)束啦!
(創(chuàng)建的虛擬環(huán)境在你安裝的anaconda文件夾下的envs子文件夾中,例如我的路徑:E:\Anaconda\Anaconda3\envs\pytorch1.6.0)
四、PyCharm項(xiàng)目連接虛擬環(huán)境
1、打開需要運(yùn)行的項(xiàng)目(或者可以新建項(xiàng)目后再進(jìn)行下一步),因?yàn)镻yCharm只是一個(gè)編程的IDE罷了,連接虛擬環(huán)境只需要改一下python的配置即可。
2、File ——Settings ——Python Interpreter ——顯示No Interpreter
3、接下來(lái)如圖所示:
接著點(diǎn)擊OK ——OK ——Apply ——Ok,至此虛擬環(huán)境配置成功!就可以運(yùn)行項(xiàng)目啦?。。?/p>
我這里標(biāo)注的四個(gè)是源碼運(yùn)行需要的條件,其中Numpy是搭建環(huán)境的時(shí)候自動(dòng)下載好的,可以根據(jù)自身要求更換版本,Scipy是要自己下載的哦,方法同安裝Pytorch的時(shí)候一樣,下載語(yǔ)句是:
//要重新在Anaconda Prompt中進(jìn)入pytorch1.6.0的虛擬環(huán)境進(jìn)行下載哦
conda install scipy==1.5.2
五、原來(lái)我在做無(wú)用功,大哭!
因?yàn)槲业碾娔X硬件很low,沒有獨(dú)顯,不支持CUDA,所以琢磨了半天配置了CPU版本的虛擬環(huán)境,結(jié)果運(yùn)行項(xiàng)目顯示“無(wú)效配置”:
所以后面就又用實(shí)驗(yàn)室服務(wù)器搭建了pytorch1.6.0(GPU)虛擬環(huán)境,重新運(yùn)行了源碼且跑成功啦?。。?/p>
重新搭建的步驟后面有時(shí)間了再更新。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-766185.html
步驟簡(jiǎn)單說(shuō)明:
第一步:查看服務(wù)器支持的CUDA版本(版本過(guò)高為11.4)
第二步:下載安裝CUDA10.2和對(duì)應(yīng)的CuDNN(因?yàn)?1.4版本的CUDA不支持pytorch1.6.0,所以要降低版本)可以查看對(duì)應(yīng)的
第三步:切換電腦環(huán)境的CUDA版本并測(cè)試
第四步:配置支持CUDA10.2的Pytorch1.6.0虛擬環(huán)境并連接PyCharm
第五步:跑項(xiàng)目,成功?。。?span toymoban-style="hidden">文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-766185.html
到了這里,關(guān)于Win10使用Anaconda搭建Pytorch1.6.0(CPU指定版本)虛擬環(huán)境的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!