国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

八種主流深度學習框架的介紹

龍騰亞太 ? 來源:龍騰亞太 ? 作者:龍騰亞太 ? 2022-04-26 18:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

導讀:近幾年隨著深度學習算法的發展,出現了許多深度學習框架。這些框架各有所長,各具特色。常用的開源框架有TensorFlow、Keras、Caffe、PyTorch、Theano、CNTK、MXNet、PaddlePaddle、Deeplearning4j、ONNX等。

框架名稱:TensorFlow

主要維護方:Google

支持的語言:C++/Python/Java/R 等

框架名稱:Keras

主要維護方:Google

支持的語言:Python/R

框架名稱:Caffe

主要維護方:BVLC

支持的語言:C++/Python/Matlab

框架名稱:PyTorch

主要維護方:Facebook

支持的語言:C/C++/Python

框架名稱:Theano

主要維護方:UdeM

支持的語言:Python

框架名稱:CNTK

主要維護方:Microsoft

支持的語言:C++/Python/C#/.NET/Java/R

框架名稱:MXNet

主要維護方:DMLC

支持的語言:C++/Python/R等

框架名稱:PaddlePaddle

主要維護方:Baidu

支持的語言:C++/Python

框架名稱:Deeplearning4j

主要維護方:Eclipse

支持的語言:Java/Scala等

框架名稱:ONNX

主要維護方:Microsoft/ Facebook

支持的語言:Python/R

下面開始對各框架進行概述,讓讀者對各個框架有個簡單的認知,具體的安裝及使用方法不在本文贅述。

01 TensorFlow

谷歌的TensorFlow可以說是當今最受歡迎的開源深度學習框架,可用于各類深度學習相關的任務中。TensorFlow = Tensor + Flow,Tensor就是張量,代表N維數組;Flow即流,代表基于數據流圖的計算。

TensorFlow是目前深度學習的主流框架,其主要特性如下所述。

TensorFlow支持Python、JavaScript、C ++、Java、Go、C#、Julia和R等多種編程語言。

TensorFlow不僅擁有強大的計算集群,還可以在iOSAndroid等移動平臺上運行模型。

TensorFlow編程入門難度較大。初學者需要仔細考慮神經網絡的架構,正確評估輸入和輸出數據的維度和數量。

TensorFlow使用靜態計算圖進行操作。也就是說,我們需要先定義圖形,然后運行計算,如果我們需要對架構進行更改,則需要重新訓練模型。選擇這樣的方法是為了提高效率,但是許多現代神經網絡工具已經能夠在學習過程中改進,并且不會顯著降低學習速度。在這方面,TensorFlow的主要競爭對手是PyTorch。

RStudio提供了R與TensorFlow的API接口,RStudio官網及GitHub上也提供了TensorFlow擴展包的學習資料

02 Keras

Keras是一個對小白用戶非常友好且簡單的深度學習框架。如果想快速入門深度學習, Keras將是不錯的選擇。

Keras是TensorFlow高級集成API,可以非常方便地和TensorFlow進行融合。Keras在高層可以調用TensorFlow、CNTK、Theano,還有更多優秀的庫也在被陸續支持中。Keras的特點是能夠快速搭建模型,是高效地進行科學研究的關鍵。

Keras的基本特性如下:

高度模塊化,搭建網絡非常簡潔;

API簡單,具有統一的風格;

易擴展,易于添加新模塊,只需要仿照現有模塊編寫新的類或函數即可。

RStudio提供了R與Keras的API接口,RStudio的官網及GitHub上也提供了Keras擴展包的學習資料。

03 Caffe

Caffe是由AI科學家賈揚清在加州大學伯克利分校讀博期間主導開發的,是以C++/CUDA代碼為主的早期深度學習框架之一,比TensorFlow、MXNet、PyTorch等都要早。Caffe需要進行編譯安裝,支持命令行、Python和Matlab接口,單機多卡、多機多卡等都可以很方便使用。

Caffe的基本特性如下。

以C++/CUDA/Python代碼為主,速度快,性能高。

工廠設計模式,代碼結構清晰,可讀性和可拓展性強。

