1. 程式人生 > >Ubuntu16.04-64bit+TensorFlow1.2 安裝

Ubuntu16.04-64bit+TensorFlow1.2 安裝

TensorFlow是Google的一個開源機器學習框架,官網:https://www.tensorflow.org/
裡面有詳細的教程和API說明,我在虛擬機器上裝的TensorFlow所以不支援CUDA版本的TensorFlow安裝。

TensorFlow安裝方式

TensorFlow官網介紹了四種安裝方式

  • virtualenv
  • 常見的pip安裝
  • Docker
  • Anaconda

官方建議採用virtualenv安裝方式進行安裝,因為Virtualenv的Python環境可以與其他Python開發環境隔離,不受同一臺機器上其他的Python程式影響,在Virtualenv下是用TensorFlow只需要啟用Python虛擬環境即可,這樣就能為TensorFlow的安裝和執行提供了一個安全可靠的機制。

在使用pip安裝時注意開發環境是Python2.x還是Python3.x,Python2.x呼叫pip而Python3.x則是pip3

使用Virtualenv安裝TensorFlow

  • 1.首先通過如下命令安裝pip和virtualenv
$ sudo apt-get install python-pip python-dev python-virtualenv # for Python 2.7
$ sudo apt-get install python3-pip python3-dev python-virtualenv # for Python 3.n
  • 2.使用如下命令建立virtualenv環境
$ virtualenv --system-site-packages targetDirectory # for Python 2.7
$ virtualenv --system-site-packages -p python3 targetDirectory # for Python 3.n

上述名稱中的targetDirectory是自己命名的一個空間,這裡假定是 ~/tensorflow,你也可名命名其他名稱

  • 3.使用如下命令啟用virtualenv環境
 $ source ~/tensorflow/bin/activate # bash, sh, ksh, or zsh
$ source ~/tensorflow/bin/activate.csh # csh or tcsh

如下圖
這裡寫圖片描述

  • 4.在virtualenv環境下安裝TensorFlow
    如果已經將TensorFlow的源新增到系統則可以直接執行如下命令
 (tensorflow)$ pip install --upgrade tensorflow      # for Python 2.7
 (tensorflow)$ pip3 install --upgrade tensorflow     # for Python 3.n
 (tensorflow)$ pip install --upgrade tensorflow-gpu  # for Python 2.7 and GPU
 (tensorflow)$ pip3 install --upgrade tensorflow-gpu # for Python 3.n and GPU

注意:虛擬機器環境下不支援GPU版的TensorFlow,只能安裝CPU版的TensorFlow
如果沒有新增TensorFlow的源則上述命令執行失敗,需要手動新增tensorflow的網址,根據不同的Python版本和是否支援GPU加速,TensorFlow細分了很多版本,如下:
Python2.7 CPU Only

https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.1-cp27-none-linux_x86_64.whl

Python2.7 GPU

https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.1-cp27-none-linux_x86_64.whl

Python3.4 CPU Only

https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.1-cp34-cp34m-linux_x86_64.whl

Python3.4 GPU

https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.1-cp34-cp34m-linux_x86_64.whl

Python3.5 CPU Only

https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.1-cp35-cp35m-linux_x86_64.whl

Python3.5 GPU

https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.1-cp35-cp35m-linux_x86_64.whl

Python3.6 CPU Only

https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.1-cp36-cp36m-linux_x86_64.whl

Python3.6 GPU

https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.1-cp36-cp36m-linux_x86_64.whl

在安裝GPU版TensorFlow之前應先執行如下命令

sudo apt-get install libcupti-dev

以便安裝其依賴庫。

執行如下命令安裝TensorFlow

 (tensorflow)$ pip install --upgrade tfBinaryURL   # Python 2.7
 (tensorflow)$ pip3 install --upgrade tfBinaryURL  # Python 3.n 

將tfBinaryURL改為對應的tensorflow版本。如我的開發環境是Ubuntu-64bit+Python3.5,虛擬機器環境下不支援GPU加速,我就選擇Python3.5 CPU Only,並執行如下命令:

pip3 install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.1-cp35-cp35m-linux_x86_64.whl
Collecting tensorflow==1.2.1 from https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.1-cp35-cp35m-linux_x86_64.whl

在執行這段命令的時候如果報錯是網路錯誤,這時候就可以拿出你的fan-qiang利器了,或者是多執行幾次上面的命令總有能連結成功的時候。安裝完成後可以通過命令

pip list #Python 2.7
pip3 list #Python3.n

檢視tensorflow是否已經存在

退出TensorFlow環境命令如下:

(tensorflow) keith@keith-workstation:~$ deactivate 

使用pip或pip3直接安裝tensorflow

  • 1.首先安裝其依賴項
$ sudo apt-get install python-pip python-dev   # for Python 2.7
$ sudo apt-get install python3-pip python3-dev # for Python 3.n
  • 2.安裝TensorFlow
    過程重複上個標題中第4步,只不過是不再是在virtualenv中安裝,不再贅述,如我安裝命令如下:
$ sudo pip3 install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.1-cp35-cp35m-linux_x86_64.whl
Collecting tensorflow==1.2.1 from https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.2.1-cp35-cp35m-linux_x86_64.whl

區別就是這一步要新增sudo以管理員身份執行。

檢查是否安裝成功

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

輸出Hello,TensorFlow即配置成功。