欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Ubuntu中配置TensorFlow使用環(huán)境的方法

 更新時(shí)間:2020年04月21日 15:05:59   作者:Sensation_ONE  
這篇文章主要介紹了Ubuntu中配置TensorFlow使用環(huán)境的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

一、TensorFlow簡(jiǎn)介

TensorFlow™是一個(gè)基于數(shù)據(jù)流編程(dataflow programming)的符號(hào)數(shù)學(xué)系統(tǒng),被廣泛應(yīng)用于各類機(jī)器學(xué)習(xí)(machine learning)算法的編程實(shí)現(xiàn),其前身是谷歌的神經(jīng)網(wǎng)絡(luò)算法庫(kù)DistBelief。

Tensorflow擁有多層級(jí)結(jié)構(gòu),可部署于各類服務(wù)器、PC終端和網(wǎng)頁(yè)并支持GPU和TPU高性能數(shù)值計(jì)算,被廣泛應(yīng)用于谷歌內(nèi)部的產(chǎn)品開(kāi)發(fā)和各領(lǐng)域的科學(xué)研究。

TensorFlow由谷歌人工智能團(tuán)隊(duì)谷歌大腦(Google Brain)開(kāi)發(fā)和維護(hù),擁有包括TensorFlow Hub、TensorFlow Lite、TensorFlow Research Cloud在內(nèi)的多個(gè)項(xiàng)目以及各類應(yīng)用程序接口(Application Programming Interface, API)。自2015年11月9日起,TensorFlow依據(jù)阿帕奇授權(quán)協(xié)議(Apache 2.0 open source license)開(kāi)放源代碼。

二、安裝Anaconda

Anaconda指的是一個(gè)開(kāi)源的Python發(fā)行版本,其包含了conda、Python等180多個(gè)科學(xué)包及其依賴項(xiàng)。因?yàn)榘舜罅康目茖W(xué)包,Anaconda 的下載文件比較大(約 531 MB),如果只需要某些包,或者需要節(jié)省帶寬或存儲(chǔ)空間,也可以使用Miniconda這個(gè)較小的發(fā)行版(僅包含conda和 Python)。

獲取Anaconda

官網(wǎng)下載鏈接下載Python3.7版本的安裝包


下載好以后的文件是Anaconda3-2020.02-Linux-x86_64.sh

開(kāi)始安裝

使用終端進(jìn)入到保存Anaconda文件的目錄下,使用下面命令開(kāi)始安裝

bash Anaconda3-2020.02-Linux-x86_64.sh

開(kāi)始安裝后會(huì)讓咱們檢查Anaconda License,若想跳過(guò),則按Q跳過(guò),之后會(huì)詢問(wèn)我們是否同意(Do you approve the license terms?),輸入yes然后回車?yán)^續(xù)

接下來(lái)會(huì)詢問(wèn)咱們要把Anaconda安裝到哪個(gè)路徑,若有指定,輸入路徑并回車?yán)^續(xù),若無(wú)指定,將會(huì)安裝到默認(rèn)目錄家目錄,回車?yán)^續(xù)。

等到下一個(gè)提示確定的時(shí)候,是問(wèn)咱們要不要在~/.bashrc文件中加入環(huán)境變量,輸入yes回車?yán)^續(xù),等滾屏結(jié)束,咱們的Anaconda就安裝完畢了。

三、TensorFlow的兩個(gè)主要依賴包

Protocol Buffer

首先使用apt-get安裝必要組件

$ sudo apt-get install autoconf automake libtool curl make g++ unzip

然后cd到合適的目錄使用git clone功能獲取安裝文件

$ git clone 
$ https://github.com/protocolbuffers/protobuf.git
$ cd protobuf
$ git submodule update --init --recursive
$ ./autogen.sh

開(kāi)始安裝

$ ./configure
$ make
$ make check
$ sudo make install
$ sudo ldconfig # refresh shared library cache.

在安裝結(jié)束后,使用如下命令,看到版本號(hào)則安裝成功

$ protoc --version

Bazel

安裝準(zhǔn)備

