0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何選擇合適的深度學(xué)習(xí)框架開展AI研究

NVIDIA英偉達(dá) ? 來源:cc ? 2019-02-12 10:09 ? 次閱讀

深度學(xué)習(xí)框架正如一家雜貨店,當(dāng)人們想要做一頓美餐的時(shí)候,想必沒有幾個(gè)人會(huì)親自到菜園里種菜,而是選擇從市場(chǎng)里購買食材。

正如想要炒菜的人不會(huì)親自去種菜采摘一樣,開發(fā)者們也不想每次搭建深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的時(shí)侯都從零開始。

由于深度學(xué)習(xí)模型規(guī)模龐大且結(jié)構(gòu)復(fù)雜,在編寫功能代碼的時(shí)候,程序員不會(huì)每種功能代碼都從頭編寫,而是會(huì)借助框架和軟件庫來高效地構(gòu)建神經(jīng)網(wǎng)絡(luò)。頂級(jí)深度學(xué)習(xí)框架可提供專用于深度神經(jīng)網(wǎng)絡(luò)計(jì)算的代碼,這些代碼均經(jīng)過高度優(yōu)化,并支持GPU計(jì)算。

深度學(xué)習(xí)框架之間的差異

不同類型的雜貨店通常都有其各自專營(yíng)的特色商品。比如,當(dāng)人們烹飪家常菜的時(shí)候,通??梢灾苯釉诋?dāng)?shù)厥袌?chǎng)買到所需的基礎(chǔ)食材;可是當(dāng)人們想要制作具有異域風(fēng)情的高級(jí)菜品的時(shí)候,則可能更喜歡在大型超市里選購進(jìn)口蔬菜,挑選未經(jīng)人工催熟的有機(jī)水果;又或者,當(dāng)您要為一大桌子人準(zhǔn)備飯菜,您又有可能會(huì)選擇在批發(fā)市場(chǎng)里采購一番。

同樣道理,雖然開發(fā)者可以基于任意一種深度學(xué)習(xí)框架構(gòu)建出絕大多數(shù)類型的網(wǎng)絡(luò)(例如卷積神經(jīng)網(wǎng)絡(luò)或遞歸神經(jīng)網(wǎng)絡(luò)),但各個(gè)框架在可用示例的數(shù)量和更新頻率方面各有差異。此外,在增添新功能方面,各個(gè)深度學(xué)習(xí)框架中貢獻(xiàn)者的數(shù)量也彼此不同,而且框架通過API 提供功能的方式也同樣各具特色。

頂級(jí)框架都是開源的,其中大部分框架的發(fā)布時(shí)間始于 2014 年,而且其開發(fā)工作一直都很活躍。

如何選擇深度學(xué)習(xí)框架

在選擇深度學(xué)習(xí)框架的時(shí)候,開發(fā)者們通常會(huì)有很多不同的考量,例如:框架前端與開發(fā)者專業(yè)技能的匹配程度,可獲取的社區(qū)支持力度,或他們感興趣的新功能的開發(fā)速度。

深度學(xué)習(xí)框架一般可以使用例如Python 或 C/C ++ 等編程語言中的腳本,通過命令訪問接口;也可以通過類似于 NVIDIA DIGITS 的圖形界面進(jìn)行訪問,此類界面允許開發(fā)者在更加用戶友好的 Web 應(yīng)用程序中構(gòu)建深度神經(jīng)網(wǎng)絡(luò)。

如果您希望將您的深度學(xué)習(xí)應(yīng)用程序與 NVIDIA GPU 相集成的話,請(qǐng)查看 NVIDIA 開發(fā)者計(jì)劃以了解更多信息。

如何在深度學(xué)習(xí)框架之間遷移模型

根據(jù)其所開發(fā)應(yīng)用程序的需要,開發(fā)者可能會(huì)首先使用一個(gè)框架來構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型;然后再使用不同的框架對(duì)模型進(jìn)行重新訓(xùn)練,或者在不同的框架上部署該模型,以便進(jìn)行推理。

開放式神經(jīng)網(wǎng)絡(luò)交換 (ONNX) 是一種允許開發(fā)者在框架之間遷移模型的深度學(xué)習(xí)模型格式。ONNX 支持在大多數(shù)主流框架之間進(jìn)行模型遷移。當(dāng)深度學(xué)習(xí)應(yīng)用程序已經(jīng)完成了訓(xùn)練并可以部署時(shí), TensorRT 軟件會(huì)對(duì)NVIDIA GPU 上的高性能推理模型進(jìn)行優(yōu)化。TensorRT 與 TensorFlowMATLAB 高度集成,并且支持導(dǎo)入 ONNX 格式的深度學(xué)習(xí)模型。

