免费高清特黄a大片,九一h片在线免费看,a免费国产一级特黄aa大,国产精品国产主播在线观看,成人精品一区久久久久,一级特黄aa大片,俄罗斯无遮挡一级毛片

分享

如此多的深度學(xué)習(xí)框架,為什么我選擇PyTorch?

 CHOK2620 2018-01-16

小編說:目前研究人員正在使用的深度學(xué)習(xí)框架不盡相同,本文介紹了6種常見的深度學(xué)習(xí)框架,PyTorch與他們相比又有哪些優(yōu)勢呢?

本文選自《深度學(xué)習(xí)框架PyTorch:入門與實(shí)踐》,了解詳情請點(diǎn)擊閱讀原文

  •  PyTorch的誕生

2017年1月,F(xiàn)acebook人工智能研究院(FAIR)團(tuán)隊(duì)在GitHub上開源了PyTorch,并迅速占領(lǐng)GitHub熱度榜榜首。

作為一個2017年才發(fā)布,具有先進(jìn)設(shè)計理念的框架,PyTorch的歷史可追溯到2002年就誕生于紐約大學(xué)的Torch。Torch使用了一種不是很大眾的語言Lua作為接口。Lua簡潔高效,但由于其過于小眾,用的人不是很多,以至于很多人聽說要掌握Torch必須新學(xué)一門語言就望而卻步(其實(shí)Lua是一門比Python還簡單的語言)。

考慮到Python在計算科學(xué)領(lǐng)域的領(lǐng)先地位,以及其生態(tài)完整性和接口易用性,幾乎任何框架都不可避免地要提供Python接口。終于,在2017年,Torch的幕后團(tuán)隊(duì)推出了PyTorch。PyTorch不是簡單地封裝Lua Torch提供Python接口,而是對Tensor之上的所有模塊進(jìn)行了重構(gòu),并新增了最先進(jìn)的自動求導(dǎo)系統(tǒng),成為當(dāng)下最流行的動態(tài)圖框架。

PyTorch一經(jīng)推出就立刻引起了廣泛關(guān)注,并迅速在研究領(lǐng)域流行起來。圖1所示為Google指數(shù),PyTorch自發(fā)布起關(guān)注度就在不斷上升,截至2017年10月18日,PyTorch的熱度已然超越了其他三個框架(Caffe、MXNet和Theano),并且其熱度還在持續(xù)上升中。

圖 1 PyTorch 和 Caffe、Theano、MXNet 的 Google 指數(shù)對比(類別為科學(xué))

  • 常見的深度學(xué)習(xí)框架簡介

隨著深度學(xué)習(xí)的發(fā)展,深度學(xué)習(xí)框架如雨后春筍般誕生于高校和公司中。尤其是近兩年,Google、Facebook、Microsoft等巨頭都圍繞深度學(xué)習(xí)重點(diǎn)投資了一系列新興項(xiàng)目,他們也一直在支持一些開源的深度學(xué)習(xí)框架。

目前研究人員正在使用的深度學(xué)習(xí)框架不盡相同,有 TensorFlow 、Caffe、Theano、Keras等,常見的深度學(xué)習(xí)框架如圖2所示。這些深度學(xué)習(xí)框架被應(yīng)用于計算機(jī)視覺、語音識別、自然語言處理與生物信息學(xué)等領(lǐng)域,并獲取了極好的效果。本部分主要介紹當(dāng)前深度學(xué)習(xí)領(lǐng)域影響力比較大的幾個框架,限于筆者個人使用經(jīng)驗(yàn)和了解程度,對各個框架的評價可能有不準(zhǔn)確的地方。

圖 2 常見的深度學(xué)習(xí)框架

1 . Theano

Theano最初誕生于蒙特利爾大學(xué) LISA 實(shí)驗(yàn)室,于2008年開始開發(fā),是第一個有較大影響力的Python深度學(xué)習(xí)框架。

Theano 是一個 Python 庫,可用于定義、優(yōu)化和計算數(shù)學(xué)表達(dá)式,特別是多維數(shù)組(numpy.ndarray)。在解決包含大量數(shù)據(jù)的問題時,使用 Theano 編程可實(shí)現(xiàn)比手寫 C 語言更快的速度,而通過 GPU 加速,Theano 甚至可以比基于 CPU 計算的 C 語言快上好幾個數(shù)量級。Theano 結(jié)合了計算機(jī)代數(shù)系統(tǒng)(Computer Algebra System,CAS)和優(yōu)化編譯器,還可以為多種數(shù)學(xué)運(yùn)算生成定制的 C 語言代碼。對于包含重復(fù)計算的復(fù)雜數(shù)學(xué)表達(dá)式的任務(wù)而言,計算速度很重要,因此這種 CAS 和優(yōu)化編譯器的組合是很有用的。對需要將每一種不同的數(shù)學(xué)表達(dá)式都計算一遍的情況,Theano 可以最小化編譯/解析的計算量,但仍然會給出如自動微分那樣的符號特征。