支持命令行、Python和Matlab接口,使用方便。

CPUGPU之間切換方便,多GPU訓練方便。

工具豐富,社區活躍。

同時,Caffe的缺點也比較明顯,主要包括如下幾點。

源代碼修改門檻較高,需要實現正向/反向傳播。

不支持自動求導。

不支持模型級并行,只支持數據級并行。

不適合非圖像任務。

雖然Caffe已經提供了Matlab和Python接口,但目前不支持R語言。caffeR為Caffe提供了一系列封裝功能,允許用戶在R語言上運行Caffe,包括數據預處理和網絡設置,以及監控和評估訓練過程。該包還沒有CRAN版本,感興趣的讀者可以在GitHub找到caffeR包的安裝及使用的相關內容。

04 PyTorch

PyTorch是Facebook團隊于2017年1月發布的一個深度學習框架,雖然晚于TensorFlow、Keras等框架,但自發布之日起,其受到的關注度就在不斷上升,目前在GitHub上的熱度已經超過Theano、Caffe、MXNet等框架。

PyTroch主要提供以下兩種核心功能:

支持GPU加速的張量計算;

方便優化模型的自動微分機制。

PyTorch的主要優點如下。

簡潔易懂:PyTorch的API設計相當簡潔一致,基本上是tensor、autograd、nn三級封裝,學習起來非常容易。

便于調試:PyTorch采用動態圖,可以像普通Python代碼一樣進行調試。不同于TensorFlow,PyTorch的報錯說明通常很容易看懂。

強大高效:PyTorch提供了非常豐富的模型組件,可以快速實現想法。

05 Theano

Theano誕生于2008年,由蒙特利爾大學的LISA實驗室開發并維護,是一個高性能的符號計算及深度學習框架。它完全基于Python,專門用于對數學表達式的定義、求值與優化。得益于對GU的透明使用,Theano尤其適用于包含高維度數組的數學表達式,并且計算效率比較高。

因Theano出現的時間較早,后來涌現出一批基于Theano的深度學習庫,并完成了對Theano的上層封裝以及功能擴展。在這些派生庫中,比較著名的就是本書要學習的Keras。Keras將一些基本的組件封裝成模塊,使得用戶在編寫、調試以及閱讀網絡代碼時更加清晰。

06 CNTK

CNTK(Microsoft Cognitive Toolkit)是微軟開源的深度學習工具包,它通過有向圖將神經網絡描述為一系列計算步驟。在有向圖中,葉節點表示輸入值或網絡參數,其他節點表示其輸入上的矩陣運算。

CNTK允許用戶非常輕松地實現和組合流行的模型,包括前饋神經網絡(DNN)、卷積神經網絡(CNN)和循環神經網絡(RNN、LSTM)。與目前大部分框架一樣,CNTK實現了自動求導,利用隨機梯度下降方法進行優化。

CNTK的基本特性如下。

CNTK性能較好,按照其官方的說法,它比其他的開源框架性能都要好。

適合做語音任務,CNTK本就是微軟語音團隊開源的,自然更適合做語音任務,便于在使用RNN等模型以及時空尺度時進行卷積。

微軟開發的CNTK-R包提供了R與CNTK的API接口。

07 MXNet

MXNet框架允許混合符號和命令式編程,以最大限度地提高效率和生產力。MXNet的核心是一個動態依賴調度程序,可以動態地自動并行化符號和命令操作。其圖形優化層使符號執行更快,內存效率更高。

MXNet的基本特性如下。

靈活的編程模型:支持命令式和符號式編程模型。

多語言支持:支持C++、Python、R、Julia、JavaScript、Scala、Go、Perl等。事實上,它是唯一支持所有R函數的構架。

本地分布式訓練:支持在多CPU/GPU設備上的分布式訓練,使其可充分利用云計算的規模優勢。

性能優化:使用一個優化的C++后端引擎實現并行I/O和計算,無論使用哪種語言都能達到最佳性能。

云端友好:可直接與S3、HDFS和Azure兼容。

08 ONNX