以下列舉了一些熱門的深度學(xué)習(xí)框架,以及多家公司和研究人員如何構(gòu)建用于醫(yī)療、災(zāi)難預(yù)測(cè)和細(xì)胞生物學(xué)的GPU加速應(yīng)用程序的案例。

Apache MXNet

Apache MXNet 是由 Apache Software Foundation 于 2015 年創(chuàng)建的深度學(xué)習(xí)框架。一家位于西雅圖的初創(chuàng)公司——Magic AI, 正在利用深度學(xué)習(xí)模型來監(jiān)控馬匹的健康狀況,該模型基于 MXNet 構(gòu)建,并運(yùn)行于 NVIDIA GPU 上。該神經(jīng)網(wǎng)絡(luò)可以逐幀分析馬廄內(nèi)的監(jiān)控視頻,當(dāng)出現(xiàn)意外狀況,例如:馬匹即將分娩,馬匹表現(xiàn)出絞痛癥狀或陌生人進(jìn)入馬廄時(shí),該神經(jīng)網(wǎng)絡(luò)會(huì)向馬場(chǎng)主發(fā)送警報(bào)。

開發(fā)者可以將模型遷移到 ONNX 進(jìn)行推理,然后使用 NVIDIA TensorRT 進(jìn)行優(yōu)化和部署。

Caffe

Caffe 深度學(xué)習(xí)框架于2014 年誕生在加州大學(xué)伯克利分校,并催生了 NVCaffe 等分支以及類似于 Facebook 的 Caffe2(現(xiàn)與 PyTorch 合并)的新型框架。肺癌是全球最常見的癌癥,半數(shù)被診斷為肺癌的患者會(huì)在一年內(nèi)死亡。借助深度學(xué)習(xí)和 NVIDIA GPU,位于圣路易斯的初創(chuàng)公司 Innovation DX利用胸部 X 光掃描對(duì)肺癌進(jìn)行早期篩查。他們的早期檢測(cè)工具由神經(jīng)網(wǎng)絡(luò)和 Caffe 框架提供支持,可以使肺癌患者的存活率提高兩倍。

開發(fā)者可以利用 NVIDIA TensorRT 的內(nèi)置 Caffe 模型導(dǎo)入器,對(duì)推理模型進(jìn)行優(yōu)化和部署。

Chainer

Chainer 誕生于 2015 年,由日本風(fēng)險(xiǎn)投資公司Preferred Networks開發(fā)。利用這款基于 Python 的框架,Preferred Networks與工業(yè)自動(dòng)化巨頭 FANUC 攜手合作,共同參加了 2016 年的亞馬遜分揀貨物挑戰(zhàn)賽 (Amazon Picking Challenge)。挑戰(zhàn)賽的內(nèi)容是讓自主機(jī)器人分揀并放置物品。Preferred Networks 和 FANUC 在比賽中使用了卷積神經(jīng)網(wǎng)絡(luò)和用于筆記本電腦的NVIDIA GeForce GTX 870M GPU,并最終取得了第二名的好成績(jī)。

開發(fā)者可以將模型遷移到 ONNX 進(jìn)行推理,然后使用 NVIDIA TensorRT 進(jìn)行優(yōu)化和部署。

Keras

Keras 是一個(gè)可以在多個(gè)框架上運(yùn)行的界面,使用高級(jí)Python API ,它可以在諸如MXNet、TensorFlow、Theano 和 Microsoft Cognitive Toolkit等不同框架之上運(yùn)行。Keras 由研究人員 Fran?oisChollet 于 2014 年創(chuàng)建,旨在讓統(tǒng)一且抽象的 API 變得易于使用。一個(gè)韓國(guó)研究團(tuán)隊(duì)使用 Keras 來提高颶風(fēng)預(yù)測(cè)的速度和準(zhǔn)確性。他們使用 TensorFlow 上的 Keras 構(gòu)建了深度學(xué)習(xí)模型,并在 NVIDIA GPU 上運(yùn)行,可以提前幾個(gè)小時(shí)預(yù)測(cè)風(fēng)暴的路徑和降水量。由于這些神經(jīng)網(wǎng)絡(luò)能夠提前預(yù)測(cè)風(fēng)暴,因此他們可以在颶風(fēng)來襲之前向當(dāng)?shù)鼐用癜l(fā)出警告,爭(zhēng)取更多的疏散時(shí)間。

