天天看點

深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

文章目錄

  • tensorflow配置環境
    • 0tensorflow簡介
      • 0.0:什麼是tensorflow
      • 0.1:tensorflow可以用來幹嘛
      • 0.2:tensorflow基礎
    • 1、tensorflow配置環境基礎
      • 1.1tensorflow配置環境需要的軟體、硬體環境。
      • 1.2注意:幾個關系
    • 2、tensorflow配置環境
      • 2.0 在anaconda中建立虛拟環境
      • 2.1安裝GPU環境下的跑tensorflow需要的軟體
      • 2.2安裝tensorflow
    • 3、測試
      • 3.0檢視tensorflow版本和路徑
      • 3.1檢視keras是否可用
      • 3.2檢視GPU是否可用
      • 3.3檢視GPU具體資訊

tensorflow配置環境

0tensorflow簡介

工欲善其事必先利其器,在用tensorflow前,首先得了解一下tensorflow。這樣在使用的時候才能避免很多問題。更多問題請檢視tensorflow中文官網。

tensorflow中文官網

0.0:什麼是tensorflow

TensorFlow 是一個免費、開源、流行的 機器學習 和 深度學習架構。 由谷歌大腦 (Google Brain) 團隊開發, 于 2015 年 11 月 9 日釋出。用于使用資料流圖進行數值計算, 完全基于 Python 語言,使得機器學習更快速、更容易。

0.1:tensorflow可以用來幹嘛

TensorFlow 可以訓練和運作深度神經網絡 (DNN),用于圖像識别,手寫數字分類,循環神經網絡 (RNN),詞嵌入 (word embedding),自然語言處理,視訊檢測等等。 TensorFlow 不僅可以運作在多個 CPU/GPU 上,也可以運作在移動作業系統中。

0.2:tensorflow基礎

參考連結:深度學習架構介紹以及tensorflow基礎

了解tensorflow基礎,重在了解tensor(張量,即多元數組)和Flow(即資料的流動,在tensorflow中,資料流動圖用節點和邊組成的有向圖來描述數學運算)

1、tensorflow配置環境基礎

我是基于win10,64位的作業系統。

1.1tensorflow配置環境需要的軟體、硬體環境。

硬體:電腦上是否有GPU(如有GPU,檢查自己的GPU是否支援tensorflow,否則配置CPU版的tensorflow)

軟體:anaconda、cudatoolkit(有本地和線上兩種方式)、(顯示卡驅動)、cudnn。

注:CUDA Toolkit本地安裝包時内含特定版本Nvidia顯示卡驅動的,是以隻選擇下載下傳CUDA Toolkit就足夠了,如果想安裝其他版本的顯示卡驅動就下載下傳相應版本即可

需要安裝的包:keras、tensorflow、tensorflow-gpu

a.檢查自己電腦組態:檢視自己電腦是否有GPU,以及驅動程式版本。如果沒有GPU,則安裝CPU版本就好。

深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

b.檢視本機GPU是否支援

檢視連結

深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

1.2注意:幾個關系

(1)NVIDIA的顯示卡驅動程式和CUDA的關系:NVIDIA的顯示卡驅動程式和CUDA完全是兩個不同的概念。CUDA是NVIDIA推出的用于自家GPU的并行計算架構,也就是說CUDA隻能在NVIDIA的GPU上運作,而且隻有當要解決的計算問題是可以大量并行計算的時候才能發揮CUDA的作用。(可以怎麼了解,GPU是螺絲,cuda是扳手,通過cuda)

CUDA和GPU之間的關系

*NVIDIA的顯示卡驅動器與CUDA并不是一一對應的。*CUDA的本質是一個工具包(ToolKit)。當我們使用一台電腦的時候預設的已經安裝了NVIDIA的顯示卡驅動,但是這個時候我們是沒有CUDA可以用的,我們可以更新我們的驅動,更新連結為

tensorflow和keras之間的關系

Keras是基于TensorFlow和Theano的深度學習庫,也僅支援python開發。

它是為了支援快速實踐而對tensorflow或者Theano的再次封裝,讓我們可以不用關注過多的底層細節,能夠把想法快速轉換為結果。

(3)cudnn和cuda的關系

cudnn與CUDA沒有一一對應的關系。cudnn是一個SDK,是一個專門用于神經網絡的加速包,注意,它跟我們的CUDA沒有一一對應的關系,即每一個版本的CUDA可能有好幾個版本的cuDNN與之對應,但一般有一個最新版本的cuDNN版本與CUDA對應更好。

(3)GPU、cuda、cudnn、tensorflow、keras之間的關系。

GPU:用來計算

cuda:告訴GPU要怎麼計算

cudnn:專門用于神經網絡的加速包。深度學習火了以後,專為深度學習開發的通過cuda調用GPU的工具包。

tensorflow:深度學習架構

keras:對tensorflow的二次封裝。

(4)cuda、cudnn、tensorflow之間的版本對應關系

cuda、cudnn、tensorflow之間的對應關系

雖然說cuda和cudnn之間沒有關系,但是官方還是做了測試,并推薦了穩定版的搭配。

深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

2、tensorflow配置環境

2.0 在anaconda中建立虛拟環境

建立虛拟環境

激活虛拟環境

activate tf
           

将虛拟環境添加到jupyter notebook中

首先安裝ipykernel

conda install ipykernel
           
conda install -n tf ipykernel
           

将ipykernel寫入jupyter notebook中的環境中

2.1安裝GPU環境下的跑tensorflow需要的軟體

安裝詳細教程

建立好虛拟環境後,在虛拟環境中安裝tensorflow。現在大家都是用的GPU跑深度學習模型,在安裝tensorflow前需要安裝一些硬體

a、下載下傳與自己電腦系統比對的顯示卡驅動(cuda):

檢視顯示卡驅動是否安裝成功:

在控制台面闆下輸入:

nvidia-smi
           
深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

b、安裝CUDA Toolkit 和 cuDNN

cuda下載下傳連結

cudnn下載下傳連結

在 Anaconda 環境下,對于 TensorFlow 2.1,可使用:

conda install cudatoolkit=10.1
conda install cudnn=7.6.5
           

需要注意的是:安裝 CUDA Toolkit 和 cuDNN,要安裝的 CUDA Toolkit 和 cuDNN 版本号須要一一對應(最好),一般來說,高版本的cudnn可相容低版本的cuda。官網給出的版本對應是經過官網測試的。

。參照官網:cuda和cudnn版本對應

c、添加環境變量

将 CUDA®、CUPTI 和 cuDNN 安裝目錄添加到 %PATH% 環境變量中。

例如,如果 CUDA® 工具包安裝到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1,并且 cuDNN 安裝到 C:\tools\cuda,請更新 %PATH% 以比對路徑:

SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\CUPTI\lib64;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;%PATH%
SET PATH=C:\tools\cuda\bin;%PATH%
           

我添加的環境變量如下:

深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

2.2安裝tensorflow

pip install keras
           

3、測試

3.0檢視tensorflow版本和路徑

import tensorflow as tf
print(tf.__version__)#tensorflow版本
print(tf.__path__)#tensorflow安裝路徑
           
深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

3.1檢視keras是否可用

from keras.models import Model
from keras.layers import Input, BatchNormalization, Conv2D, MaxPooling2D, Dropout, concatenate, merge, UpSampling2D
from keras.optimizers import Adam
           
深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

3.2檢視GPU是否可用

true表示可用

深度學習之tensorflow:軟硬體安裝,環境配置,測試tensorflow配置環境

3.3檢視GPU具體資訊

nvidia-smi
           

繼續閱讀