- 相關(guān)推薦
楊銘深度學(xué)習(xí)發(fā)展的新趨勢演講稿
地平線機器人聯(lián)合創(chuàng)始人 地平線機器人技術(shù)軟件副總裁
大家好,我是楊銘。非常榮幸有這樣的機會跟大家分享我們對深度學(xué)習(xí)研究發(fā)展新趨勢的一些思考和總結(jié),我們將這些新發(fā)展的首字母縮寫成一個單詞MARS。這是和我的同事黃暢博士共同的一些討論。
簡單介紹一下,我是去年夏天加入地平線的,負(fù)責(zé)軟件工程。在此之前我在Facebook人工智能實驗室負(fù)責(zé)人臉識別算法研究和后端系統(tǒng)開發(fā),也曾在NEC美國實驗室和徐偉一起工作,學(xué)到很多東西。
在談?wù)撋疃葘W(xué)習(xí)的新趨勢之前,我們應(yīng)該首先明確一下深度學(xué)習(xí)的定義和它現(xiàn)在的發(fā)展?fàn)顟B(tài)。非常幸運,學(xué)術(shù)圈對于深度學(xué)習(xí)的定義有比較清楚的共識。深度學(xué)習(xí)是指從原始的數(shù)據(jù)通過不斷地學(xué)習(xí)、不斷地抽象,得到這些數(shù)據(jù)的表達或描述。所以簡單地說,深度學(xué)習(xí)是從原始數(shù)據(jù)(raw data)學(xué)習(xí)其表達(learning representations)。這些原始數(shù)據(jù)可能是圖像數(shù)據(jù),可能是語音,也可能是文字;這種表達就是一些簡潔的數(shù)字化的表達。深度學(xué)習(xí)的關(guān)鍵就是怎么去學(xué)這個表達。這個表達是通過多層的非線性的復(fù)雜的結(jié)構(gòu)學(xué)習(xí)的,而這個結(jié)構(gòu)可能是神經(jīng)網(wǎng)絡(luò),也可能其他的結(jié)構(gòu)。關(guān)鍵是希望通過端到端的訓(xùn)練,從數(shù)據(jù)直接學(xué)習(xí)到到表達。
如果談到深度學(xué)習(xí)的起源還是要回到1957年,從一個非常簡單的結(jié)構(gòu)單元——“感知機(perception)”開始。一些輸入信號被權(quán)重加權(quán)后,和一個閾值比較得到輸出。為什么說這是深度學(xué)習(xí)的起源?因為這些權(quán)重不是由規(guī)則預(yù)先設(shè)計的,而是訓(xùn)練學(xué)習(xí)得到的。最開始的“感知機”是硬件設(shè)計,這些連接就是物理連線,這些權(quán)重可能是通過調(diào)節(jié)電阻實現(xiàn)的。當(dāng)時媒體就預(yù)測,這是一個智能計算機的雛形,能很快學(xué)會走路、說話、看圖、寫作,甚至自我復(fù)制或者有自我意識。那么過了60年,目前進展到看圖和寫作中間的階段,希望至少再需要至60年能學(xué)會自我復(fù)制。
深度學(xué)習(xí)從出現(xiàn)之后,大體上經(jīng)過了兩個落起。一開始大家非常樂觀,但很快發(fā)現(xiàn)有一些非常簡單的問題它解決不了。從2006年開始,在Hinton/LeCun/Bengio/Ng等幾位教授的推動下,深度學(xué)習(xí)得到了一種爆發(fā)式的發(fā)展,在圖像識別、語音識別、語義理解,和廣告推薦等問題上,有一些突破性的提高。最新的進展就是今年3月的AlphaGo圍棋比賽,以一種很直觀的方式讓社會大眾感受到了深度學(xué)習(xí)進展。我們希望再過五年,深度學(xué)習(xí)的技術(shù)能夠真正用到千家萬戶的日常生活中去,讓每個設(shè)備都可以運行深度學(xué)習(xí)的模塊。
在這幾次起落中,深度學(xué)習(xí)基本的學(xué)習(xí)方式和網(wǎng)絡(luò)結(jié)構(gòu)其實沒有本質(zhì)性的變化,還是一種多級的人工神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)。像這幅圖中看到的,輸入層是一些原始數(shù)據(jù),并且有標(biāo)注。無論希望學(xué)到什么內(nèi)容,只要有個評價誤差的函數(shù)(cost function),評價神經(jīng)網(wǎng)絡(luò)的誤差是多少,那么有了這個輸入輸出之后,深度學(xué)習(xí)或者深度神經(jīng)網(wǎng)絡(luò)就可以作為一個黑盒子學(xué)習(xí)這個目標(biāo)。人工神經(jīng)網(wǎng)絡(luò)從結(jié)構(gòu)上講就是多層的神經(jīng)元和它們之間的連接,組合成很多層。開始時可能有一個輸入和一個目標(biāo),比如你希望從人臉圖像識別出這個人是誰。這時候神經(jīng)網(wǎng)絡(luò)肯定識別不出來,因為它從來沒有見過。我們會給神經(jīng)網(wǎng)絡(luò)隨機設(shè)一些值,讓它預(yù)測這個識別結(jié)果,開始最后輸出層幾乎肯定會是一個錯誤的識別結(jié)果。這也沒有關(guān)系,我們把這個輸出層的誤差慢慢地反向傳播回去,一點點的修改這些神經(jīng)元的內(nèi)部參數(shù)和他們之間的連接。通過這種一點點地修改,慢慢通過大量的數(shù)據(jù),這個網(wǎng)絡(luò)就學(xué)會了一個非常復(fù)雜的函數(shù)功能。從八十年代到目前,這30年間,這個基本的結(jié)構(gòu)和學(xué)習(xí)算法是沒有變化。
從2006年開始,深度學(xué)習(xí)有爆發(fā)式增長,歸結(jié)于下面幾個理由。首先是利用了海量的數(shù)據(jù),這些大數(shù)據(jù)的使用使得原來這種深度神經(jīng)網(wǎng)絡(luò)一些問題,比如對噪聲數(shù)據(jù)敏感,容易在一個小的數(shù)據(jù)集性能很好,但無法泛化到大的數(shù)據(jù)集,這些問題都不再是問題了。能夠使用這些大數(shù)據(jù)學(xué)習(xí),需要很高的并行運算的能力。當(dāng)然,也有算法上的改進,比如dropout、batch normalization、residual networks等,能避免過擬合梯度消失這些問題。但本質(zhì)上這次深度學(xué)習(xí)的爆發(fā)發(fā)展還是通過大數(shù)據(jù)和計算能力實現(xiàn)的。之前說神經(jīng)網(wǎng)絡(luò)本身像黑盒子,結(jié)構(gòu)設(shè)定沒有很好的指導(dǎo)意見,這個目前還是這個現(xiàn)狀。
深度學(xué)習(xí)為什么這幾年能得到這么大的關(guān)注?關(guān)鍵原因是性能準(zhǔn)確度是隨著數(shù)據(jù)的增長而增加的。其他的機器學(xué)習(xí)的方法可能隨著數(shù)據(jù)的增加,性能提高到某一個點就飽和了。但目前為止對于深度學(xué)習(xí)我們還沒有觀察到這點,這可能是它最值得關(guān)注的一點。目前深度學(xué)習(xí)也取得很多成功,比如如何做好圖像分類的問題。對于一個1000類圖像分類測試,經(jīng)過大概不到五年的時間,錯誤率從25%降到3.5%的水平,已經(jīng)比人類的識別準(zhǔn)確率還要高。這就是我們目前深度學(xué)習(xí)或者深度神經(jīng)網(wǎng)絡(luò)取得的主要的成功點,即學(xué)會了如何識別、如何分類。
回到我們的正題,目前深度學(xué)習(xí)研究的新趨勢?我們總結(jié)了四個方向。首先是學(xué)習(xí)如何記憶(memory networks);第二是學(xué)習(xí)如何關(guān)注與取舍(attention model),把注意力集中到需要關(guān)心的細節(jié)上;第三個是增強學(xué)習(xí)(reinforcement learning),學(xué)習(xí)如何控制主動行動;第四個整體學(xué)習(xí)任務(wù)結(jié)構(gòu)上的新趨勢,就是序列化(Sequentialization)。我們?nèi)∈鬃帜福s寫成MARS。
第一個是學(xué)習(xí)然如何記憶。常規(guī)的前向神經(jīng)網(wǎng)絡(luò)有一個特點:你每次輸入和輸出是確定的關(guān)系,對于一副圖像,無論何時輸入進神經(jīng)網(wǎng)絡(luò),我們一層一層計算后就會得到一個確定的結(jié)果,這是跟上下文不相關(guān)的。我們?nèi)绾伟延洃浀哪芰σ氲缴窠?jīng)網(wǎng)絡(luò)中去?最簡單的一個思路是,在神經(jīng)網(wǎng)絡(luò)中加入一些狀態(tài),讓它能記住一點事情。它的輸出不僅取決于它的輸入,也取決于它本身的狀態(tài)。這是一個最基本的遞歸神經(jīng)網(wǎng)絡(luò)的思路。輸出取決于本身的狀態(tài),我們也可以將其展開成一個時序系列的結(jié)構(gòu),就是說當(dāng)前狀態(tài)的輸入不僅包括現(xiàn)在輸入,也包含上一時刻的輸出,這樣就會構(gòu)成一個非常深的網(wǎng)絡(luò)。這種辦法可以讓神經(jīng)網(wǎng)絡(luò)記住一些之前的狀態(tài)。那么輸出就取決于在這些狀態(tài)和現(xiàn)在的輸入的結(jié)合。但是這個方法有一個局限:這些記憶不會很長久,很快就會被后面的數(shù)據(jù)沖掉了。之后的深度學(xué)習(xí)的發(fā)展就是長時短時記憶,提出了一個記憶單元(memory cell)的概念,這個單元中加入了三個個門,一個輸入門,一個輸出門,一個遺忘門。輸入門可以控制你的輸入是否影響你的記憶當(dāng)中的內(nèi)容。輸出門是影響你的記憶是否被輸出出來影響將來。遺忘門是來看你的記憶是否自我更新保持下去。這種方式使你的記憶得到靈活的保持,而控制記憶如何保持的這些門本身是通過學(xué)習(xí)得到的,通過不同的任務(wù)學(xué)習(xí)如何去控制這些門。這個長短時記憶單元是1999年提出的,近幾年又有一些新的改進如Gated Recurrent Unit,簡化成只有兩個門,一個是更新門,一個重置們,控制記憶內(nèi)容是否能繼續(xù)保存下去。
這些方法其實可以把記憶保存得更長一點,但實際上還是很有限。更新的一些研究方法提出了一種神經(jīng)圖靈機(Neural Turning Machine)的概念:有一個永久的的內(nèi)存模塊,有一個控制模塊去控制如何根據(jù)輸入去讀取存儲這些內(nèi)存,并轉(zhuǎn)換成輸出。這個控制模塊,可以用神經(jīng)網(wǎng)絡(luò)實現(xiàn)。舉個例子,比如做排序的工作,有一些亂序的數(shù)字,希望把它排成順序的序列。我們之前需要設(shè)計不同的排序算法,而這個神經(jīng)圖靈機的思路是我們給定這些輸入輸出,讓這個神經(jīng)網(wǎng)絡(luò)自己去學(xué)習(xí)如何把這些數(shù)字通過儲存和取出來排序。某種意義上,讓神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)如何實現(xiàn)編程實現(xiàn)任務(wù)。這也是一個類似的工作,記憶網(wǎng)絡(luò)(Memory Network),學(xué)習(xí)去管理這種長時間的記憶,在應(yīng)用于問答系統(tǒng)后,可以學(xué)到一些推理的能力。
第二個方向是把注意力模型(Attention Model),動態(tài)的將注意力集中到某些細節(jié),提高識別性能。比如,看圖說話圖像理解,你可以根據(jù)一幅圖生成一句話,很可能是非常宏觀的。如果我們能夠把注意力聚焦在這個機制的從引入到識別的過程中,根據(jù)目前的識別結(jié)果,動態(tài)一步一步調(diào)整聚焦到圖像的細節(jié),那么可以生成一些更合理或者更精細的表達,比如在圖像中,關(guān)注一個飛碟,我們可以調(diào)整關(guān)注區(qū)域在圖像中把飛碟的找出來,提取它的特征進行識別,得到圖像的更準(zhǔn)確的文字描述。
第三個就是增強學(xué)習(xí)(Reinforcement Learning)。在增強學(xué)習(xí)的框架中有兩個部分,一部分是自主控制的單元(agent),一部分是環(huán)境(environment)。自主控制單元是通過選擇不同的策略或者行為,希望能夠最大化自己的長期預(yù)期收益,得到獎勵;而環(huán)境將接收策略行為,修改狀態(tài),反饋出獎勵。在這個增強學(xué)習(xí)的框架中有兩個部分,一個部分是如何選擇這些行為(policy function),另外一部分是如何評價評估自己可能取得的這些收益(value function)。這個增強學(xué)習(xí)框架本身已經(jīng)存在很多年了,和深度學(xué)習(xí)的結(jié)合就是指如何選擇策略行為的函數(shù),以及如何評估預(yù)期獎勵的函數(shù),由深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)得到,例如AlphaGo圍棋中的走棋網(wǎng)絡(luò)(policy network)和評價網(wǎng)絡(luò)(value networks)。
總而言之,從研究角度,深度學(xué)習(xí)正從有監(jiān)督的學(xué)習(xí)慢慢向這種互動式的學(xué)習(xí)發(fā)展;網(wǎng)絡(luò)結(jié)構(gòu)由先向網(wǎng)絡(luò)向有遞歸方式、考慮記憶、考慮時序的網(wǎng)絡(luò)發(fā);同時內(nèi)容從靜態(tài)的輸入到動態(tài)的輸入,在預(yù)測方式方面是從同時的預(yù)測慢慢變成一步一步序列化的預(yù)測。從2014年和2015年的發(fā)展情況來看,深度學(xué)習(xí)現(xiàn)在的非常簡化的思路是,如果有個比較新的問題,要做的事情首先是把問題描述好,保證輸入到最終的目的這個過程每步是可微分的,然后把其中最難的部分插入深度神經(jīng)網(wǎng)絡(luò),實現(xiàn)端對端的學(xué)習(xí)。之前提到的幾個新趨勢,大體上都是這種思路。
無論是社會大眾還是媒體,或者是研究人員自己,我們可能對深度學(xué)習(xí)還有一些不同角度的認(rèn)識。我個人認(rèn)為這是計算機科學(xué)領(lǐng)域非常純粹的計算問題,探索如何把這些數(shù)據(jù)本質(zhì)的內(nèi)容和結(jié)構(gòu)抽象理解得更好。希望今天提到的一些深度學(xué)習(xí)的新趨勢,對大家有所幫助和借鑒。謝謝大家!
【楊銘深度學(xué)習(xí)發(fā)展的新趨勢演講稿】相關(guān)文章:
最新酒店業(yè)發(fā)展新趨勢教案06-16
陋室銘的文章學(xué)習(xí)06-16
《陋室銘》學(xué)習(xí)要點06-24
學(xué)習(xí)楊善洲事跡體會03-10
學(xué)習(xí)楊善洲精神作文06-06
陋室銘的銘06-10
《學(xué)歷案與深度學(xué)習(xí)》學(xué)習(xí)心得體會08-05
《鐵笛道人自傳》《楊廉夫維禎墓志銘》的對比閱讀及答案07-02
數(shù)學(xué)深度學(xué)習(xí)培訓(xùn)心得(通用26篇)07-21
陋室銘中銘的翻譯05-06