大數據文摘出品
編譯:Andy
反向傳播算法隸屬于深度學習,它在解決模型優化問題的方面有著重要的地位。
這一算法由被譽為深度學習之父的Geoffrey Hinton提出。1986年,他發表了名為Learning representations by back-propagating errors' (Rumelhart, Hinton & Williams, Nature, 1986) 的論文,到目前為止已有將近16000次的引用,可以說是一篇位于神經網絡研究金字塔頂端的論文。
但是,學界對這篇代表反向傳播算法的論文卻態度褒貶不一。反對的聲音稱,這是一篇有點無聊的論文,。
本文作者,谷歌Business Insight團隊的數據科學家,Takashi J OZAKI認為,1986年的那篇論文的意義,并不單單只是提出了反向傳播,更是“神經網絡從心理學和生理學分離,轉向機器學習領域的一個重大轉折?!?/p>
他將從這篇論文談起,詳細的介紹他對反向傳播算法的看法。
下文是作者以第一人稱論述反向傳播算法的意義,Enjoy!
反向傳播簡單結構
前不久,@tmaehara 桑在 Twitter 上這樣說。
完全搞不懂 back propagation 的原論文有什么創新點… - 原論文感覺就不過用鏈式法則先微分然后加上梯度法而已...
原論文:
http://elderlab.yorku.ca/~elder/teaching/cosc6390psyc6225/readings/hinton%201986.pdf
Learning representations by back-propagating errors' (Rumelhart, Hinton & Williams, Nature, 1986) 這篇論文,在 Google Scholar Citation到目前為止已有將近 16000 次的引用,可以說是神經網絡研究金字塔頂端的論文。
它在過去無法進行非線性分割的Rosenblatt的感知機(perceptron)中,導入了看似有些奇怪的back propagation(反向傳播) 方法,于是讓其變得可進行非線性分割??梢哉f是一次范式轉移(根本性突破)的研究。
現在被稱為深度學習的神經網絡已完全被反向傳播給占據了。因此或許可以說,如果沒有這篇論文也就不會有現在的深度學習熱潮了。
換句話說,現在的人工智能熱潮,正是從30多年前這篇小論文開始的吧。
但是,如果你實際去讀讀這篇論文就會發現,正如 @tmaehara 桑指出來的一樣,這邊論文本身非常無聊。就如很多神經網絡教科書里常有的一樣,輕描淡寫般地,用鏈式法則先微分然后用梯度法優化,就完了。
讀到這里估計會非常疑惑,“為什么這篇無聊的論文會占據金字塔的頂端?”
“Who Invented Backpropagation? (誰發明了反向傳播?)”
Schmidhuber 在批評文中寫到,早在上世紀50年代到60年代,在其他領域就有類似想法被提出,甚至70年代還有FORTRAN語言的算法實現。而對于這些研究,Rumelhart和Hinton的團隊卻連引用都沒有,沒有給予最基本的敬意。這個指責在一定程度上確實有說服力。
但是,對于從最早的感知機開始到反向傳播,再到深度學習的軌跡,我們必須要意識到的是,那是一個“和我們現在所考慮的神經網絡完全不同的世界”。
從這個角度看的話,就會發現1986年的那篇論文的意義,并不單單只是提出了反向傳播,更是“神經網絡從心理學和生理學分離,轉向機器學習領域的一個重大轉折?!?/strong> 下面,我就基于自己的讀到的一些知識,簡單解釋一下。
“模式識別” “機器學習”
轉移,后進一步成為深度學習“Neural(神經)”
的理由過去的神經網絡屬于心理學與生理學
關于聯結主義,很多年輕人或許并不太知道,過去一提神經網絡就會想到心理學家和生理學家的研究,以及“聯結主義”的基本理論。讀讀維基百科上聯結主義的詞條也會明白,本來神經網絡就是以“模擬人腦的信號處理”為大前提而建立起來的體系。
它的方法論,有基于認知科學特有的“人體中(某種程度上的)黑箱化”,還有用符合心理學的模型來試圖解釋人類大腦功能的性質。簡單來說,這是支撐神經網絡的心理學部分。
另一方面,還有以研究與“人腦”連接相關的生理方面為基礎的,被稱為“計算神經科學”的東西。這個讀讀維基百科也知道,其實就是用符合生理學的模型來試圖解釋人類大腦功能。如果說聯結主義還有神經網絡是一種抽象概念性模型的話,那么可以說計算神經科學是論證人類大腦在多大程度上與神經網絡相似(或者不相似)。
本來神經計算學就不僅僅只考慮像神經網絡這樣大腦的神經模型,它還研究諸如神經元放電模式代表什么信息這樣的“神經活動解釋”類的課題,有必要特別指出計算神經科學其實是個很大的領域。簡單來說,這是支撐神經網絡的生理學部分。
其實不管是上面哪種情況,都在某種程度上假設了“神經網絡=人腦的模仿”。在我看來,至少到 2000 年左右,都還有人認為神經網絡和人腦的關系是密不可分的。然而神經網絡給我的印象是,其源自生理學或心理學,而后再從工程學和計算機科學的視角進行了二次解讀。
于是乎,比如說神經網絡原型的感知機,最初就被認為是基于形式神經元的人腦(特別是小腦)學習模型。而且它的構造也和實際的小腦的生理學構造確實挺像,現在都還作為聯結主義和計算神經科學的重要范例之一,被記載在比如維基百科的許多文獻上。
順便一提,現在作為機器學習年度峰會而變得有名的頂級會議 NIPS ,也如它全名 Conference on Neural Information Processing Systems (神經信息處理系統大會)一般,過去主要是計算神經科學的會議。
比如說看看1990年該會的記錄,絕對是現在完全想象不到的,基本大多都是關于真正人腦的研究。其實我在理研 BSI(理化學研究所—腦科學綜合研究中心)還是菜鳥研究員的時候,實驗室就是以“神經元放電活動的同步”為其中一個研究主題,所以我也就對這方面也有些了解,于是看 NIPS 當時的記錄發現,剛才說的神經元放電活動的建模論文也都有些。所以可見,過去的神經網絡就是如此帶有“濃濃心理學(認知科學)和生理學味”的東西。
于是不可避免的,過去在研究神經網絡時,總會想“不管是什么樣的新方法,一定也要遵循心理學或生理學”,而這無形中形成了一種制約。
當然,這只是我個人的一些推測。但實際上,我還是神經科學領域菜鳥研究員的時候也有這種心理,在讀各種關于人認知機能的計算理論模型論文時,會邊讀邊腦補上 “嗯嗯,這篇論文有生理學的依據,所以很可靠?!?/strong> 就連視覺神經科學研究的大佬 Zeki 也在其寫的經典大作《A Vsion of the Brain》中嚴厲批評,“David Marr 的視覺信息處理模型沒有什么生理學依據,所以沒啥用?!?/strong> 由此也可見當時對生理學根據有無的重視。
此外,如果讀讀我年輕時這方面的經典著作《脳の計算理論 (腦的計算理論)》,就能深刻體會到當時的氛圍。不過這本書已經絕版了,很難入手。
1986 年 Nature 的論文意味著神經網絡從心理學和生理學的分離
在這樣一個神經網絡和心理學還有生理學不可分的時候,正是開頭提到的那篇1986年的Nature論文橫空出現,將神經網絡從中拉了出來。
如果對神經科學有些了解的人,可能知道就連神經科學中,關于對等反向傳播的“大腦皮質內從高階區域向低階區域的反饋信號”意義的討論本身,其實也是2000年前后沒那么久之前的事情了。從2000年再往前推14年的話,說不定議論反向傳播人們只會把你當成怪人。
于是這樣,在“這東西不管怎么看也找不到什么生理學的依據”的情況下提出反向傳播,對生理學根據基本無視,提出具有范式轉移的反向傳播機制,還有配套的梯度法進行最優化,并向大家展示了其強大的實用性。這,才是我個人認為1986年 Nature 論文最大的意義。
在最后結論部分,Nature 論文給出了這樣的總結:
這樣的學習方法,似乎并不是大腦學習的一種合理模型。然而,將這個方法應用在各種各樣的任務上后顯示,通過權重空間的梯度下降,可以構建出很有趣的內部表征。這表明,很值得在神經網絡中找出更有生理可行性的方法來進行梯度下降。
這里直接坦言“雖然反向傳播沒有生理學依據,但很有用”。從另一個角度來看的話,說不定這就是神經網絡從不得不有心理學或生理學證據的枷鎖中,掙脫的第一步呢。
而且提出這樣重要觀點的,還不是像應用數學或計算機工程學這樣的“外人”,而是聯結主義中支柱般存在的 Rumelhart 和 Hinton 二人,這樣看來無疑意義更加偉大。并且,雖然Hinton老師現在被認為是深度學習的三始祖之一,還是神經網絡和機器學習的大牛,但看看維基百科的話就會發現,他本來其實是認知心理學家(Rumelhart 也一樣)。
當然,并不是說這之后神經網絡就完全和心理學生理學分離了,至少看文獻的話大概在2000年之前,仍被納入聯結主義中去。但是,根據已明確表示出來的,神經網絡不一定要依賴心理學和生理學的趨勢,未來將會更徹底從心理學生理學還有聯結主義中分離出來吧。
向著“模式識別” “機器學習”轉移,之后進一步成為深度學習
我本科雖然是計算機科學的學生,但在1999年時卻記得“機器學習”這個詞并不常見。用的更多的是“模式識別”這個詞。作為參考,看了看維基百科“Pattern recognition”的詞條,發現引用里面果然大部分都是在2000年前后,和我當時的印象一致。
順便一提,這是我本科時上課用到的經典教科書(《好懂的模式識別》)?,F在看來似乎這本書的續篇更加有名,但這本書還是將模式識別基本的東西都提到了,是本挺好的入門書。
這本書當然也提到了神經網絡和反向傳播。此外,過去神經科學等教科書上提到神經網絡時,一定會提到從小腦與感知機的異同到神經網絡的各種歷史,而這本書卻沒對這方面花太大篇幅。
此外,就如其他各種有名教科書一樣,反而是以如何基于鏈式法則導出反向傳播,還有如何實現它為主來說明。順便一提,我最初開始數據科學家的工作時,就是從書架上抽出這本書,一邊看著梯度法的公式,一邊從零實現反向傳播算法。
正如2000年左右,神經網絡已被看做脫離了心理學和生理學范疇的“模式識別”的一種。之后和“機器學習”的成功一起被看做是統計學習模型的一種,再然后是2006年Hinton老師的Science論文,還有就是通過2012年的 ImageNet Challenge,神經網絡和它的終極形態深度學習,慢慢以機器學習王者的姿態穩居寶座之上。
現在的神經網絡研究,有著各種奇思妙想的網絡模型層出不窮“我想出來的網絡才是最好的”亂況,還有不斷引入最先端的最優化解法,和利用過去完全想象不到的超大規模并行處理運行的進步,此外也有單作為數學理論分析對象和作為發現新物體性質的應用研究手段等等。神經網絡簡直慢慢成了將工程學和計算機科學各流派精粹集中在一起的天下第一武道大會。
順帶一提,維基百科日文版的“神經網絡”詞條中,也有類似的描述。
Neural Network(神經網絡,縮寫:NN)是一種數學模型,旨在通過計算機模擬表達腦功能中的一些特征。雖然研究起源于對生物體大腦的建模,但由于對神經科學看法的改變,逐漸與大腦模型的差異變得顯著。為了區分于生物學和神經科學上的神經網絡,所以也稱為人工神經網絡。人工神經網絡(ANN)或聯結主義系統,是大致由構成動物大腦的生物神經網絡啟發的計算系統,人工神經網絡最初的目的是想像人腦一樣解決問題。但隨著時間的推移,注意力重點開始轉移到了執行特定任務上去,導致了從生物學的偏離。
這里明確表達了類似“神經網絡已經脫離了人腦本身”的看法。距離1986年的Nature論文過去32年,神經網絡現在已慢慢遠離聯結主義的起源,開始成為了大家公認的機器學習王者。
雖然開頭那句話已說了很多遍了,但是還是要重復一遍:“產生了讓神經網絡從心理學和生理學分離,并向著機器學習方向轉移的契機”,才是1986年那篇 Nature 論文的最大意義。這便是我翻閱神經網絡歷史后得出的感想。
現在神經網絡還繼續沿用“神經”的理由
順帶一提,過去作為討論神經信息處理頂級會議的 NIPS,維基百科英文版最近的描述也已發生巨大的轉變。
該會議在2016年有5,000名注冊參與者,2017年有8,000名,使其成為人工智能領域最大的會議。除了機器學習和神經科學,NIPS 涉及的其他領域包括認知科學,心理學,計算機視覺,統計語言學和信息論。
雖然NIPS首字母縮寫中的“神經”已成為一種歷史殘留物,但自2012年后深度學習的復興,加上高速計算機和大數據的推動,在語音識別,圖像物體識別,語言翻譯等領域取得驚人的成果。
上面毫不客氣地直接寫到“NIPS 首字母縮寫中的“神經”已成了一種歷史殘留物”。其實2013年去太浩湖參加那年的 NIPS 時,雖然其中還有部分關于神經活動信號數據分析的研究,好像“神經”尚還健在,但更多還是與深度學習相關的研究。
此后就變得更加多了。
在圍棋中的世界冠軍級表現,是基于靈感來自視覺皮層(ConvNet)的層次結構的神經網絡架構,和受基礎神經節啟發(時間差分學習)的強化學習。
還有“盡管如此,受大腦啟發的神經網絡(和其綜合運用)還是有很大的應用可能性”,我同意這一點。 而且我還認為正因為這點,即使在已不把模仿人腦當做目標的現在,神經網絡還繼續沿用“神經”這個詞。
最后
關于2000年以前的情況,大都是從我碰巧同時學過的神經科學和計算機科學的經驗,還有各種文獻中參考而得出來的。當然我自身并沒有在那個時代去體驗這些。如果在文章中關于事件關系還有解釋中發現錯誤的話,非常高興你能指出來m(_ _)m。
引用
*1:無論その後のHinton先生の2006年のScience論文や2012年のImageNet Challengeも不可欠だと思いますが
*2:ただし書籍の中には手放してもう手元にないものもかなりある汗
*3:ただしこの記事は微妙に悪意ある記述が目立つので取扱注意
*4:小脳パーセプトロン理論は35歳で夭折した天才David Marrが提唱したということもあって、現在でも有名なサクセスストーリーとして語られることが多いようです
*5:例えばこの辺など https://papers.nips.cc/paper/421-analog-computation-at-a-critical-point-a-novel-function-for-neuronal-oscillations.pdf
*6:確か2と1/2次元スケッチモデルのこと
*7:特に各種感覚野など階層的構造を持つことが知られている部位の機能的神経解剖學
*8:Lamme and Roelfsema (Trends Neurosci., 2000)は卒論生當時繰り返し読んだものです http://www.kylemathewson.com/wp-content/uploads/2010/03/LammeRoelfsema-2000-TiN-Reentrant-Vision.pdf
*9:例えば「皮質內領野間におけるニューロン活動と階層間でのフィードバック投射の関係」に関する総説論文はどれほど遡っても2000年前後までに留まる https://www.ncbi.nlm.nih.gov/pubmed/?term=review+%5Bptyp%5D+feedback+%5Bti%5D+neuron+cortex
*10:某勉強會のメインテキストだったので
*11:ただしタイトルに比してわかりやすいという印象はない。。。
*12:あくまでもcoffee breakという挿話のところにMinskyによるパーセプトロン批判とRumelhartによるBP提案という反駁の歴史の話が出てくる程度
*13:例えばVapnik御大が最初にSVMを提案したのが1963年、非線形SVMへの拡張がなされたのが92年なので、実際にはだいぶ以前から工學系分野としての「機械學習」の萌芽は芽生えていた
相關報道:
https://tjo.hatenablog.com/entry/2018/10/23/080000