MATLAB

MATLAB 允許熟悉其軟件的工程師使用 MATLAB 代碼來開發(fā)深度學(xué)習(xí)工具。借助MATLAB 和 NVIDIA GPU,阿爾伯塔大學(xué)的研究人員致力于幫助患者避免不必要的前列腺癌活檢。該團(tuán)隊(duì)的深度學(xué)習(xí)模型對(duì)細(xì)胞外囊泡的生物標(biāo)志物數(shù)據(jù)進(jìn)行分析,從而預(yù)判是否存在癌細(xì)胞。

在推理方面,開發(fā)者可以通過 MATLAB GPU Coder 使用 TensorRT 自動(dòng)生成經(jīng)過優(yōu)化的推理引擎。

Microsoft Cognitive Toolkit

這款由微軟公司于2014年推出的深度學(xué)習(xí)框架,起初被命名為CNTK, 其主要為微軟自己的AI模型(如 Cortana)提供支持。借助NVIDIA Tesla GPU和 Microsoft Cognitive Toolkit,醫(yī)療科技公司 IRIS 專注于預(yù)防糖尿病視網(wǎng)膜病變或糖尿病引起的失明,此類疾病只能通過眼科檢查才能發(fā)現(xiàn),患者很難自行判斷。而IRIS 的神經(jīng)網(wǎng)絡(luò)可通過分析視網(wǎng)膜圖像,告知患者是否需要到專業(yè)醫(yī)師處就診。

開發(fā)者可以將模型遷移到 ONNX 進(jìn)行推理,然后使用 NVIDIA TensorRT 進(jìn)行優(yōu)化和部署。

PyTorch

PyTorch 的前身是 Torch,一種基于編程語言 Lua 的熱門深度學(xué)習(xí)框架,該框架于 2011 年推出。隨后,2017 年,F(xiàn)acebook 推出了 PyTorch,后者繼承了 Torch 的功能并可以在 Python 中實(shí)施。艾倫細(xì)胞科學(xué)研究所 (Allen Institute of Cell Science) 的研究人員利用 PyTorch 開發(fā)出了首個(gè)可預(yù)測(cè)人體活細(xì)胞的3D 模型,該模型由 NVIDIA DGX 工作站和 TITAN Xp GPU 提供支持,能夠讓科學(xué)家在虛擬環(huán)境中以數(shù)字方式實(shí)現(xiàn)細(xì)胞的可視化并操縱細(xì)胞行為。這款利用卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建的細(xì)胞模型可以替代昂貴的熒光顯微鏡觀測(cè),讓科學(xué)家能夠以一種前所未有的方式理解和預(yù)測(cè)細(xì)胞活動(dòng)。

開發(fā)者可以將模型遷移到 ONNX 進(jìn)行推理,然后使用 NVIDIA TensorRT 進(jìn)行優(yōu)化和部署。

TensorFlow

TensorFlow 是 Google 于 2015 年創(chuàng)建的深度學(xué)習(xí)框架。德克薩斯大學(xué) MD 安德森癌癥中心的研究人員正在使用 TensorFlow 開發(fā)高精度放射治療技術(shù)。放射科醫(yī)師通常會(huì)檢查癌癥患者的掃描圖像,以判斷在不損害正常組織的情況下應(yīng)該使用多少輻射量來進(jìn)行腫瘤靶向治療。借助 NVIDIA Tesla GPU,研究人員開發(fā)了可學(xué)習(xí)并模仿醫(yī)生工作模式的深度學(xué)習(xí)模型,來識(shí)別放射目標(biāo)區(qū)域。

在推理方面,開發(fā)者既可以使用 TensorFlow-TensorRT 集成功能優(yōu)化 TensorFlow 中的模型;也可以導(dǎo)出 TensorFlow 模型,然后使用 NVIDIA TensorRT 的內(nèi)置 TensorFlow 模型導(dǎo)入器在 TensorRT 中進(jìn)行優(yōu)化。。

廣泛的框架生態(tài)系統(tǒng)

NVIDIA與上述諸多框架以及其他框架(如百度的 PaddlePaddle)合作,使深度學(xué)習(xí)應(yīng)用程序得以成功實(shí)現(xiàn)。