Theano誕生于研究機(jī)構(gòu),服務(wù)于研究人員,其設(shè)計具有較濃厚的學(xué)術(shù)氣息,但在工程設(shè)計上有較大的缺陷。一直以來,Theano因難調(diào)試、構(gòu)建圖慢等缺點(diǎn)為人所詬病。為了加速深度學(xué)習(xí)研究,人們在它的基礎(chǔ)之上,開發(fā)了Lasagne、Blocks、PyLearn2和Keras等第三方框架,這些框架以Theano為基礎(chǔ),提供了更好的封裝接口以方便用戶使用。

2017年9月28日,在Theano 1.0正式版即將發(fā)布前夕,LISA實(shí)驗(yàn)室負(fù)責(zé)人,深度學(xué)習(xí)三巨頭之一的Yoshua Bengio 宣布Theano即將停止開發(fā):“Theano is Dead”。盡管Theano即將退出歷史舞臺,但作為第一個Python深度學(xué)習(xí)框架,它很好地完成了自己的使命,為深度學(xué)習(xí)研究人員的早期拓荒提供了極大的幫助,同時也為之后深度學(xué)習(xí)框架的開發(fā)奠定了基本設(shè)計方向: 以計算圖為框架的核心,采用GPU加速計算。

2017年11月,LISA實(shí)驗(yàn)室在 GitHub 上開啟了一個初學(xué)者入門項(xiàng)目,旨在幫助實(shí)驗(yàn)室新生快速掌握機(jī)器學(xué)習(xí)相關(guān)的實(shí)踐基礎(chǔ),而該項(xiàng)目正是使用PyTorch作為教學(xué)框架。

點(diǎn)評:由于Theano已經(jīng)停止開發(fā),不建議作為研究工具繼續(xù)學(xué)習(xí)。

2  TensorFlow

2015年11月10日,Google宣布推出全新的機(jī)器學(xué)習(xí)開源工具TensorFlow。 TensorFlow 最初是由 Google 機(jī)器智能研究部門的 Google Brain 團(tuán)隊(duì)開發(fā),基于Google 2011年開發(fā)的深度學(xué)習(xí)基礎(chǔ)架構(gòu)DistBelief構(gòu)建起來的。TensorFlow主要用于進(jìn)行機(jī)器學(xué)習(xí)和深度神經(jīng)網(wǎng)絡(luò)研究, 但它是一個非?;A(chǔ)的系統(tǒng),因此也可以應(yīng)用于眾多領(lǐng)域。由于Google在深度學(xué)習(xí)領(lǐng)域的巨大影響力和強(qiáng)大的推廣能力,TensorFlow一經(jīng)推出就獲得了極大的關(guān)注,并迅速成為如今用戶最多的深度學(xué)習(xí)框架。

TensorFlow在很大程度上可以看作Theano的后繼者,不僅因?yàn)樗鼈冇泻艽笠慌餐拈_發(fā)者,而且它們還擁有相近的設(shè)計理念,都是基于計算圖實(shí)現(xiàn)自動微分系統(tǒng)。TensorFlow 使用數(shù)據(jù)流圖進(jìn)行數(shù)值計算,圖中的節(jié)點(diǎn)代表數(shù)學(xué)運(yùn)算, 而圖中的邊則代表在這些節(jié)點(diǎn)之間傳遞的多維數(shù)組(張量)。

TensorFlow編程接口支持Python和C 。隨著1.0版本的公布,Java、Go、R和Haskell API的alpha版本也被支持。此外,TensorFlow還可在Google Cloud和AWS中運(yùn)行。TensorFlow還支持 Windows 7、Windows 10和Windows Server 2016。由于TensorFlow使用C Eigen庫,所以庫可在ARM架構(gòu)上編譯和優(yōu)化。這也就意味著用戶可以在各種服務(wù)器和移動設(shè)備上部署自己的訓(xùn)練模型,無須執(zhí)行單獨(dú)的模型解碼器或者加載Python解釋器。

