Geoffrey Hinton 最新訪談:不出五年,我們就會(huì)破解大腦的運(yùn)作機(jī)制,但不是通過反向傳播
過去十年,AI 在計(jì)算機(jī)視覺、語音識(shí)別、機(jī)器翻譯、機(jī)器人、醫(yī)學(xué)、計(jì)算生物學(xué)、蛋白質(zhì)折疊預(yù)測等等領(lǐng)域取得了一個(gè)又一個(gè)突破,而這些突破的背后,均離不開深度學(xué)習(xí)。那么,深度學(xué)習(xí)起源于何時(shí)何地,又在何時(shí)成為最突出的AI方法?
最近,UC伯克利教授、深度學(xué)習(xí)專家Pieter Abbeel在其播客節(jié)目《機(jī)器人大腦》(Robot Brains)中,對(duì)Geoffrey Hinton進(jìn)行了一次訪談。
曾獲得2018年圖靈獎(jiǎng)的Hinton,被稱為「深度學(xué)習(xí)三巨頭」之一,是人工智能史上最重要的學(xué)者之一。他的論文被引用了50多萬次,這意味著,有50萬篇以上的研究論文是建立在他的研究之上。
他在深度學(xué)習(xí)領(lǐng)域已經(jīng)研究了大約半個(gè)世紀(jì),大部分時(shí)間相對(duì)默默無聞,但在2012年,事情發(fā)生了轉(zhuǎn)折:那一年,憑借AlexNet在ImageNet比賽的勝出,他證明了深度學(xué)習(xí)在圖像識(shí)別方面比其他計(jì)算機(jī)視覺的方法具備更大的優(yōu)勢(shì)。這被稱為「ImageNet時(shí)刻」,改變了整個(gè)AI領(lǐng)域,掀起了深度學(xué)習(xí)的浪潮。
在這次對(duì)話中,Hinton講述了他從學(xué)術(shù)界到谷歌大腦的工作經(jīng)歷、學(xué)習(xí)心理學(xué)和當(dāng)木匠的經(jīng)歷,以及可視化技術(shù)t-SNE算法背后的歷史,并就一些問題發(fā)表了他的觀點(diǎn),包括:
- 現(xiàn)有的神經(jīng)網(wǎng)絡(luò)和反向傳播算法與大腦的運(yùn)作方式有何不同?
- 為什么我們需要無監(jiān)督的局部目標(biāo)函數(shù)?
- 睡眠和玻爾茲曼機(jī)的功能是什么?
- 為什么培育計(jì)算機(jī)比制造計(jì)算機(jī)更好?
- 為什么需要負(fù)面數(shù)據(jù)?
- 如今的大規(guī)模語言模型真正理解了語言嗎?
- ……
AI科技評(píng)論在不改變?cè)獾幕A(chǔ)上對(duì)他們的訪談作了編輯與整理:
1 反向傳播不同于人腦運(yùn)作方式
Abbeel:什么是神經(jīng)網(wǎng)絡(luò)?我們?yōu)槭裁匆P(guān)注它?
Hinton:我們的大腦是這樣工作的:
它有很多被稱為神經(jīng)元的小處理元件,每隔一段時(shí)間,一個(gè)神經(jīng)元就會(huì)發(fā)出 “ping”聲,而使它發(fā)出“ping”聲的原因是它聽到了其他神經(jīng)元的“ping”聲。每次它聽到其他神經(jīng)元的“ping”聲時(shí),就會(huì)在它得到的一些輸入存儲(chǔ)中增加權(quán)重,當(dāng)權(quán)重達(dá)到一定輸入后,它也會(huì)發(fā)出“ping”聲。
因此,如果你想知道大腦是如何工作的,你只需要知道神經(jīng)元如何決定調(diào)整這些權(quán)重。有一些用于調(diào)整權(quán)重的程序,如果我們能夠把它們弄清楚,那我們就會(huì)知道大腦是如何工作的。我認(rèn)為我們會(huì)在未來五年內(nèi)破解這些程序。
我認(rèn)為,所有現(xiàn)有的人工智能都是建立在與大腦高層次上所做的事情完全不同的基礎(chǔ)上。它必須趨于相同,當(dāng)你有很多參數(shù),假設(shè)你有數(shù)十億的參數(shù),這些神經(jīng)元間的權(quán)重在你大量訓(xùn)練實(shí)例的基礎(chǔ)上去調(diào)整參數(shù),就會(huì)發(fā)生奇妙的事情。大腦是這樣,深度學(xué)習(xí)也是這樣。問題在于,你如何獲得調(diào)整參數(shù)的梯度,因此你要思考衡量標(biāo)準(zhǔn)及想調(diào)整的參數(shù),使它們來完善你想達(dá)成的措施。
但我目前的信念是,反向傳播,也即目前深度學(xué)習(xí)的工作方式,與大腦所做的完全不同,大腦是以不同的方式來獲得梯度的。
Abbeel:你寫過一篇關(guān)于訓(xùn)練神經(jīng)網(wǎng)絡(luò)的反向傳播的論文,它成為今天大家所做一切的動(dòng)力,而現(xiàn)在你說是時(shí)候弄清楚我們是否應(yīng)該做些改變了?是否應(yīng)該將其向與大腦相似做努力?你是否認(rèn)為反向傳播可以比大腦正在做的事更好?
Hinton:Rumelhart、Williams和我確實(shí)寫了關(guān)于反向傳播的論文(如下)、且被引用次數(shù)最多。
論文地址:http://www.cs.toronto.edu/~hinton/absps/naturebp.pdf
反向傳播已廣為人知。我們真正做的是表明了它可以學(xué)習(xí)有趣的表征,并非我們發(fā)明了反向傳播,而是重新定義了反向傳播。我們提出它可以學(xué)習(xí)有趣的表征,例如單詞嵌入,因此認(rèn)為反向傳播可能比我們?cè)诖竽X中的效率要高得多。將大量信息擠壓到少數(shù)幾個(gè)連接中,而少數(shù)幾個(gè)連接只有幾十億個(gè),因此大腦的問題是連接非常便宜,有數(shù)以萬億計(jì)的連接, 而經(jīng)驗(yàn)是非常昂貴的,所以我們傾向于在少量經(jīng)驗(yàn)上投入大量參數(shù)。
而我們正在使用的神經(jīng)網(wǎng)絡(luò)基本上是相反的。它們有很多的經(jīng)驗(yàn),并試圖把輸入和輸出的信息聯(lián)系到參數(shù)中。我認(rèn)為反向傳播比大腦使用的方法更有效,但并不擅長從不多的數(shù)據(jù)中抽象出很多結(jié)構(gòu)。
Abbeel:對(duì)于這方面,你有什么可能獲得更好性能的方法的假設(shè)嗎?
Hinton:很長時(shí)間里我都認(rèn)為,我們需要無監(jiān)督目標(biāo)函數(shù)。這里主要是指感知學(xué)習(xí),如果你能通過觀察世界來學(xué)習(xí)模型,那你就可以基于這個(gè)模型、而非原始數(shù)據(jù)采取行動(dòng),這正確率更高。
我相信大腦使用了很多局部小的目標(biāo)函數(shù),它不是一種端到端的系統(tǒng)鏈,通過訓(xùn)練來優(yōu)化目標(biāo)函數(shù)。
舉個(gè)例子,如果你看張圖像的一小塊,試圖提取些表征,可以將你從那小塊圖像中得到的表征、與通過附近其他斑塊的表征而得到的上下文語境進(jìn)行比較,由此去預(yù)測該圖像中有什么。
一旦你對(duì)這個(gè)領(lǐng)域很熟悉,這些來自上下文的預(yù)測和本地提取的特征通常會(huì)一致。如果不一致,你也能從中學(xué)到很多。
我認(rèn)為大腦可以從這種局部分歧中學(xué)到很多東西??赡茉谀憧磥?,一個(gè)大圖像和圖像的許多小局部斑塊意味著很多反饋,即圖像中的局部提取和上下文預(yù)測的一致。我們可以從這些與上下文預(yù)測的一致中得到更豐富的反饋。要做到這一點(diǎn)很難,但我認(rèn)為現(xiàn)在正沿著這條線發(fā)展。
Abbeel:你對(duì)SimCLR這項(xiàng)工作以及它與更普遍的學(xué)習(xí)的差異有什么看法?你怎么看待最近的MAE(Masked Autoencoders)?它與你剛才的描述有什么關(guān)系?
Hinton:我所得到的相關(guān)有證據(jù)表明,這種目標(biāo)函數(shù)是好的。
我個(gè)人沒有寫過這篇論文,但在很久以前,曾與Sue Becker寫過一篇關(guān)于從圖像的兩個(gè)不同斑塊得到一致表征思考的論文。我認(rèn)為,那是關(guān)于通過在同一圖像的兩個(gè)塊表征之間達(dá)成一致、來進(jìn)行自監(jiān)督學(xué)習(xí)的想法的起源。
Abbeel:我們來談一談你提到的使用端到端學(xué)習(xí)反向傳播來支持端到端學(xué)習(xí)的方法。你的意思是,以接近大腦的學(xué)習(xí)方式,即從更少的數(shù)據(jù)中學(xué)習(xí)、提取更多數(shù)據(jù),將是在了解大腦運(yùn)作方式上取得進(jìn)展的關(guān)鍵。今天,很多人正在努力解決從無標(biāo)簽數(shù)據(jù)中有效學(xué)習(xí)的問題,因?yàn)樗枰娜肆Ω伲麄內(nèi)匀皇褂酶聪騻鞑ハ嗤臋C(jī)制。
Hinton:我不喜歡MAE的地方在于,你有一些輸入補(bǔ)丁,經(jīng)過多層表征,在網(wǎng)絡(luò)的輸出中試圖重建缺失的輸入補(bǔ)丁。
我認(rèn)為大腦有這些層次上的表征,但每個(gè)層都在試圖重構(gòu)下面那個(gè)層次的內(nèi)容。并不是說經(jīng)歷了這么多層再返回,而是有這么多層,每一層都試圖重建下一層的東西。在我看來,這更像大腦,但問題在于:如果不使用反向傳播,你能做到這一點(diǎn)嗎?
顯然,如果通過多個(gè)層次重建輸出的缺失部分,你需要通過所有層次來獲得信息,而反向傳播已經(jīng)內(nèi)置于所有的模擬器中,但大腦并非如此。
Abbeel:想象一下,大腦在處理這些局部的目標(biāo)時(shí)有三個(gè)選擇:一是我們想要優(yōu)化的局部目標(biāo)是什么?二是用什么算法來優(yōu)化它?三是我們將神經(jīng)元連接在一起進(jìn)行學(xué)習(xí)的架構(gòu)是什么?在這三個(gè)問題上,我們似乎都還沒有做得很好。你怎么看?
Hinton:如果你對(duì)認(rèn)知學(xué)習(xí)感興趣,那就非常清楚。
你想要一個(gè)可視主題地圖,一種書寫主題地圖的層次結(jié)構(gòu),架構(gòu)上是局部連接的。對(duì)此,你可以通過假設(shè)在反電子地圖上某個(gè)位置的東西是由其對(duì)應(yīng)的視神經(jīng)圖決定的,來解決很多信用分配問題。不需深入系統(tǒng),而是使用局部交互、弄清楚像素在其中的作用。
目前,神經(jīng)網(wǎng)絡(luò)所做的是,假設(shè)在每個(gè)局部性上使用相同函數(shù),卷積神經(jīng)網(wǎng)絡(luò)如此,transformer也如此。大腦不一定能做到這點(diǎn),因?yàn)檫@會(huì)涉及權(quán)重共享,且要在每個(gè)地方做完全相同的計(jì)算。而有一種方法能達(dá)到權(quán)重共享的目標(biāo),那就是卷積,我認(rèn)為它在大腦中能起到更有效的作用。
如果你想通過上下文預(yù)測同局部提取達(dá)成一致,那么想象一下,有一堆列在做本地預(yù)測,并通過查看附近的列以獲得其上下文預(yù)測。你可以把上下文看作是本地預(yù)測的老師,反之亦然。把上下文中的信息看作是被提煉到本地提取器中。由此可得到的是相互提煉,它們都在為對(duì)方提供教學(xué)信號(hào),這意味著關(guān)于你應(yīng)在一個(gè)地方提取的知識(shí)正被轉(zhuǎn)移到其他地方。
當(dāng)它們?cè)噲D達(dá)成一致,或者想讓不同位置的事物達(dá)成一致,例如希望鼻子和嘴巴同意各自是同一張臉的一部分,那它們都應(yīng)該產(chǎn)生相同的表征,當(dāng)你試圖在不同地方獲得相同表征,就需要允許知識(shí)從一個(gè)地方被提煉到另一個(gè)地方,這與實(shí)際的權(quán)重共享相比有更大的優(yōu)勢(shì)。
顯然,從生物學(xué)角度來說,一個(gè)優(yōu)勢(shì)是不同位置的詳細(xì)架構(gòu)無需相同,另一個(gè)優(yōu)勢(shì)是前端處理無需相同。
拿視網(wǎng)膜來說,不同部分的視網(wǎng)膜有不同大小的感知域,卷積網(wǎng)忽略它們多個(gè)不同的分辨率,并在每個(gè)分辨率上做卷積,但它們無法執(zhí)行不同的前端處理。而如果從一個(gè)位置提取到另一個(gè)位置,要做的就是從光學(xué)陣列獲得相同函數(shù)在不同位置的表示,此時(shí)在不同的位置對(duì)光學(xué)陣列采取不同的預(yù)處理也可以,即使前端處理不同,但仍可以提煉出表示整個(gè)功能的知識(shí)。
所以,雖然提取比實(shí)際顯示權(quán)重效率低,但它更靈活,在神經(jīng)系統(tǒng)上更可信。這也是我一年前提出一個(gè)重要看法,即必須有類似權(quán)重共享的技巧來提高效率,但如果你試圖讓相鄰事物達(dá)成一致,那本地提取就會(huì)起作用。
Abbeel:既然大腦的方式不同,我們是否應(yīng)該繼續(xù)用另一種方式來考慮權(quán)重共享,還是說我們不應(yīng)該繼續(xù)權(quán)重共享?
Hinton:我認(rèn)為應(yīng)該繼續(xù)在卷積網(wǎng)中做卷積的事情,在transformer中共享權(quán)重,通過共享權(quán)重來共享知識(shí)。要記住,大腦分享知識(shí)不是通過共享權(quán)重,而是通過共享從輸入到輸出的功能,利用提取來傳遞知識(shí)。
2 人腦尖峰神經(jīng)元 vs. GPU人工神經(jīng)元
Abbeel:現(xiàn)在還有一個(gè)話題被廣泛談?wù)?,大腦與當(dāng)前神經(jīng)網(wǎng)絡(luò)很不同,神經(jīng)元是用尖峰信號(hào)工作的,跟我們GPU中的人工神經(jīng)元存在很大的差異。我很好奇你對(duì)這個(gè)問題的看法,這只是一個(gè)工程上的差異,還是我們可能需要更多知識(shí)來更好理解?
Hinton:這不僅僅是工程上的不同。一旦我們理解了為什么硬件這么出色,就能理解它對(duì)大腦地理標(biāo)記單位視網(wǎng)膜是敏感的。例如,視網(wǎng)膜不使用尖峰神經(jīng)元,有大量非尖峰神經(jīng)的處理。一旦理解了大腦皮層的運(yùn)作原因,我們就會(huì)發(fā)現(xiàn)這是生物學(xué)的正確做法。我認(rèn)為這取決于學(xué)習(xí)算法是如何得到尖峰神經(jīng)元網(wǎng)絡(luò)的梯度,但目前沒有人真正知道。
關(guān)于尖峰神經(jīng)元的問題,往往會(huì)出現(xiàn)兩種截然不同的決策:它在什么時(shí)候會(huì)出現(xiàn)尖峰,以及它會(huì)不會(huì)出現(xiàn)尖峰。這就是離散決策。人們想出各種替代函數(shù)來試圖優(yōu)化系統(tǒng)。
2000年,Andy Brown和我有一篇關(guān)于嘗試學(xué)習(xí)尖峰玻耳茲曼機(jī)的論文,如果有一個(gè)適合尖峰碼的學(xué)習(xí)算法就太棒了,我想這是阻礙尖峰神經(jīng)元硬件發(fā)展的主要原因。
許多人已經(jīng)意識(shí)到可以用這種方式制造更節(jié)能的硬件,并且也構(gòu)建了巨大的系統(tǒng),但真正欠缺的是一個(gè)出色的學(xué)習(xí)結(jié)果。因此我認(rèn)為,在得到一個(gè)好的學(xué)習(xí)算法之前,我們將無法真正利用尖峰神經(jīng)元做事情。
因此,當(dāng)你采取一個(gè)標(biāo)準(zhǔn)的人工神經(jīng)元時(shí),只需要問:它是否能分辨輸入的兩個(gè)值是否相同?不能。但當(dāng)你使用尖峰神經(jīng)元時(shí),就很容易建立一個(gè)系統(tǒng),兩個(gè)尖峰在同時(shí)到達(dá),它們就會(huì)在著火時(shí)發(fā)出聲音,不同時(shí)間到達(dá)則不會(huì)。因此,使用峰值時(shí)間似乎是一個(gè)衡量一致性的好方法。
正如生物系統(tǒng),你之所以可以看到方向、聲音,來自于信號(hào)到達(dá)兩只耳朵的延時(shí),如果拿一英尺來說,光大約是一納秒,而第一個(gè)聲音大約是一毫秒。但如果我將東西在你側(cè)面移動(dòng)幾英寸,到兩只耳朵的時(shí)間延遲差異,到兩只耳朵的路徑長度只有一英寸的一小部分,即信號(hào)到兩只耳朵的時(shí)間差只有一毫秒。因此我們對(duì)30毫秒的時(shí)間很敏感,以便從聲音中獲得立體聲。我們通過兩個(gè)軸突和不同方向的刺突來做到這一點(diǎn),一個(gè)來自一個(gè)耳朵,一個(gè)來自另一個(gè)耳朵,當(dāng)刺突同時(shí)到達(dá),就有細(xì)胞發(fā)出信號(hào)。
因?yàn)榧夥鍟r(shí)間可以被用來做非常敏感的事情,那當(dāng)它的精確時(shí)間沒被使用時(shí),將是件令人驚訝的事。長時(shí)間以來,我一直認(rèn)為,如果你能用尖峰時(shí)間來檢測自監(jiān)督學(xué)習(xí)等方面的一致性,或者說,我提取了你的嘴巴和鼻子的信息,從嘴巴和鼻子來預(yù)測你整個(gè)面部,當(dāng)你的嘴巴和鼻子能正確組成一個(gè)面部,這些預(yù)測就會(huì)一致。如果能用尖峰時(shí)間來觀察這些預(yù)測是否一致就更好了,但很難做到,因?yàn)槲覀儾恢?、也沒有一個(gè)好的算法來訓(xùn)練網(wǎng)絡(luò),就像神經(jīng)元一樣。
Abbeel:你剛才是說視網(wǎng)膜不使用所有尖峰神經(jīng)元?大腦有兩種類型的神經(jīng)元,有些更像我們的人工神經(jīng)元,有些則是尖峰神經(jīng)元?
Hinton:我不確定視網(wǎng)膜是否更像人工神經(jīng)元,但可以肯定的是,大腦新皮層有尖峰神經(jīng)元,這是它的主要交流模式,發(fā)送尖峰從一個(gè)參數(shù)到另一個(gè)參數(shù)細(xì)胞。
我有一個(gè)很好的論點(diǎn):大腦有非常多參數(shù),和我們使用的典型神經(jīng)網(wǎng)絡(luò)相比沒有太多的數(shù)據(jù),這種狀態(tài)下有可能過度擬合,除非使用強(qiáng)大的正則化。一個(gè)好的正則化技術(shù)是每次你使用一個(gè)神經(jīng)網(wǎng)絡(luò),你忽略了一大堆的單元,因此可能也忽略神經(jīng)元正在發(fā)送尖峰的事實(shí)。它們真正交流的是潛在的泊松速率。我們假設(shè)它是傳遞的。這個(gè)過程是有代價(jià)的,它隨機(jī)發(fā)送脈沖,這個(gè)過程中速率是變化的,由輸入到神經(jīng)元的信息決定,你可能會(huì)想要把真實(shí)值的速率從一個(gè)尿液發(fā)送到另一個(gè),當(dāng)你想做很多正則化,可以把真實(shí)值的速率加上一些噪聲,增加噪音的一種方法是使用會(huì)增加很多噪音的脈沖,大多數(shù)情況下就是退出的動(dòng)機(jī)。
當(dāng)你觀察任何一個(gè)時(shí)間窗口,大多數(shù)神經(jīng)元都不參與任何事情,你可以把尖峰看作是一個(gè)代表性的潛在個(gè)人比率。這聽起來非常糟糕,因?yàn)樗茑须s。但一旦你理解了正則化,這會(huì)是個(gè)非常好的主意。
所以我仍然對(duì)這個(gè)想法情有獨(dú)鐘,但實(shí)際上我們根本沒有使用尖峰計(jì)時(shí)。它只是使用非常嘈雜的個(gè)人速率表示來成為一個(gè)好的正則化器,而我有點(diǎn)像在兩者之間切換。有些年我認(rèn)為神經(jīng)網(wǎng)絡(luò)是確定性的。我們應(yīng)該有確定性的神經(jīng)網(wǎng)絡(luò),這是再往后幾年的東西。我認(rèn)為這是一個(gè)5年的周期。最好的隨機(jī)性也非常重要,它會(huì)改變一切。因此,玻爾茲曼機(jī)本質(zhì)上是隨機(jī)的,這對(duì)它們來說很重要。但重要的是,不要完全致力于這兩種情況,而是要對(duì)這兩種情況持開放態(tài)度。
現(xiàn)在重要的是,更多地考慮你剛才所說尖峰神經(jīng)元的重要性,并弄清楚如何有效地訓(xùn)練尖峰神經(jīng)元網(wǎng)絡(luò)。
Abbeel:如果我們現(xiàn)在說不要擔(dān)心訓(xùn)練的部分(考慮到它看起來更有效率),難道人們不想分布純粹的推理芯片,也即是分別進(jìn)行有效的預(yù)訓(xùn)練,然后將其編譯到尖峰神經(jīng)元芯片上,使它具有非常低功率的推理能力?
Hinton:很多人都想到了這一點(diǎn),這非常明智,它可能在進(jìn)化的道路上使用神經(jīng)網(wǎng)絡(luò)進(jìn)行推理是有效的,并且所有人都在這樣做,也被證明是更有效的,不同的公司已經(jīng)生產(chǎn)了這些大的尖峰系統(tǒng)。
一旦你在做這些事情,你會(huì)對(duì)推理越來越感興趣,可以用一種方式來學(xué)習(xí)在尖峰時(shí)期更多利用可用的能量。所以你可以想象有一個(gè)系統(tǒng),你學(xué)習(xí)時(shí)是使用輔助設(shè)備,不是模擬硬件,例如不在這個(gè)低能量的硬件上,但你可以將其轉(zhuǎn)移到低能量的硬件上就很好。
3 AlexNet的誕生背景
Abbeel:什么是AlexNet?它是如何產(chǎn)生的?你從研究受限玻爾茲曼機(jī)器到試圖理解大腦如何工作的路徑是什么?
Hinton:我想說,你可能突然間就證明了,更傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)方法確實(shí)行得通。
大約在2005年,我被可以使用成堆的限制電壓機(jī)器來預(yù)先訓(xùn)練特征檢測器的想法迷住了,它可以更容易地讓Backdrop工作,結(jié)果是有足夠的數(shù)據(jù)。后來,因?yàn)镕aith Ali和她的圖像識(shí)別團(tuán)隊(duì)有了足夠的數(shù)據(jù),盡管預(yù)訓(xùn)練即將回歸,但不再需要預(yù)訓(xùn)練。
GPT-3有預(yù)訓(xùn)練,預(yù)訓(xùn)練也是個(gè)好主意,可一旦我們發(fā)現(xiàn)你可以預(yù)訓(xùn)練,這能使背景工作更好,對(duì)語音有很大的幫助,就像George John 和 Abdul Rahman Muhammad在2009年做的那樣。此后,我小組的研究生 Alex 開始將相同的想法應(yīng)用于視覺,很快我們發(fā)現(xiàn),當(dāng)你有ImageNet的數(shù)據(jù)時(shí),你并不需要預(yù)訓(xùn)練。
我記得有一天Ilya來到實(shí)驗(yàn)室說:「看,現(xiàn)在我們已經(jīng)有了語音識(shí)別,這東西真的很管用 ,我們必須在其他人之前做出ImageNet?!笿anella也走進(jìn)實(shí)驗(yàn)室表達(dá)了這樣的想法,他的學(xué)生和博士后也說:「哇,但是我正在忙其他的事情?!故聦?shí)上他沒有辦法讓誰致力于此。后來他說服了Alex通過對(duì)數(shù)據(jù)進(jìn)行預(yù)處理來完成這個(gè)實(shí)驗(yàn),數(shù)據(jù)都被預(yù)處理成他所需要的。
這只是背景。我想說的是,很多研究人員都知道這個(gè),但可能不是每個(gè)人都知道Alex的結(jié)果和Ilya之前在ImageNet圖像識(shí)別競賽上的工作相比錯(cuò)誤率降低了一半。這就是為什么每個(gè)人都從手工設(shè)計(jì)的方法轉(zhuǎn)向計(jì)算機(jī)視覺,嘗試直接編程。
4 從學(xué)術(shù)界到谷歌
Abbeel:哪一刻標(biāo)志著你的職業(yè)生涯發(fā)生了重大變化?從學(xué)術(shù)界到谷歌,對(duì)你產(chǎn)生了什么影響?為什么會(huì)發(fā)生這種轉(zhuǎn)變?
Hinton:我有一個(gè)殘疾的兒子需要撫養(yǎng),所以需要一大筆錢,一個(gè)方法是教課。2012年,我教了一門神經(jīng)網(wǎng)絡(luò)的課程。但他們的軟件不是很好,所以做起來非常煩躁。每周一章,我必須給他們提供教學(xué)視頻,會(huì)有一大堆人要看。有時(shí)上完課第二天Yoshua Bengio會(huì)問:「你為什么(在課上)這么說?」
我與多倫多大學(xué)最初的協(xié)議是,如果從這些課程中賺到任何錢,我希望大學(xué)將錢與教授們分享,他們沒有明確說明具體的分配方式,但人們認(rèn)為大概在50%或類似,我對(duì)此沒有意見。但在我開始授課后,教務(wù)長在沒有咨詢我或其他人的情況下做出了一個(gè)單方面的決定:如果資金來自課程平臺(tái),大學(xué)會(huì)拿走所有的錢,而教授什么都拿不到。我讓學(xué)校幫我準(zhǔn)備視頻,制作視頻的人會(huì)來問我,你知道制作視頻有多貴嗎?
這讓我對(duì)學(xué)校感到非常生氣,所以我開始考慮教授之外的其他職業(yè)選擇。那個(gè)時(shí)候,我們突然引起了各種公司的興趣,他們要招募我們,要么是給予大額撥款,要么是資助創(chuàng)業(yè)。通常我會(huì)說不,我不想試圖從研究中賺取額外的錢,但那次學(xué)校騙了我錢的經(jīng)歷,讓我想找一些其他的方式來賺錢。
Abbeel:當(dāng)時(shí)的拍賣會(huì)是一種怎樣的場景?
Hinton:那是在NIPS會(huì)議上,Terry在一個(gè)賭場里組織了一些小活動(dòng)。在酒店地下室煙霧繚繞的房間里,有人在樓上賭博,感覺就像在拍電影。我們完全不知道自己值多少錢。我咨詢了一位律師,他說我可以聘請(qǐng)專業(yè)的談判人員,或者直接進(jìn)行拍賣。
據(jù)我所知,這是第一次有像這樣的小團(tuán)體進(jìn)行拍賣。我們通過Gmail進(jìn)行拍賣,人們必須把他們的出價(jià)用電子郵件發(fā)給我,并附上電子郵件的時(shí)間戳。價(jià)格一直在漲,一開始是50萬美元,之后是100萬美元,這很令人興奮,我們發(fā)現(xiàn)自己的價(jià)值比我們想象的要高得多。
回想起來,我們也許可以得到更多,但我們已經(jīng)看到了一個(gè)我們認(rèn)為是天文數(shù)字的金額。我們都想為谷歌工作,所以我們停止了拍賣,并確定加入谷歌。
Abbeel:據(jù)我了解,你今天還在谷歌。
Hinton:我現(xiàn)在還在谷歌工作,已經(jīng)9年了。我喜歡谷歌的主要原因是,核心團(tuán)隊(duì)非常好。
我和Jeff Dean相處得非常好,他非常聰明,而我是非常直截了當(dāng)?shù)?。他希望我做的正是我想做的事情,也就是基礎(chǔ)研究。他認(rèn)為我應(yīng)該做的是嘗試提出全新的算法,這就是我想做的,非常適配。我不擅長管理一個(gè)大團(tuán)隊(duì),去提高百分之一的語音識(shí)別能力。但我很樂意,最好是可以再一次徹底改變這個(gè)領(lǐng)域。
Abbeel:你曾是多倫多大學(xué)的計(jì)算機(jī)科學(xué)教授,但你從來沒有獲得過計(jì)算機(jī)科學(xué)學(xué)位,你獲得過心理學(xué)學(xué)位,而且你還曾做過木匠。你是如何從學(xué)習(xí)心理學(xué)、到成為一名木匠、再到進(jìn)入人工智能領(lǐng)域的?
Hinton:在劍橋的最后一年,我過得很艱難??荚嚭笪揖屯藢W(xué)當(dāng)了一名木匠,我喜歡做木工活勝過其他任何事。高中時(shí)上完所有的課程,晚上就可以呆在家里做木工活,所以我成為了一名木匠,做了大約6個(gè)月。
但我不可能以做木匠為生。我曾是一名木匠兼裝修師,在裝修的過程中賺了錢,我很享受做木工活的樂趣。直到我遇到了一個(gè)真正的木匠,才意識(shí)到我在木工方面完全沒有希望。他可以用手鋸把一塊木頭完全切成方形。和他比起來,我太絕望了,我決定還是回到人工智能。
Abbeel:據(jù)我所知,你的博士是在愛丁堡大學(xué)攻讀的。
Hinton:是的,我去那里攻讀神經(jīng)網(wǎng)絡(luò)的博士學(xué)位,和著名教授Christopher Longa Higgins一起做研究,他真的非常出色,在30多歲時(shí)就因?yàn)檠芯砍雠饸浠锏慕Y(jié)構(gòu)而差點(diǎn)獲得諾貝爾獎(jiǎng)。他對(duì)神經(jīng)網(wǎng)絡(luò)以及與全息圖的關(guān)系很感興趣,大約在我到達(dá)愛丁堡的那天,他對(duì)神經(jīng)網(wǎng)絡(luò)失去興趣,因?yàn)樽x了Winograd的論文而完全改變看法,認(rèn)為神經(jīng)網(wǎng)絡(luò)是錯(cuò)誤的思考方式。盡管他完全不同意我所做的事情,但他并沒有阻止我做這件事。
Abbeel:70年代初,在其他人都說Minsky和Papert所提出的神經(jīng)網(wǎng)絡(luò)是無稽之談時(shí), 你為什么要做這個(gè)東西?
Hinton:事實(shí)上,我給那個(gè)小組做的第一次演講就是關(guān)于如何用神經(jīng)網(wǎng)絡(luò)做真正的遞歸。這是在1973年、即49年前的演講。我發(fā)現(xiàn)的一個(gè)項(xiàng)目是,當(dāng)你想要一個(gè)能夠畫出形狀的神經(jīng)網(wǎng)絡(luò),它把形狀分成不同的部分,有可能可以讓一部分的形狀由相同的神經(jīng)硬件來畫,而整個(gè)形狀是由神經(jīng)中樞來畫的,神經(jīng)中樞存儲(chǔ)整個(gè)形狀,且必須記住它在整個(gè)形狀中的位置、以及整個(gè)形狀的方向和位置大小。
但我現(xiàn)在想法改變了,你想用同樣的神經(jīng)元來畫出形狀的一部分時(shí),你需要在某個(gè)地方記住整個(gè)形狀是什么,以及你在其中走了多遠(yuǎn)。一旦你完成了這個(gè)子程序,你就可以跳回那個(gè)地方。形狀這一部分的問題是,神經(jīng)網(wǎng)絡(luò)如何記住它,顯然你不能只是復(fù)制神經(jīng)元,因此我設(shè)法讓一個(gè)系統(tǒng)工作和一直適應(yīng),讓神經(jīng)網(wǎng)絡(luò)通過快速的重度和權(quán)重來記住它。因此,我有了一個(gè)神經(jīng)網(wǎng)絡(luò)在做真正的遞歸,重復(fù)使用相同的神經(jīng)元和權(quán)重來做遞歸調(diào)用,正如在1973年所做的高級(jí)調(diào)用一樣。
我認(rèn)為人們不理解我的演講,因?yàn)槲也簧瞄L演講,但他們也會(huì)問為什么要在你的比賽中做遞歸。他們不明白的是,除非我們讓神經(jīng)網(wǎng)絡(luò)做遞歸之類的事情,否則我們永遠(yuǎn)無法解釋一大堆事情,現(xiàn)在這又變成了一個(gè)有趣的問題, 所以我打算再等一年,直到這個(gè)想法成為一個(gè)真正的古董。當(dāng)它將有50年的歷史時(shí),我會(huì)寫一份研究報(bào)告。
Abbeel:當(dāng)你和大家一樣是博士生或者博士剛畢業(yè)時(shí),幾乎所有人都告訴你,你所從事的工作是在浪費(fèi)時(shí)間,而你卻深信并非如此,你這種信念來源于哪里?
Hinton:我想很大一部分原因是我的學(xué)校教育。我的父親把我送到了一所昂貴的私立學(xué)校,那里有良好的科學(xué)教育,我從7歲起就在那里上學(xué)。那是一所基督教學(xué)校,其他所有的孩子都信仰上帝,但我在家里被教導(dǎo)說那都是胡說八道,在我看來那確實(shí)是胡說八道,所以我習(xí)慣了別人都是錯(cuò)的。
我認(rèn)為這很重要。你需要對(duì)科學(xué)有信念,愿意去研究那些顯然正確的東西,即使其他所有人都說那是胡說八道,而且事實(shí)上并非所有人都那么認(rèn)為。在70年代初,研究AI的幾乎所有人都認(rèn)為(我做的東西)是胡說八道。但如果你再往前看一點(diǎn),在50年代,馮·諾伊曼和圖靈都相信神經(jīng)網(wǎng)絡(luò),圖靈尤其相信神經(jīng)網(wǎng)絡(luò)的強(qiáng)化訓(xùn)練。我仍然相信,如果他們沒有早逝,整個(gè)人工智能的歷史可能會(huì)非常不同,因?yàn)樗麄兪菑?qiáng)大到足以左右整個(gè)領(lǐng)域的智者,他們還對(duì)大腦是如何工作的非常感興趣。
5 非永生計(jì)算機(jī):成本低,通過學(xué)習(xí)獲取知識(shí)
Abbeel:現(xiàn)在的深度學(xué)習(xí)非常有效。它是我們所需要的全部,還是說我們還需要其他東西?你曾說過(也許我不是原文引用你的話),深度學(xué)習(xí)可以做到一切。
Hinton:我那樣說的真正意思是,用隨機(jī)梯度發(fā)送一大堆參數(shù),深度學(xué)習(xí)得到梯度的方式可能不是反向傳播,以及你得到的梯度可能不是最終的性能測量,而是這些局部目標(biāo)函數(shù)。我認(rèn)為這就是大腦的工作方式,而且我認(rèn)為這可以解釋一切。
我想說的另一件事,是我們現(xiàn)在擁有的計(jì)算機(jī)對(duì)銀行業(yè)務(wù)非常有幫助,因?yàn)樗鼈兡苡涀∧愕馁~戶里有多少錢。如果你去銀行問,他們只會(huì)告訴你大概有多少。我們無法給出確定答案,因?yàn)槲覀儫o法做到那么精確,只能給出一個(gè)大概。在計(jì)算機(jī)處理銀行業(yè)務(wù)或操控航天飛機(jī)時(shí),我們可不希望那種事情發(fā)生,我們很希望計(jì)算機(jī)能得到完全正確的答案。我認(rèn)為,人們還沒有充分意識(shí)到我們做出了一個(gè)關(guān)于計(jì)算將如何發(fā)展的決定,即我們的計(jì)算機(jī)、我們的知識(shí)將會(huì)不朽。
現(xiàn)有的計(jì)算機(jī)有一個(gè)計(jì)算機(jī)程序,或者權(quán)重很多的神經(jīng)網(wǎng)絡(luò)(那是一種不同類型的程序)。但如果你的硬件壞了,你可以在另一個(gè)硬件上運(yùn)行相同的程序。這就使得知識(shí)不朽。它不依賴于特定的硬件存活。而不朽的代價(jià)是巨大的,因?yàn)檫@意味著不同位的硬件必須做完全相同的事情,這顯然是在做完所有錯(cuò)誤校正之后的零點(diǎn)校正。它們必須做完全相同的事情,這意味著最好是數(shù)字化的或者基本數(shù)字化,它們會(huì)做一些事情,比如把數(shù)字相乘,這需要消耗很多很多的能量來使運(yùn)算變得非常謹(jǐn)慎,而這不是硬件的目標(biāo)。一旦你想要讓你的程序或神經(jīng)網(wǎng)絡(luò)不朽,你就會(huì)投入到非常昂貴的計(jì)算和制造過程中。
如果我們?cè)敢夥艞壊恍?,我們將得到的回?bào)是非常低的能源計(jì)算和非常廉價(jià)的制造。所以,我們應(yīng)該做的不是制造計(jì)算機(jī),而是讓它們進(jìn)化。打個(gè)比喻,如果你有一棵盆栽植物,你把它從花盆里拔出來,會(huì)得到一團(tuán)球狀的根部,這正是花盆的形狀,所以所有不同的盆栽植物都有相同形狀的根部,而根系的細(xì)節(jié)都不一樣,但它們都在做同樣的事情,它們從土壤中提取養(yǎng)分,它們的功能是一樣的。
而這就是真正的大腦的樣子,這就是我所說的非永生計(jì)算機(jī)的樣子。這些計(jì)算機(jī)是培育出來的,而不是制造出來的。你不能給它們編程,它們需要在學(xué)習(xí),它們必須有一個(gè)某種程度上是內(nèi)置的學(xué)習(xí)算法。他們用模擬來做大部分的計(jì)算,因?yàn)槟M非常適合做一些事情,比如取電壓,乘以電阻,然后把它變成電荷,再把電荷加起來,芯片已經(jīng)做了這樣的事情。問題是你接下來要做什么,你如何在這些芯片中學(xué)習(xí)。而目前,人們已經(jīng)提出了反向傳播或各種版本的裝箱機(jī)。我認(rèn)為我們還需要?jiǎng)e的東西,但我認(rèn)為,在不久的將來,我們將會(huì)看到非永生計(jì)算機(jī),它們的制造成本很低,它們必須通過學(xué)習(xí)來獲取所有的知識(shí),而且它們所需的能量很低。當(dāng)這些非永生計(jì)算機(jī)死亡時(shí),它們的知識(shí)也會(huì)隨之死亡??礄?quán)重是沒有用的,因?yàn)槟切?quán)重只適用于硬件。所以你要做的,就是把這些知識(shí)提取到其他計(jì)算機(jī)上。
6 大規(guī)模語言模型在多大程度上理解了語言
Abbeel:今天那些占據(jù)頭條的神經(jīng)網(wǎng)絡(luò)都是非常大的。在某種意義上,大型語言模型的規(guī)模已經(jīng)開始向大腦靠近,非常令人印象深刻。你對(duì)這些模型有什么看法?你在其中看到了什么局限性?另一方面,比如螞蟻的大腦顯然比人類小得多,但公平地說,我們?nèi)斯ら_發(fā)的視覺運(yùn)動(dòng)系統(tǒng)還沒有達(dá)到螞蟻或蜜蜂的水平。所以,對(duì)于最近語言模型的重大進(jìn)步,你有什么樣的想法?
Hinton:蜜蜂的大腦可能在你看來很小,但我認(rèn)為蜜蜂有大約一百萬個(gè)神經(jīng)元,蜜蜂更接近GPT-3。但蜜蜂的大腦實(shí)際上是一個(gè)很大的神經(jīng)網(wǎng)絡(luò)。
我的觀點(diǎn)是,如果你有一個(gè)參數(shù)很大的系統(tǒng),而且這些參數(shù)是用一些合理的目標(biāo)函數(shù)中的梯度下降來調(diào)整的,那么你會(huì)得到很好的性能,就像GPT-3那樣,還有我已經(jīng)提到很多谷歌的類似模型。這并沒有解決它們是否能做到和我們一樣的問題,我認(rèn)為我們?cè)谧龈嗟氖虑椋热缥覀冊(cè)谏窠?jīng)網(wǎng)絡(luò)中做的遞歸。
我在去年那篇關(guān)于GLOM的論文中試圖闡述這些問題,關(guān)于如何在神經(jīng)網(wǎng)絡(luò)中做部分孔層次結(jié)構(gòu)。你肯定要有結(jié)構(gòu),如果你說的符號(hào)計(jì)算只是你有部分和整體結(jié)構(gòu),那么我們做的就是符號(hào)計(jì)算。這通常不是人們所說的那種偏硬的符號(hào)計(jì)算,那種符號(hào)計(jì)算意味著你在使用符號(hào),你在符號(hào)上操作的規(guī)則只取決于你處理的符號(hào)字符串的形式,一個(gè)符號(hào)所具有的唯一屬性是它與其他符號(hào)是相同或不相同,也可能是它可以作為指針來得到一些東西。
論文地址:https://arxiv.org/pdf/2102.12627.pdf
神經(jīng)網(wǎng)絡(luò)與此非常不同,所以我認(rèn)為我們做的不是那種偏硬的符號(hào)處理,但我們肯定做孔層次結(jié)構(gòu)。但我們是在巨大的神經(jīng)網(wǎng)絡(luò)中做的,我現(xiàn)在不太清楚GPT-3在多大程度上能真正理解它所說的話。我認(rèn)為這是相當(dāng)清楚的,它不像以前的聊天機(jī)器人程序Eliza,只是重新排列符號(hào)串,而完全不知道它是在說什么。相信這一點(diǎn)的理由是,比如你用英文說「給我一張倉鼠戴著紅帽子的圖片」,它就會(huì)畫出一張倉鼠戴著紅色帽子的圖片,而它之前從來沒有預(yù)先做過這個(gè)配對(duì),所以它必須在給出圖片之前理解英語字符和圖片之間的關(guān)系。如果你問這些神經(jīng)網(wǎng)絡(luò)懷疑論者、神經(jīng)網(wǎng)絡(luò)否定論者:「你如何證明它理解了」,我想他們也會(huì)接受。如果你讓它畫一幅畫,它就畫出那副畫,那么它就是理解了。
Abbeel:最近谷歌的PaLM模型展示了它是如何對(duì)笑話的機(jī)制進(jìn)行有效解釋的。這似乎是對(duì)語言非常深刻的理解。
Hinton:不,它只是在重新排列訓(xùn)練中的單詞。我不同意「如果不是理解了笑話所講的是什么,它怎么可能會(huì)產(chǎn)生那些對(duì)笑話的解釋」這種想法,我仍然對(duì)此持開放態(tài)度,因?yàn)樗目蚣苁欠聪騻鞑サ?,它?huì)走向一種與我們完全不同的理解。很明顯,對(duì)抗性圖像告訴你可以通過它們的紋理來識(shí)別物體,在這個(gè)意義上你可能是正確的,因?yàn)樗鼤?huì)泛化到其他物體實(shí)例。
但這是一種與我們完全不同的方法,我喜歡以昆蟲和花朵為例。昆蟲可以看到紫外線。在我們看來相同的兩朵花,在昆蟲看來可能完全不同。而現(xiàn)在因?yàn)榛ǘ湓谖覀兛磥硎且粯拥模覀兙湍苷f是昆蟲搞錯(cuò)了嗎?這些花和昆蟲一起進(jìn)化,紫外線向昆蟲發(fā)出信號(hào),告訴它們這是哪朵花。很明顯,昆蟲是正確的,我們只是看不出區(qū)別而已,這是另一種思考對(duì)抗性例子的方式。所以問題是,在昆蟲的例子中,誰是對(duì)的?僅僅因?yàn)閮啥浠ㄔ谖覀兛磥硎且粯拥?,并不意味著它們真的是一樣的,在這種情況下,可能昆蟲關(guān)于兩朵花是非常不同的看法是正確的。
Abbeel:對(duì)于我們目前神經(jīng)網(wǎng)絡(luò)的圖像識(shí)別,有人可能會(huì)認(rèn)為,既然我們創(chuàng)造了它們,并希望它們?yōu)槲覀冏鲆恍┦虑?,那么我們真的不想只是承認(rèn)「好吧,它們是對(duì)的,我們是錯(cuò)的」。我的意思是,它們需要識(shí)別出車和行人。
Hinton:是的。我只是想告訴大家,這并不像你想的誰對(duì)誰錯(cuò)那么簡單。我那篇關(guān)于GLOM的論文重點(diǎn)之一就是嘗試建立更類人的感知系統(tǒng)。所以它們會(huì)更容易犯和我們一樣的錯(cuò)誤,而不會(huì)犯那些不同尋常的錯(cuò)誤。舉個(gè)例子,如果你有一輛自動(dòng)駕駛汽車,它犯了一個(gè)任何正常人類司機(jī)都會(huì)犯的錯(cuò)誤,這似乎比犯一個(gè)非常愚蠢的錯(cuò)誤更容易被接受。
7 玻爾茲曼機(jī)、知識(shí)蒸餾與t-SNE降維算法
Abbeel:據(jù)我所知,睡眠也是你在考慮的事情。你能詳細(xì)談一談嗎?
Hinton:如果你剝奪人們的睡眠,他們就會(huì)變得非常奇怪,比如如果你讓某人保持興奮狀態(tài)三天,他們就會(huì)開始產(chǎn)生幻覺。如果持續(xù)一個(gè)星期,他們就會(huì)瘋掉,永遠(yuǎn)不會(huì)再恢復(fù)過來。
問題是,為什么?睡眠的計(jì)算功能是什么?如果剝奪你的睡眠會(huì)讓你徹底崩潰,那么這其中可能就有一些非常重要的問題值得思考。目前的理論是,睡眠是用來鞏固記憶的,或者是用來把記憶從海馬體下載到大腦皮層,這有點(diǎn)奇怪,因?yàn)檫@就好像你在校園里要先經(jīng)過法庭一樣。很久以前,在80年代早期,Terrence Sejnowski和我有一個(gè)叫做玻爾茲曼機(jī)的理論(boltzmann machines ),它部分是基于Francis Crick 的一個(gè)見解,當(dāng)時(shí)他在思考Hopfield Nets, 他有一篇關(guān)于睡眠的論文,他的觀點(diǎn)是你可以給網(wǎng)絡(luò)以隨機(jī)的東西,并讓它不要滿足于隨機(jī)的東西。
論文地址:https://www.cs.toronto.edu/~hinton/absps/cogscibm.pdf
所以在一個(gè)Hopfield Net中,你給它一些你想記住的東西,它會(huì)改變權(quán)重。所以這個(gè)矢量的能量更低。如果你給它一個(gè)隨機(jī)的矢量,讓能量變高,效果會(huì)更好,這就引出了玻爾茲曼機(jī),我們就是通過它來實(shí)現(xiàn)的。如果你給它的不是隨機(jī)的東西,你就會(huì)得到由模型自身的馬爾可夫鏈所生成的東西。減少這種可能性,并增加數(shù)據(jù)的隨機(jī)性,這實(shí)際上是一種最大似然學(xué)習(xí)。
我們認(rèn)為這就是睡眠的意義。睡眠是學(xué)習(xí)的消極階段。在對(duì)比學(xué)習(xí)的過程中,對(duì)于來自同一圖像的兩個(gè)補(bǔ)丁,你嘗試讓它們有相似的表現(xiàn);對(duì)于兩個(gè)來自不同圖像的補(bǔ)丁,你嘗試讓它們有非常不同的表現(xiàn)。一旦它們不同,你要做的就不是讓它們變得更加不同,而是讓它們不再太過相似,這就是對(duì)比學(xué)習(xí)的原理?,F(xiàn)在有了玻爾茲曼機(jī)器,你就無法把積極和消極的例子分開。你必須把積極例子和消極例子交叉在一起,否則整個(gè)事情就會(huì)出錯(cuò)。我試過不讓它們交叉,要做很多積極例子,然后再做很多消極例子,這是很難的。
在對(duì)比學(xué)習(xí)中,你可以把積極階段和消極階段分開。所以你可以做很多正對(duì)的例子,然后做很多負(fù)對(duì)的例子。所以,如果你能把積極和消極的階段分開在不同的時(shí)間進(jìn)行,做一大堆積極的更新,然后再做一大堆消極的更新,這就會(huì)使得對(duì)比學(xué)習(xí)更加合理。即使是標(biāo)準(zhǔn)的對(duì)比學(xué)習(xí),你也可以做得比較好,你必須使用很多動(dòng)量之類的東西。所以我認(rèn)為,睡眠的功能很有可能是做遺忘或做消極例子,這就是為什么你會(huì)不記得你的夢(mèng)。當(dāng)你醒來的時(shí)候,你會(huì)記得那些在快權(quán)重中的內(nèi)容,因?yàn)榭鞕?quán)重是一個(gè)臨時(shí)存儲(chǔ)。但當(dāng)你醒來時(shí),你只記得你醒來時(shí)做的夢(mèng)的最后一分鐘,我認(rèn)為這是一個(gè)比其他任何睡眠理論都更可信的睡眠理論。如果把這一刻記憶去除,就能解釋為什么,整個(gè)系統(tǒng)就會(huì)崩潰。你會(huì)犯災(zāi)難性的錯(cuò)誤,開始產(chǎn)生幻覺,做各種奇怪的事情。
我再多說一點(diǎn)關(guān)于對(duì)消極例子的需求。如果你有一個(gè)神經(jīng)網(wǎng)絡(luò),它試圖優(yōu)化一些內(nèi)部目標(biāo)函數(shù),關(guān)于它的表現(xiàn)形式或者關(guān)于上下文預(yù)測和局部預(yù)測之間的一致性。它希望這種一致性成為真實(shí)數(shù)據(jù)的屬性,而神經(jīng)網(wǎng)絡(luò)內(nèi)部的問題是,你可能會(huì)在輸入中得到各種各樣的關(guān)聯(lián)。假設(shè)我是一個(gè)神經(jīng)元,我的輸入中有各種各樣的相關(guān)性,而這些相關(guān)性與真實(shí)的數(shù)據(jù)無關(guān),它們是由網(wǎng)絡(luò)的布線以及網(wǎng)絡(luò)中的方式帶來的。如果這兩個(gè)神經(jīng)元都在看同一個(gè)像素,它們就會(huì)有關(guān)聯(lián)。但這并沒有告訴你任何關(guān)于數(shù)據(jù)的信息,所以問題是,如何學(xué)會(huì)提取關(guān)于真實(shí)數(shù)據(jù)的結(jié)構(gòu)而不是關(guān)于網(wǎng)絡(luò)連接。要做到這一點(diǎn),方法就是給它提供積極例子,在積極例子而非消極例子中找到結(jié)構(gòu),因?yàn)橄麡O例子會(huì)經(jīng)過完全相同的線路。如果消極例子里沒有這個(gè)結(jié)構(gòu),但在積極例子里有,那么這個(gè)結(jié)構(gòu)就是關(guān)于消極例子和積極例子之間的區(qū)別,而不是你的連接方式。所以,盡管人們對(duì)這一點(diǎn)沒有太多思考,但如果你有強(qiáng)大的學(xué)習(xí)算法,你最好不要讓它們學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)自己的權(quán)重和連接。
Abbeel:你還提到了「學(xué)生模型打敗老師模型」的概念。這是什么意思?
Hinton:MNIST是一個(gè)標(biāo)準(zhǔn)的數(shù)字?jǐn)?shù)據(jù)庫,你可以錯(cuò)誤的標(biāo)簽來替換訓(xùn)練數(shù)據(jù),得到一個(gè)數(shù)據(jù)集,其中的標(biāo)簽有20%的正確率和80%的錯(cuò)誤率。問題是:你能從這個(gè)數(shù)據(jù)集中學(xué)習(xí)嗎?學(xué)習(xí)的效果如何?答案是,你可以學(xué)習(xí)到95%的正確率。
假設(shè)老師模型(teacher model)有80%的錯(cuò)誤率,而學(xué)生模型(student model)有95%的正確率,所以學(xué)生比老師要好很多。你是把這些訓(xùn)練例子一次打包,所以你不能對(duì)恰好有相似圖像的不同訓(xùn)練案例的錯(cuò)誤進(jìn)行平均化。如果你問,若你有損壞的案例,你需要多少訓(xùn)練案例,這很有意思,因?yàn)閳D像數(shù)據(jù)集很小。你是愿意有一百萬個(gè)標(biāo)簽錯(cuò)誤的圖像,還是愿意有一萬個(gè)標(biāo)簽準(zhǔn)確的圖像?我有一個(gè)假設(shè),重要的是標(biāo)簽和準(zhǔn)確性之間的互信息量。如果標(biāo)簽是正確地被損壞了,那么90%的情況下標(biāo)簽和準(zhǔn)確性之間沒有互信息;如果它們損壞80%,就只有少量的互信息。
我注意到你們最近做了一些sim-to-real的工作,你們用神經(jīng)網(wǎng)絡(luò)給真實(shí)的數(shù)據(jù)打上不完美的標(biāo)簽,然后學(xué)生從這些標(biāo)簽中學(xué)習(xí),而且學(xué)生比老師學(xué)得更好。人們很困惑,學(xué)生怎么可能比老師更好?但在神經(jīng)網(wǎng)絡(luò)中,這很容易實(shí)現(xiàn)。如果有足夠的訓(xùn)練數(shù)據(jù),即使老師很不靠譜,學(xué)生也會(huì)比老師更好。我?guī)啄昵昂蚆elody Y. Guan寫過一篇關(guān)于這個(gè)的論文,里面使用了一些醫(yī)學(xué)數(shù)據(jù)。論文的第一部分談到了這個(gè),我們的經(jīng)驗(yàn)法則是被分配的標(biāo)簽和準(zhǔn)確性之間的互信息才是重要的。
論文地址:https://www.cs.toronto.edu/~hinton/absps/WhoSaidWhat.pdf
Abbeel:關(guān)于你剛才提到的我們那項(xiàng)工作以及最近一些非常受歡迎的工作,通常老師會(huì)提供帶噪音的標(biāo)簽,但并不是所有的噪音標(biāo)簽都被使用。有一種觀點(diǎn)認(rèn)為,只需要看那些更有信心的老師。
Hinton:這是一個(gè)很好的方法,只看那些你有理由相信的東西可能會(huì)有所幫助。在MNIST中,Melody繪制了一個(gè)圖表,只要你有20%的標(biāo)簽是正確的,學(xué)生就會(huì)有95%的正確率。但當(dāng)下降到大約15%時(shí),你就會(huì)突然得到一個(gè)相變,此時(shí)你能做的只能是碰運(yùn)氣,因?yàn)闊o論如何學(xué)生一定會(huì)得到它,老師在說這些標(biāo)簽時(shí),學(xué)生在某種程度上要了解哪些例子是正確的,哪些例子是錯(cuò)誤的。一旦學(xué)生看到標(biāo)簽和輸入之間的關(guān)系,那么一個(gè)錯(cuò)誤標(biāo)簽的錯(cuò)誤性就很明顯。所以如果它被隨機(jī)地錯(cuò)誤啟用了也沒關(guān)系,但是有一個(gè)相變,在這個(gè)相變中你必須讓它足夠好,學(xué)生們能明白這個(gè)道理。這也解釋了為什么我們的學(xué)生都比我們聰明。
Abbeel:在神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)中,尤其是當(dāng)你建立模型的時(shí)候,你要理解它是什么,它在學(xué)習(xí)什么。通常人們?cè)噲D在學(xué)習(xí)過程中把所發(fā)生的事情可視化,你發(fā)明了最流行的可視化技術(shù)之一t-SNE(t-Distribution Stochastic Neighbor Embedding),它背后的故事是什么?
論文地址:http://www.cs.toronto.edu/~hinton/absps/tsne.pdf
Hinton:如果你有一些高維數(shù)據(jù),你試著畫一個(gè)二維或三維的地圖,你可以取前兩個(gè)主分量,只畫出前兩個(gè)主分量。但是主分量關(guān)心的是如何讓大距離正確。所以如果兩個(gè)東西非常不同,主分量會(huì)非常擔(dān)心它們?cè)诙S空間中差異很大。它根本不關(guān)心小的差異,因?yàn)樗窃诖蟮牟町惖钠椒缴喜僮鞯?,所以它不能很好地保持高維度相似性。但我們感興趣的往往恰恰相反,對(duì)于得到的數(shù)據(jù),我們感興趣的是什么和什么非常相似,而不關(guān)心大的距離是否有一點(diǎn)錯(cuò)誤,只要小的距離是正確的就行。我很久以前就有了這個(gè)想法,如果我們把距離轉(zhuǎn)化成成對(duì)的概率會(huì)怎么樣?
t-SNE有各種不同的版本,假設(shè)我們把它們變成概率對(duì),比如距離小的對(duì)概率高,距離大的對(duì)概率低。我們把距離轉(zhuǎn)換成概率,小的距離對(duì)應(yīng)大的概率,在一個(gè)數(shù)據(jù)點(diǎn)周圍放一個(gè)高斯分布,然后在這個(gè)高斯分布下計(jì)算其他數(shù)據(jù)點(diǎn)的密度,這是一個(gè)非標(biāo)準(zhǔn)化的概率,然后將其歸一化。接著把這些點(diǎn)放在二維空間中以保持這些概率。所以它不關(guān)心兩點(diǎn)之間是否相距很遠(yuǎn)。它們的成對(duì)概率很低,它不關(guān)心兩個(gè)點(diǎn)的相對(duì)位置。這就產(chǎn)生了非常漂亮的地圖,這被稱為隨機(jī)鄰域嵌入。我們想到放入一個(gè)高斯分布,然后根據(jù)高斯分布下的密度隨機(jī)選擇一個(gè)鄰居,它有非常簡單的導(dǎo)數(shù)。
我們得到的地圖傾向于把東西擠在一起,這是在把高維數(shù)據(jù)轉(zhuǎn)換成低維數(shù)據(jù)時(shí)存在一個(gè)的基本問題。這是由高維空間和低維空間的本質(zhì)帶來的。在高維空間中,一個(gè)數(shù)據(jù)點(diǎn)可以接近很多其他點(diǎn),而在一個(gè)低維空間中,這些點(diǎn)之間不會(huì)太近。如果它們都很接近這個(gè)數(shù)據(jù)點(diǎn),它們之間就必須很接近。所以你在從高維到低維的嵌入上會(huì)遇到問題。當(dāng)我在做t-SNE的時(shí)候,我有一個(gè)想法,我用概率作為一種「中間貨幣」來做一個(gè)混合模型。
我們成功地實(shí)施了這個(gè)想法,但我們始終沒有把它做得很好。我很失望人們沒能利用這個(gè)想法,然后我又做了一個(gè)更簡單的版本,它是高斯分布和均勻分布的混合,效果更好。
其中的想法是:在一張地圖上,所有的對(duì)都是等概率的,這就提供了一種經(jīng)過大距離的背景概率,即一個(gè)小的背景概率;在另一張地圖中,你貢獻(xiàn)的概率與你在這張地圖中的平方距離成比例,但這意味著在這張地圖中,如果它們?cè)敢猓鼈兛梢韵喔艉苓h(yuǎn),因?yàn)樗鼈冃枰恍└怕实倪@個(gè)事實(shí)被均勻化處理了。實(shí)際上這個(gè)版本是使用高斯分布混合的一個(gè)特例,是一個(gè)非常廣的高斯分布,它是均勻的。如果我們用一整個(gè)高斯函數(shù)層級(jí)會(huì)如何呢?很多高斯函數(shù)具有不同寬度,稱為t分布,這帶來了t-SNE。t-SNE有一個(gè)很好的屬性,它可以提供事物的多尺度信息,一旦距離變大,你會(huì)從中得到許多結(jié)構(gòu)化的不同層次,包括整體結(jié)構(gòu)和精細(xì)結(jié)構(gòu)。
目標(biāo)函數(shù)被用在所有這些工作中,這是一種相對(duì)密度下的高斯,來自我和Alberto Pacinero早些時(shí)候所做的工作,當(dāng)時(shí)發(fā)表過程很難,我收到過一篇被會(huì)議拒絕的評(píng)論:「Hinton已經(jīng)為這個(gè)想法工作了7年,但沒有人感興趣」。我認(rèn)為這些評(píng)論其實(shí)告訴了我,我正在做非常有創(chuàng)新性的東西,它實(shí)際上包含了一個(gè)函數(shù)叫做NCE,它使用了對(duì)比方法,t-SNE實(shí)際上是這個(gè)函數(shù)的一個(gè)版本。但t-SNE是用來做地圖的,后來我嘗試做一個(gè)混合版本,它最初一直行不通,直到最終得到一個(gè)巧合,就是我想要使用的t分布。