新型深度學(xué)習(xí)框架正在不斷地涌現(xiàn),這表明神經(jīng)網(wǎng)絡(luò)得到了開發(fā)者的廣泛采用。Theano 和 Torch 這類早期框架為許多深度學(xué)習(xí)應(yīng)用程序提供了支持,但其創(chuàng)建者在 2017 年宣布,他們將不再繼續(xù)開發(fā)這些框架。

NVIDIA 的深度學(xué)習(xí)框架團(tuán)隊(duì)直接參與了其中的多個(gè)開源項(xiàng)目,僅在去年,就做出了共計(jì) 800 多項(xiàng)貢獻(xiàn),提高了這些項(xiàng)目的易用性和性能。

NGC 容器注冊(cè)表允許訪客即時(shí)訪問上述多種框架,并能夠按照訪客的需求,為其提供最佳的 GPU 加速性能。

了解更多有關(guān)深度學(xué)習(xí)框架的資源和安裝信息,請(qǐng)?jiān)L問 NVIDIA Developer 網(wǎng)站。該中心還為一些最常見的深度學(xué)習(xí)框架和應(yīng)用程序提供示例神經(jīng)網(wǎng)絡(luò)訓(xùn)練腳本,例如計(jì)算機(jī)視覺、機(jī)器翻譯和對(duì)象檢測(cè)。在 NVIDIA GPU Cloud 目錄中還提供深度學(xué)習(xí)容器套件。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    28877

    瀏覽量

    266236
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5422

    瀏覽量

    120593

原文標(biāo)題:一文教你如何選擇深度學(xué)習(xí)框架開啟AI研究