在安裝Bazel之前,需要安裝JDK8,具體安裝方法請(qǐng)參考如下鏈接
jdk8安裝方法
然后安裝其他的依賴工具包

$ sudo apt-get install pkg-config zip g++ zlib1g-dev unzip 

獲取Bazel

發(fā)布頁(yè)面獲取bazel-0.4.3-jdk7-installer-linux-x86_64.sh
然后通過(guò)這個(gè)安裝包安裝Bazel

$ chmod +x bazel-0.4.3-jdk7-installer-linux-x86_64.sh
$ ./bazel-0.4.3-jdk7-installer-linux-x86_64.sh --user

安裝完成后繼續(xù)安裝其他TensorFlow需要的依賴工具包

$ sudo apt-get install python3-numpy swig python3-dev python3-wheel

在完成后,在~/.bashrc中添加環(huán)境變量

export PATH"$PATH:$HOME/bin"

然后使用$ source ~/.bashrc激活
然后在終端輸入bazel出現(xiàn)版本號(hào)的話,則安裝成功。

四、安裝CUDA和cuDNN

如果計(jì)算機(jī)上有安裝NVIDIA的GPU并安裝驅(qū)動(dòng)的話,可以使用CUDA和cuDNN進(jìn)行GPU運(yùn)算

CUDA

CUDA(Compute Unified Device Architecture),是顯卡廠商N(yùn)VIDIA推出的運(yùn)算平臺(tái)。 CUDA™是一種由NVIDIA推出的通用并行計(jì)算架構(gòu),該架構(gòu)使GPU能夠解決復(fù)雜的計(jì)算問(wèn)題。 它包含了CUDA指令集架構(gòu)(ISA)以及GPU內(nèi)部的并行計(jì)算引擎。 開(kāi)發(fā)人員可以使用C語(yǔ)言來(lái)為CUDA™架構(gòu)編寫(xiě)程序,C語(yǔ)言是應(yīng)用最廣泛的一種高級(jí)編程語(yǔ)言。所編寫(xiě)出的程序可以在支持CUDA™的處理器上以超高性能運(yùn)行。CUDA3.0已經(jīng)開(kāi)始支持C++和FORTRAN。

獲取并安裝CUDA

官網(wǎng)獲取合適版本的CUDA Toolkit安裝包


使用如下命令,安裝cuda

$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
$ sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
$ wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
$ sudo apt-key add /var/cuda-repo-10-2-local-10.2.89-440.33.01/7fa2af80.pub
$ sudo apt-get update
$ sudo apt-get -y install cuda

測(cè)試CUDA

在安裝完畢后要確認(rèn)安裝情況就進(jìn)入例子目錄進(jìn)行編譯

$ cd /usr/local/sample
$ make all

此時(shí)有可能編譯出錯(cuò),錯(cuò)誤信息為提示找不到nvscibuf.h,就使用gedit工具打開(kāi)Makefile文件,把第41行改為

FILTER_OUT := 0_Simple/cudaNvSci/Makefile

然后再次make all進(jìn)行編譯,編譯成功后后會(huì)提示Finished building CUDA samples
這時(shí)候進(jìn)入/usr/local/cuda/extras/demo_suite目錄下,找到deviceQuery可執(zhí)行文件,并執(zhí)行,將會(huì)輸出GPU相關(guān)信息。
這是博主的GPU信息

CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: "GeForce GTX 1060 6GB"
 CUDA Driver Version / Runtime Version     10.2 / 10.2
 CUDA Capability Major/Minor version number:  6.1
 Total amount of global memory:         6075 MBytes (6370295808 bytes)
 (10) Multiprocessors, (128) CUDA Cores/MP:   1280 CUDA Cores
 GPU Max Clock rate:              1759 MHz (1.76 GHz)
 Memory Clock rate:               4004 Mhz
 Memory Bus Width:               192-bit
 L2 Cache Size:                 1572864 bytes
 Maximum Texture Dimension Size (x,y,z)     1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384)
 Maximum Layered 1D Texture Size, (num) layers 1D=(32768), 2048 layers
 Maximum Layered 2D Texture Size, (num) layers 2D=(32768, 32768), 2048 layers
 Total amount of constant memory:        65536 bytes
 Total amount of shared memory per block:    49152 bytes
 Total number of registers available per block: 65536
 Warp size:                   32
 Maximum number of threads per multiprocessor: 2048
 Maximum number of threads per block:      1024
 Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
 Max dimension size of a grid size  (x,y,z): (2147483647, 65535, 65535)
 Maximum memory pitch:             2147483647 bytes
 Texture alignment:               512 bytes
 Concurrent copy and kernel execution:     Yes with 2 copy engine(s)
 Run time limit on kernels:           Yes
 Integrated GPU sharing Host Memory:      No
 Support host page-locked memory mapping:    Yes
 Alignment requirement for Surfaces:      Yes
 Device has ECC support:            Disabled
 Device supports Unified Addressing (UVA):   Yes
 Device supports Compute Preemption:      Yes
 Supports Cooperative Kernel Launch:      Yes
 Supports MultiDevice Co-op Kernel Launch:   Yes
 Device PCI Domain ID / Bus ID / location ID:  0 / 1 / 0
 Compute Mode:
   < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 10.2, CUDA Runtime Version = 10.2, NumDevs = 1, Device0 = GeForce GTX 1060 6GB
Result = PASS

此時(shí),CUDA安裝完畢。

cuDNN(CUDA安裝完成時(shí)才可用)

NVIDIA cuDNN是用于深度神經(jīng)網(wǎng)絡(luò)的GPU加速庫(kù)。它強(qiáng)調(diào)性能、易用性和低內(nèi)存開(kāi)銷。NVIDIA cuDNN可以集成到更高級(jí)別的機(jī)器學(xué)習(xí)框架中,如加州大學(xué)伯克利分校的流行caffe軟件。簡(jiǎn)單的,插入式設(shè)計(jì)可以讓開(kāi)發(fā)人員專注于設(shè)計(jì)和實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)模型,而不是調(diào)整性能,同時(shí)還可以在GPU上實(shí)現(xiàn)高性能現(xiàn)代并行計(jì)算。

獲取cuDNN

官網(wǎng)鏈接注冊(cè)完成并驗(yàn)證郵箱后,點(diǎn)擊Download cuDNN下載


記得在同意前面打勾勾~

現(xiàn)在最新版本的是CUDA 10.2,cuDNN 7.6.5.32,得到的文件是cudnn-10.2-linux-x64-v7.6.5.32.tgz

下載完畢后,進(jìn)入下載目錄,使用如下命令進(jìn)行解壓

$ tar -zxvf cudnn-10.2-linux-x64-v7.6.5.32.tgz

會(huì)生成一個(gè)名為cuda的文件夾,進(jìn)入該文件夾

$ cd cuda

然后使用復(fù)制操作完成安裝

sudo cp lib64/libcudnn* /usr/local/cuda/lib64/
sudo cp include/cudnn.h /usr/local/cuda/include

操作完成后,進(jìn)入cuDNN的目錄更新庫(kù)文件的軟鏈接

$ cd /usr/local/cuda/lib64
$ sudo chmod +r libcudnn.so.7.6.5
$ sudo ln -s libcudnn.so.7.6.5 libcudnn.so.7
$ sudo ln -s libcudnn.so.7.6.5 libcudnn.so
$ sudo ldconfig

若軟鏈接時(shí)報(bào)錯(cuò),則把-s改成-sf即可
接下來(lái)在~/.bashrc中添加環(huán)境變量

export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:usr/local/cuda-10.2/extras/CUPTI/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-10.2
export PATH=/usr/local/cuda-10.2/bin:$PATH

至此,CUDA與cuDNN安裝完成。

五、正式開(kāi)始安裝TensorFlow

在開(kāi)始安裝前,首先安裝pip

$ sudo apt-get install python3-pip python3-dev

在完成后輸入pip回車會(huì)輸出相關(guān)命令

Usage:
	pip <command> [options]

