1. 程式人生 > >安裝TensorFlow-gpu,pytorch(二)

安裝TensorFlow-gpu,pytorch(二)

根據(一):因此我選擇:cuda 9.0,NVIDIA 390.87,TensorFlow-gpu 1.12.0,Python 3.6.8,cudnn 7.3.1,pytorch 1.0

 檢視版本:

python3 --version
pip3 --version
virtualenv --version

安裝TensorFlow-gpu 1.12.0:

測試cudnn有沒有裝成功直接跑tensorflow試試,先安裝gpu版本tensorflow:

參考安裝tensorflow-gpu 和opencv:解決國內安裝tensorflow, opencv等安裝不成功或下載太慢問題

官方教程,python3版本的安裝方法如下:會自動安裝最新的版本

sudo apt install python3-pip
pip3 install --upgrade tensorflow     # for Python 3.*
pip3 install --upgrade tensorflow-gpu # for Python 3.* and GPU

 安裝指定版本:

 pip3 install tensorflow==1.11.0
 pip3 install tensorflow-gpu==1.11.0

但是國內網路問題,網速非常慢,如果沒有翻牆,可以按照下面方法快速安裝:會自動安裝最新的版本

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade tensorflow # for Python 3.* 
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade tensorflow-gpu # for Python 3.* and GPU

安裝指定版本:

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/  tensorflow==1.11.0
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/  tensorflow-gpu==1.11.0

以上是使用清華的映象源地址,也可使用下面的映象地址替換清華源地址:

阿里雲                               http://mirrors.aliyun.com/pypi/simple/

中國科技大學                   https://pypi.mirrors.ustc.edu.cn/simple/

豆瓣(douban)                    http://pypi.douban.com/simple/

清華大學                            https://pypi.tuna.tsinghua.edu.cn/simple/

華中理工大學:                http://pypi.hustunique.com/

山東理工大學:                http://pypi.sdutlinux.org/

 以上就安裝好了tensorflow-gpu 1.12.0版本

import tensorflow as tf
tf.__version__  # 檢視版本
tf.__path__  # 查詢tensorflow安裝路徑為:

 確定自己的TensorFlow是CPU還是GPU工作:https://blog.csdn.net/linghugoolge/article/details/83989649

測試cudnn有沒有裝成功直接跑tensorflow試試:

gedit a.py

在該檔案中寫入:

import tensorflow as tf 
# Creates a graph. 
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a') 
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b') 
c = tf.matmul(a, b) 
# Creates a session with log_device_placement set to True. 
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True)) 
# Runs the op. 
print(sess.run(c))

執行:

python3 a.py

結果:

安裝opencv:

與tensorflow安裝一樣,如果沒有翻牆的話,安裝過程非常漫長,而且中間安裝還有很大可能中斷,因此可以套用tensorflow的國內源安裝方法來安裝opencv:

# python3版本的基本包安裝 
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python 
# python3版本的額外包安裝 
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-contrib-python

一般的pip3安裝可以參考如下格式

# for python3.x  可以替換其它源
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple XXXXXXX 

 既然用pip3安裝也可以用pip3解除安裝包:參考下面anaconda的講解

我想要有多個執行環境,本機的是tensorflow-gpu 1.12.0,建立一個pytorch 1.0的虛擬環境,我希望不同的框架使用不同的虛擬環境。因此anaconda是一個強大的環境管理包

安裝anaconda:

去官網查了版本,因為我需要的是Python 3.6版本系列的,所以下載的是anaconda 3  5.2.0而不是最新的那個版本(自帶的是3.7.0版本的)。在國內清華映象源下載sh檔案:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

終端執行:例如

sudo sh Anaconda3-5.2.0-Linux-x86_64.sh

 解除安裝anaconda參照https://blog.csdn.net/lixintong1992/article/details/67654753

涉及到下載速度,增加映象源:

conda config --show  # 顯示conda的基本情況
conda config --show channels  # 顯示原來的映象源

channels:
  - defaults

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/

conda config --set show_channel_urls yes
conda config --show channels

show_channel_urls: true
channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - defaults

刪除映象源:

conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

 注意:

我在系統自帶的python(終端輸入python3)是3.6.7版本,在系統安裝好tensorflow 1.12.0(僅支援python3.5-3.6)。我的初衷是系統執行tensorflow框架,anaconda建立一個環境執行pytorch以及其他框架。

安裝好anaconda之後,在終端輸入python3或者python發現呼叫的都是anaconda自帶的python版本(3.7.0),所以不能執行tensorflow框架。如果想要用系統自帶的Python怎麼辦呢?可檢視https://blog.csdn.net/chichoxian/article/details/82185140

1.最直接的方法是:

/usr/bin/python3

 2.推薦的方法:不用輸入這麼長的一大堆

裡面的~/.bashrc檔案很有用,我們可以把pycharm或者其他軟體的連結替換成我們想要的快捷命令開啟!!!!!

系統自帶的python位置在/usr/bin/python3,anaconda自帶的python位置在/home/jupy/anaconda3/bin/python

例如:sudo gedit ~/.bashrc   開啟該檔案,在文末新增,在終端使用py36就能快捷開啟系統自帶的python版本

# system python (python3.6.7)
alias py36='/usr/bin/python3'

之後source ~/.bashrc 就可以了

因此如果終端想使用系統自帶的python,直接輸入以下:

py36

注意:

和上面的一樣,anaconda安裝好之後,pip也會有影響

whereis pip
pip: /home/jupy/anaconda3/bin/pip

whereis pip3
pip3: /usr/bin/pip3 /usr/share/man/man1/pip3.1.gz

 所以用pip檢視已經安裝的包的時候,pip list 顯示的是anaconda自帶的安裝包,pip3 list 顯示的是系統的安裝包(區別的依據在於tensorflow-gpu包的存在)。因此,如果對系統的也就是/usr/bin裡面的包進行操作的話需要用pip3;對anaconda自帶的包即/home/jupy/anaconda3/bin操作的話需要用pip

# 安裝包
 pip3 install SomePackage           # latest version
 pip3 install SomePackage==1.0.4     # specificversion
 pip3 install 'SomePackage>=1.0.4'     #minimum version

# 檢視已安裝的包
 pip3 show packagename     # 檢視指定的安裝包資訊
 pip3 list                # 列出所有的安裝包

# pip升級包 
 pip3 install --upgrade packagename    

# pip3解除安裝包,解除安裝使用pip3安裝的python包時,可以完全解除安裝乾淨;解除安裝使用python setup.py install安裝的python包時,並不能解除安裝乾淨,仍然需要手動刪除相關檔案
 pip3 uninstall packagename

anaconda 建立環境:

# 環境
 conda create -n torch python=3.6.7 # 利用conda建立名字為torch python版本是3.6.8的環境
 conda create -n tf python=3.6.7 # 利用conda建立名字為tf(tensorflow-gpu) python版本是3.6.8的環境
 conda remove -n torch --all  # 刪除torch環境
 source activate torch  # 啟用torch環境
 source deactivate  # 退出torch環境
 conda info  # 檢視所處的環境資訊
 conda env list  # 檢視可選的環境列表

# 安裝包
 conda update conda  # 更新conda版本
 conda update PACKAGENAME  # 更新包
 conda install PACKAGENAME   # 安裝包
 conda install jupyter  # 安裝jupyter notebook
 conda list   # 顯示出所有安裝過的包
 conda remove --name torch toolz boltons  # 從torch的環境中刪除toolz和boltons這兩個包

注意:

經過多處考慮(比如使用jupiter,ipython等),不使用系統的python環境,而全部使用conda環境,所以建了兩個環境,一個是torch,另外一個是tf.

不過,直接使用conda的環境就不用興建了,所以在前面要選擇自帶Python3.6版本的anaconda檔案。

安裝pytorch:https://pytorch.org/resources

conda install pytorch torchvision -c pytorch

注意:

用conda安裝的包只能在conda list裡面檢視,用conda解除安裝能完全卸乾淨

用pip(或者pip3)安裝的包只能在 pip list裡面檢視,用pip解除安裝能完全卸乾淨