目前是人工智能的時代,國內(nèi)外像Google、微軟、FaceBook、百度和華為等巨頭公司紛紛投入較大的資源進行深度學習框架的研發(fā)和應用的拓展。表1列出了github上流行的深度學習框架的星數(shù)。
表1 github上流行的深度學習框架的星數(shù)
下面有側(cè)重地介紹一下上表中列出的一些深度學習框架。
(一)TensorFlow
TensorFlow是用C++語言開發(fā)的,支持C、Java、Python等多種語言的調(diào)用,目前主流的方式通常會使用Python語言來驅(qū)動應用。這一特點也是其能夠廣受歡迎的原因。利用C++語言開發(fā)可以保證其運行效率,Python作為上層應用語言,可以為研究人員節(jié)省大量的開發(fā)時間。
TensorFlow相對于其他框架有如下特點。
1、靈活
TensorFlow與CNTK、MXNET、Theano同屬于符號計算構(gòu)架,允許用戶在不需要使用低級語言(如在Caffe中)實現(xiàn)的情況下,開發(fā)出新的復雜層類型;趫D運算是其基本特點,通過圖上的節(jié)點變量可以控制訓練中各個環(huán)節(jié)的變量,尤其在需要對底層操作時,TensorFlow要比其他框架更容易。當然它也有缺點,靈活的操作會增加使用復雜度,從而在一定程度上增加了學習成本。
2、便捷、通用
作為主流的框架,TensorFlow生成的模型,具有便捷、通用的特點,可以滿足更多使用者的需求。TensorFlow可以適用于Mac、Linux、Windows系統(tǒng)上開發(fā)。其編譯好的模型幾乎適用于當今所有的平臺系統(tǒng),并提滿足“開箱即用”的模型使用理念,使模型應用起來更簡單。
3、成熟
由于TensorFlow被使用的情況最多,所以其框架的成熟度絕對是第一的。在Google的白皮書上寫道,Google內(nèi)部有大量的產(chǎn)品幾乎都用到了TensorFlow,如搜索排序、語音識別、谷歌相冊和自然語言處理等。有這么多在該框架上的成功案例,先不說能夠提供多少經(jīng)驗技巧,至少可以確保學習者在研究的道路上,遇到挫折時不會懷疑是框架的問題。
4、超強的運算性能
雖然TensorFlow在大型計算機集群的并行處理中,運算性能僅略低于CNTK,但是,其在個人機器使用場景下,會根據(jù)機器的配置自動選擇CPU或GPU來運算,這方面做得更加友好與智能化。
(二)Caffe
當年深度學習的老大。最初是一個強大的圖像分類框架,是最容易測試評估性能的標準深度學習框架,并且提供很多預訓練模型,尤其該模型的復用價值在其他框架的學習中都會出現(xiàn),大大提升了現(xiàn)有模型的訓練時間。但是現(xiàn)在的Caffe似乎停滯不前,沒有更新。盡管Caffe又重新掘起,從架構(gòu)上看更像是TensorFlow,而且與原來的Caffe也不在一個工程里,可以獨立成一個框架來看待,與原Caffe關(guān)系不大。
(三)CNTK
CNTK是一個微軟開發(fā)的深度學習軟件包,以速度快著稱,有其獨有的神經(jīng)網(wǎng)絡配置語言Brain Script,大大降低了學習門檻。有微軟作為后盾,CNTK成為了最具有潛力與Tensor Flow爭奪天下的框架。但目前其成熟度要比TensorFlow差太多,即便是發(fā)行的版本也會有大大小小的bug。與其他框架一樣,CNTK具有文檔資料不足的特點。但其與Visual Studio的天生耦合,以及其特定的MS編程風格,使得熟悉Visual Studio工具的小伙伴們從代碼角度極易上手。另外,CNTK目前還不支持Mac操作系統(tǒng)。
>>本文地址:http://hqfphsz.com/zhuanye/2020/50384.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?