日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人工智能 > pytorch >内容正文

pytorch

使用TensorFlow,GPU和Docker容器进行深度学习

發(fā)布時間:2024/8/23 pytorch 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用TensorFlow,GPU和Docker容器进行深度学习 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

摘要:?數(shù)據(jù)科學(xué)家使用GPU來提高TensorFlow的計算速度,但GPU價格昂貴,也需要對其所占用的資源進行認(rèn)真的管理。本文將帶你來一起解決這一問題。

在過去的幾個月中,我和多個企業(yè)的數(shù)據(jù)科學(xué)團隊進行了多次合作,也看到越來越多的機器學(xué)習(xí)和深度學(xué)習(xí)框架被廣泛應(yīng)用到實際生活中。

與大數(shù)據(jù)分析和數(shù)據(jù)科學(xué)中的其他用例一樣,這些團隊希望在BlueData EPIC軟件平臺上的Docker容器中運行他們最喜歡的深度學(xué)習(xí)框架和工具。因此,我的一部分工作就是嘗試使用這些新工具,確保在我們的平臺上能夠運行,并且能夠幫助這些團隊開發(fā)出可以解決一些問題的新的功能。

TensorFlow是深度學(xué)習(xí)和機器學(xué)習(xí)最流行的開源框架之一。TensorFlow最初是由Google研究團隊開發(fā)的并致力于解決深度神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí)研究。另外,TensorFlow也適用于許多其他應(yīng)用場景:圖像識別,自由文本數(shù)據(jù)的自然語言處理以及威脅檢測和監(jiān)視等。

“TensorFlow是一個用于對一系列任務(wù)進行機器學(xué)習(xí)的開源軟件庫,它是一個構(gòu)建和訓(xùn)練神經(jīng)網(wǎng)絡(luò)來檢測、解讀模式和相關(guān)性的系統(tǒng),它與人類學(xué)習(xí)和推理相似(但不一樣)。”——維基百科

TensorFlow可以在各種異構(gòu)系統(tǒng)(包括CPU和GPU)上對計算資源進行合理分配。與我合作過的幾個數(shù)據(jù)科學(xué)團隊使用GPU來提高TensorFlow的計算速度,但GPU價格昂貴,他們需要對TensorFlow所占用的資源進行認(rèn)真的管理

部署TensorFlow的注意事項

以下是部署數(shù)據(jù)科學(xué)應(yīng)用程序和TensorFlow時的一些注意事項(尤其是在企業(yè)大規(guī)模部署時更應(yīng)該注意):

1.如何對部署的復(fù)雜性進行管理,例如在OS,內(nèi)核庫和TensorFlow不同版本之間進行部署。

2.如何在作業(yè)期間支持創(chuàng)建臨時集群。

3.如何隔離正在使用的資源并阻止同時隊同一資源的訪問請求。

4.如何在共享的多租戶環(huán)境中對GPU和CPU資源進行管理和分配。

BlueData EPIC軟件平臺就可以解決這些問題,它能夠按照數(shù)據(jù)科學(xué)團隊的需要訪問各種不同的大數(shù)據(jù)分析、數(shù)據(jù)科學(xué)、機器學(xué)習(xí)和深度學(xué)習(xí)工具。在一個靈活、彈性和安全的多租戶架構(gòu)中使用Docker容器,BDaaS(Big-Data-as-a-Service)軟件平臺可以支持大規(guī)模分布式數(shù)據(jù)科學(xué)和深度學(xué)習(xí)用例。

BlueData的最新版本可以支持啟動采用GPU加速的集群,并且支持TensorFlow在GPU或Intel架構(gòu)的CPU上進行深度學(xué)習(xí)。數(shù)據(jù)科學(xué)家可以在BlueData EPIC軟件平臺上啟動即時TensorFlow集群在Docker容器上進行深度學(xué)習(xí)。BlueData支持在Intel Xeon硬件和Intel MKL上運行基于CPU的TensorFlow,也支持采用NVIDIA CUDA庫、CUDA擴展以及用于Docker容器的字符設(shè)備映射的基于GPU的TensorFlow。

BlueData EPIC軟件平臺可以為TensorFlow提供自助服務(wù)、彈性和安全環(huán)境,無論是在本地、公共云還是在二者的混合結(jié)構(gòu)中都擁有同樣的界面,不管其底層架構(gòu)多么不同,用戶都會有相同的用戶體驗。