文章出處:【微信號(hào):NVIDIA_China,微信公眾號(hào):NVIDIA英偉達(dá)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    顯存技術(shù)不斷升級(jí),AI計(jì)算中如何選擇合適的顯存

    和推理過程至關(guān)重要。足夠的顯存容量能夠確保顯卡在執(zhí)行AI任務(wù)時(shí)能夠同時(shí)存儲(chǔ)和操作所需的數(shù)據(jù),避免因?yàn)轱@存不足而導(dǎo)致的性能瓶頸。 ? 在AI 計(jì)算中如何選擇合適的顯存 ? 顯存對(duì)
    的頭像 發(fā)表于 09-11 00:11 ?2195次閱讀

    NVIDIA推出全新深度學(xué)習(xí)框架fVDB

    在 SIGGRAPH 上推出的全新深度學(xué)習(xí)框架可用于打造自動(dòng)駕駛汽車、氣候科學(xué)和智慧城市的 AI 就緒型虛擬表示。
    的頭像 發(fā)表于 08-01 14:31 ?407次閱讀

    如何利用AI進(jìn)行提升自我呢?

    利用AI進(jìn)行學(xué)習(xí)是一個(gè)高效且富有創(chuàng)新性的過程。以下是一些建議,幫助你充分利用AI進(jìn)行學(xué)習(xí)選擇適合的A
    的頭像 發(fā)表于 07-19 10:46 ?360次閱讀

    PyTorch深度學(xué)習(xí)開發(fā)環(huán)境搭建指南

    PyTorch作為一種流行的深度學(xué)習(xí)框架,其開發(fā)環(huán)境的搭建對(duì)于深度學(xué)習(xí)研究者和開發(fā)者來說至關(guān)重要
    的頭像 發(fā)表于 07-16 18:29 ?522次閱讀

    ai大模型和ai框架的關(guān)系是什么

    AI大模型和AI框架是人工智能領(lǐng)域中兩個(gè)重要的概念,它們之間的關(guān)系密切且復(fù)雜。 AI大模型的定義和特點(diǎn) AI大模型是指具有大量參數(shù)的
    的頭像 發(fā)表于 07-16 10:07 ?3.7w次閱讀

    基于AI深度學(xué)習(xí)的缺陷檢測(cè)系統(tǒng)

    在工業(yè)生產(chǎn)中,缺陷檢測(cè)是確保產(chǎn)品質(zhì)量的關(guān)鍵環(huán)節(jié)。傳統(tǒng)的人工檢測(cè)方法不僅效率低下,且易受人為因素影響,導(dǎo)致誤檢和漏檢問題頻發(fā)。隨著人工智能技術(shù)的飛速發(fā)展,特別是深度學(xué)習(xí)技術(shù)的崛起,基于AI深度
    的頭像 發(fā)表于 07-08 10:30 ?539次閱讀

    深度學(xué)習(xí)常用的Python庫

    深度學(xué)習(xí)作為人工智能的一個(gè)重要分支,通過模擬人類大腦中的神經(jīng)網(wǎng)絡(luò)來解決復(fù)雜問題。Python作為一種流行的編程語言,憑借其簡(jiǎn)潔的語法和豐富的庫支持,成為了深度學(xué)習(xí)
    的頭像 發(fā)表于 07-03 16:04 ?390次閱讀

    TensorFlow與PyTorch深度學(xué)習(xí)框架的比較與選擇

    深度學(xué)習(xí)作為人工智能領(lǐng)域的一個(gè)重要分支,在過去十年中取得了顯著的進(jìn)展。在構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型的過程中,深度
    的頭像 發(fā)表于 07-02 14:04 ?584次閱讀

    百度發(fā)布文心大模型4.0 Turbo與飛槳框架3.0,引領(lǐng)AI技術(shù)新篇章

    在科技飛速發(fā)展的今天,人工智能(AI)技術(shù)已成為推動(dòng)社會(huì)進(jìn)步的重要力量。6月28日,百度公司再次站在了AI技術(shù)的前沿,其首席技術(shù)官、深度學(xué)習(xí)技術(shù)及應(yīng)用國(guó)家工程
    的頭像 發(fā)表于 06-29 16:03 ?502次閱讀

    鴻蒙ArkUI-X框架開發(fā):【開發(fā)準(zhǔn)備】

    本文檔適用于ArkUI-X框架開發(fā)的初學(xué)者。通過環(huán)境搭建、代碼下載、代碼編譯、API擴(kuò)展和使用,快速了解跨平臺(tái)項(xiàng)目開發(fā)流程。
    的頭像 發(fā)表于 05-23 21:02 ?304次閱讀
    鴻蒙ArkUI-X<b class='flag-5'>框架開</b>發(fā):【開發(fā)準(zhǔn)備】

    FPGA在深度學(xué)習(xí)應(yīng)用中或?qū)⑷〈鶪PU

    基礎(chǔ)設(shè)施,人們?nèi)匀粵]有定論。如果 Mipsology 成功完成了研究實(shí)驗(yàn),許多正受 GPU 折磨的 AI 開發(fā)者將從中受益。 GPU 深度學(xué)習(xí)面臨的挑戰(zhàn) 三維圖形是 GPU 擁有如此
    發(fā)表于 03-21 15:19

    AI推理框架軟件ONNX Runtime正式支持龍架構(gòu)

    近日,知名AI推理框架開源社區(qū)ONNX Runtime正式發(fā)布支持龍架構(gòu)的版本1.17.0。
    的頭像 發(fā)表于 03-12 12:23 ?457次閱讀
    <b class='flag-5'>AI</b>推理<b class='flag-5'>框架</b>軟件ONNX Runtime正式支持龍架構(gòu)

    谷歌推出AI框架,實(shí)現(xiàn)AI模型的自然語言學(xué)習(xí)

    據(jù)了解,在此款“社交學(xué)習(xí)框架中,“學(xué)生模型”可向多位已處理指定任務(wù)的“教師模型”請(qǐng)教各類應(yīng)對(duì)方案,研究團(tuán)隊(duì)主要通過開展“垃圾短信檢測(cè)”、“解決小學(xué)數(shù)學(xué)題”及“根據(jù)文本回答問題”等多項(xiàng)
    的頭像 發(fā)表于 03-11 11:36 ?786次閱讀

    【技術(shù)科普】主流的深度學(xué)習(xí)模型有哪些?AI開發(fā)工程師必備!

    深度學(xué)習(xí)在科學(xué)計(jì)算中獲得了廣泛的普及,其算法被廣泛用于解決復(fù)雜問題的行業(yè)。所有深度學(xué)習(xí)算法都使用不同類型的神經(jīng)網(wǎng)絡(luò)來執(zhí)行特定任務(wù)。 什么是深度
    的頭像 發(fā)表于 01-30 15:26 ?505次閱讀
    【技術(shù)科普】主流的<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>模型有哪些?<b class='flag-5'>AI</b>開發(fā)工程師必備!

    深度學(xué)習(xí)框架DeepSpeed使用指南

    最常見的深度學(xué)習(xí)框架應(yīng)該是TensorFlow、Pytorch、Keras,但是這些框架在面向大規(guī)模模型的時(shí)候都不是很方便。 比如Pytorch的分布式并行計(jì)算
    的頭像 發(fā)表于 10-30 10:09 ?2527次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>框架</b>DeepSpeed使用指南