作為當(dāng)前最流行的深度學(xué)習(xí)框架,TensorFlow獲得了極大的成功,對它的批評也不絕于耳,總結(jié)起來主要有以下四點(diǎn)。

  • 過于復(fù)雜的系統(tǒng)設(shè)計,TensorFlow 在GitHub代碼倉庫的總代碼量超過100萬行。這么大的代碼倉庫,對于項(xiàng)目維護(hù)者來說維護(hù)成為了一個難以完成的任務(wù),而對讀者來說,學(xué)習(xí)TensorFlow底層運(yùn)行機(jī)制更是一個極其痛苦的過程,并且大多數(shù)時候這種嘗試以放棄告終。

  • 頻繁變動的接口。TensorFlow的接口一直處于快速迭代之中,并且沒有很好地考慮向后兼容性,這導(dǎo)致現(xiàn)在許多開源代碼已經(jīng)無法在新版的TensorFlow上運(yùn)行,同時也間接導(dǎo)致了許多基于TensorFlow的第三方框架出現(xiàn)BUG。

  • 接口設(shè)計過于晦澀難懂。在設(shè)計TensorFlow時,創(chuàng)造了圖、會話、命名空間、PlaceHolder等諸多抽象概念,對普通用戶來說難以理解。同一個功能,TensorFlow提供了多種實(shí)現(xiàn),這些實(shí)現(xiàn)良莠不齊,使用中還有細(xì)微的區(qū)別,很容易將用戶帶入坑中。

  • 文檔混亂脫節(jié)。TensorFlow作為一個復(fù)雜的系統(tǒng),文檔和教程眾多,但缺乏明顯的條理和層次,雖然查找很方便,但用戶卻很難找到一個真正循序漸進(jìn)的入門教程。

由于直接使用TensorFlow的生產(chǎn)力過于低下,包括Google官方等眾多開發(fā)者嘗試基于TensorFlow構(gòu)建一個更易用的接口,包括Keras、Sonnet、TFLearn、TensorLayer、Slim、Fold、PrettyLayer等數(shù)不勝數(shù)的第三方框架每隔幾個月就會在新聞中出現(xiàn)一次,但是又大多歸于沉寂,至今TensorFlow仍沒有一個統(tǒng)一易用的接口。

憑借Google著強(qiáng)大的推廣能力,TensorFlow已經(jīng)成為當(dāng)今最炙手可熱的深度學(xué)習(xí)框架,但是由于自身的缺陷,TensorFlow離最初的設(shè)計目標(biāo)還很遙遠(yuǎn)。另外,由于Google對TensorFlow略顯嚴(yán)格的把控,目前各大公司都在開發(fā)自己的深度學(xué)習(xí)框架。

點(diǎn)評:不完美但最流行的深度學(xué)習(xí)框架,社區(qū)強(qiáng)大,適合生產(chǎn)環(huán)境。

3 . Keras

Keras是一個高層神經(jīng)網(wǎng)絡(luò)API,由純Python編寫而成并使用TensorFlow、Theano及CNTK作為后端。Keras為支持快速實(shí)驗(yàn)而生,能夠把想法迅速轉(zhuǎn)換為結(jié)果。Keras應(yīng)該是深度學(xué)習(xí)框架之中最容易上手的一個,它提供了一致而簡潔的API, 能夠極大地減少一般應(yīng)用下用戶的工作量,避免用戶重復(fù)造輪子。

嚴(yán)格意義上講,Keras并不能稱為一個深度學(xué)習(xí)框架,它更像一個深度學(xué)習(xí)接口,它構(gòu)建于第三方框架之上。Keras的缺點(diǎn)很明顯:過度封裝導(dǎo)致喪失靈活性。Keras最初作為Theano的高級API而誕生,后來增加了TensorFlow和CNTK作為后端。為了屏蔽后端的差異性,提供一致的用戶接口,Keras做了層層封裝,導(dǎo)致用戶在新增操作或是獲取底層的數(shù)據(jù)信息時過于困難。同時,過度封裝也使得Keras的程序過于緩慢,許多BUG都隱藏于封裝之中,在絕大多數(shù)場景下,Keras是本文介紹的所有框架中最慢的一個。