如下圖所示,用戶可以像用于其他大數(shù)據(jù)分析、數(shù)據(jù)科學(xué)和機器學(xué)習(xí)環(huán)境一樣,能夠很容易地將帶有BigDL的即時TensorFlow集群在BlueData軟件平臺上進行深度學(xué)習(xí)。并且,用戶可以指定在TensorFlow運行的Docker容器放置在有GPU還是CPU配置的基礎(chǔ)架構(gòu),以及在公共云還是在本地。

?

按需創(chuàng)建TensorFlow集群

在BlueData EPIC軟件平臺上,用戶只需點擊幾下鼠標(biāo)即可根據(jù)自己的需求創(chuàng)建TensorFlow群集。BlueData的最新版本引入主機標(biāo)簽,用戶可以創(chuàng)建具有主機標(biāo)記的基于GPU或CPU的TensorFlow集群,這些主機標(biāo)記為特定工作負(fù)載指定所需要的硬件,如下圖所示。


一旦創(chuàng)建完成,TensorFlow集群將擁有一個或多個Docker容器節(jié)點,這些Docker容器使用TensorFlow軟件和相應(yīng)的GPU和/或CPU加速庫進行部署。例如,基于GPU的TensorFlow群集將在Docker容器內(nèi)具有NVIDIA CUDA和CUDA擴展;而基于CPU的TensorFlow群集則在Docker容器中具有Intel MKL和Jupyter Notebook擴展。

高效的GPU資源管理

GPU和特定的CPU通常不會作為Docker容器的獨立資源。BlueData EPIC軟件平臺通過在所有主機上管理GPU的共享池并在群集創(chuàng)建期間將GPU所請求的數(shù)量分配給群集來處理此問題。這種排他性(或隔離性)保證了對深度學(xué)習(xí)作業(yè)的服務(wù)質(zhì)量,并防止多個處理作業(yè)嘗試同時訪問同一資源。

對于今天的大多數(shù)企業(yè)來說,GPU是一種需要有效利用的高端資源。當(dāng)一個集群沒有在使用或完成一項作業(yè)時,BlueData EPIC軟件平臺可以停止該集群使用并將GPU分配給其他正在使用的集群。 這允許用戶在不同的租戶環(huán)境中創(chuàng)建多個集群,并且僅僅在集群需要時才使用GPU,而不需要刪除或重新創(chuàng)建群集群。還有一種機制,即在作業(yè)期間創(chuàng)建一個群集作為暫時性集群。

提高用戶生產(chǎn)力

一旦TensorFlow集群創(chuàng)建完成,用戶可以使用AD / LDAP控制的SSH啟用容器并保護Jupyter Notebook。

為了進行驗證和測試,TensorFlow集群默認(rèn)包含Jupyter Notebook,用例如下圖所示。


上圖來自于GitHub回購。這些源碼和教程可供用戶使用,并可以立即投入應(yīng)用中去。

在BlueData EPIC軟件平臺上使用TensorFlow庫和圖表繪制的MNIST數(shù)據(jù)集的輸入數(shù)字圖像的重建示例如下圖所示。


根據(jù)輸入圖像和模型(使用TensorFlow GradientDescentOptimizer訓(xùn)練)提取數(shù)據(jù)集和模型預(yù)測如下圖所示:


對輸入圖像和輸出預(yù)測結(jié)果的對比如下圖所示:


對運行的TensorFlow集群更新

隨著新的庫和軟件包不斷被推出,數(shù)據(jù)科學(xué)團隊的需求也在不斷的變化,因此BlueData EPIC軟件平臺提供了一種稱為“操作腳本”的機制,該機制允許用戶使用新的庫和軟件包對正在運行集群的所有節(jié)點進行更新。在長時間運行的交互或批處理作業(yè)中,用戶還可以使用基于Web的UI或RESTful API將Python作業(yè)提交。

作者:【方向】

點此查看原文: http://click.aliyun.com/m/43284/

識別以下二維碼,干貨:



總結(jié)

以上是生活随笔為你收集整理的使用TensorFlow,GPU和Docker容器进行深度学习的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。