ONNX(Open Neural Network eXchange,開放神經網絡交換)項目由微軟、亞馬遜、Facebook和IBM等公司共同開發,旨在尋找呈現開放格式的深度學習模型。ONNX簡化了在人工智能不同工作方式之間傳遞模型的過程,具有各種深度學習框架的優點。

ONNX的基本特性如下。

ONNX使模型能夠在一個框架中進行訓練并轉移到另一個框架中進行預測。

ONNX模型目前在Caffe2、CNTK、MXNet和PyTorch中得到支持,并且還有與其他常見框架和庫的連接器

onnx-r包提供了R與ONNX的API接口。

關于作者:謝佳標,資深AI技術專家和數據挖掘專家,擁有超過14年的技術研發和管理經驗。精通Python和Keras等深度學習框架,在數據挖掘和人工智能技術領域有非常深厚的積累。連續6年(2017~2022年)被微軟評為數據科學和AI方向MVP。資深R語言技術專家,“中國現場統計研究會大數據統計分會”第一屆理事。歷屆中國R語言和數據科學大會特邀演講嘉賓,受邀在國內多所高校舉行以數據主題的公益講座。

審核編輯:符乾江

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 深度學習
    +關注

    關注

    73

    文章

    5598

    瀏覽量

    124396
  • 遷移學習
    +關注

    關注

    0

    文章

    74

    瀏覽量

    5850
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    LuatOS框架的使用(上)

    在資源受限的物聯網終端設備中,如何實現快速開發與穩定運行是關鍵挑戰。LuatOS框架通過將Lua語言與底層硬件抽象層深度融合,提供了一套簡潔高效的開發范式。本文將圍繞LuatOS框架的使用展開,從
    的頭像 發表于 01-27 19:38 ?153次閱讀
    LuatOS<b class='flag-5'>框架</b>的使用(上)

    機器學習深度學習中需避免的 7 個常見錯誤與局限性

    無論你是剛入門還是已經從事人工智能模型相關工作一段時間,機器學習深度學習中都存在一些我們需要時刻關注并銘記的常見錯誤。如果對這些錯誤置之不理,日后可能會引發諸多麻煩!只要我們密切關注數據、模型架構
    的頭像 發表于 01-07 15:37 ?184次閱讀
    機器<b class='flag-5'>學習</b>和<b class='flag-5'>深度</b><b class='flag-5'>學習</b>中需避免的 7 個常見錯誤與局限性

    【團購】獨家全套珍藏!龍哥LabVIEW視覺深度學習實戰課(11大系列課程,共5000+分鐘)

    (第10系列)、YOLOv8-Tiny工業優化版(第9系列),滿足產線端設備算力限制,模型推理速度提升300%。 LabVIEW生態整合 作為工業自動化領域主流開發環境,LabVIEW與深度學習的集成
    發表于 12-04 09:28

    【團購】獨家全套珍藏!龍哥LabVIEW視覺深度學習實戰課程(11大系列課程,共5000+分鐘)

    (第10系列)、YOLOv8-Tiny工業優化版(第9系列),滿足產線端設備算力限制,模型推理速度提升300%。 LabVIEW生態整合 作為工業自動化領域主流開發環境,LabVIEW與深度學習的集成
    發表于 12-03 13:50

    如何深度學習機器視覺的應用場景

    深度學習視覺應用場景大全 工業制造領域 復雜缺陷檢測:處理傳統算法難以描述的非標準化缺陷模式 非標產品分類:對形狀、顏色、紋理多變的產品進行智能分類 外觀質量評估:基于學習的外觀質量標準判定 精密
    的頭像 發表于 11-27 10:19 ?220次閱讀

    如何在機器視覺中部署深度學習神經網絡

    圖 1:基于深度學習的目標檢測可定位已訓練的目標類別,并通過矩形框(邊界框)對其進行標識。 在討論人工智能(AI)或深度學習時,經常會出現“神經網絡”、“黑箱”、“標注”等術語。這些概
    的頭像 發表于 09-10 17:38 ?900次閱讀
    如何在機器視覺中部署<b class='flag-5'>深度</b><b class='flag-5'>學習</b>神經網絡

    深度學習對工業物聯網有哪些幫助

    深度學習作為人工智能的核心分支,通過模擬人腦神經網絡的層級結構,能夠自動從海量工業數據中提取復雜特征,為工業物聯網(IIoT)提供了從數據感知到智能決策的全鏈路升級能力。以下從技術賦能、場景突破
    的頭像 發表于 08-20 14:56 ?1022次閱讀

    自動駕駛中Transformer大模型會取代深度學習嗎?

    [首發于智駕最前沿微信公眾號]近年來,隨著ChatGPT、Claude、文心一言等大語言模型在生成文本、對話交互等領域的驚艷表現,“Transformer架構是否正在取代傳統深度學習”這一話題一直被
    的頭像 發表于 08-13 09:15 ?4183次閱讀
    自動駕駛中Transformer大模型會取代<b class='flag-5'>深度</b><b class='flag-5'>學習</b>嗎?

    大模型時代的深度學習框架

    作者:算力魔方創始人/英特爾創新大使劉力 在 CNN時代 ,AI模型的參數規模都在百萬級別,僅需在單張消費類顯卡上即可完成訓練。例如,以業界知名的CNN模型: ResNet50 為例,模型參數量是約為 25.63M,在ImageNet1K數據集上,使用單張消費類顯卡 RTX-4090只需大約35~40個小時 ,即可完成ResNet50模型的預訓練。在 大模型時代 ,由于大模型參數規模龐大,無法跟CNN時代的小模型一樣在單張顯卡上完成訓練,需要構建多張AI加速卡的集群才能完成AI大模型的預訓練
    的頭像 發表于 04-25 11:43 ?834次閱讀
    大模型時代的<b class='flag-5'>深度</b><b class='flag-5'>學習</b><b class='flag-5'>框架</b>

    實時多線程VSLAM框架vS-Graphs介紹

    針對現有VSLAM系統語義表達不足、地圖可解釋性差的問題,本文提出vS-Graphs,一實時多線程VSLAM框架。該方案顯著提升了重建地圖的語義豐富度、可解釋性及定位精度。實驗表明
    的頭像 發表于 04-19 14:07 ?1000次閱讀
    一<b class='flag-5'>種</b>實時多線程VSLAM<b class='flag-5'>框架</b>vS-Graphs<b class='flag-5'>介紹</b>

    百度飛槳框架3.0正式版發布

    大模型訓練成本高?推理效率低?硬件適配難? 4月1日,百度發布 飛槳框架3.0正式版 !五大特性專為大模型設計。 作為大模型時代的Infra“基礎設施”,深度學習框架的重要性愈發凸顯,
    的頭像 發表于 04-02 19:03 ?1187次閱讀
    百度飛槳<b class='flag-5'>框架</b>3.0正式版發布

    嵌入式AI技術之深度學習:數據樣本預處理過程中使用合適的特征變換對深度學習的意義

    ? 作者:蘇勇Andrew 使用神經網絡實現機器學習,網絡的每個層都將對輸入的數據做一次抽象,多層神經網絡構成深度學習框架,可以深度理解數
    的頭像 發表于 04-02 18:21 ?1516次閱讀

    STM32如何移植Audio框架

    最近在學習音頻解碼,想用一下Audio框架。 1、這個該如何移植到自己創建的BSP并對接到device框架中?看了官方移植文檔沒有對沒有對該部分的描述。 2、我只想實現一個簡單的播放功能,只用一個DAC芯片(比如CS4344)是
    發表于 04-01 08:08

    用樹莓派搞深度學習?TensorFlow啟動!

    介紹本頁面將指導您在搭載64位Bullseye操作系統的RaspberryPi4上安裝TensorFlow。TensorFlow是一個專為深度學習開發的大型軟件庫,它消耗大量資源。您可以在
    的頭像 發表于 03-25 09:33 ?1200次閱讀
    用樹莓派搞<b class='flag-5'>深度</b><b class='flag-5'>學習</b>?TensorFlow啟動!

    如何排除深度學習工作臺上量化OpenVINO?的特定層?

    無法確定如何排除要在深度學習工作臺上量化OpenVINO?特定層
    發表于 03-06 07:31