0.前言python
今年暑假買了個1660ti的遊戲本學python,後來發現跑一些數據量比較大的代碼和深度學習的時候太慢了,遂想裝一下GPU版本,看了網上的資料搞了好幾天,又是CUDA又是cudnn的,網速慢不說,裝完還各類報錯,最後發現隨着anaconda和tensorflow的更新,如今利用anadonda只要一行命令就能完成。(裝好虛擬環境後,直接看4.2)機器學習
1. 安裝anaconda學習
這部分沒啥難度,只要注意兩點:測試
1.去官網下載https://www.anaconda.com/distribution/,而不要去清華的鏡像站(已經好久沒有更新了),官網下比清華慢一點,但相信我這是值得的。url
2.安裝的時候建議直接把兩個勾都選上(網上的其餘教程都建議不勾選而後手動添加PATH,但我發現直接勾上沒問題,以後加PATH反而有各類問題出現)spa
#.若是以前電腦裏已經有安裝python,建議先卸載再裝anaconda,這樣能避免不少問題code
作完這一步你就擁有了一個預裝了不少包的base環境,包括pandas和numpy,足夠初學者作不少事情了。blog
2. 換清華源教程
雖然上面說anaconda的安裝包不要去清華上下,可是用鏡像站來下載和更新python包仍是能夠的(能快上很多)。打開CMD,複製打入就行token
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --set show_channel_urls yes
3.建立一個另外的虛擬環境
起先看網上教程的時候一直不明白這一步有什麼用,處理了不少報錯之後發現這是爲了不依賴包版本衝突。例如你在官網上下載的anaconda,自帶的base環境是python3.8,而tensorflow是建議裝python3.6,它要求的各類依賴包也是python3.6時代的,直接在base環境下安裝,須要將原本是最新的軟件包降級,可能會影響其餘包,最新的功能就用不到了。
因此建立虛擬環境能夠徹底避免依賴包衝突,須要使用tensorflow的時候切換過來就行。
3.1 打開CMD(若是你把anaconda裝在了C盤,建議使用管理員運行,能夠事先避免權限報錯),鍵入:
conda create -n env_gpu python=3.6
(env_gpu是你給虛擬環境起的名字,依我的喜愛就行,網上大多叫tensorflow或者env_tf2,我這邊叫env_gpu是由於我用這個環境來跑須要gpu加速的任務:tensorflow-gpu和cupy)
按y回車,anaconda就會安裝一些必須的包(換源以後是很快的)
4. 在虛擬環境下安裝tensorflow-GPU(用於機器學習)和cupy(numpy的GPU加速版本)
4.1 首先激活虛擬環境:
conda activate env_gpu
(整個第4步的cmd都別關掉,用同一個,假如手滑關了,就要再激活一次虛擬環境)
能夠看到前面有個括號代表所在的環境
4.2.安裝tensorflow-gpu和cupy
conda install tensorflow-gpu=2.0.0
conda install cupy
(一行一行來)
能夠看到anaconda會自動安裝匹配版本的cuda和cudnn,不用去英偉達官網下載了,也避免了操心版本問題。
4.3 安裝spyder, jupyter notebook
由於咱們在第三步建立了一個獨立的虛擬環境,和原來base環境裏的spyder和jupyter notebook是不通用的,因此在這個環境下手動安裝一個就行:
conda install spyder
conda install jupyter
安裝完之後能夠在開始菜單搜索spyder,(anaconda)結尾的是base環境下的spyder, (env_gpu)結尾的是這個環境下的spyder。
5.測試一下吧
5.1 打開spyder(env_gpu)
5.2 鍵入一些測試的code
5.3 cupy也導入測試下
都沒有報錯,大功告成!