-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
誰開發(fā)了一個深度神經(jīng)網(wǎng)絡(luò)(誰開發(fā)了一個深度神經(jīng)網(wǎng)絡(luò)技術(shù))
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于誰開發(fā)了一個深度神經(jīng)網(wǎng)絡(luò)的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計劃、工作報告、論文、代碼、作文、做題和對話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準,寫出的就越詳細,有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、2019年十大最佳深度學(xué)習(xí)框架
作者 | Python語音識別
來源 | 濤哥聊Python
雖然我們大多數(shù)人都驚嘆為什么DL這么好?在使用大量數(shù)據(jù)進行訓(xùn)練時,它在準確性方面非常出色。近幾年隨著深度學(xué)習(xí)算法的發(fā)展,出現(xiàn)了很多深度學(xué)習(xí)的框架,這些框架各有所長,各具特色。下面將為大家介紹2019年最受歡迎的十大深度學(xué)習(xí)框架。
TensorFlow谷歌的Tensorflow可以說是當(dāng)今最受歡迎的深度學(xué)習(xí)框架。Gmail,Uber,Airbnb,Nvidia以及其他許多知名品牌都在使用。TF是目前深度學(xué)習(xí)的主流框架,Tensorflow主要特性:
TensorFlow支持python、JavaScript、C ++、Java和Go,C#和Julia等多種編程語言。 TF不僅擁有強大的計算集群,還可以在iOS和Android等移動平臺上運行模型。 TF編程入門難度較大。初學(xué)者需要仔細考慮神經(jīng)網(wǎng)絡(luò)的架構(gòu),正確評估輸入和輸出數(shù)據(jù)的維度和數(shù)量。 TF使用靜態(tài)計算圖進行操作 。也就是說我們需要先定義圖形,然后運行計算,如果我們需要對架構(gòu)進行更改,我們會重新訓(xùn)練模型。選擇這樣的方法是為了提高效率,但是許多現(xiàn)代神經(jīng)網(wǎng)絡(luò)工具能夠在學(xué)習(xí)過程中考慮改進而不會顯著降低學(xué)習(xí)速度。在這方面,TensorFlow的主要競爭對手是PyTorch 。TensorFlow優(yōu)點:
它非常適合創(chuàng)建和試驗深度學(xué)習(xí)架構(gòu),便于數(shù)據(jù)集成,如輸入圖形,SQL表和圖像。 它得到谷歌的支持,這就說明該模型短期內(nèi)不會被拋棄,因此值得投入時間來學(xué)習(xí)它。 PyTorchTensorflow之后用于深度學(xué)習(xí)的主要框架是PyTorch。PyTorch框架是Facebook開發(fā)的,已被Twitter和Salesforce等公司使用。
PyTorch基本特性:
與TensorFlow不同,PyTorch庫使用動態(tài)更新的圖形進行操作 。這意味著它可以在流程中更改體系結(jié)構(gòu)。 在PyTorch中,您可以使用標準調(diào)試器 ,例如pdb或PyCharm。PyTorch優(yōu)點:
訓(xùn)練神經(jīng)網(wǎng)絡(luò)的過程簡單明了。同時,PyTorch支持數(shù)據(jù)并行和分布式學(xué)習(xí)模型,并且還包含許多預(yù)先訓(xùn)練的模型。 PyTorch更適合小型項目和原型設(shè)計。 SonnetSonnet深度學(xué)習(xí)框架是建立在TensorFlow的基礎(chǔ)之上。它是DeepMind用于創(chuàng)建具有復(fù)雜架構(gòu)的神經(jīng)網(wǎng)絡(luò)。
Sonnet基本特性:
面向?qū)ο蟮膸欤陂_發(fā)神經(jīng)網(wǎng)絡(luò)(NN)或其他機器學(xué)習(xí)(ML)算法時更加抽象。 Sonnet的想法是構(gòu)造對應(yīng)于神經(jīng)網(wǎng)絡(luò)的特定部分的主要Python對象。此外,這些對象獨立地連接到計算TensorFlow圖。分離創(chuàng)建對象并將其與圖形相關(guān)聯(lián)的過程簡化了高級體系結(jié)構(gòu)的設(shè)計。Sonnet優(yōu)點:
Sonnet的主要優(yōu)點是可以使用它來重現(xiàn)DeepMind論文中展示的研究,比Keras更容易,因為DeepMind論文模型就是使用Sonnet搭建的。 KerasKeras是一個機器學(xué)習(xí)框架,如果您擁有大量數(shù)據(jù)和/或你想快速入門深度學(xué)習(xí),那么Keras將非常適合學(xué)習(xí)。Keras是TensorFlow高級集成APi,可以非常方便的和TensorFlow進行融合。這是我強烈推薦學(xué)習(xí)的一個庫。
Keras基本特性:
除了Tensorflow之外,Keras還是其他流行的庫(如Theano和CNTK)的高級API。 在Keras中更容易創(chuàng)建大規(guī)模的深度學(xué)習(xí)模型,但Keras框架環(huán)境配置比其他底層框架要復(fù)雜一些。Keras優(yōu)點:
對于剛剛?cè)腴T的人來說,Keras是最好的深度學(xué)習(xí)框架。它是學(xué)習(xí)和原型化簡單概念的理想選擇,可以理解各種模型和學(xué)習(xí)過程的本質(zhì)。 Keras是一個簡潔的API。 可以快速幫助您創(chuàng)建應(yīng)用程序。 Keras中代碼更加可讀和簡潔。 Keras模型序列化/反序列化API,回調(diào)和使用Python生成器的數(shù)據(jù)流非常成熟。順便說一下TensorFlow和Keras的對比:
PS:Tensorflow處于底層框架:這和MXNet,Theano和PyTorch等框架一樣。包括實現(xiàn)諸如廣義矩陣 - 矩陣乘法和諸如卷積運算的神經(jīng)網(wǎng)絡(luò)原語之類的數(shù)學(xué)運算。
Keras處于高度集成框架。雖然更容易創(chuàng)建模型,但是面對復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)時可能不如TensorFlow。
MXNetMXNet是一種高度可擴展的深度學(xué)習(xí)工具,可用于各種設(shè)備。雖然與TensorFlow相比,它似乎沒有被廣泛使用,但MXNet的增長可能會因為成為一個Apache項目而得到提升。
MXNet基本特性:
該框架支持多種語言,如C ++,Python,R,Julia,JavaScript,Scala,Go,甚至Perl。 可以在多個GPU和許多機器上非常有效地并行計算。MXNet優(yōu)點:
支持多個GPU(具有優(yōu)化的計算和快速上下文切換) 清晰且易于維護的代碼(Python,R,Scala和其他API) 快速解決問題的能力(對于像我這樣的深度學(xué)習(xí)新手至關(guān)重要)雖然它不像TF那么受歡迎,但MXNet具有詳細的文檔并且易于使用,能夠在命令式和符號式編程風(fēng)格之間進行選擇,使其成為初學(xué)者和經(jīng)驗豐富的工程師的理想選擇。
GLUONGluon是一個更好的深度學(xué)習(xí)框架,可以用來創(chuàng)建復(fù)雜的模型。GLUON基本特性:
Gluon的特殊性是具有一個靈活的界面,簡化了原型設(shè)計,構(gòu)建和培訓(xùn)深度學(xué)習(xí)模型,而不會犧牲學(xué)習(xí)速度。 Gluon基于MXNet,提供簡單的API,簡化深度學(xué)習(xí)模型的創(chuàng)建。 與PyTorch類似,Gluon框架支持使用動態(tài)圖表 ,將其與高性能MXNet相結(jié)合。從這個角度來看,Gluon看起來像是分布式計算的Keras非常有趣的替代品。GLUON優(yōu)點:
在Gluon中,您可以使用簡單,清晰和簡潔的代碼定義神經(jīng)網(wǎng)絡(luò)。 它將訓(xùn)練算法和神經(jīng)網(wǎng)絡(luò)模型結(jié)合在一起,從而在不犧牲性能的情況下提供開發(fā)過程的靈活性。 Gluon可以定義動態(tài)的神經(jīng)網(wǎng)絡(luò)模型,這意味著它們可以動態(tài)構(gòu)建,使用任何結(jié)構(gòu),并使用Python的任何本機控制流。 SWIFT當(dāng)你聽到Swift時,您可能會考慮iOS或MacOS的應(yīng)用程序開發(fā)。但是如果你正在學(xué)習(xí)深度學(xué)習(xí),那么你一定聽說過Swens for Tensorflow。通過直接與通用編程語言集成,Swift for TensorFlow可以以前所未有的方式表達更強大的算法。SWIFT基本特性:
可以輕松獲得可微分的自定義數(shù)據(jù)結(jié)構(gòu)。 下一代API 。通過實踐和研究獲得的新API更易于使用且更強大。 在TensorFlow的基礎(chǔ)上 ,Swift API為您提供對所有底層TensorFlow運算符的直接調(diào)用。 基于Jupyter、LLDB或者Swift in Colab的編程工具提高了您的工作效率。SWIFT優(yōu)點:
如果動態(tài)語言不適合您的任務(wù),那么這將是一個很好的選擇。當(dāng)你訓(xùn)練運行了幾個小時,然后你的程序遇到類型錯誤,那么使用Swift,一種靜態(tài)類型語言。您將看到代碼錯誤的地方。 Chainer直到CMU的DyNet和Facebook的PyTorch出現(xiàn)之前,Chainer是動態(tài)計算圖或網(wǎng)絡(luò)的領(lǐng)先神經(jīng)網(wǎng)絡(luò)框架,它允許輸入數(shù)據(jù)長度不一致。chainer基本特性:
Chainer代碼是在Numpy和CuPy庫的基礎(chǔ)之上用純Python編寫的, Chainer是第一個使用動態(tài)架構(gòu)模型的框架。Chainer優(yōu)點:
通過自己的基準測試,Chainer明顯比其他面向Python的框架更快,TensorFlow是包含MxNet和CNTK的測試組中最慢的。 比TensorFlow更好的GPU和GPU數(shù)據(jù)中心性能。最近Chainer成為GPU數(shù)據(jù)中心性能的全球冠軍。 DL4J那些使用Java或Scala的人應(yīng)該注意DL4J(Deep Learning for Java的簡稱)。DL4J的基本特性:
DL4J中的神經(jīng)網(wǎng)絡(luò)訓(xùn)練通過簇的迭代并行計算。 該過程由Hadoop和Spark架構(gòu)支持。 使用Java允許您在Android設(shè)備的程序開發(fā)周期中使用。DL4J優(yōu)點:
如果您正在尋找一個良好的Java深度學(xué)習(xí)框架,這會是一個非常好的平臺。 ONNXONNX項目誕生于微軟和Facebook,旨在尋找深度學(xué)習(xí)模型呈現(xiàn)的開放格式。ONNX簡化了在人工智能的不同工作方式之間傳遞模型的過程。因此ONNX具有各種深度學(xué)習(xí)框架的優(yōu)點。
ONNX基本特性:
ONNX使模型能夠在一個框架中進行訓(xùn)練并轉(zhuǎn)移到另一個框架中進行推理。ONNX模型目前在Caffe2,Microsoft Cognitive Toolkit,MXNet和PyTorch中得到支持,并且還有許多其他常見框架和庫的連接器。ONNX優(yōu)點:
對于PyTorch開發(fā)人員來說,ONNX是一個好的選擇。但是對于那些喜歡TensorFlow的人來說,Keras等可能好一點。 總結(jié)那么您應(yīng)該使用哪種深度學(xué)習(xí)框架?下面是幾點建議:
如果你剛剛開始學(xué)習(xí),那么最好的選擇是Keras 。 出于研究目的,請選擇PyTorch 。 對于生產(chǎn),您需要關(guān)注環(huán)境。因此對于Google Cloud,最好的選擇是TensorFlow ,適用于AWS - MXNet和Gluon 。 Android開發(fā)人員應(yīng)該關(guān)注D4LJ ,對于iOS來說, Core ML會破壞類似的任務(wù)范圍。 最后, ONNX將幫助解決不同框架之間的交互問題。二、一篇文章搞懂人工智能,機器學(xué)習(xí)和深度學(xué)習(xí)之間的區(qū)別
為了搞清三者關(guān)系,我們來看一張圖:
如圖所示:人工智能最大,此概念也最先問世;然后是機器學(xué)習(xí),出現(xiàn)的稍晚;最后才是深度學(xué)習(xí)。
從低潮到繁榮
自從 1956 年計算機科學(xué)家們在達特茅斯會議(Dartmouth Conferences)上確認人工智能這個術(shù)語以來,人們就不乏關(guān)于人工智能奇思妙想,研究人員也在不遺余力地研究。在此后的幾十年間,人工智能先是被捧為人類文明光明未來的鑰匙,后又被當(dāng)作過于自大的異想天開而拋棄。
但是在過去幾年中,人工智能出現(xiàn)了爆炸式的發(fā)展,尤其是 2015 年之后。大部分原因,要歸功于圖形處理器(GPU)的廣泛應(yīng)用,使得并行處理更快、更便宜、更強大。另外,人工智能的發(fā)展還得益于幾乎無限的存儲空間和海量數(shù)據(jù)的出現(xiàn)(大數(shù)據(jù)運動):圖像、文本、交易數(shù)據(jù)、地圖數(shù)據(jù),應(yīng)有盡有。
下面我們從發(fā)展的歷程中來一一展開對人工智能、機器學(xué)習(xí)和深度學(xué)習(xí)的深度學(xué)習(xí)。
人工智能人工智能先驅(qū)們在達特茅斯開會時,心中的夢想是希望通過當(dāng)時新興的計算機,打造擁有相當(dāng)于人類智能的復(fù)雜機器。這就是我們所說的“通用人工智能”(General AI)概念,擁有人類五感(甚至更多)、推理能力以及人類思維方式的神奇機器。在電影中我們已經(jīng)看過無數(shù)這樣的機器人,對人類友好的 C-3PO,以及人類的敵人終結(jié)者。通用人工智能機器至今只存在 于電影和科幻小說里,理由很簡單:我們還實現(xiàn)不了,至少目前為止。
我們力所能及的,算是“弱人工智能”(Narrow AI):執(zhí)行特定任務(wù)的水平與人類相當(dāng),甚至超越人類的技術(shù)?,F(xiàn)實中有很多弱人工智能的例子。這些技術(shù)有人類智能的一面。但是它們是如何做到的?智能來自哪里?這就涉及到下一個同心圓:機器學(xué)習(xí)。
機器學(xué)習(xí)
機器學(xué)習(xí)是實現(xiàn)人工智能的一種方法。機器學(xué)習(xí)的概念來自早期的人工智能研究者,已經(jīng)研究出的算法包括決策樹學(xué)習(xí)、歸納邏輯編程、增強學(xué)習(xí)和貝葉斯網(wǎng)絡(luò)等。簡單來說,機器學(xué)習(xí)就是使用算法分析數(shù)據(jù),從中學(xué)習(xí)并做出推斷或預(yù)測。與傳統(tǒng)的使用特定指令集手寫軟件不同,我們使用大量數(shù)據(jù)和算法來“訓(xùn)練”機器,由此帶來機器學(xué)習(xí)如何完成任務(wù)。
許多年來,計算機視覺一直是機器學(xué)習(xí)最佳的領(lǐng)用領(lǐng)域之一,盡管還需要大量的手動編碼才能完成任務(wù)。研究者會手動編寫一些分類器(classifier),如邊緣檢測篩選器,幫助程序辨別物體的邊界;圖形檢測分類器,判斷物體是否有八個面;以及識別“S-T-O-P”的分類器。在這些手動編寫的分類器的基礎(chǔ)上,他們再開發(fā)用于理解圖像的算法,并學(xué)習(xí)如何判斷是否有停止標志。
但是由于計算機視覺和圖像檢測技術(shù)的滯后,經(jīng)常容易出錯。
深度學(xué)習(xí)
深度學(xué)習(xí)是實現(xiàn)機器學(xué)習(xí)的一種技術(shù)。早期機器學(xué)習(xí)研究者中還開發(fā)了一種叫人工神經(jīng)網(wǎng)絡(luò)的算法,但是發(fā)明之后數(shù)十年都默默無聞。神經(jīng)網(wǎng)絡(luò)是受人類大腦的啟發(fā)而來的:神經(jīng)元之間的相互連接關(guān)系。但是,人類大腦中的神經(jīng)元可以與特定范圍內(nèi)的任意神經(jīng)元連接,而人工神經(jīng)網(wǎng)絡(luò)中數(shù)據(jù)傳播要經(jīng)歷不同的層,傳播方向也不同。
舉個例子,你可以將一張圖片切分為小塊,然后輸入到神經(jīng)網(wǎng)絡(luò)的第一層中。在第一層中做初步計算,然后神經(jīng)元將數(shù)據(jù)傳至第二層。由第二層神經(jīng)元執(zhí)行任務(wù),依次類推,直到最后一層,然后輸出最終的結(jié)果。
每個神經(jīng)元都會給其輸入指定一個權(quán)重:相對于執(zhí)行的任務(wù)該神經(jīng)元的正確和錯誤程度。最終的輸出由這些權(quán)重共同決定。因此,我們再來看看上面提到的停止標志示例。一張停止標志圖像的屬性,被一一細分,然后被神經(jīng)元“檢查”:形狀、顏色、字符、標志大小和是否運動。神經(jīng)網(wǎng)絡(luò)的任務(wù)是判斷這是否是一個停止標志。它將給出一個“概率向量”(probability vector),這其實是基于權(quán)重做出的猜測結(jié)果。在本文的示例中,系統(tǒng)可能會有 86% 的把握認定圖像是一個停止標志,7% 的把握認為是一個限速標志,等等。網(wǎng)絡(luò)架構(gòu)然后會告知神經(jīng)網(wǎng)絡(luò)其判斷是否正確。
不過,問題在于即使是最基礎(chǔ)的神經(jīng)網(wǎng)絡(luò)也要耗費巨大的計算資源,因此當(dāng)時不算是一個可行的方法。不過,以多倫多大學(xué) Geoffrey Hinton 教授為首的一小批狂熱研究者們堅持采用這種方法,最終讓超級計算機能夠并行執(zhí)行該算法,并證明該算法的作用。如果我們回到停止標志那個例子,很有可能神經(jīng)網(wǎng)絡(luò)受訓(xùn)練的影響,會經(jīng)常給出錯誤的答案。這說明還需要不斷的訓(xùn)練。它需要成千上萬張圖片,甚至數(shù)百萬張圖片來訓(xùn)練,直到神經(jīng)元輸入的權(quán)重調(diào)整到非常精確,幾乎每次都能夠給出正確答案。不過值得慶幸的是Facebook 利用神經(jīng)網(wǎng)絡(luò)記住了你母親的面孔;吳恩達 2012 年在谷歌實現(xiàn)了可以識別貓的神經(jīng)網(wǎng)絡(luò)。
如今,在某些情況下,通過深度學(xué)習(xí)訓(xùn)練過的機器在圖像識別上表現(xiàn)優(yōu)于人類,這包括找貓、識別血液中的癌癥跡象等。谷歌的 AlphaGo 學(xué)會了圍棋,并為比賽進行了大量的訓(xùn)練:不斷的和自己比賽。
總結(jié)
人工智能的根本在于智能,而機器學(xué)習(xí)則是部署支持人工智能的計算方法。簡單的將,人工智能是科學(xué),機器學(xué)習(xí)是讓機器變得更加智能的算法,機器學(xué)習(xí)在某種程度上成就了人工智能。
本文作者 Michael Copeland 曾是 WIRED 編輯,現(xiàn)在是硅谷知名投資機構(gòu) Andreessen Horowitz 的合伙人。
三、人工神經(jīng)元網(wǎng)絡(luò)與深度學(xué)習(xí)的關(guān)系是
人工神經(jīng)元網(wǎng)絡(luò)與深度學(xué)習(xí)的關(guān)系是互相交叉的。
這兩個概念實際上是互相交叉的,例如,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural networks,簡稱CNNs)就是一種深度的監(jiān)督學(xué)習(xí)下的機器學(xué)習(xí)模型,而深度置信網(wǎng)(Deep Belief Nets,簡稱DBNs)就是一種無監(jiān)督學(xué)習(xí)下的機器學(xué)習(xí)模型。
深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究。含多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。
深度學(xué)習(xí)的概念由Hinton等人于2006年提出。基于深信度網(wǎng)(DBN)提出非監(jiān)督貪心逐層訓(xùn)練算法,為解決深層結(jié)構(gòu)相關(guān)的優(yōu)化難題帶來希望,隨后提出多層自動編碼器深層結(jié)構(gòu)。此外Lecun等人提出的卷積神經(jīng)網(wǎng)絡(luò)是第一個真正多層結(jié)構(gòu)學(xué)習(xí)算法,它利用空間相對關(guān)系減少參數(shù)數(shù)目以提高訓(xùn)練性能。
深度學(xué)習(xí)(Deep Learning)是實現(xiàn)機器學(xué)習(xí)的一種技術(shù)。早期機器學(xué)習(xí)研究者中還開發(fā)了一種叫人工神經(jīng)網(wǎng)絡(luò)的算法,但是發(fā)明之后數(shù)十年都默默無聞。神經(jīng)網(wǎng)絡(luò)是受人類大腦的啟發(fā)而來的:神經(jīng)元之間的相互連接關(guān)系。但是,人類大腦中的神經(jīng)元可以與特定范圍內(nèi)的任意神經(jīng)元連接,而人工神經(jīng)網(wǎng)絡(luò)中數(shù)據(jù)傳播要經(jīng)歷不同的層,傳播方向也不同。
四、什么叫做深度學(xué)習(xí)框架,其作用是什么
目前是人工智能的時代,國內(nèi)外像Google、微軟、FaceBook、百度和華為等巨頭公司紛紛投入較大的資源進行深度學(xué)習(xí)框架的研發(fā)和應(yīng)用的拓展。表1列出了github上流行的深度學(xué)習(xí)框架的星數(shù)。
表1 github上流行的深度學(xué)習(xí)框架的星數(shù)
下面有側(cè)重地介紹一下上表中列出的一些深度學(xué)習(xí)框架。
(一)TensorFlow
TensorFlow是用C++語言開發(fā)的,支持C、Java、Python等多種語言的調(diào)用,目前主流的方式通常會使用Python語言來驅(qū)動應(yīng)用。這一特點也是其能夠廣受歡迎的原因。利用C++語言開發(fā)可以保證其運行效率,Python作為上層應(yīng)用語言,可以為研究人員節(jié)省大量的開發(fā)時間。
TensorFlow相對于其他框架有如下特點。
1、靈活
TensorFlow與CNTK、MXNET、Theano同屬于符號計算構(gòu)架,允許用戶在不需要使用低級語言(如在Caffe中)實現(xiàn)的情況下,開發(fā)出新的復(fù)雜層類型?;趫D運算是其基本特點,通過圖上的節(jié)點變量可以控制訓(xùn)練中各個環(huán)節(jié)的變量,尤其在需要對底層操作時,TensorFlow要比其他框架更容易。當(dāng)然它也有缺點,靈活的操作會增加使用復(fù)雜度,從而在一定程度上增加了學(xué)習(xí)成本。
2、便捷、通用
作為主流的框架,TensorFlow生成的模型,具有便捷、通用的特點,可以滿足更多使用者的需求。TensorFlow可以適用于Mac、Linux、Windows系統(tǒng)上開發(fā)。其編譯好的模型幾乎適用于當(dāng)今所有的平臺系統(tǒng),并提滿足“開箱即用”的模型使用理念,使模型應(yīng)用起來更簡單。
3、成熟
由于TensorFlow被使用的情況最多,所以其框架的成熟度絕對是第一的。在Google的白皮書上寫道,Google內(nèi)部有大量的產(chǎn)品幾乎都用到了TensorFlow,如搜索排序、語音識別、谷歌相冊和自然語言處理等。有這么多在該框架上的成功案例,先不說能夠提供多少經(jīng)驗技巧,至少可以確保學(xué)習(xí)者在研究的道路上,遇到挫折時不會懷疑是框架的問題。
4、超強的運算性能
雖然TensorFlow在大型計算機集群的并行處理中,運算性能僅略低于CNTK,但是,其在個人機器使用場景下,會根據(jù)機器的配置自動選擇CPU或GPU來運算,這方面做得更加友好與智能化。
(二)Caffe
當(dāng)年深度學(xué)習(xí)的老大。最初是一個強大的圖像分類框架,是最容易測試評估性能的標準深度學(xué)習(xí)框架,并且提供很多預(yù)訓(xùn)練模型,尤其該模型的復(fù)用價值在其他框架的學(xué)習(xí)中都會出現(xiàn),大大提升了現(xiàn)有模型的訓(xùn)練時間。但是現(xiàn)在的Caffe似乎停滯不前,沒有更新。盡管Caffe又重新崛起,從架構(gòu)上看更像是TensorFlow,而且與原來的Caffe也不在一個工程里,可以獨立成一個框架來看待,與原Caffe關(guān)系不大。
(三)CNTK
CNTK是一個微軟開發(fā)的深度學(xué)習(xí)軟件包,以速度快著稱,有其獨有的神經(jīng)網(wǎng)絡(luò)配置語言Brain Script,大大降低了學(xué)習(xí)門檻。有微軟作為后盾,CNTK成為了最具有潛力與Tensor Flow爭奪天下的框架。但目前其成熟度要比TensorFlow差太多,即便是發(fā)行的版本也會有大大小小的bug。與其他框架一樣,CNTK具有文檔資料不足的特點。但其與Visual Studio的天生耦合,以及其特定的MS編程風(fēng)格,使得熟悉Visual Studio工具的小伙伴們從代碼角度極易上手。另外,CNTK目前還不支持Mac操作系統(tǒng)。
關(guān)于深度學(xué)習(xí)的基礎(chǔ)問題可以看下這個網(wǎng)頁的視頻教程,網(wǎng)頁鏈接,希望我的回答能幫到你。
以上就是關(guān)于誰開發(fā)了一個深度神經(jīng)網(wǎng)絡(luò)相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
杭州未來科技城是誰提出的(杭州未來科技城是誰開發(fā)的)