學(xué)習(xí)Keras十分容易,但是很快就會遇到瓶頸,因?yàn)樗鄙凫`活性。另外,在使用Keras的大多數(shù)時間里,用戶主要是在調(diào)用接口,很難真正學(xué)習(xí)到深度學(xué)習(xí)的內(nèi)容。

點(diǎn)評:入門最簡單,但是不夠靈活,使用受限。

4 . Caffe/Caffe2

Caffe的全稱是Convolutional Architecture for Fast Feature Embedding,它是一個清晰、高效的深度學(xué)習(xí)框架,核心語言是C ,它支持命令行、Python和MATLAB接口,既可以在CPU上運(yùn)行,也可以在GPU上運(yùn)行。

Caffe的優(yōu)點(diǎn)是簡潔快速,缺點(diǎn)是缺少靈活性。不同于Keras因?yàn)樘嗟姆庋b導(dǎo)致靈活性喪失,Caffe靈活性的缺失主要是因?yàn)樗脑O(shè)計。在Caffe中最主要的抽象對象是層,每實(shí)現(xiàn)一個新的層,必須要利用C 實(shí)現(xiàn)它的前向傳播和反向傳播代碼,而如果想要新層運(yùn)行在GPU上,還需要同時利用CUDA實(shí)現(xiàn)這一層的前向傳播和反向傳播。這種限制使得不熟悉C 和CUDA的用戶擴(kuò)展Caffe十分困難。

Caffe憑借其易用性、簡潔明了的源碼、出眾的性能和快速的原型設(shè)計獲取了眾多用戶,曾經(jīng)占據(jù)深度學(xué)習(xí)領(lǐng)域的半壁江山。但是在深度學(xué)習(xí)新時代到來之時,Caffe已經(jīng)表現(xiàn)出明顯的力不從心,諸多問題逐漸顯現(xiàn)(包括靈活性缺失、擴(kuò)展難、依賴眾多環(huán)境難以配置、應(yīng)用局限等)。盡管現(xiàn)在在GitHub上還能找到許多基于Caffe的項(xiàng)目,但是新的項(xiàng)目已經(jīng)越來越少。

Caffe的作者從加州大學(xué)伯克利分校畢業(yè)后加入了Google,參與過TensorFlow的開發(fā),后來離開Google加入FAIR,擔(dān)任工程主管,并開發(fā)了Caffe2。Caffe2是一個兼具表現(xiàn)力、速度和模塊性的開源深度學(xué)習(xí)框架。它沿襲了大量的 Caffe 設(shè)計,可解決多年來在 Caffe 的使用和部署中發(fā)現(xiàn)的瓶頸問題。Caffe2的設(shè)計追求輕量級,在保有擴(kuò)展性和高性能的同時,Caffe2 也強(qiáng)調(diào)了便攜性。Caffe2 從一開始就以性能、擴(kuò)展、移動端部署作為主要設(shè)計目標(biāo)。Caffe2 的核心 C 庫能提供速度和便攜性,而其 Python 和 C API 使用戶可以輕松地在 Linux、Windows、iOS、Android ,甚至 Raspberry Pi 和 NVIDIA Tegra 上進(jìn)行原型設(shè)計、訓(xùn)練和部署。

Caffe2繼承了Caffe的優(yōu)點(diǎn),在速度上令人印象深刻。Facebook 人工智能實(shí)驗(yàn)室與應(yīng)用機(jī)器學(xué)習(xí)團(tuán)隊(duì)合作,利用Caffe2大幅加速機(jī)器視覺任務(wù)的模型訓(xùn)練過程,僅需 1 小時就訓(xùn)練完ImageNet 這樣超大規(guī)模的數(shù)據(jù)集。然而盡管已經(jīng)發(fā)布半年多,開發(fā)一年多,Caffe2仍然是一個不太成熟的框架,官網(wǎng)至今沒提供完整的文檔,安裝也比較麻煩,編譯過程時常出現(xiàn)異常,在GitHub上也很少找到相應(yīng)的代碼。

極盛的時候,Caffe占據(jù)了計算機(jī)視覺研究領(lǐng)域的半壁江山,雖然如今Caffe已經(jīng)很少用于學(xué)術(shù)界,但是仍有不少計算機(jī)視覺相關(guān)的論文使用Caffe。由于其穩(wěn)定、出眾的性能,不少公司還在使用Caffe部署模型。Caffe2盡管做了許多改進(jìn),但是還遠(yuǎn)沒有達(dá)到替代Caffe的地步。

點(diǎn)評:文檔不夠完善,但性能優(yōu)異,幾乎全平臺支持(Caffe2),適合生產(chǎn)環(huán)境。

5 . MXNet

MXNet是一個深度學(xué)習(xí)庫,支持C 、Python、R、Scala、Julia、MATLAB及JavaScript等語言;支持命令和符號編程;可以運(yùn)行在CPU、GPU、集群、服務(wù)器、臺式機(jī)或者移動設(shè)備上。MXNet是CXXNet的下一代,CXXNet借鑒了Caffe的思想,但是在實(shí)現(xiàn)上更干凈。在2014 年的NIPS 上,同為上海交大校友的陳天奇與李沐碰頭,討論到各自在做深度學(xué)習(xí) Toolkits 的項(xiàng)目組,發(fā)現(xiàn)大家普遍在做很多重復(fù)性的工作,例如文件 loading 等。于是他們決定組建 DMLC【Distributied (Deep) Machine Learning Community】,號召大家一起合作開發(fā) MXNet,發(fā)揮各自的特長,避免重復(fù)造輪子。

MXNet以其超強(qiáng)的分布式支持,明顯的內(nèi)存、顯存優(yōu)化為人所稱道。同樣的模型,MXNet往往占用更小的內(nèi)存和顯存,并且在分布式環(huán)境下,MXNet展現(xiàn)出了明顯優(yōu)于其他框架的擴(kuò)展性能。

由于MXNet最初由一群學(xué)生開發(fā),缺乏商業(yè)應(yīng)用,極大地限制了MXNet的使用。2016年11月,MXNet被AWS正式選擇為其云計算的官方深度學(xué)習(xí)平臺。2017年1月,MXNet項(xiàng)目進(jìn)入Apache基金會,成為Apache的孵化器項(xiàng)目。

盡管MXNet擁有最多的接口,也獲得了不少人的支持,但其始終處于一種不溫不火的狀態(tài)。個人認(rèn)為這在很大程度上歸結(jié)于推廣不給力及接口文檔不夠完善。MXNet長期處于快速迭代的過程,其文檔卻長時間未更新,導(dǎo)致新手用戶難以掌握MXNet,老用戶常常需要查閱源碼才能真正理解MXNet接口的用法。

為了完善MXNet的生態(tài)圈,推廣MXNet,MXNet先后推出了包括MinPy、Keras和Gluon等諸多接口,但前兩個接口目前基本停止了開發(fā),Gluon模仿PyTorch的接口設(shè)計,MXNet的作者李沐更是親自上陣,在線講授如何從零開始利用Gluon學(xué)習(xí)深度學(xué)習(xí),誠意滿滿,吸引了許多新用戶。

點(diǎn)評:文檔略混亂,但分布式性能強(qiáng)大,語言支持最多,適合AWS云平臺使用。

6 . CNTK

2015年8月,微軟公司在CodePlex上宣布由微軟研究院開發(fā)的計算網(wǎng)絡(luò)工具集CNTK將開源。5個月后,2016年1月25日,微軟公司在他們的GitHub倉庫上正式開源了CNTK。早在2014年,在微軟公司內(nèi)部,黃學(xué)東博士和他的團(tuán)隊(duì)正在對計算機(jī)能夠理解語音的能力進(jìn)行改進(jìn),但當(dāng)時使用的工具顯然拖慢了他們的進(jìn)度。于是,一組由志愿者組成的開發(fā)團(tuán)隊(duì)構(gòu)想設(shè)計了他們自己的解決方案,最終誕生了CNTK。

根據(jù)微軟開發(fā)者的描述,CNTK的性能比Caffe、Theano、TensoFlow等主流工具都要強(qiáng)。CNTK支持CPU和GPU模式,和TensorFlow/Theano一樣,它把神經(jīng)網(wǎng)絡(luò)描述成一個計算圖的結(jié)構(gòu),葉子節(jié)點(diǎn)代表輸入或者網(wǎng)絡(luò)參數(shù),其他節(jié)點(diǎn)代表計算步驟。CNTK 是一個非常強(qiáng)大的命令行系統(tǒng),可以創(chuàng)建神經(jīng)網(wǎng)絡(luò)預(yù)測系統(tǒng)。CNTK 最初是出于在 Microsoft 內(nèi)部使用的目的而開發(fā)的,一開始甚至沒有Python接口,而是使用了一種幾乎沒什么人用的語言開發(fā)的,而且文檔有些晦澀難懂,推廣不是很給力,導(dǎo)致現(xiàn)在用戶比較少。但就框架本身的質(zhì)量而言,CNTK表現(xiàn)得比較均衡,沒有明顯的短板,并且在語音領(lǐng)域效果比較突出。

點(diǎn)評:社區(qū)不夠活躍,但是性能突出,擅長語音方面的相關(guān)研究。

7 . 其他框架

除了上述的幾個框架,還有不少的框架,都有一定的影響力和用戶。比如百度開源的PaddlePaddle,CMU開發(fā)的DyNet,簡潔無依賴符合C 11標(biāo)準(zhǔn)的tiny-dnn,使用Java開發(fā)并且文檔極其優(yōu)秀的Deeplearning4J,還有英特爾開源的Nervana,Amazon開源的DSSTNE。這些框架各有優(yōu)缺點(diǎn),但是大多流行度和關(guān)注度不夠,或者局限于一定的領(lǐng)域。此外,還有許多專門針對移動設(shè)備開發(fā)的框架,如CoreML、MDL,這些框架純粹為部署而誕生,不具有通用性,也不適合作為研究工具。

  • 為什么選擇PyTorch

這么多深度學(xué)習(xí)框架,為什么選擇PyTorch呢?

因?yàn)镻yTorch是當(dāng)前難得的簡潔優(yōu)雅且高效快速的框架。在筆者眼里,PyTorch達(dá)到目前深度學(xué)習(xí)框架的最高水平。當(dāng)前開源的框架中,沒有哪一個框架能夠在靈活性、易用性、速度這三個方面有兩個能同時超過PyTorch。下面是許多研究人員選擇PyTorch的原因。

① 簡潔:PyTorch的設(shè)計追求最少的封裝,盡量避免重復(fù)造輪子。不像TensorFlow中充斥著session、graph、operation、name_scope、variable、tensor、layer等全新的概念,PyTorch的設(shè)計遵循tensor→variable(autograd)→nn.Module 三個由低到高的抽象層次,分別代表高維數(shù)組(張量)、自動求導(dǎo)(變量)和神經(jīng)網(wǎng)絡(luò)(層/模塊),而且這三個抽象之間聯(lián)系緊密,可以同時進(jìn)行修改和操作。

簡潔的設(shè)計帶來的另外一個好處就是代碼易于理解。PyTorch的源碼只有TensorFlow的十分之一左右,更少的抽象、更直觀的設(shè)計使得PyTorch的源碼十分易于閱讀。在筆者眼里,PyTorch的源碼甚至比許多框架的文檔更容易理解。

② 速度:PyTorch的靈活性不以速度為代價,在許多評測中,PyTorch的速度表現(xiàn)勝過TensorFlow和Keras等框架   ??蚣艿倪\(yùn)行速度和程序員的編碼水平有極大關(guān)系,但同樣的算法,使用PyTorch實(shí)現(xiàn)的那個更有可能快過用其他框架實(shí)現(xiàn)的。

③易用:PyTorch是所有的框架中面向?qū)ο笤O(shè)計的最優(yōu)雅的一個。PyTorch的面向?qū)ο蟮慕涌谠O(shè)計來源于Torch,而Torch的接口設(shè)計以靈活易用而著稱,Keras作者最初就是受Torch的啟發(fā)才開發(fā)了Keras。PyTorch繼承了Torch的衣缽,尤其是API的設(shè)計和模塊的接口都與Torch高度一致。PyTorch的設(shè)計最符合人們的思維,它讓用戶盡可能地專注于實(shí)現(xiàn)自己的想法,即所思即所得,不需要考慮太多關(guān)于框架本身的束縛。

④活躍的社區(qū):PyTorch提供了完整的文檔,循序漸進(jìn)的指南,作者親自維護(hù)的論壇 供用戶交流和求教問題。Facebook 人工智能研究院對PyTorch提供了強(qiáng)力支持,作為當(dāng)今排名前三的深度學(xué)習(xí)研究機(jī)構(gòu),F(xiàn)AIR的支持足以確保PyTorch獲得持續(xù)的開發(fā)更新,不至于像許多由個人開發(fā)的框架那樣曇花一現(xiàn)。

在PyTorch推出不到一年的時間內(nèi),各類深度學(xué)習(xí)問題都有利用PyTorch實(shí)現(xiàn)的解決方案在GitHub上開源。同時也有許多新發(fā)表的論文采用PyTorch作為論文實(shí)現(xiàn)的工具,PyTorch正在受到越來越多人的追捧 。

如果說 TensorFlow的設(shè)計是“Make It Complicated”,Keras的設(shè)計是“Make It Complicated And Hide It”,那么PyTorch的設(shè)計真正做到了“Keep it Simple,Stupid”。簡潔即是美。

使用TensorFlow能找到很多別人的代碼,使用PyTorch能輕松實(shí)現(xiàn)自己的想法。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多