神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)簡史(一)
導(dǎo)讀:這是《神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)簡史》第一部分恳邀。這一部分茬暇,我們會介紹1958年感知機(jī)神經(jīng)網(wǎng)絡(luò)的誕生,70年代人工智能寒冬以及1986年BP算法讓神經(jīng)網(wǎng)絡(luò)再度流行起來东臀。
序言:深度學(xué)習(xí)掀起海嘯
如今逢防,深度學(xué)習(xí)浪潮拍打計算機(jī)語言的海岸已有好幾年,但是摇天,2015年似乎才是這場海嘯全力沖擊自然語言處理(NLP)會議的一年北滥。——Dr. Christopher D. Manning, Dec 2015
整個研究領(lǐng)域的成熟方法已經(jīng)迅速被新發(fā)現(xiàn)超越闸翅,這句話聽起來有些夸大其詞再芋,就像是說它被「海嘯」襲擊了一樣。但是坚冀,這種災(zāi)難性的形容的確可以用來描述深度學(xué)習(xí)在過去幾年中的異軍突起——顯著改善人們對解決人工智能最難問題方法的駕馭能力济赎,吸引工業(yè)巨人(比如谷歌等)的大量投資,研究論文的指數(shù)式增長(以及機(jī)器學(xué)習(xí)的研究生生源上升)记某。在聽了數(shù)節(jié)機(jī)器學(xué)習(xí)課堂司训,甚至在本科研究中使用它以后,我不禁好奇:這個新的「深度學(xué)習(xí)」會不會是一個幻想液南,抑或上世紀(jì)80年代已經(jīng)研發(fā)出來的「人工智能神經(jīng)網(wǎng)絡(luò)」擴(kuò)大版壳猜?讓我告訴你,說來話長——這不僅僅是一個有關(guān)神經(jīng)網(wǎng)絡(luò)的故事滑凉,也不僅僅是一個有關(guān)一系列研究突破的故事统扳,這些突破讓深度學(xué)習(xí)變得比「大型神經(jīng)網(wǎng)絡(luò)」更加有趣喘帚,而是一個有關(guān)幾位不放棄的研究員如何熬過黑暗數(shù)十年,直至拯救神經(jīng)網(wǎng)絡(luò)咒钟,實現(xiàn)深度學(xué)習(xí)夢想的故事吹由。
機(jī)器學(xué)習(xí)算法的百年歷史
線性回歸:首先簡單介紹一下機(jī)器學(xué)習(xí)是什么。
從二維圖像上取一些點(diǎn)朱嘴,盡可能繪出一條擬合這些點(diǎn)的直線倾鲫。你剛才做的就是從幾對輸入值(x)和輸出值(y)的實例中概括出一個一般函數(shù),任何輸入值都會有一個對應(yīng)的輸出值萍嬉。這叫做線性回歸乌昔,一個有著兩百年歷史從一些輸入輸出對組中推斷出一般函數(shù)的技巧。這就是它很棒的原因:很多函數(shù)難以給出明確的方程表達(dá)壤追,但是玫荣,卻很容易在現(xiàn)實世界搜集到輸入和輸出值實例——比如,將說出來的詞的音頻作為輸入大诸,詞本身作為輸出的映射函數(shù)。
線性回歸對于解決語音識別這個問題來說有點(diǎn)太無用贯卦,但是资柔,它所做的基本上就是監(jiān)督式機(jī)器學(xué)習(xí):給定訓(xùn)練樣本,「學(xué)習(xí)」一個函數(shù)撵割,每一個樣本數(shù)據(jù)就是需要學(xué)習(xí)的函數(shù)的輸入輸出數(shù)據(jù)(無監(jiān)督學(xué)習(xí)贿堰,稍后在再敘)。
尤其是啡彬,機(jī)器學(xué)習(xí)應(yīng)該推導(dǎo)出一個函數(shù)羹与,它能夠很好地泛化到不在訓(xùn)練集中的輸入值上,既然我們真的能將它運(yùn)用到尚未有輸出的輸入中庶灿。例如纵搁,谷歌的語音識別技術(shù)由擁有大量訓(xùn)練集的機(jī)器學(xué)習(xí)驅(qū)動,但是往踢,它的訓(xùn)練集也不可能大到包含你手機(jī)所有語音輸入腾誉。 泛化能力機(jī)制如此重要,以至于總會有一套測試數(shù)據(jù)組(更多的輸入值與輸出值樣本)這套數(shù)據(jù)組并不包括在訓(xùn)練組當(dāng)中峻呕。
通過觀察有多少個正確計算出輸入值所對應(yīng)的輸出值的樣本利职,這套單獨(dú)數(shù)據(jù)組可以用來估測機(jī)器學(xué)習(xí)技術(shù)有效性。概括化的克星是過度擬合——學(xué)習(xí)一個對于訓(xùn)練集有效但是卻在測試數(shù)據(jù)組中表現(xiàn)很差的函數(shù)瘦癌。既然機(jī)器學(xué)習(xí)研究者們需要用來比較方法有效性的手段猪贪,隨著時間的推移,標(biāo)準(zhǔn)訓(xùn)練數(shù)據(jù)組以及測試組可被用來評估機(jī)器學(xué)習(xí)算法讯私。
好了热押,定義談得足夠多了西傀。重點(diǎn)是——我們繪制線條的聯(lián)系只是一個非常簡單的監(jiān)督機(jī)器學(xué)習(xí)例子:要點(diǎn)在于訓(xùn)練集(X為輸入,Y為輸出)楞黄,線條是近似函數(shù)池凄,用這條線來為任何沒有包含在訓(xùn)練集數(shù)據(jù)里的X值(輸入值)找到相應(yīng)的Y值(輸出值)。別擔(dān)心鬼廓,接下來的歷史就不會這么干巴巴了肿仑。讓我們繼續(xù)吧。
虛假承諾的荒唐
顯然這里話題是神經(jīng)網(wǎng)絡(luò)碎税,那我們前言里為何要扯線性回歸呢尤慰?呃, 事實上線性回歸和機(jī)器學(xué)習(xí)一開始的方法構(gòu)想,弗蘭克· 羅森布拉特(Frank Rosenblatt)的感知機(jī), 有些許相似性。
心理學(xué)家羅森布拉特構(gòu)想了感知機(jī)雷蹂,它作為簡化的數(shù)學(xué)模型解釋大腦神經(jīng)元如何工作:它取一組二進(jìn)制輸入值(附近的神經(jīng)元)伟端,將每個輸入值乘以一個連續(xù)值權(quán)重(每個附近神經(jīng)元的突觸強(qiáng)度),并設(shè)立一個閾值匪煌,如果這些加權(quán)輸入值的和超過這個閾值责蝠,就輸出1,否則輸出0(同理于神經(jīng)元是否放電)萎庭。
對于感知機(jī)霜医,絕大多數(shù)輸入值不是一些數(shù)據(jù),就是別的感知機(jī)的輸出值驳规。但有一個額外的細(xì)節(jié):這些感知機(jī)有一個特殊的肴敛,輸入值為1的,「偏置」輸入吗购,因為我們能補(bǔ)償加權(quán)和医男,它基本上確保了更多的函數(shù)在同樣的輸入值下是可計算的。
這一關(guān)于神經(jīng)元的模型是建立在沃倫·麥卡洛克(Warren McCulloch)和沃爾特·皮茲(Walter Pitts)工作上的捻勉。他們曾表明镀梭,把二進(jìn)制輸入值加起來,并在和大于一個閾值時輸出1踱启,否則輸出0的神經(jīng)元模型丰辣,可以模擬基本的或/與/非邏輯函數(shù)。這在人工智能的早期時代可不得了——當(dāng)時的主流思想是,計算機(jī)能夠做正式的邏輯推理將本質(zhì)上解決人工智能問題禽捆。
另一個圖表,顯示出生物學(xué)上的靈感浊服。激活函數(shù)就是人們當(dāng)前說的非線性函數(shù)统屈,它作用于輸入值的加權(quán)和以產(chǎn)生人工神經(jīng)元的輸出值——在羅森布拉特的感知機(jī)情況下胚吁,這個函數(shù)就是輸出一個閾值操作。
然而愁憔,麥卡洛克-皮茲模型缺乏一個對AI而言至關(guān)重要的學(xué)習(xí)機(jī)制腕扶。這就是感知機(jī)更出色的地方所在——羅森布拉特受到唐納德·赫布(Donald Hebb) 基礎(chǔ)性工作的啟發(fā),想出一個讓這種人工神經(jīng)元學(xué)習(xí)的辦法吨掌。赫布提出了一個出人意料并影響深遠(yuǎn)的想法半抱,稱知識和學(xué)習(xí)發(fā)生在大腦主要是通過神經(jīng)元間突觸的形成與變化,簡要表述為赫布法則:
當(dāng)細(xì)胞****A****的軸突足以接近以激發(fā)細(xì)胞****B****膜宋,并反復(fù)持續(xù)地對細(xì)胞****B****放電窿侈,一些生長過程或代謝變化將發(fā)生在某一個或這兩個細(xì)胞內(nèi),以致****A****作為對****B****放電的細(xì)胞中的一個秋茫,效率增加史简。
感知機(jī)并沒有完全遵循這個想法,但通過調(diào)輸入值的權(quán)重肛著,可以有一個非常簡單直觀的學(xué)習(xí)方案:給定一個有輸入輸出實例的訓(xùn)練集圆兵,感知機(jī)應(yīng)該「學(xué)習(xí)」一個函數(shù):對每個例子,若感知機(jī)的輸出值比實例低太多枢贿,則增加它的權(quán)重殉农,否則若設(shè)比實例高太多,則減少它的權(quán)重萨咕。更正式一點(diǎn)兒的該算法如下:
從感知機(jī)有隨機(jī)的權(quán)重和一個訓(xùn)練集開始。
對于訓(xùn)練集中一個實例的輸入值火本,計算感知機(jī)的輸出值危队。
如若感知機(jī)的輸出值和實例中默認(rèn)正確的輸出值不同:(1)若輸出值應(yīng)該為0但實際為1,減少輸入值是1的例子的權(quán)重钙畔。(2)若輸出值應(yīng)該為1但實際為0茫陆,增加輸入值是1的例子的權(quán)重。
對于訓(xùn)練集中下一個例子做同樣的事擎析,重復(fù)步驟2-4直到感知機(jī)不再出錯簿盅。
這個過程很簡單,產(chǎn)生了一個簡單的結(jié)果:一個輸入線性函數(shù)(加權(quán)和)揍魂,正如線性回歸被非線性激活函數(shù)「壓扁」了一樣(對帶權(quán)重求和設(shè)定閾值的行為)桨醋。當(dāng)函數(shù)的輸出值是一個有限集時(例如邏輯函數(shù),它只有兩個輸出值True/1 和 False/0)现斋,給帶權(quán)重的和設(shè)置閾值是沒問題的喜最,所以問題實際上不在于要對任何輸入數(shù)據(jù)集生成一個數(shù)值上連續(xù)的輸出(即回歸類問題),而在于對輸入數(shù)據(jù)做好合適的標(biāo)簽(分類問題)庄蹋。
康奈爾航天實驗室的Mark I 感知機(jī)迷雪,第一臺感知機(jī)的硬件
羅森布拉特用定制硬件的方法實現(xiàn)了感知機(jī)的想法(在花哨的編程語言被廣泛使用之前),展示出它可以用來學(xué)習(xí)對20×20像素輸入中的簡單形狀進(jìn)行正確分類虫蝶。
自此章咧,機(jī)器學(xué)習(xí)問世了——建造了一臺可以從已知的輸入輸出對中得出近似函數(shù)的計算機(jī)。在這個例子中能真,它只學(xué)習(xí)了一個小玩具般的函數(shù)赁严,但是從中不難想象出有用的應(yīng)用,例如將人類亂糟糟的手寫字轉(zhuǎn)換為機(jī)機(jī)可讀的文本舟陆。
很重要的是误澳,這種方法還可以用在多個輸出值的函數(shù)中,或具有多個類別的分類任務(wù)秦躯。這對一臺感知機(jī)來說是不可能完成的忆谓,因為它只有一個輸出,但是踱承,多輸出函數(shù)能用位于同一層的多個感知機(jī)來學(xué)習(xí)倡缠,每個感知機(jī)接收到同一個輸入,但分別負(fù)責(zé)函數(shù)的不同輸出茎活。
實際上昙沦,神經(jīng)網(wǎng)絡(luò)(準(zhǔn)確的說應(yīng)該是「人工神經(jīng)網(wǎng)絡(luò)(ANN,Artificial Neural Networks)」)就是多層感知機(jī)(今天感知機(jī)通常被稱為神經(jīng)元)而已载荔,只不過在這個階段盾饮,只有一層——輸出層。所以懒熙,神經(jīng)網(wǎng)絡(luò)的典型應(yīng)用例子就是分辨手寫數(shù)字丘损。
輸入是圖像的像素,有10個輸出神經(jīng)元工扎,每一個分別對應(yīng)著10個可能的數(shù)字徘钥。在這個案例中,10個神經(jīng)元中肢娘,只有1個輸出1呈础,權(quán)值最高的和被看做是正確的輸出,而其他的則輸出0橱健。
多層輸出的神經(jīng)網(wǎng)絡(luò)
也可以想象一個與感知機(jī)不同的人工神經(jīng)網(wǎng)絡(luò)而钞。例如,閾值激活函數(shù)并不是必要的拘荡; 1960年笨忌,Bernard Widrow和Tedd Hoff很快開始探索一種方法——采用適應(yīng)性的「自適應(yīng)(ADALINE)」神經(jīng)元來輸出權(quán)值的輸入,這種神經(jīng)元使用化學(xué)「 存儲電阻器」,并展示了這種「自適應(yīng)線性神經(jīng)元」能夠在電路中成為「 存儲電阻器」的一部分(存儲電阻器是帶有存儲的電阻)官疲。
他們還展示了袱结,不用閾值激活函數(shù),在數(shù)學(xué)上很美途凫,因為神經(jīng)元的學(xué)習(xí)機(jī)制是基于將錯誤最小化的微積分垢夹,而微積分我們都很熟悉了。
如果我們多思考一下 「自適應(yīng)(ADALINE)」维费,就會有進(jìn)一步的洞見:為大量輸入找到一組權(quán)重真的只是一種線性回歸果元。再一次,就像用線性回歸一樣犀盟,這也不足以解決諸如語音識別或計算機(jī)視覺這樣的人工智能難題而晒。
McCullough,Pitts和羅森布拉特真正感到興奮的是聯(lián)結(jié)主義(Connectionism)這個寬泛的想法:如此簡單計算機(jī)單元構(gòu)成的網(wǎng)絡(luò)阅畴,其功能會大很多而且可以解決人工智能難題倡怎。而且羅森布拉特說的和(坦白說很可笑的)《紐約時報》這段引文的意思差不多:
海軍披露了一臺尚處初期的電子計算機(jī),期待這臺電子計算機(jī)能行走贱枣,談話监署,看和寫,自己復(fù)制出自身存在意識...羅森布拉特博士纽哥,康奈爾航空實驗室的一位心理學(xué)家說钠乏,感知機(jī)能作為機(jī)械太空探險者被發(fā)射到行星上。
這種談話無疑會惹惱人工領(lǐng)域的其他研究人員春塌,其中有許多研究人員都在專注于這樣的研究方法晓避,它們以帶有具體規(guī)則(這些規(guī)則遵循邏輯數(shù)學(xué)法則)的符號操作為基礎(chǔ)。
MIT人工智能實驗室創(chuàng)始人Marvin Minsky和Seymour Paper就是對這一炒作持懷疑態(tài)度研究人員中的兩位只壳,1969年俏拱,他們在一本開創(chuàng)性著作中表達(dá)了這種質(zhì)疑,書中嚴(yán)謹(jǐn)分析了感知機(jī)的局限性吕世,書名很貼切彰触,叫《感知機(jī)》梯投。
他們分析中命辖,最被廣為討論的內(nèi)容就是對感知機(jī)限制的說明,例如分蓖,他們不能學(xué)習(xí)簡單的布爾函數(shù)XOR尔艇,因為它不能進(jìn)行線性分離。雖然此處歷史模糊么鹤,但是终娃,人們普遍認(rèn)為這本書對人工智能步入第一個冬天起到了推波助瀾的作用——大肆炒作之后,人工智能進(jìn)入泡沫幻滅期蒸甜,相關(guān)資助和出版都遭凍結(jié)棠耕。
*感知機(jī)局限性的視覺化。找到一個線性函數(shù)瓤荔,輸入X净蚤,Y時可以正確地輸出+或-,就是在2D圖表上畫一條從+中分離出-的線输硝;很顯然今瀑,就第三幅圖顯示的情況來看,這不可能 *
人工智能冬天的復(fù)蘇
因此腔丧,情況對神經(jīng)網(wǎng)絡(luò)不利放椰。但是,為什么愉粤?他們的想法畢竟是想將一連串簡單的數(shù)學(xué)神經(jīng)元結(jié)合在一起砾医,完成一些復(fù)雜任務(wù),而不是使用單個神經(jīng)元衣厘。換句話說如蚜,并不是只有一個輸出層,將一個輸入任意傳輸?shù)蕉鄠€神經(jīng)元(所謂的隱藏層影暴,因為他們的輸出會作為另一隱藏層或神經(jīng)元輸出層的輸入)错邦。只有輸出層的輸出是「可見」的——亦即神經(jīng)網(wǎng)絡(luò)的答案——但是,所有依靠隱藏層完成的間接計算可以處理復(fù)雜得多的問題型宙,這是單層結(jié)構(gòu)望塵莫及的撬呢。
有兩個隱藏層的神經(jīng)網(wǎng)絡(luò)
言簡意賅地說,多個隱藏層是件好事妆兑,原因在于隱藏層可以找到數(shù)據(jù)內(nèi)在特點(diǎn)魂拦,后續(xù)層可以在這些特點(diǎn)(而不是嘈雜龐大的原始數(shù)據(jù))基礎(chǔ)上進(jìn)行操作。以圖片中的面部識別這一非常常見的神經(jīng)網(wǎng)絡(luò)任務(wù)為例搁嗓,第一個隱藏層可以獲得圖片的原始像素值芯勘,以及線、圓和橢圓等信息腺逛。
接下來的層可以獲得這些線荷愕、圓和橢圓等的位置信息,并且通過這些來定位人臉的位置——處理起來簡單多了!而且人們基本上也都明白這一點(diǎn)安疗。
事實上抛杨,直到最近,機(jī)器學(xué)習(xí)技術(shù)都沒有普遍直接用于原始數(shù)據(jù)輸入,比如圖像和音頻。相反忠藤,機(jī)器學(xué)習(xí)被用于經(jīng)過特征提取后的數(shù)據(jù)——也就是說,為了讓學(xué)習(xí)更簡單真竖,機(jī)器學(xué)習(xí)被用在預(yù)處理的數(shù)據(jù)上,一些更加有用的特征厌小,比如角度恢共,形狀早已被從中提取出來。
傳統(tǒng)的特征的手工提取過程的視覺化
因此璧亚,注意到這一點(diǎn)很重要:Minsky和Paper關(guān)于感知機(jī)的分析不僅僅表明不可能用單個感知機(jī)來計算XOR讨韭,而且特別指出需要多層感知機(jī)——亦即現(xiàn)在所謂的多層神經(jīng)網(wǎng)絡(luò)——才可以完成這一任務(wù),而且羅森布拉特的學(xué)習(xí)算法對多層并不管用癣蟋。那是一個真正的問題:之前針對感知機(jī)概括出的簡單學(xué)習(xí)規(guī)則并不是適用于多層結(jié)構(gòu)透硝。想知道原因?讓我們再來回顧一下單層結(jié)構(gòu)感知機(jī)如何學(xué)習(xí)計算一些函數(shù):
和函數(shù)輸出數(shù)量相等的感知機(jī)會以小的初始權(quán)值開始(僅為輸入函數(shù)的倍數(shù))
選取訓(xùn)練集中的一個例子作為輸入疯搅,計算感知機(jī)的輸出
對于每一個感知機(jī)濒生,如果其計算結(jié)果和該例子的結(jié)果不匹配,調(diào)整初始權(quán)值
繼續(xù)采用訓(xùn)練集中的下一個例子幔欧,重復(fù)過程2到4次罪治,直到感知機(jī)不再犯錯。
這一規(guī)則并不適用多層結(jié)構(gòu)的原因應(yīng)該很直觀清楚了:選取訓(xùn)練集中的例子進(jìn)行訓(xùn)練時礁蔗,我們只能對最終的輸出層的輸出結(jié)果進(jìn)行校正觉义,但是,對于多層結(jié)構(gòu)來說浴井,我們該如何調(diào)整最終輸出層之前的層結(jié)構(gòu)權(quán)值呢晒骇?
答案(盡管需要花時間來推導(dǎo))又一次需要依賴古老的微積分:鏈?zhǔn)椒▌t。這里有一個重要現(xiàn)實:神經(jīng)網(wǎng)絡(luò)的神經(jīng)元和感知機(jī)并不完全相同磺浙,但是洪囤,可用一個激活函數(shù)來計算輸出,該函數(shù)仍然是非線性的屠缭,但是可微分箍鼓,和Adaline神經(jīng)元一樣崭参;該導(dǎo)數(shù)不僅可以用于調(diào)整權(quán)值呵曹,減少誤差,鏈?zhǔn)椒▌t也可用于計算前一層所有神經(jīng)元導(dǎo)數(shù),因此奄喂,調(diào)整它們權(quán)重的方式也是可知的铐殃。
說得更簡單些:我們可以利用微積分將一些導(dǎo)致輸出層任何訓(xùn)練集誤差的原因分配給前一隱藏層的每個神經(jīng)元,如果還有另外一層隱藏層跨新,我們可以將這些原因再做分配富腊,以此類推——我們在反向傳播這些誤差。而且域帐,如果修改了神經(jīng)網(wǎng)絡(luò)(包括那些隱藏層)任一權(quán)重值赘被,我們還可以找出誤差會有多大變化,通過優(yōu)化技巧(時間長肖揣,典型的隨機(jī)梯度下降)找出最小化誤差的最佳權(quán)值民假。
反向傳播的基本思想
反向傳播由上世紀(jì)60年代早期多位研究人員提出,70年代龙优,由Seppo Linnainmaa引入電腦運(yùn)行羊异,但是,Paul Werbos在1974年的博士畢業(yè)論文中深刻分析了將之用于神經(jīng)網(wǎng)絡(luò)方面的可能性彤断,成為美國第一位提出可以將其用于神經(jīng)網(wǎng)絡(luò)的研究人員野舶。有趣的是,他從模擬人類思維的研究工作中并沒有獲得多少啟發(fā)宰衙,在這個案例中平道,弗洛伊德心理學(xué)理論啟發(fā)了他,正如他自己敘述:
1968年供炼,我提出我們可以多少模仿弗洛伊德的概念——信度指派的反向流動( a backwards flow of credit assignment,)巢掺,指代從神經(jīng)元到神經(jīng)元的反向流動...我解釋過結(jié)合使用了直覺、實例和普通鏈?zhǔn)椒▌t的反向計算劲蜻,雖然它正是將弗洛伊德以前在心理動力學(xué)理論中提出的概念運(yùn)用到數(shù)學(xué)領(lǐng)域中陆淀!
盡管解決了如何訓(xùn)練多層神經(jīng)網(wǎng)絡(luò)的問題,在寫作自己的博士學(xué)位論文時也意識到了這一點(diǎn)先嬉,但是轧苫,Werbos沒有發(fā)表將BP算法用于神經(jīng)網(wǎng)絡(luò)這方面的研究,直到1982年人工智能冬天引發(fā)了寒蟬效應(yīng)疫蔓。實際上含懊,Werbos認(rèn)為,這種研究進(jìn)路對解決感知機(jī)問題是有意義的衅胀,但是岔乔,這個圈子大體已經(jīng)失去解決那些問題的信念。
Minsky的書最著名的觀點(diǎn)有幾個:
(1)我們需要用MLPs[多層感知機(jī)滚躯,多層神經(jīng)網(wǎng)絡(luò)的另一種說法)來代表簡單的非線性函數(shù)雏门,比如XOR 映射嘿歌;
(2)世界上沒人發(fā)現(xiàn)可以將MLPs訓(xùn)練得夠好,以至于可以學(xué)會這么簡單的函數(shù)的方法茁影。
Minsky的書讓世上絕大多數(shù)人相信宙帝,神經(jīng)網(wǎng)絡(luò)是最糟糕的異端,死路一條募闲。Widrow已經(jīng)強(qiáng)調(diào)步脓,這種壓垮早期『感知機(jī)』人工智能學(xué)派的悲觀主義不應(yīng)怪在Minsky的頭上。他只是總結(jié)了幾百位謹(jǐn)慎研究人員的經(jīng)驗而已浩螺,他們嘗試找出訓(xùn)練MLPs的辦法靴患,卻徒勞無功。
也曾有過希望要出,比如Rosenblatt所謂的backpropagation(這和我們現(xiàn)在說的 backpropagation并不完全相同R侠),而且Amari也簡短表示厨幻,我們應(yīng)該考慮將最小二乘(也是簡單線性回歸的基礎(chǔ))作為訓(xùn)練神經(jīng)網(wǎng)絡(luò)的一種方式(但沒有討論如何求導(dǎo)相嵌,還警告說他對這個方法不抱太大期望)。但是况脆,當(dāng)時的悲觀主義開始變得致命饭宾。
上世紀(jì)七十年代早期,我確實在MIT采訪過Minsky格了。我建議我們合著一篇文章看铆,證明MLPs實際上能夠克服早期出現(xiàn)的問題...但是,Minsky并無興趣(14)盛末。事實上弹惦,當(dāng)時的MIT,哈佛以及任何我能找到的研究機(jī)構(gòu)悄但,沒人對此有興趣棠隐。
我肯定不能打保票,但是檐嚣,直到十年后助泽,也就是1986年,這一研究進(jìn)路才開始在David Rumelhart, Geoffrey Hinton和Ronald Williams合著的《Learning representations by back-propagating errors》中流行開來嚎京,原因似乎就是缺少學(xué)術(shù)興趣嗡贺。
盡管研究方法的發(fā)現(xiàn)不計其數(shù)(論文甚至清楚提道,David Parker 和 Yann LeCun是事先發(fā)現(xiàn)這一研究進(jìn)路的兩人)鞍帝,1986年的這篇文章卻因其精確清晰的觀點(diǎn)陳述而顯得很突出诫睬。實際上,學(xué)機(jī)器學(xué)習(xí)的人很容易發(fā)現(xiàn)自己論文中的描述與教科書和課堂上解釋概念方式本質(zhì)上相同帕涌。
不幸的是摄凡,科學(xué)圈里幾乎無人知道Werbo的研究续徽。1982年,Parker重新發(fā)現(xiàn)了這個研究辦法[39]并于1985年在M.I.T[40]上發(fā)表了一篇相關(guān)報道架谎。就在Parker報道后不久,Rumelhart, Hinton和Williams [41], [42]也重新發(fā)現(xiàn)了這個方法辟躏, 他們最終成功地讓這個方法家喻戶曉谷扣,也主要?dú)w功于陳述觀點(diǎn)的框架非常清晰。
但是捎琐,這三位作者沒有止步于介紹新學(xué)習(xí)算法会涎,而是走得更遠(yuǎn)。同年瑞凑,他們發(fā)表了更有深度的文章《Learning internal representations by error propagation》末秃。 文章特別談到了Minsky在《感知機(jī)》中討論過的問題。盡管這是過去學(xué)者的構(gòu)想籽御,但是练慕,正是這個1986年提出的構(gòu)想讓人們廣泛理解了應(yīng)該如何訓(xùn)練多層神經(jīng)網(wǎng)絡(luò)解決復(fù)雜學(xué)習(xí)問題。而且神經(jīng)網(wǎng)絡(luò)也因此回來了技掏!第二部分铃将,我們將會看到幾年后,《Learning internal representations by error propagation》探討過的BP算法和其他一些技巧如何被用來解決一個非常重要的問題:讓計算機(jī)識別人類書寫哑梳。(待續(xù))
Christopher D. Manning. (2015). Computational Linguistics and Deep Learning Computational Linguistics, 41(4), 701–707.?
F. Rosenblatt. The perceptron, a perceiving and recognizing automaton Project Para. Cornell Aeronautical Laboratory, 1957. ?
W. S. McCulloch and W. Pitts. A logical calculus of the ideas immanent in nervous activity. The bulletin of mathematical biophysics, 5(4):115–133, 1943. ?
The organization of behavior: A neuropsychological theory. D. O. Hebb. John Wiley And Sons, Inc., New York, 1949 ?
B. Widrow et al. Adaptive ”Adaline” neuron using chemical ”memistors”. Number Technical Report 1553-2. Stanford Electron. Labs., Stanford, CA, October 1960. ?
“New Navy Device Learns By Doing”, New York Times, July 8, 1958. ?
Perceptrons. An Introduction to Computational Geometry. MARVIN MINSKY and SEYMOUR PAPERT. M.I.T. Press, Cambridge, Mass., 1969. ?
Linnainmaa, S. (1970). The representation of the cumulative rounding error of an algorithm as a Taylor expansion of the local rounding errors. Master’s thesis, Univ. Helsinki. ?
P. Werbos. Beyond Regression: New Tools for Prediction and Analysis in the Behavioral Sciences. PhD thesis, Harvard University, Cambridge, MA, 1974. ?
Werbos, P.J. (2006). Backwards differentiation in AD and neural nets: Past links and new opportunities. In Automatic Differentiation: Applications, Theory, and Implementations, pages 15-34. Springer. ?
Rumelhart, D. E., Hinton, G. E., and Williams, R. J. (1986). Learning representations by back-propagating errors. Nature, 323, 533–536. ?
Widrow, B., & Lehr, M. (1990). 30 years of adaptive neural networks: perceptron, madaline, and backpropagation. Proceedings of the IEEE, 78(9), 1415-1442. ?
D. E. Rumelhart, G. E. Hinton, and R. J. Williams. 1986. Learning internal representations by error propagation. In Parallel distributed processing: explorations in the microstructure of cognition, vol. 1, David E. Rumelhart, James L. McClelland, and CORPORATE PDP Research Group (Eds.). MIT Press, Cambridge, MA, USA 318-362