在學(xué)習(xí)任何新的編程語言時(shí),我們都會(huì)在第一時(shí)間完成Hello World,以宣告自己開發(fā)環(huán)境的完美搭建。TensorFlow也不例外。TensorFlow充分考慮了各種軟/硬件平臺(tái)上的安裝,本篇記錄了在我的筆電Win 10環(huán)境下TensorFlow 1.1的安裝(在國內(nèi)這應(yīng)該是最常見的一種個(gè)人環(huán)境)并打印出“Hello TensorFlow !”的過程。
確認(rèn)安裝選項(xiàng)
確定了Windows平臺(tái)僅僅是第一步,還需要確定另外兩個(gè)選項(xiàng):
- CPU or GPU;
- Native pip or Anaconda。
在TensorFlow的官方文檔中明確提到,即使你的機(jī)器中有NVIDIA GPU,也建議初學(xué)者先嘗試CPU的版本。
對(duì)于第二個(gè)選項(xiàng),安裝Anaconda是個(gè)更好的選擇。它是一個(gè)Python的發(fā)行版,包含Python和一個(gè)包管理器conda,而且囊括了常見的科學(xué)計(jì)算庫,比起pip安裝這些庫要容易的多。此外利用conda可以直接創(chuàng)建和管理虛擬環(huán)境,比Native pip方式更加獨(dú)立和靈活,這個(gè)在后面還會(huì)提到。
TF文檔強(qiáng)調(diào)Anaconda是社區(qū)支持,而非官方支持,同時(shí)TF團(tuán)隊(duì)也不會(huì)測試和維護(hù)conda package。可以把它看成TensorFlow的免責(zé)聲明,而非建議Native pip方式。
安裝Anaconda
我是從Anaconda官方下載的最新的“Anaconda3-4.3.1-Windows-x86_64.exe”(422M),下載了3個(gè)小時(shí)。事后才知道清華大學(xué)提供了Anaconda鏡像,建議從此下載。
安裝路徑要求不能有空格,于是使用了默認(rèn)安裝路徑:“C:\Users\Ethan”,一路Next安裝完畢。安裝過程會(huì)自動(dòng)設(shè)置Anaconda環(huán)境變量。打開命令行,直接鍵入conda --version
,即可檢查。為了conda能快速安裝其他包,我立即設(shè)置了清華的鏡像源。操作如下:
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --set show_channel_urls yes
創(chuàng)建conda虛擬環(huán)境
為了安裝TensorFlow,首先用conda創(chuàng)建一個(gè)conda虛擬環(huán)境。
conda不僅可以manage package,虛擬環(huán)境管理是其另一個(gè)非常強(qiáng)大的特性,在虛擬環(huán)境下可以隔離不同的package版本組合。我們創(chuàng)建一個(gè)干凈的tensorflow環(huán)境,可以專用于研究和學(xué)習(xí)TF,而不需要為此動(dòng)到Python的主環(huán)境(主環(huán)境可能還要支持其他的項(xiàng)目)。
通過以下命令創(chuàng)建一個(gè)名稱為tensorflow的虛擬環(huán)境(虛擬環(huán)境的名字可以任意指定):
C:> conda create -n tensorflow python=3.5
TensorFlow安裝文檔中有明確提到:在Windows上TensorFlow僅支持的Python版本是3.5.x。可是前面我安裝的Anaconda 4.3.1默認(rèn)搭配的是Python 3.6。為了防止后續(xù)出現(xiàn)兼容性問題,我在上面的命令的末尾加了python=3.5
。這個(gè)參數(shù)表示當(dāng)前創(chuàng)建的tensorflow虛擬環(huán)境搭配3.5.x的Python版本(此時(shí)是否看出了conda的威力),conda會(huì)自動(dòng)的下載并安裝3.5.x最新的版本。
創(chuàng)建虛擬環(huán)境的整個(gè)過程,如下圖所示:
安裝TensorFlow
TensorFlow是要安裝到剛才創(chuàng)建的虛擬環(huán)境中去的。于是要先激活tensorflow環(huán)境:
C:> activate tensorflow
(tensorflow)C:> # Your prompt should change
然后再安裝TensorFlow 1.1.0的CPU版本:tensorflow-1.1.0-cp35-cp35m-win_amd64.whl。
盡管conda也是包管理器,但是TensorFlow官方建議使用Python原生的包管理器來安裝TensorFlow,使用pip install
命令,而不要用conda install
命令。此外,我這里還使用了清華的TensorFlow鏡像url,也就是把官方的https://storage.googleapis.com/
替換為https://mirrors.tuna.tsinghua.edu.cn/
即可。安裝速度非常快,一兩分鐘即可裝好。
(tensorflow)C:> pip install --ignore-installed --upgrade https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/cpu/tensorflow-1.1.0-cp35-cp35m-win_amd64.whl
pip install常見參數(shù)解釋:
- ignore-installed:強(qiáng)制安裝,即便已經(jīng)安裝;
- upgrade:升級(jí);
- no-deps:忽略依賴關(guān)系;
- no-cache-dir:不使用緩存;
在安裝Tensorflow時(shí),像Numpy這些依賴會(huì)自動(dòng)安裝,見下圖:
Hello, TensorFlow
終于要到Say Hello了。不要退出上節(jié)啟動(dòng)的虛擬環(huán)境,啟動(dòng)python,并直接鍵入后面的代碼即可。
$ python
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print(sess.run(hello))
代碼中TensorFlow的各種函數(shù)調(diào)用,會(huì)在后面講解。
實(shí)際運(yùn)行如下圖:
共享協(xié)議:署名-非商業(yè)性使用-禁止演繹(CC BY-NC-ND 3.0 CN)
轉(zhuǎn)載請(qǐng)注明:作者黑猿大叔(簡書)