安裝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解除安裝能完全卸乾淨