我思考的這個問題,源于不久前我收到的一封來自某大公司產(chǎn)品經(jīng)理的郵件。
我喜歡將私人通訊郵件公開于眾,所以我將郵件內(nèi)容摘在下面:
來自:M.
你好 Ali, ...
你如何訓(xùn)練團隊里的年輕成員,使得他們有更好的直覺和預(yù)判?我團隊里的工程師經(jīng)常從其他科研員那「借鑒」超參數(shù)的值,但他們太擔(dān)心要自己去調(diào)整參數(shù)了。...
我對著這封郵件思考了數(shù)日,卻沒有辦法找到一個有條理的答案。
如果說應(yīng)該有正確答案的話,我想回復(fù)說:也許她的工程師應(yīng)該要有這種擔(dān)心。
如果你是個工程師,你拿到了這個神經(jīng)網(wǎng)絡(luò),然后你被要求去改進這個網(wǎng)絡(luò)在某個數(shù)據(jù)集上的表現(xiàn)。你也許會假設(shè)這每層都是有它自己的作用和功能,但在深度學(xué)習(xí)領(lǐng)域,我們目前還沒有統(tǒng)的語言和詞匯去描述這些功效。我們教授深度學(xué)習(xí)的方法和我們教授其他科學(xué)學(xué)科的方法很不同。
幾年前我迷上了光學(xué)。在光學(xué)領(lǐng)域,你會堆疊好幾層不同的組件以處理輸?shù)墓庠础@缦聢D,就是相機的鏡頭:
要設(shè)計這樣的系統(tǒng),你從最簡單的組件開始堆疊,這些組件往往以知名的發(fā)明者命名。然后通過仿真,你可 以判斷你的設(shè)計是否符合你的要求,然后再添加不同的組件去修正先前設(shè)計的缺陷。
緊接著你會各種數(shù)學(xué)優(yōu)化過程去調(diào)整這些組件的參數(shù),例如鏡面的形狀、位置和傾斜角度等等,去最大程度實現(xiàn)你的設(shè)計目標(biāo)。你就重復(fù)如此仿真、修改、調(diào)優(yōu)的過程。
這很像我們設(shè)計深度網(wǎng)絡(luò)的過程。
上圖里所有的 36 個元素都是故意加?這個堆疊的系統(tǒng),以用于修正某項具體的偏差的。這樣的設(shè)計需要非常精確的解釋模型去描述什么樣的元素能夠?qū)ν高^它的光有什么樣的效應(yīng)。這個模型往往是關(guān)于這個元素的作用的,例如說折射、反射、衍射、散射和波前校正。
?們不害怕這樣的設(shè)計過程。每年,美國培養(yǎng)的許多?程師都能設(shè)計出有的鏡頭,他們并不為這樣的作感到擔(dān)心害怕。
這并不是因為光學(xué)很容易,而是因為我們對光學(xué)的模型了然在心。
現(xiàn)代光學(xué)是通過抽象出不同層級的知識內(nèi)容去教授的。
在最頂級,也是最容易的層級,是幾何光學(xué)。幾何光學(xué)是對波光學(xué)的抽象,光射線于于表達簡單的矢量波光 學(xué)的波前矢量。而波光學(xué)?是對麥克斯韋方程的進?步簡化。麥克斯韋方程 由能由量子力學(xué)推導(dǎo)而出,量子力學(xué)則超出了我的理解范圍。
每一個層級都是通過作出?些簡化的假定由緊鄰的下?個層級推導(dǎo)?出,所以每?個層級能夠比上一個層級解釋更為復(fù)雜的現(xiàn)象。
我花了不少時間在頂四層抽象里設(shè)計系統(tǒng)。
這就是當(dāng)今我們教授光學(xué)的方法。但相關(guān)理論并非總是如此按層級來組織。在百年前,這些理論還是在?個 相互矛盾的狀態(tài)中共存。實踐家們只能依賴于近乎道聽途說的光學(xué)理論。
但這并沒有阻止伽利略打造性能不錯的望遠鏡,而且是在牛頓形式化幾何光學(xué)前近?個世紀的時間點上。因 為伽利略對于如何造出能夠放大數(shù)?倍的望遠鏡有足夠好的解釋模型。但他對光學(xué)的理解,卻不足以讓他的望遠鏡能夠修正色差或者獲得廣視角。
在這些光學(xué)理論被抽象總結(jié)出來之前,每?項理論都需要從光的最基本概念出發(fā)。這就牽涉到要作出?套涵蓋許多也許不切實際的假設(shè)。牛頓的幾何光學(xué)把光假定作?束束可以被吸引、排斥的固體粒?。惠更斯則? 由「以太」作為介質(zhì)的縱波去描述光,也就是說用類似聲波的方式去構(gòu)建光。麥克斯韋也假設(shè)光經(jīng)由以太傳播。你從麥克斯韋方程的系數(shù)的名字也能窺得這種思路的??。
愚蠢的模型,確實。但它們可量化且有預(yù)測的能力。
這些假設(shè),我們今天聽來也許覺得很愚蠢,但它們可量化而且有預(yù)測的能力。你可以隨意代入數(shù)字于其中并得到精準的量化預(yù)測。這對于工程師而言極其有用。
尋找用于描述每層深度學(xué)習(xí)網(wǎng)絡(luò)作用的模塊化語言
如果我們能夠像討論光纖穿越每?層鏡頭元素的作用那樣去討論神經(jīng)網(wǎng)絡(luò)每?層的作用,那么設(shè)計神經(jīng)網(wǎng)絡(luò)將會變得更容易。
我們說卷積層就像在輸?上滑動相應(yīng)濾波器,然后說池化是處理了對應(yīng)的非線性。但這只是非常低層次的描述,就像用麥克斯韋方程去解釋鏡頭的作用。
也許我們應(yīng)該依賴于更高級抽象描述,具體表達某個量被神經(jīng)網(wǎng)絡(luò)的層級如何改變了,好比我們用鏡頭的具 體作用去解釋它如何彎曲光線那樣。
如果這種抽象也能夠量化,使得你只需要代?具體數(shù)值到某個公式里,它就能告訴你?個大概的量化分析,這樣你就能更好地設(shè)計你的網(wǎng)絡(luò)了。
我們離這樣的語言還很遠。我們先從簡單點的開始
上?也許只是我被自己的幻想帶跑了。
我們從簡單點的開始。我們對深度學(xué)習(xí)的運作方式有很多解釋模型。下?我會羅列?系列值得解釋的現(xiàn)象,然后我們看看?些現(xiàn)有的模型對這些現(xiàn)象解釋的能力有多強。
在開始之前,我得承認這種努力也許最后是徒勞的。光學(xué)花了 300 年在打磨自己的模型之上,而我只花了? 個周六下午,所以這只能算是博客上的?些個?觀點和想法。
現(xiàn)象:隨機梯度下降 (SGD) 的隨機初始化足夠好了。但細微的數(shù)字錯誤或者步長會使 SGD 失效。
很多?在實踐中發(fā)現(xiàn),對于如何累積梯度的細微調(diào)整,可以導(dǎo)致對整個測試集表現(xiàn)的巨大變化。例如說你只用GPU而不是 CPU 去訓(xùn)練,結(jié)果可能會截然不同。
現(xiàn)象:淺的局部最優(yōu)值意味著比深的局部最優(yōu)值更好的泛化能力。
這種說法很時髦。有些?認為它是真的。有些?則用實際數(shù)據(jù)反駁。另外也有?給出了這個現(xiàn)象的變種 。眾說紛紜,爭議目前不斷。
這個現(xiàn)象也許有爭議性,但我還是先放在這里。
現(xiàn)象:批標(biāo)準化層 (Batch Norm) 可以給 SGD 提速。
這個基本無爭議,我只能提供?個小例外。
現(xiàn)象:即使有很多局部最優(yōu)和鞍點,SGD 也表現(xiàn)卓越。
這個說法也包含了幾個小的點。經(jīng)常有人聲稱深度學(xué)習(xí)的損失表面充斥著鞍點和局部最優(yōu)。也有不同的 說法,要不就認為梯度下降可以遍歷這些區(qū)域,要不就認為梯度下降可以不遍歷這些區(qū)域,但都能給出泛化能力不錯的答案。也有說損失表面其實也沒那么不堪。
現(xiàn)象:Dropout 勝于其他隨機化策略。
我不知道如何正確分類類似 Dropout 的做法,所以我就稱之為「隨機化策略」了。
現(xiàn)象:深度網(wǎng)絡(luò)能夠記憶隨機標(biāo)簽,但它們能泛化。
證據(jù)很直白,我的朋友們親自見證并主張這種說法。
對這些現(xiàn)象的解釋
對應(yīng)上面列舉的這些現(xiàn)象,我在下面列舉我覺得最能解釋這些現(xiàn)象的理論,這些理論均來自我上面引用的論文。
先別激動,原因如下:
1. 我們嘗試解釋的這些現(xiàn)象部分有爭議。
2. 我沒辦法把這些解釋按照抽象層級組織好。光學(xué)好教學(xué)的特性也沒辦法在這?重現(xiàn)。
3. 我懷疑部分我引用的理論不正確。
我想說的是
有很多人正在加?這個領(lǐng)域,然而我們能夠給他們傳授的不過是近乎道聽途說的經(jīng)驗和?些預(yù)訓(xùn)練好的深度網(wǎng)絡(luò),然后就叫他們?nèi)ダ^續(xù)創(chuàng)新。我們甚?都不能認同我們要解釋的這些現(xiàn)象。所以我認為我們離能夠在高中教授這些內(nèi)容還有很遠的距離。
那我們?nèi)绾尾拍茈x這?步近點?
最好的不過是我們能夠就每?層深度網(wǎng)絡(luò)的功能作用,按照不同層級的抽象,給出對應(yīng)的解釋模型。例如 說,神經(jīng)網(wǎng)絡(luò)里的折射、散射和衍射會是怎么樣的?也許你早就用具體的功能去思考神經(jīng)網(wǎng)絡(luò),但我們就這些概念還沒有統(tǒng)?的語言。
我們應(yīng)該把?系列確認的現(xiàn)象組織起來,然后才來進行理論上的解釋。例如說神經(jīng)網(wǎng)絡(luò)里的牛頓環(huán)、磁光克 爾效應(yīng)和法拉第現(xiàn)象會是怎樣的?
我和一小批同事已經(jīng)開始了?項重大的實踐工作,嘗試去分類構(gòu)建適合我們領(lǐng)域的解釋模型,去形式化它 們,并且用實驗去驗證它們。這項工作是巨大的,我認為第?步應(yīng)該是構(gòu)建?個分層級的深度學(xué)習(xí)解釋模 型,以用于高中的教學(xué)。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4809瀏覽量
102827 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5555瀏覽量
122498
原文標(biāo)題:解釋深度學(xué)習(xí)的新角度,來自光學(xué)的啟發(fā)
文章出處:【微信號:gh_ecbcc3b6eabf,微信公眾號:人工智能和機器人研究院】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
評論