在pip安裝完成后,輸入如下命令開(kāi)始安裝最新的TensorFlow。

$ pip install tensorflow

若無(wú)GPU,則安裝CPU版本TensorFlow

$ pip install tensorflow-cpu

安裝完成后,使用Python測(cè)試第一個(gè)TensorFlow程序

$ python3
>>> import tensorflow as tf
>>> tf.add(1, 2).numpy()
3
>>> hello = tf.constant('Hello, TensorFlow!')
>>> hello.numpy()
b'Hello, TensorFlow!'

有生成上述結(jié)果時(shí),TensorFlow安裝成功。

至此,TensorFlow使用環(huán)境,安裝完成。

到此這篇關(guān)于Ubuntu中配置TensorFlow使用環(huán)境的方法的文章就介紹到這了,更多相關(guān)Ubuntu配置TensorFlow內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 源碼解讀Python中Event事件的使用

    源碼解讀Python中Event事件的使用

    事件(Event)主要負(fù)責(zé)多任務(wù)之間的同步,這篇文章主要來(lái)和大家詳細(xì)介紹一下它的原理以及簡(jiǎn)單使用,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下
    2023-12-12
  • 使用python數(shù)據(jù)清洗代碼實(shí)例

    使用python數(shù)據(jù)清洗代碼實(shí)例

    這篇文章主要介紹了使用python數(shù)據(jù)清洗代碼實(shí)例,分享一下近期用python做數(shù)據(jù)清洗匯總的相關(guān)代碼,這里我們用到的python包有pandas、numpy、os等,需要的朋友可以參考下
    2023-07-07
  • Python如何顯示所有漢字

    Python如何顯示所有漢字

    這篇文章主要介紹了Python如何顯示所有漢字問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • python中的Pytorch建模流程匯總

    python中的Pytorch建模流程匯總

    這篇文章主要介紹了python中的Pytorch建模流程匯總,主要幫大家?guī)椭蠹沂崂砩窠?jīng)網(wǎng)絡(luò)訓(xùn)練的架構(gòu),具有一的的參考價(jià)值,需要的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助
    2022-03-03
  • 部署Python的框架下的web app的詳細(xì)教程

    部署Python的框架下的web app的詳細(xì)教程

    這篇文章主要介紹了Python部署web app的詳細(xì)教程,示例代碼基于Python2.x版本,需要的朋友可以參考下
    2015-04-04
  • django自定義模板標(biāo)簽過(guò)程解析

    django自定義模板標(biāo)簽過(guò)程解析

    這篇文章主要介紹了django自定義模板標(biāo)簽過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 用python實(shí)現(xiàn)批量重命名文件的代碼

    用python實(shí)現(xiàn)批量重命名文件的代碼

    任務(wù)很簡(jiǎn)單,某個(gè)目錄下面有幾千個(gè)文件,某些文件沒(méi)有后綴名,現(xiàn)在的任務(wù)就是將所有的沒(méi)有后綴名的文件加上后綴名,python有現(xiàn)成的函數(shù)可以實(shí)現(xiàn),但是在實(shí)現(xiàn)過(guò)程中遇到幾個(gè)問(wèn)題,分享一下解決方法
    2012-05-05
  • python中urllib.request和requests的使用及區(qū)別詳解

    python中urllib.request和requests的使用及區(qū)別詳解

    這篇文章主要介紹了python中urllib.request和requests的使用及區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • python3 http提交json參數(shù)并獲取返回值的方法

    python3 http提交json參數(shù)并獲取返回值的方法

    今天小編就為大家分享一篇python3 http提交json參數(shù)并獲取返回值的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • python中sql解析庫(kù)sqlparse基本操作指南

    python中sql解析庫(kù)sqlparse基本操作指南

    sqlparse是用于Python的非驗(yàn)證SQL解析器,它提供了對(duì)SQL語(yǔ)句的解析,拆分和格式化的支持,這篇文章主要給大家介紹了關(guān)于python中sql解析庫(kù)sqlparse基本操作指南的相關(guān)資料,需要的朋友可以參考下
    2024-08-08

最新評(píng)論