淺入淺出TensorFlow 2 - 零基礎安裝
對一個框架的熟悉過程是從安裝開始,今天就帶大家熟悉這裡面的 第一道坎 - 安裝。
TensorFlow 安裝方式總結為:
一. Pip安裝步驟:
1)安裝 Pip
Pip是目前使用最多的Python包管理工具。通常Linux和Mac是自帶Python環境的(2.X版本,附帶pip),如果系統沒有安裝Python環境,或者你需要使用Python3,可以參考下面的安裝步驟:
不同的平台下的安裝方式有所區別,常用的平台安裝命令:
● Ubuntu 64-bit
$ sudo apt-get install python-pip python-dev # for python $ sudo apt-get install python3-pip python3-dev # for python3
有時會提醒pip升級,處理方法如下:
# You are using pip version 7.1.0, however version 9.0.1 is available. # You should consider upgrading via the pip install --upgrade pip command. $ sudo pip install --upgrade pip # for python $ sudo pip3 install --upgrade pip # for python3
● CentOS, Fedora, RHEL
# for python $ python --version # 自帶Python 2.6.6 和 pip $ sudo yum install python-pip python-devel # 命令安裝 # for python3 $ sudo yum install epel-release python34 # Python 3.4.5 $ wget --no-check-certificate https://bootstrap.pypa.io/get-pip.py $ sudo python3 get-pip.py # 未自帶pip3,從官網安裝
● MAC OS
mac 自帶 python2.7 和 pip,如果沒有的話,可以通過 下面的方式快速安裝:
$ sudo easy_install pip
需要安裝3.X版本的話,推薦用home-brew安裝:
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" # 1.可能需要修改許可權 $ sudo chown -R $(whoami) /usr/local/Cellar # 2.可能遇到下面錯誤,需要刪掉對應路徑,然後update # Error: Could not link: /usr/local/etc/bash_completion.d/brew $ rm -rf /usr/local/etc/bash_completion.d/brew $ brew update $ brew install python3 $ pip3 -V
● Window
a)下載Python安裝包 .exe(3.5.3版本)
地址: https://www.python.org/downloads/windows/
Download Windows x86-64 executable installer
b)雙擊自定義安裝 需要修改默認安裝位置,配置環境變數 - 選擇 "Add Python 3.5 to PATH" 選項。
c)高級選項,選擇安裝位置,勾選 install for all users
註:windows下也可以考慮 採用 Anaconda 安裝,點擊查看 安裝方法。
2)安裝 CUDA
在Ubuntu下安裝 CUDA 和 cudnn過程(其他版本類似):
a)安裝 NVIDIA驅動
官網下載地址:http://www.nvidia.com/Download/index.aspx?lang=en-us
執行命令安裝:
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get install nvidia-375 sudo apt-get install mesa-common-dev sudo apt-get install freeglut3-dev
查詢安裝結果:
sudo reboot # 重啟 nvidia-smi
b)安裝 CUDA
官網下載地址:https://developer.nvidia.com/cuda-downloads
執行下載的 CUDA安裝包(.Run文件)進行安裝:
sudo sh cuda_8.0.61_375.26_linux.run
按空格 讀完聲明文件,Accept 接受安裝,除了 驅動(已裝完)選 no 之外,其他均選擇默認。
c)添加 CUDA 系統路徑
添加環境變數,可以加到 profile里,也可以加到 bashrc,在最後加入:
修改 profile 文件,在末尾處添加(不要有空格)
sudo gedit /etc/profile #or gedit ~/.bashrc export PATH=/usr/local/cuda-8.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64$LD_LIBRARY_PATH source /etc/profile # save config(or sudo ldconfig)
通過命令查看CUDA安裝是否成功?
cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery sudo make ./deviceQuery
d)安裝 cudnn
官網下載地址:https://developer.nvidia.com/cudnn
解壓, Copy到對應 CUDA 目錄,並建立軟鏈接。
# 複製頭文件和lib文件 sudo cp include/cudnn.h /usr/local/cuda/include/ sudo cp lib64/lib* /usr/local/cuda/lib64/ # 鏈接動態庫 cd /usr/local/cuda/lib64/ sudo rm -rf libcudnn.so libcudnn.so.5 sudo ln -s libcudnn.so.5.x.x libcudnn.so.5 sudo ln -s libcudnn.so.5 libcudnn.so
3)安裝 TensorFlow
根據你所選擇的Python版本,下載對應的TensorFlow描述文件,進行安裝:
https://storage.googleapis.com/tensorflow/
這是個XML文件,搜索1.1.0版本(截止到目前最新版本)對應的whl文件:
操作系統對應.Whl文件
@Linux
CPU版本
-- linux/cpu/tensorflow-1.1.0rc0-cp27-none-linux_x86_64.whl # 33|34|35|36 替換下面的cp33-cp33 -- linux/cpu/tensorflow-1.1.0rc0-cp33-cp33m-linux_x86_64.whl GPU版本 -- linux/gpu/tensorflow_gpu-1.1.0rc2-cp27-none-linux_x86_64.whl # 33|34|35|36 -- linux/gpu/tensorflow_gpu-1.1.0rc2-cp33-cp33m-linux_x86_64.whlDebian CPU版本(only)
-- linux/cpu/debian/jessie/tensorflow-1.1.0rc1-cp27-none-linux_x86_64.whl雲版本Cloudml
CPU版本
-- linux/cpu/cloudml/tensorflow-1.1.0rc0-cp27-none-linux_x86_64.whl GPU版本(最高版本是1.0.0) -- linux/gpu/cloudml/avx2_fma/tensorflow_gpu-1.0.0-cp27-none-linux_x86_64.whl@Mac
CPU版本
-- mac/cpu/tensorflow-1.1.0rc2-py2-none-any.whl -- mac/cpu/tensorflow-1.1.0rc2-py3-none-any.whl GPU version穩定的release(rc0)-- mac/gpu/tensorflow_gpu-1.1.0rc0-py2-none-any.whl
-- mac/gpu/tensorflow_gpu-1.1.0rc0-py3-none-any.whl@Windows 目前僅支持Python 3.5
CPU版本 -- windows/cpu/tensorflow-1.1.0rc2-cp35-cp35m-win_amd64.whl GPU版本 -- windows/gpu/tensorflow_gpu-1.1.0rc2-cp35-cp35m-win_amd64.whl通過URL將對應的 whl 文件下載到本地, 比如作者採用 Py3.4(ubuntu14對應版本),Linux下對應的CPU版本:
# Python 3 $ sudo pip3 install --upgrade tensorflow-1.1.0rc2-cp34-cp34m-manylinux1_x86_64.whl
也可以根據自己需要,直接配置URL在線 whl 進行安裝:
# Python3 version, GPU $ sudo pip3 install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.1.0rc2-cp35-cp35m-linux_x86_64.whl # Python3 version, CPU $ sudo pip3 install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0rc0-cp34-cp34m-linux_x86_64.whl # python2.X version, Linux with GPU $ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.1.0rc2-cp27-none-linux_x86_64.whl
需要注意:可能會遇到安裝失敗的情況,是網路問題,需要多試幾次!
二. Docker安裝:
在雲上部署的情況下常用Docker安裝,關於Docker安裝作者並不推薦,Docker的學習成本相對較高。
三. Make編譯:
1.下載源碼
Git clone --recurse-submodules https://github.com/tensorflow/tensorflow
2. 安裝Bazel
可以參考官網安裝方法:https://bazel.build/versions/master/docs/install.html
3. 安裝tensorflow依賴庫
sudo apt-get install Python-numpy swig python-dev python-wheel
4. 配置tensorflow,需要你指定相應文件的安裝目錄
cd進tensorflow源文件。sudo ./configure
5. 使用Bazel編譯構建
bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer bazel-bin/tensorflow/cc/tutorials_example_trainer--use_gpu
四. 測試安裝:
安裝完成,下面要測試安裝是否成功,命令行環境測試(注意python 和 python3的語法稍有不同):
# 進入python命令行 $ python # or python3 >>> import tensorflow as tf >>> str = tf.constant("Hello World!") >>> se = tf.Session() >>> print se.run(str) # or print (se.run(str))
當出現預料中的 Hello World! 時,恭喜你,TensorFlow 環境安裝成功了,折騰了那邊久終於鬆了一口氣,滿滿的成就感吧。
CentOS下如果出現錯誤提示: ImportError: /lib64/libc.so.6: version `GLIBC_2.14 not found
Failed to load the native TensorFlow runtime.
不用擔心,這是你的GLIB版本過低(操作系統版本有點老),解決方法如下:
1. 到 http://ftp.gnu.org/gnu/glibc/
下載 glibc-2.14.tar.gz 以及 對應插件 glibc-ports-2.14.tar.gz
註:安裝 glib2.17以上版本不需要 ports 插件,步驟一樣。
2. 編譯安裝
[user@localhost ~]$ tar -xzvf glibc-2.14.tar.gz [user@localhost ~]$ tar -xzvf glibc-ports-2.14.tar.gz [user@localhost ~]$ mv glibc-ports-2.14 glibc-2.14/ports [user@localhost ~]$ cd glibc-2.14 [user@localhost glibc-2.14]$ mkdir build [user@localhost glibc-2.14]$ cd build [user@localhost build]$ ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin [user@localhost build]$ make -j4 [user@localhost build]$ su [root@localhost build]# make install
3. 替換文件,建立軟連接
註:2.17以上版本不需要下面操作,install已經完成了替換。
[root@localhost build]# cp libc.so /lib64/libc-2.14.so # copy [root@localhost build]# rm -rf /lib64/libc.so.6 # 刪除原文件 [root@localhost build]# LD_PRELOAD=/lib64/libc-2.14.so ln -s /lib64/libc-2.14.so /lib64/libc.so.6 # 建立軟連接 [root@localhost build]# strings /lib64/libc.so.6 | grep GLIBC # 查看是否安裝成功
libstdc++ 版本問題:
對應 libstdc++ 報錯,處理方式與上面一致,安裝新版本gcc即可,具體方式可以配置YUM源,也可以下載文件編譯安裝,或者下載庫替換,這裡不再介紹。
五. 配置集成環境:
配置集成環境是大多數情況下開發大型軟體必做的一步,很多人都不喜歡用命令行,可以理解,在Linux下我們推薦Eclipse,Windows下推薦VS。
Eclipse配置:
1)配置 java環境
下載並安裝 jdk1.8, 配置環境,打開~/.bashrc,加入一行:
export JAVA_HOME=/your path/jdk/jdk1.8 export CLASSPATH=${JAVA_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH source ~./bashrc java -version # 查看版本
2)安裝 Eclipse
3)在 Eclipse 中安裝pydev插件
Help -> Install New Software... 在彈出的對話框中,點Add 按鈕。 Name選擇 http://pydev.org/updates
4)配置 pydev 解釋器
在Eclipse菜單欄,點擊Windows ->Preferences。
選擇左側列表 PyDev->Interpreter - Python,進入配置。
點擊右上角 New按鈕, 選擇 python.exe的路徑,配置完成
VS2015 配置:
Windows下的IDE 推薦2015,因為免費又好用,VS2015集成了Python開發環境,具體配置和使用方法這裡就不講了,自己試一下。
OK,還等什麼,新建一個Project,開始你的旅程吧。
推薦閱讀:
※TensorFlow保留中間層的Feature Map
※如何打造深度學習的雲端實驗室?
※TensorFlow從1到2 | 第三章:深度學習革命的開端:卷積神經網路
※MobileNetV2模型的簡單理解及其代碼實現
※利用TensorFlow搞定知乎驗證碼之《讓你找中文倒轉漢字》
TAG:TensorFlow |