Ubuntu上安裝TensorFlow(python2.7版)

筆記內容:Ubuntu上安裝TensorFlow(python2.7版)
筆記日期:2018-01-31python


個人系統環境:linux

  • Ubuntu 16.04 LTS
  • python 2.7
  • python 3.5

TensorFlow的兩個版本:
Ubuntu上安裝TensorFlow(python2.7版)docker

TensorFlow的安裝形式主要有如下幾種:vim

  • virtualenv
  • pip
  • docker
  • anaconda
  • 源代碼編譯

pip是Python軟件包管理系統:Pip Install Packages 遞歸縮寫bash

pip安裝軟件包命令的格式以下:python2.7

pip install 軟件包名ide

pip卸載軟件包命令的格式以下:this

pip uninstall 軟件包名google

我這裏先使用virtualenv虛擬環境形式的安裝,一會再介紹使用pip安裝到本地系統,如下是TensorFlow官方的安裝文檔:url

https://tensorflow.google.cn/install/install_linux

1.安裝python-pip、python-dev以及python-virtualenv等包,我這裏安裝的是python2.7版本的:

$ sudo apt-get install python-pip python-dev python-virtualenv

2.建立一個Virtualenv環境:

[zero@zero-virtual-machine:~]$ virtualenv --system-site-packages tensorflow
Running virtualenv with interpreter /usr/bin/python2
New python executable in /home/zero/tensorflow/bin/python2
Also creating executable in /home/zero/tensorflow/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.

3.激活Virtualenv環境:

[zero@zero-virtual-machine:~]$ source ~/tensorflow/bin/activate
(tensorflow) [zero@zero-virtual-machine:~]$

4.安裝pip:

(tensorflow) [zero@zero-virtual-machine ~]$ easy_install -U pip

5.安裝tensorflow,我這裏安裝的是cpu版本的:

(tensorflow) [zero@zero-virtual-machine ~]$ pip install --upgrade tensorflow

提示:若是你的pip安裝的很慢的話,是由於默認使用的是國外的源,咱們能夠更換成國內的源:

[zero@zero-virtual-machine ~]$ vim .pip/pip.conf  # 編輯爲如下內容
[global]
index-url = http://pypi.douban.com/simple
trusted-host = pypi.douban.com   #沒有這句會包warning
disable-pip-version-check = true   #版本不檢查
timeout = 120   #超時時間設置

注:若是.pip/pip.conf沒有則建立便可。

6.安裝完以後進入python命令行,導入tensorflow包,若是沒有任何輸出則表明安裝成功:

(tensorflow) [zero@zero-virtual-machine ~]$ python
Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
>>>

其餘的一些操做:
deactivate命令可退出虛擬環境:

(tensorflow) [zero@zero-virtual-machine ~]$ deactivate
[zero@zero-virtual-machine ~]$

刪除虛擬環境只須要把生成的目錄刪除便可:

[zero@zero-virtual-machine ~]$ rm -rf tensorflow/
[zero@zero-virtual-machine ~]$

以上咱們演示了經過virtualenv來安裝tensorflow,接下來再演示一下經過本地pip來安裝tensorflow:

1.首先須要安裝pip及dev:

[zero@zero-virtual-machine ~]$ sudo apt-get install python-pip python-dev

2.而後使用pip進行安裝便可:

[zero@zero-virtual-machine ~]$ pip install tensorflow

3.安裝完以後也是進入python命令行,導入tensorflow包,若是沒有任何輸出則表明安裝成功:

[zero@zero-virtual-machine ~]$ python
Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
>>>

這種方式是安裝在本地的系統上,而以前那種安裝方式則是安裝在一個虛擬的環境中,每次都須要進入虛擬環境中才可使用tensorflow,安裝在本地系統則不須要。

卸載tensorflow使用如下命令:

sudo pip uninstall tensorflow

咱們可使用pip來安裝一些Python的基本類庫:

pip install numpy
pip install pandas
pip install matplotlib

編寫第一個TensorFlow程序:Hello World

以上咱們已經安裝好了TensorFlow,那麼咱們就來編寫第一個TensorFlow程序:Hello World

1.建立好相應的目錄:

[zero@zero-virtual-machine ~]$ mkdir TensorFlow
[zero@zero-virtual-machine ~]$ cd !$
cd TensorFlow
[zero@zero-virtual-machine ~/TensorFlow]$ mkdir HelloWorld
[zero@zero-virtual-machine ~/TensorFlow]$ cd !$
cd HelloWorld
[zero@zero-virtual-machine ~/TensorFlow/HelloWorld]$

2.編輯一個python文件:

[zero@zero-virtual-machine ~/TensorFlow/HelloWorld]$ vi helloworld.py  # 內容以下
# -*- coding: UTF-8 -*-

# 引入 Tensorflow 庫
import tensorflow as tf

# 建立一個常量 Operation (操做)
hw = tf.constant("Hello Wolrd!")

# 啓動一個Tensorflow 的 Session(會話)
sess = tf.Session()

# 運行 Graph (計算圖)
print sess.run(hw)

# 關閉 Session(會話)
sess.close()

3.運行這個文件,看看是否正常輸出:

[zero@zero-virtual-machine ~/TensorFlow/HelloWorld]$ python helloworld.py 
2018-02-01 00:22:43.680173: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
Hello Wolrd!
[zero@zero-virtual-machine ~/TensorFlow/HelloWorld]$

如上,能夠看到 Hello Wolrd! 被正常輸出了,以及打印了一些警告提示信息,到此爲止咱們的第一個TensorFlow程序就編寫完成了。

這個警告的大體意思是:tensorflow以爲你電腦cpu還行,支持AVX(Advanced Vector Extensions),運算速度還能夠提高,因此能夠開啓更好更快的模式,可是你如今用的模式相對來講可能不是那麼快,因此這個其實並非存在錯誤,因此若是不嫌當前的模式慢就忽略掉這個警告就行了。

若是,不想有這個警告信息的輸出,則能夠在代碼上加上這兩句:

import os

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

而後就不會輸出警告信息了。

相關文章
相關標籤/搜索