Windows環境下Anaconda安裝TensorFlow的避坑指南

最近羣裏聊天時常常會提到DL的東西,也有羣友在學習mxnet,但據說坑比較多。爲了遇上潮流順便避坑,我果斷選擇了TensorFlow,然而誰知一上來就掉坑裏了……python

我根據網上的安裝教程,默認安裝了最新版本的CUDA和cuDNN,但以後遇到了各類沒法導入的問題,後來我發現主要的問題就是版本問題!!!CUDA版本和TensorFlow版本不匹配是最重要的坑。windows

目前NV家最新的組件是CUDA 9.1+cuDNN 7.05,而咱們安裝所用的清華大學的鏡像裏TensorFlow是1.3.0這兩個是無法匹配的,正確的配置是CUDA 8.0+cuDNN 6.0+TensorFlow 1.3.0,另外還有python 3.5網絡

 

接下來講正事,Anaconda目前的python版本是3.6的,但不要緊,咱們新建一個環境就能夠了。首先更新一下N卡驅動,並下載並安裝這幾樣東西:app

VisualC++ Redistributable for Visual Studio 2015學習

CUDA Toolkit 8.0 (注意操做系統和版本的選擇)url

cuDNN 6.0 (注意,要選Download cuDNN v6.0 (April 27, 2017), for CUDA 8.0spa

下載完成後逐一安裝,CUDA安裝時候可能會提示警告,主要說你的顯卡驅動可能太新或者VS版本有點問題什麼的,不過只要你以前的步驟都妥了就不用理它。操作系統

cnDNN解壓縮,裏面會有3個文件夾:命令行

把這三個複製到CUDA的安裝目錄,好比C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0,與同名文件夾合併便可。以後就是安裝TensorFlow了。3d

 

這裏基本按照一位羣友上傳的安裝教程來,打開CMD,以此輸入以下命令:

一、更改Anaconda鏡像源

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ (執行兩次保證將該鏡像放在首位)
conda config --set show_channel_urls yes

二、利用Anaconda建立一個python3.5的環境,環境名稱爲tensorflow :

conda create -n tensorflow python=3.5

三、激活該環境:

activate tensorflow

四、安裝CPU版本和GPU版本的TensorFlow:

pip install --upgrade --ignore-installed https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/cpu/tensorflow-1.3.0rc0-cp35-cp35m-win_amd64.whl
pip install --upgrade --ignore-installed https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/gpu/tensorflow_gpu-1.3.0rc0-cp35-cp35m-win_amd64.whl

這一步中有時候也會報錯,只要你看到過進度條,那就沒啥大問題,主要是網絡很差的問題……若是網絡很差報錯了,就再執行一次一樣的命令,最終必定會成功。

五、安裝完成後,記得設置環境變量,環境變量path里加入如下內容:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin; (你CUDA的安裝位置,默認的)
C:\Program Files\NVIDIA Corporation\NVSMIs;
D:\Anaconda3\envs\tensorflow\Scripts; (這兩個是你Anaconda的安裝位置,我裝在D盤裏,後面的\envs\tensorflow是指你在第2步中建立的tensorflow環境)
D:\Anaconda3\envs\tensorflow\Library\bin;

六、試一試可否成功

打開cmd,輸入activate tensorflow激活tensorflow環境,輸入python進入python,嘗試輸入一下命令

import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

成功的話你會看到以下畫面

七、配置spyder

Anaconda最吸引個人就是spyder,集成了命令行和IDLE,超好用,然而安裝完咱們會發現一個問題,你打開spyder是沒法導入tensorflow的,提示找不到模塊。這主要是由於咱們打開的spyder是root環境下的,裏面並無tensorflow。因此咱們要在咱們以前建立的tensorflow環境中安裝spyder才行。打開Anaconda Navigator能夠看到tensorflow環境下只有這些庫,咱們能夠根據本身的須要再安裝一下其餘須要的庫,包括spyder

在庫上方選Not installed(未安裝的庫),而後在右側搜索spyder,選中以後點最右下角的apply就會安裝了。

安裝完成後打開開始菜單,咱們會看到多出來一個spyder(tensorflow),就是這個啦~

 能夠看到如今也能夠用tensorflow了~

若是你點擊的時候只是光標閃了一下並無打開spyder的話,直接在Anaconda Navigator的home界面中點擊spyder的Launch,就能啓動了

啓動後咱們再試試導入,也沒問題,大功告成啦~

相關文章
相關標籤/搜索