您好,登錄后才能下訂單哦!
這篇文章主要介紹了如何安裝TensorFlow2.x的CPU與GPU版本,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
更新了最新版本安裝方法,目前支持TensorFlow1.13.1 -> TensorFlow2.4.0:見1.3節
本篇文章就帶領大家用最簡單地方式安裝TF2.0正式版本(CPU與GPU),由我來踩坑,方便大家體驗正式版本的TF2.0。
廢話不多說現在正式開始教程。
我目前是在Windows10上面,使用conda管理的python環境,通過conda安裝cuda與cudnn(GPU支持),通過pip安裝的tensorflow2.0。經過嘗試只是最簡單地安裝方式,無需配置復雜環境。
conda是很好用python管理工具,可以方便建立管理多個python環境。后面安裝的步驟里我也會介紹一些常用的conda指令。
conda 我推薦使用安裝miniconda,大家可以理解為精簡版的anaconda,只保留了一些必備的組件,所以安裝會比快上很多,同時也能滿足我們管理python環境的需求。(anaconda一般在固態硬盤安裝需要占用幾個G內存,花費1-2個小時,miniconda一般幾百M,10分鐘就可以安裝完成了)
miniconda推薦使用清華源下載:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/
選擇適合自己的版本就可以,
windows推薦地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-4.7.10-Windows-x86_64.exe
ubuntu推薦地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-4.7.10-Linux-x86_64.sh
Mac os推薦地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-4.7.10-MacOSX-x86_64.pkg
下以windows版本來安裝miniconda作為演示,從上述下載合適版本,下載好后以管理員權限打開點擊安裝。
注意這兩個都要勾選,一個是讓我們可以直接在cmd使用conda指令,第二個是把miniconda自帶的python3.7作為系統python。
安裝好后就可以在cmd中使用conda指令了,cmd打開方式,windows鍵+R鍵,彈出輸入框,輸入cmd就進入了。也可以直接在windows搜索cmd點擊運行。
下面介紹些cmd conda指令(env_name代表環境名稱):
查看conda環境:conda env list
新建conda環境(env_name就是創建的環境名,可以自定義):conda create -n env_name
激活conda環境(ubuntu與Macos 將conda 替換為source):conda activate env_name
退出conda環境:conda deactivate
安裝和卸載python包:conda install numpy # conda uninstall numpy
查看已安裝python列表:conda list -n env_name
知道這些指令就可以開始使用conda新建一個環境安裝TF2.0了。
同時為了加速安裝,可以換一下conda與pip的源。
下面改下“conda”源,換為清華源用以加速,在“CMD”中復制粘貼以下指令,并回車:
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/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/fastai/ conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/ conda config --set show_channel_urls yes
同時我們也將“pip”換為清華源用以加速,在“CMD”中復制粘貼以下指令,并回車:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
TF CPU安裝比較簡單,因為不需要配置GPU,所以windows ubuntu macOS安裝方式都類似,缺點就是運行速度慢,但是用于日常學習使用還是可以的。
下面以windows版本做演示:一下均在命令行操作
1.1.0 新建TF2.0 CPU環境(使用conda 新建環境指令 python==3.6表示在新建環境時同時python3.6)
conda create -n TF_2C python=3.6
當彈出 :Proceed ([y]/n)? 輸入y回車
完成后就可以進入此環境
1.1.1 進入TF_2C環境
conda activate TF_2C
進入后我們就可以發現:(TF_2C)在之前路徑前面,表示進入了這個環境。使用conda deactivate可以退出。
我們再次進入 conda activate TF_2C ,便于執行下述命令
1.1.2 安裝TF2.0 CPU版本(后面的 -i 表示從國內清華源下載,速度比默認源快很多)
pip install tensorflow==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
如果網不好的,多執行幾次。然后過一會就安裝好啦。下面我們做下簡單測試。
1.1.3 測試TF2.0 CPU版本(把下面代碼保存到demo.py使用TF_2C python運行)
import tensorflow as tf version = tf.__version__ gpu_ok = tf.test.is_gpu_available() print("tf version:",version,"\nuse GPU",gpu_ok)
如果沒有問題的話輸出結果如下:可以看到tf 版本為2.0.0 因為是cpu版本,所以gpu 為False
GPU版本和CPU類似,但是會多一步對于GPU支持的安裝。下面來一步步實現。安裝之前確認你的電腦擁有Nvidia的GPU
1.2.0 新建TF2.0 GPU環境(使用conda 新建環境指令 python==3.6表示在新建環境時同時python3.6)
conda create -n TF_2G python=3.6
當彈出 :Proceed ([y]/n)? 輸入y回車
完成后就可以進入此環境
1.1.1 進入TF_2G環境
conda activate TF_2G
1.1.2 安裝GPU版本支持,擁有Nvidia的GPU的windows一般都有默認驅動的,只需要安裝cudatoolkit 與 cudnn包就可以了,要注意一點需要安裝cudatoolkit 10.0 版本,注意一點,如果系統的cudatoolkit小于10.0需要更新一下至10.0
conda install cudatoolkit=10.0 cudnn
1.1.3 安裝TF2.0 GPU版本(后面的 -i 表示從國內清華源下載,速度比默認源快很多)
pip install tensorflow-gpu==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
如果網不好的,多執行幾次。然后過一會就安裝好啦。下面我們做下簡單測試。
1.1.3 測試TF2.0 GPU版本(把下面代碼保存到demo.py使用TF_2G python運行)
import tensorflow as tf version = tf.__version__ gpu_ok = tf.test.is_gpu_available() print("tf version:",version,"\nuse GPU",gpu_ok)
如果沒有問題的話輸出結果如下:可以看到tf 版本為2.0.0 因為是gpu版本,所以gpu 為True,這表示GPU版本安裝完成了。
tf version: 2.0.0 use GPU True
首先可以通過這個鏈接,看看TensorFlow版本對應的依賴項:
https://tensorflow.google.com/install/source#linux
可以看出,如果是安裝TensorFlow2.4則對應CUDA=11.0,cuDNN=8.0;TensorFlow2.1-2.3則對應CUDA=10.1,cuDNN=7.6;TensorFlow2.0,對應CUDA=10.0,cuDNN=7.6;TensorFlow1.13.1-1.15.0,對應CUDA=10.0,cuDNN=7.6。要注意一點Nvidia Driver的版本號要>=CUDA版本號。
這個需要注意,錯了版本就會導致安裝GPU失敗。
下面針對不同版本TensorFlow,分別說明。
從 TensorFlow 2.1 開始,pip 包 tensorflow 即同時包含 GPU 支持,無需通過特定的 pip 包 tensorflow-gpu 安裝 GPU 版本。如果對 pip 包的大小敏感,可使用 tensorflow-cpu 包安裝僅支持 CPU 的 TensorFlow 版本。
TensorFlow2.4/2.3 cpu版本安裝
pip install tensorflow-cpu==2.4 #or pip install tensorflow-cpu==2.3
TensorFlow2.4 gpu版本安裝(由于cudnn8在conda還沒有更新,需要借助pytorch安裝cudnn8 :)
conda install pytorch=1.7.1 torchvision torchaudio cudatoolkit=11.0 pip install tensorflow==2.4
TensorFlow2.3/2.2/2.1 gpu版本安裝
conda install cudatoolkit=10.1 cudnn=7 pip install tensorflow==2.3
TensorFlow2.0 gpu版本安裝
conda install cudatoolkit=10.0 cudnn=7 pip install tensorflow-gpu==2.0
TensorFlow1.15/1.14/1.13.1 gpu版本安裝
conda install cudatoolkit=10.0 cudnn=7 pip install tensorflow-gpu==1.15
把下述代碼保存為main.py
import tensorflow as tf X = tf.constant([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]]) y = tf.constant([[10.0], [20.0]]) class Linear(tf.keras.Model): def __init__(self): super().__init__() self.dense = tf.keras.layers.Dense( units=1, activation=None, kernel_initializer=tf.zeros_initializer(), bias_initializer=tf.zeros_initializer() ) def call(self, input): output = self.dense(input) return output # 以下代碼結構與前節類似 model = Linear() optimizer = tf.keras.optimizers.SGD(learning_rate=0.01) for i in range(100): with tf.GradientTape() as tape: y_pred = model(X) # 調用模型 y_pred = model(X) 而不是顯式寫出 y_pred = a * X + b loss = tf.reduce_mean(tf.square(y_pred - y)) grads = tape.gradient(loss, model.variables) # 使用 model.variables 這一屬性直接獲得模型中的所有變量 optimizer.apply_gradients(grads_and_vars=zip(grads, model.variables)) if i % 10 == 0: print(i, loss.numpy()) print(model.variables)
0 250.0 10 0.73648137 20 0.6172349 30 0.5172956 40 0.4335389 50 0.36334264 60 0.3045124 70 0.25520816 80 0.2138865 90 0.17925593 [<tf.Variable 'linear/dense/kernel:0' shape=(3, 1) dtype=float32, numpy= array([[0.40784496], [1.191065 ], [1.9742855 ]], dtype=float32)>, <tf.Variable 'linear/dense/bias:0' shape=(1,) dtype=float32, numpy=array([0.78322077], dtype=float32)>]
感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何安裝TensorFlow2.x的CPU與GPU版本”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。