作者注記
我是2017年11月開(kāi)始接觸深度學(xué)習(xí),至今剛好五年。2019年10月入職上海交大,至今三年,剛好第一階段考核。2022年8月19號(hào),我在第一屆中國(guó)機(jī)器學(xué)習(xí)與科學(xué)應(yīng)用大會(huì)做大會(huì)報(bào)告,總結(jié)這五年的研究以及展望未來(lái)的方向。本文是該報(bào)告里關(guān)于理論方面的研究總結(jié)(做了一點(diǎn)擴(kuò)展)。
我理解的深度學(xué)習(xí)
我原本是研究計(jì)算神經(jīng)科學(xué)的,研究的內(nèi)容,宏觀來(lái)講是從數(shù)學(xué)的角度理解大腦工作的原理,具體來(lái)說(shuō),我的研究是處理高維的神經(jīng)元網(wǎng)絡(luò)產(chǎn)生的脈沖數(shù)據(jù),嘗試去理解這些信號(hào)是如何處理輸入的信號(hào)。但大腦過(guò)于復(fù)雜,維度也過(guò)于高,我們普通大腦有一千億左右個(gè)神經(jīng)元,每個(gè)神經(jīng)元還和成千上萬(wàn)個(gè)其它神經(jīng)元有信號(hào)傳遞,我對(duì)處理這類數(shù)據(jù)并沒(méi)有太多信心,那階段也剛好讀到一篇文章,大意是把現(xiàn)階段計(jì)算神經(jīng)科學(xué)的研究方法用來(lái)研究計(jì)算機(jī)的芯片,結(jié)論是這些方法并不能幫助我們理解芯片的工作原理。另一個(gè)讓我覺(jué)得非常難受的地方是我們不僅對(duì)大腦了解很少,還非常難以獲得大腦的數(shù)據(jù)。于是,我們當(dāng)時(shí)思考,能否尋找一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)模型,能夠?qū)崿F(xiàn)復(fù)雜的功能,同時(shí)我們對(duì)它的理解也很少的例子,我們通過(guò)研究它來(lái)啟發(fā)我們對(duì)大腦的研究。
當(dāng)時(shí)是2017年底,深度學(xué)習(xí)已經(jīng)非常流行,特別是我的同學(xué)已經(jīng)接觸深度學(xué)習(xí)一段時(shí)間,所以我們迅速了解到深度學(xué)習(xí)。其結(jié)構(gòu)和訓(xùn)練看起來(lái)足夠簡(jiǎn)單,但能力不凡,而且與其相關(guān)的理論正處在萌芽階段。因此,我進(jìn)入深度學(xué)習(xí)的第一個(gè)想法是把它當(dāng)作研究大腦的簡(jiǎn)單模型。?顯然,在這種“類腦研究”的定位下,我們關(guān)心的是深度學(xué)習(xí)的基礎(chǔ)研究。這里,我想?yún)^(qū)分深度學(xué)習(xí)的“理論”和“基礎(chǔ)研究”。我認(rèn)為“理論”給人一種全是公式和證明的感覺(jué)。而“基礎(chǔ)研究”的范圍聽(tīng)起來(lái)會(huì)更廣闊一些,它不僅可以包括“理論”,還可以是一些重要的現(xiàn)象,直觀的解釋,定律,經(jīng)驗(yàn)原則等等。這種區(qū)分只是一種感性的區(qū)分,實(shí)際上,我們?cè)谡務(wù)撍鼈兊臅r(shí)候,并不真正做這么細(xì)致的區(qū)分。盡管是以深度學(xué)習(xí)為模型,來(lái)研究大腦為何會(huì)有如此復(fù)雜的學(xué)習(xí)能力,但大腦和深度學(xué)習(xí)還是有明顯的差異。而我從知識(shí)儲(chǔ)備、能力和時(shí)間上來(lái)看,都很難同時(shí)在這兩個(gè)目前看起來(lái)距離仍然很大的領(lǐng)域同時(shí)深入。
于是我選擇全面轉(zhuǎn)向深度學(xué)習(xí),研究的問(wèn)題是,深度學(xué)習(xí)作為一個(gè)算法,它有什么樣的特征?!皼](méi)有免費(fèi)的午餐”的定理告訴我們,當(dāng)考慮所有可能的數(shù)據(jù)集的平均性能時(shí),所有算法都是等價(jià)的,也就是沒(méi)有哪一種算法是萬(wàn)能的。我們需要厘清深度學(xué)習(xí)這類算法適用于什么數(shù)據(jù),以及不適用于什么數(shù)據(jù)。?事實(shí)上,深度學(xué)習(xí)理論并不是處于萌芽階段,從上世紀(jì)中葉,它剛開(kāi)始發(fā)展的時(shí)候,相關(guān)的理論就已經(jīng)開(kāi)始了,也有過(guò)一些重要的結(jié)果,但整體上來(lái)說(shuō),它仍然處于初級(jí)階段。對(duì)我而言,這更是一個(gè)非常困難的問(wèn)題。于是,我轉(zhuǎn)而把深度學(xué)習(xí)當(dāng)作一種“玩具”,通過(guò)調(diào)整各類超參數(shù)和不同的任務(wù),觀察它會(huì)產(chǎn)生哪些“自然現(xiàn)象”。設(shè)定的目標(biāo)也不再高大上,而是有趣即可,發(fā)現(xiàn)有趣的現(xiàn)象,然后解釋它,也許還可以用它來(lái)指導(dǎo)實(shí)際應(yīng)用。在上面這些認(rèn)識(shí)下,我們從深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練中的一些有趣的現(xiàn)象開(kāi)始。于我個(gè)人,我是從頭開(kāi)始學(xué)習(xí)寫python和tensorflow,更具體是,從網(wǎng)上找了幾份代碼,邊抄邊理解。
神經(jīng)網(wǎng)絡(luò)真的很復(fù)雜嗎?
在傳統(tǒng)的學(xué)習(xí)理論中,模型的參數(shù)量是指示模型復(fù)雜程度很重要的一個(gè)指標(biāo)。當(dāng)模型的復(fù)雜度增加時(shí),模型擬合訓(xùn)練數(shù)據(jù)的能力會(huì)增強(qiáng),但也會(huì)帶來(lái)在測(cè)試集上過(guò)擬合的問(wèn)題。馮·諾依曼曾經(jīng)說(shuō)過(guò)一句著名的話,給我四個(gè)參數(shù),我能擬合一頭大象,五個(gè)參數(shù)可以讓大象的鼻子動(dòng)起來(lái)。
因此,傳統(tǒng)建模相關(guān)的研究人員在使用神經(jīng)網(wǎng)絡(luò)時(shí),經(jīng)常會(huì)計(jì)算模型參數(shù)量,以及為了避免過(guò)擬合,刻意用參數(shù)少的網(wǎng)絡(luò)。然而,今天神經(jīng)網(wǎng)絡(luò)能夠大獲成功,一個(gè)重要的原因正是使用了超大規(guī)模的網(wǎng)絡(luò)。網(wǎng)絡(luò)的參數(shù)數(shù)量往往遠(yuǎn)大于樣本的數(shù)量,但卻不像傳統(tǒng)學(xué)習(xí)理論所預(yù)言的那樣過(guò)擬合。這便是這些年受到極大關(guān)注的泛化迷團(tuán)。實(shí)際上,在1995年,Leo Breiman在一篇文章中就已經(jīng)指出了這個(gè)問(wèn)題。在神經(jīng)網(wǎng)絡(luò)非常流行和重要的今天,這個(gè)迷團(tuán)愈加重要。我們可以問(wèn):帶有大量參數(shù)的神經(jīng)網(wǎng)絡(luò)真的很復(fù)雜嗎?
答案是肯定的!上世紀(jì)八十年代末的理論工作證明當(dāng)兩層神經(jīng)網(wǎng)絡(luò)(激活函數(shù)非多項(xiàng)式函數(shù))足夠?qū)挄r(shí),它可以以任意精度逼近任意連續(xù)函數(shù),這也就是著名的“萬(wàn)有逼近”定理。實(shí)際上,我們應(yīng)該問(wèn)一個(gè)更加有意義的問(wèn)題:在實(shí)際訓(xùn)練中,神經(jīng)網(wǎng)絡(luò)真的很復(fù)雜嗎??逼近論證明的解在實(shí)際訓(xùn)練中幾乎不可能遇到。實(shí)際的訓(xùn)練,需要設(shè)定初始值、優(yōu)化算法、網(wǎng)絡(luò)結(jié)構(gòu)等超參數(shù)。對(duì)我們實(shí)際要有指導(dǎo)作用,我們就不能脫離這些因素來(lái)考慮泛化的問(wèn)題,因?yàn)榉夯旧砭褪且蕾噷?shí)際數(shù)據(jù)的問(wèn)題。
兩種簡(jiǎn)單偏好的現(xiàn)象
在學(xué)習(xí)與訓(xùn)練神經(jīng)網(wǎng)絡(luò)的過(guò)程中,我們很容易發(fā)現(xiàn),神經(jīng)網(wǎng)絡(luò)的訓(xùn)練有一定的規(guī)律。在我們的研究中,有兩種現(xiàn)象很有趣,在研究和解釋它們的過(guò)程中,我們發(fā)現(xiàn)它們同樣是很有意義的。我先簡(jiǎn)單介紹,然后再詳細(xì)分別介紹。第一,我們發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)在擬合數(shù)據(jù)的過(guò)程中經(jīng)常會(huì)先學(xué)習(xí)低頻,而后慢慢學(xué)習(xí)高頻。我們把這個(gè)現(xiàn)象命名為頻率原則(Frequency Principle, F-Principle)[1, 2],也有其它工作把它稱為Spectral bias。第二,我們發(fā)現(xiàn)在訓(xùn)練過(guò)程,有很多神經(jīng)元的輸入權(quán)重(向量)的方向會(huì)保持一致。我們稱之為凝聚現(xiàn)象。這些輸入權(quán)重一樣的神經(jīng)元對(duì)輸入的處理是一樣的,那它們就可以簡(jiǎn)化成一個(gè)神經(jīng)元,也就是一個(gè)大網(wǎng)絡(luò)可以簡(jiǎn)化成小網(wǎng)絡(luò)[3, 4]。這兩種現(xiàn)象都體現(xiàn)神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過(guò)程中有一種隱式的簡(jiǎn)單偏好,低頻偏好或者有效小網(wǎng)絡(luò)偏好。低頻偏好是非常普遍的,但小網(wǎng)絡(luò)偏好是要在非線性的訓(xùn)練過(guò)程中才會(huì)出現(xiàn)的特征。
頻率原則
我早期在匯報(bào)頻率原則相關(guān)的工作的時(shí)候,做計(jì)算數(shù)學(xué)的老師同學(xué)非常有興趣,因?yàn)樵趥鹘y(tǒng)的迭代格式中,例如Jacobi迭代,低頻是收斂得非常慢的。多重網(wǎng)格方法非常有效地解決了這個(gè)問(wèn)題。我們?cè)趯?shí)驗(yàn)中,也驗(yàn)證了神經(jīng)網(wǎng)絡(luò)和Jacobi迭代在解PDE時(shí)完全不一樣的頻率收斂順序(如下圖)[2, 5]。
頻率原則有多廣泛呢??頻率原則最開(kāi)始是在一維函數(shù)的擬合中發(fā)現(xiàn)的。我在調(diào)參的過(guò)程中發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)似乎總是先抓住目標(biāo)函數(shù)的輪廓信息,然后再是細(xì)節(jié)。頻率是一種非常適合用來(lái)刻畫輪廓和細(xì)節(jié)的量。于是,我們?cè)陬l率空間看神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)過(guò)程,發(fā)現(xiàn)非常明顯地從低頻到高頻的順序。
實(shí)域空間擬合(紅色為目標(biāo)函數(shù),藍(lán)色為DNN) 頻域空間擬合(紅色為目標(biāo)函數(shù),藍(lán)色為DNN)
對(duì)于兩維的函數(shù),以圖像為例,用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)從兩維位置到灰度值的映射。神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過(guò)程會(huì)慢慢記住更多細(xì)節(jié)。
對(duì)于更高維的例子,傅里葉變換是困難的,這也是不容易在高維的圖像分類任務(wù)中發(fā)現(xiàn)頻率原則的一個(gè)原因。我們的貢獻(xiàn)還有一點(diǎn)就是用一個(gè)例子論證針對(duì)簡(jiǎn)單的低維問(wèn)題的研究可以啟發(fā)深度學(xué)習(xí)的基礎(chǔ)研究。高維問(wèn)題的頻率需要多說(shuō)兩句。本質(zhì)上,高頻指的是輸出對(duì)輸入的變化非常敏感。比如在圖片分類任務(wù)中,當(dāng)一張圖片被修改一點(diǎn)點(diǎn),輸出就發(fā)生變化。顯然,這說(shuō)的正是對(duì)抗樣本。關(guān)于高維中驗(yàn)證頻率原則,我們采用了降維和濾波的辦法。一系列的實(shí)驗(yàn)都驗(yàn)證了頻率原則是一個(gè)廣泛存在的現(xiàn)象。
為什么會(huì)有頻率原則呢??事實(shí)上,在自然界中大部分信號(hào)都有一個(gè)特征,強(qiáng)度隨頻率增加而衰減。一般我們見(jiàn)到的函數(shù)在頻率空間也都有衰減的特征,特別是函數(shù)越光滑,衰減越快,連常見(jiàn)的ReLU函數(shù)在頻率空間也是關(guān)于頻率二次方衰減。在梯度下降的計(jì)算中,很容易得到低頻信號(hào)對(duì)梯度的貢獻(xiàn)要大于高頻,所以梯度下降自然就以消除低頻誤差為主要目標(biāo)[2]。對(duì)于一般的網(wǎng)絡(luò),我們有定性的理論證明[6],而對(duì)于線性NTK區(qū)域的網(wǎng)絡(luò),我們有嚴(yán)格的線性頻率原則模型揭示頻率衰減的機(jī)制[7, 8, 9]。有了這個(gè)理解,我們也可以構(gòu)造一些例子來(lái)加速高頻的收斂,比如在損失函數(shù)中增加輸出關(guān)于輸入的導(dǎo)數(shù)項(xiàng),因?yàn)榍髮?dǎo)在頻率空間看,相當(dāng)于在強(qiáng)度上乘以了一個(gè)其對(duì)應(yīng)的頻率,可以緩解高頻的困難。這在求解PDE中很常見(jiàn)。
了解頻率原則對(duì)我們理解神經(jīng)網(wǎng)絡(luò)有什么幫助嗎??我們舉兩個(gè)例子。第一個(gè)是理解提前停止這個(gè)技巧。實(shí)際的訓(xùn)練中,一般都能發(fā)現(xiàn)泛化最好的點(diǎn)并不是訓(xùn)練誤差最低的,通常需要在訓(xùn)練誤差還沒(méi)降得很低的時(shí)候,提前停止訓(xùn)練。實(shí)際數(shù)據(jù)大部分都是低頻占優(yōu),而且基本都有噪音。噪音對(duì)低頻的影響相對(duì)比較小,而對(duì)高頻影響相對(duì)比較大,而神經(jīng)網(wǎng)絡(luò)在學(xué)習(xí)過(guò)程先學(xué)習(xí)低頻,所以通過(guò)提前停止可以避免學(xué)習(xí)到過(guò)多被污染的高頻而帶來(lái)更好的泛化性能。另一個(gè)例子是,我們發(fā)現(xiàn)圖像分類問(wèn)題中,從圖像到類別的映射通常也是低頻占優(yōu),所以可以理解其良好的泛化。但對(duì)于定義在d維空間中的奇偶函數(shù),其每一維的值只能取1或者-1。顯然任何一維被擾動(dòng)后,輸出都會(huì)發(fā)生大的變化。這個(gè)函數(shù)可以被證明是高頻占優(yōu)的,而實(shí)際訓(xùn)練中,神經(jīng)網(wǎng)絡(luò)在這個(gè)問(wèn)題中完全沒(méi)有預(yù)測(cè)能力。我們還利用頻率原則解釋了為什么在實(shí)驗(yàn)中會(huì)觀察到深度可以加快訓(xùn)練,核心的原因是越深的網(wǎng)絡(luò)把目標(biāo)函數(shù)變成一個(gè)越低頻的函數(shù),使學(xué)習(xí)變得容易 [10]。
除了理解,頻率原則能對(duì)我們實(shí)際設(shè)計(jì)和使用神經(jīng)網(wǎng)絡(luò)產(chǎn)生什么指導(dǎo)嗎?頻率原則揭示了神經(jīng)網(wǎng)絡(luò)中存在高頻災(zāi)難,這也引起了很多研究人員的注意,包括求解PDE、生成圖像、擬合函數(shù)等。高頻災(zāi)難帶來(lái)的訓(xùn)練和泛化困難很難通過(guò)簡(jiǎn)單的調(diào)參來(lái)緩解。我們組提出了多尺度神經(jīng)網(wǎng)絡(luò)的方法來(lái)加速高頻的收斂[11]。基本的想法是把目標(biāo)函數(shù)在徑向進(jìn)行不同尺度的拉伸,嘗試將不同頻率的成分都拉伸成一致的低頻,達(dá)到一致的快速收斂。實(shí)現(xiàn)也是非常之容易,僅需在第一隱藏層的神經(jīng)元的輸入乘以一些固定的系數(shù)即可。我們的一些工作發(fā)現(xiàn)調(diào)整激活函數(shù)對(duì)網(wǎng)絡(luò)的性能影響很大[12],用正弦余弦函數(shù)做第一個(gè)隱藏層的基可以有比較好的效果[13]。這個(gè)算法被華為的MindSpore所采用。徑向拉伸的想法在很多其它的算法中也被采用,包括在圖片渲染中非常出名的NerF(神經(jīng)輻射場(chǎng))。
多尺度網(wǎng)絡(luò)結(jié)構(gòu)
頻率原則還有很多未解的問(wèn)題需要被探索。?在非梯度下降訓(xùn)練的過(guò)程,比如粒子群算法怎么證明頻率下降[14]?如何在理論上論證多尺度神經(jīng)網(wǎng)絡(luò)對(duì)高頻的加速效果?是否有更穩(wěn)定更快的高頻加速算法?小波可以更細(xì)致的描述不同局部的頻率特征,能否用小波更細(xì)節(jié)地理解神經(jīng)網(wǎng)絡(luò)的訓(xùn)練行為?數(shù)據(jù)量、網(wǎng)絡(luò)深度、損失函數(shù)怎么影響頻率原則?頻率原則可以指導(dǎo)算法設(shè)計(jì)的理論,為訓(xùn)練規(guī)律提供一種“宏觀”描述。對(duì)于“微觀”機(jī)制,我們需要進(jìn)一步研究。同樣是低頻到高頻的學(xué)習(xí)過(guò)程,參數(shù)的演化可以非常不一樣,比如一個(gè)函數(shù)可以用一個(gè)神經(jīng)元表示,也可以用10個(gè)神經(jīng)元(每個(gè)神經(jīng)元的輸出權(quán)重為原輸出權(quán)重的1/10)一起表示,從輸入輸出函數(shù)的頻率來(lái)看,這兩種表示完全沒(méi)有差別,那神經(jīng)網(wǎng)絡(luò)會(huì)選擇哪一種表示,以及這些表示有什么差別?下面我們就要更細(xì)致地看參數(shù)演化中的現(xiàn)象。
參數(shù)凝聚現(xiàn)象
為了介紹參數(shù)凝聚現(xiàn)象我們有必要介紹一下兩層神經(jīng)元網(wǎng)絡(luò)的表達(dá)
W是輸入權(quán)重,它以內(nèi)積的方式提取輸入在權(quán)重所在的方向上的成分,可以理解為一種特征提取的方式,加上偏置項(xiàng),然后再經(jīng)過(guò)非線性函數(shù)(也稱為激活函數(shù)),完成單個(gè)神經(jīng)元的計(jì)算,然后再把所有神經(jīng)元的輸出加權(quán)求和。為了方便,我們記
對(duì)于ReLU激活函數(shù),我們可以通過(guò)考慮輸入權(quán)重的角度和神經(jīng)元的幅度來(lái)理解每個(gè)神經(jīng)元的特征:, 其中???紤]用上面的兩層神經(jīng)網(wǎng)絡(luò)來(lái)擬合四個(gè)一維的數(shù)據(jù)點(diǎn)。結(jié)合輸入權(quán)重和偏置項(xiàng),我們所關(guān)心的方向就是兩維的方向,因此可以用角度來(lái)表示其方向。下圖展示了,不同初始化下,神經(jīng)網(wǎng)絡(luò)的擬合結(jié)果(第一行),以及在訓(xùn)練前(青色)和訓(xùn)練后(紅色)特征分布的圖(第二行)
不同初始化的擬合結(jié)果
顯然,隨初始化尺度變?。◤淖蟮接遥跏蓟叨炔粩嘧冃。窠?jīng)網(wǎng)絡(luò)的擬合結(jié)果差異很大,在特征分布上,當(dāng)尺度很大(這里使用NTK的初始化),神經(jīng)網(wǎng)絡(luò)特征幾乎不變,和random feature這類線性模型差不多,而隨初始化變小,訓(xùn)練過(guò)程出現(xiàn)明顯的特征變化的過(guò)程。最有意思的是,這些特征的方向聚集在兩個(gè)主要的方向。我們把這種現(xiàn)象稱為參數(shù)凝聚。?大量的實(shí)際問(wèn)題告訴我們神經(jīng)網(wǎng)絡(luò)比線性的方法要好很多,那非線性過(guò)程所呈現(xiàn)的參數(shù)凝聚有什么好處嗎??如下圖展示的一個(gè)極端凝聚的例子,對(duì)于一個(gè)隨機(jī)初始化的網(wǎng)絡(luò),經(jīng)過(guò)短暫的訓(xùn)練后,每個(gè)隱藏層神經(jīng)元的輸入權(quán)重是完全一致的,因此這個(gè)網(wǎng)絡(luò)可以等效成僅有一個(gè)隱藏層神經(jīng)元的小網(wǎng)絡(luò)。一般情況下,神經(jīng)元會(huì)凝聚到多個(gè)方向。
凝聚現(xiàn)象的例子
回顧在我們前面最開(kāi)始提到的泛化迷團(tuán),以及我們最開(kāi)始提出的問(wèn)題“在實(shí)際訓(xùn)練中,神經(jīng)網(wǎng)絡(luò)真的很復(fù)雜嗎?”,在參數(shù)凝聚的情況下,對(duì)于一個(gè)表面看起來(lái)很多參數(shù)的網(wǎng)絡(luò),我們自然要問(wèn):神經(jīng)網(wǎng)絡(luò)實(shí)際的有效參數(shù)有多少??比如我們前面看到的兩層神經(jīng)網(wǎng)絡(luò)凝聚在兩個(gè)方向的例子,實(shí)際上,這個(gè)網(wǎng)絡(luò)的有效神經(jīng)元只有兩個(gè)。因此凝聚可以根據(jù)實(shí)際數(shù)據(jù)擬合的需求來(lái)有效地控制模型的復(fù)雜度。
前面,我們只是通過(guò)一個(gè)簡(jiǎn)單的例子來(lái)呈現(xiàn)凝聚現(xiàn)象,接下來(lái)重要的問(wèn)題是:參數(shù)凝聚是非線性過(guò)程中普遍的現(xiàn)象嗎??在統(tǒng)計(jì)力學(xué)相圖的啟發(fā)下,我們?cè)趯?shí)驗(yàn)發(fā)現(xiàn)并理論推導(dǎo)出了兩層無(wú)限寬ReLU神經(jīng)網(wǎng)絡(luò)的相圖。基于不同的初始化尺度,以參數(shù)在訓(xùn)練前后的相對(duì)距離在無(wú)限寬極限下趨于零、常數(shù)、無(wú)窮作為判據(jù),相圖劃分了線性、臨界、凝聚三種動(dòng)力學(xué)態(tài)(dynamical regime)。領(lǐng)域內(nèi)的一系列理論研究(包括NTK,mean-field等)都可以在我們的相圖中找到對(duì)應(yīng)的位置[3]。
兩層ReLU網(wǎng)絡(luò)的相圖
在三層無(wú)窮寬[15]的全連接網(wǎng)絡(luò)中,我們實(shí)驗(yàn)證明在所有非線性的區(qū)域,參數(shù)凝聚都是一種普遍的現(xiàn)象。理論上,我們證明當(dāng)初始化尺度足夠小的時(shí)候,在訓(xùn)練初始階段就會(huì)產(chǎn)生凝聚[4] 。有趣的是,我們?cè)谘芯緿ropout算法的隱式正則化的時(shí)候,發(fā)現(xiàn)Dropout算法會(huì)明顯地促進(jìn)參數(shù)凝聚地形成。?Dropout算法的想法是Hinton提出的,在神經(jīng)網(wǎng)絡(luò)的訓(xùn)練中,以一定概率p保留神經(jīng)元,是一種常用的技巧,對(duì)泛化能力的提升有明顯的幫助。我們首先來(lái)看一下擬合結(jié)果。下面左圖是沒(méi)有用Dropout的例子,放大擬合的函數(shù),可以看到明顯的小尺度的波動(dòng),右圖是用了Dropout的結(jié)果,擬合的函數(shù)要光滑很多。
Dropout(右)使輸出更光滑
仔細(xì)看他們的特征分布時(shí),可以看到訓(xùn)練前(藍(lán)色)和訓(xùn)練后(橙色)的分布在有Dropout的情況下會(huì)明顯不同,且呈現(xiàn)出明顯地凝聚效應(yīng),有效參數(shù)變得更少,函數(shù)復(fù)雜度也相應(yīng)變得簡(jiǎn)單光滑。
Dropout(右)使參數(shù)凝聚
進(jìn)一步,我們分析為什么Dropout會(huì)帶來(lái)凝聚效應(yīng)。我們發(fā)現(xiàn)Dropout的訓(xùn)練會(huì)帶來(lái)一項(xiàng)特殊的隱式正則效應(yīng)。我們通過(guò)下面的例子來(lái)理解這個(gè)效應(yīng)。下面黃色和紅色兩種情況都能合成一個(gè)相同的向量,Dropout要求兩個(gè)分向量的模長(zhǎng)平方和要最小,那顯然只有當(dāng)兩個(gè)向量的方向一致的時(shí)候,并且完全相等的時(shí)候,它們的模長(zhǎng)平方和才能最小,對(duì)于w來(lái)說(shuō),這就是凝聚。
到目前,我們談了參數(shù)凝聚使得神經(jīng)網(wǎng)絡(luò)的有效規(guī)模變得很小,那為什么我們不直接訓(xùn)練一個(gè)小規(guī)模的網(wǎng)絡(luò)?大網(wǎng)絡(luò)和小網(wǎng)絡(luò)有什么差異??首先,我們用不同寬度的兩層網(wǎng)絡(luò)來(lái)擬合同一批數(shù)據(jù),下圖展示了它們的損失下降的過(guò)程。
不同寬度的網(wǎng)絡(luò)的損失函數(shù)表現(xiàn)出了高度的相似性,它們會(huì)在共同的位置發(fā)生停留。那在共同的臺(tái)階處有什么相似性呢?下面左圖可以看到,對(duì)于上述箭頭指示的臺(tái)階,不同寬度網(wǎng)絡(luò)的輸出函數(shù)非??拷8M(jìn)一步看它們的特征圖(下右圖),它們都發(fā)生了強(qiáng)烈的凝聚現(xiàn)象。這些體現(xiàn)了它們的相似性。
如果再仔細(xì)觀察他們的損失圖,可以發(fā)現(xiàn)當(dāng)寬度增加的時(shí)候,網(wǎng)絡(luò)的損失函數(shù)更容易下降,比如前面箭頭指的地方,相對(duì)小的網(wǎng)絡(luò)就停留在臺(tái)階上,大的網(wǎng)絡(luò)的損失才繼續(xù)下降。從實(shí)驗(yàn)上可以看出,大網(wǎng)絡(luò)凝聚時(shí)雖然和小網(wǎng)絡(luò)在表達(dá)能力類似,但看起來(lái)大網(wǎng)絡(luò)更容易訓(xùn)練。怎么解釋不同寬度的網(wǎng)絡(luò)的相似性以及大網(wǎng)絡(luò)的優(yōu)勢(shì)??在一個(gè)梯度下降的訓(xùn)練過(guò)程,出現(xiàn)平臺(tái)的原因很可能是因?yàn)橛?xùn)練路徑經(jīng)歷某個(gè)鞍點(diǎn)(附近有上升方向也有下降方向的極值點(diǎn))附近。不同寬度的網(wǎng)絡(luò)似乎會(huì)經(jīng)歷相同的鞍點(diǎn)。但參數(shù)量不同的網(wǎng)絡(luò),它們各自的鞍點(diǎn)生活在不同維度的空間,怎么會(huì)是同一點(diǎn)呢?
我們證明了不同寬度的網(wǎng)絡(luò)的損失景觀的極值點(diǎn)存在一個(gè)嵌入原則(Embedding Principle)[16], 即一個(gè)神經(jīng)網(wǎng)絡(luò)的損失景觀中 “包含”所有更窄神經(jīng)網(wǎng)絡(luò)損失景觀的所有臨界點(diǎn)(包括鞍點(diǎn)、局部最優(yōu)點(diǎn)和全局最優(yōu)點(diǎn)等)。簡(jiǎn)單地說(shuō),就是一個(gè)網(wǎng)絡(luò)處理臨界點(diǎn)時(shí),通過(guò)一些特定的嵌入方式,可以把這個(gè)網(wǎng)絡(luò)嵌入到一個(gè)更寬的網(wǎng)絡(luò)中,嵌入過(guò)程能夠保持網(wǎng)絡(luò)輸出不變以及寬網(wǎng)絡(luò)仍然處于臨界點(diǎn)。最簡(jiǎn)單的嵌入方式正是凝聚的逆過(guò)程,比如下圖是一種一步嵌入方式。更一般的嵌入方式我們?cè)贘ournal of Machine Learning第一期的文章里[17]有詳細(xì)討論。
嵌入原則揭示了不同寬度網(wǎng)絡(luò)的相似性,當(dāng)然也提供了研究它們差異性的手段。由于在嵌入的過(guò)程中有自由參數(shù),因此在更大網(wǎng)絡(luò)的臨界點(diǎn)的退化程度越大。同樣的,一個(gè)大網(wǎng)絡(luò)的損失景觀里的臨界點(diǎn),如果它來(lái)源于更簡(jiǎn)單的網(wǎng)絡(luò)的臨界點(diǎn)的嵌入,那么它的退化程度也越大(直觀可以理解它占的空間越大)。我們就可以猜測(cè)這些越簡(jiǎn)單的臨界點(diǎn)越有可能被學(xué)習(xí)到。
另外,我們?cè)诶碚撋献C明,在嵌入的過(guò)程中,臨界點(diǎn)附近的下降方向、上升方向都不會(huì)變少。這告訴我們,一個(gè)鞍點(diǎn)被嵌入到一個(gè)更大的網(wǎng)絡(luò)以后,它不可能變成一個(gè)極小值點(diǎn),但一個(gè)極小值點(diǎn)被嵌入到大網(wǎng)絡(luò)以后,它很有可能會(huì)變成鞍點(diǎn),產(chǎn)生更多的下降方向。我們?cè)趯?shí)驗(yàn)上也證明了嵌入過(guò)程會(huì)產(chǎn)生更多下降方向。
因此,我們有理由相信,大網(wǎng)絡(luò)盡管凝聚成有效的小網(wǎng)絡(luò),但它會(huì)比小網(wǎng)絡(luò)更容易訓(xùn)練。也就是大網(wǎng)絡(luò)既可以控制模型的復(fù)雜度(可能帶來(lái)更好的泛化),又可以使訓(xùn)練更容易。?我們的工作還發(fā)現(xiàn)了在深度上神經(jīng)網(wǎng)絡(luò)損失景觀的嵌入原則[18]。關(guān)于凝聚現(xiàn)象,同樣還有很多問(wèn)題值得繼續(xù)深入。下面是一些例子。除了初始訓(xùn)練外,訓(xùn)練過(guò)程中的凝聚現(xiàn)象產(chǎn)生的機(jī)制是什么?不同的網(wǎng)絡(luò)結(jié)構(gòu)是否有凝聚現(xiàn)象?凝聚的過(guò)程和頻率原則有什么聯(lián)系?凝聚怎么定量地和泛化建立聯(lián)系?
總結(jié)
過(guò)去五年,在深度學(xué)習(xí)的基礎(chǔ)研究方面,我們主要圍繞頻率原則和參數(shù)凝聚兩類現(xiàn)象展開(kāi)工作。從發(fā)現(xiàn)它們,意識(shí)到他們很有趣,再到解釋它們,并在一定程度上基于這些工作去理解深度學(xué)習(xí)的其它方面和設(shè)計(jì)更好的算法。未來(lái)五年,我們將在深度學(xué)習(xí)的基礎(chǔ)研究和AI for Science方面深入鉆研。
參考文獻(xiàn)
[1] Zhi-Qin John Xu*, Yaoyu Zhang, and Yanyang Xiao, Training behavior of deep neural network in frequency domain, arXiv preprint: 1807.01251, (2018), ICONIP 2019.
[2] Zhi-Qin John Xu* , Yaoyu Zhang, Tao Luo, Yanyang Xiao, Zheng Ma, Frequency Principle: Fourier Analysis Sheds Light on Deep Neural Networks, arXiv preprint: 1901.06523, Communications in Computational Physics (CiCP).
[3]Tao Luo#,Zhi-Qin John Xu #, Zheng Ma, Yaoyu Zhang*, Phase diagram for two-layer ReLU neural networks at infinite-width limit, arxiv 2007.07497 (2020), Journal of Machine Learning Research (2021)
[4]Hanxu Zhou, Qixuan Zhou, Tao Luo, Yaoyu Zhang*, Zhi-Qin John Xu*, Towards Understanding the Condensation of Neural Networks at Initial Training. arxiv 2105.11686 (2021), NeurIPS2022.
[5] Jihong Wang,Zhi-Qin John Xu*, Jiwei Zhang*, Yaoyu Zhang, Implicit bias in understanding deep learning for solving PDEs beyond Ritz-Galerkin method, CSIAM Trans. Appl. Math.
[6] Tao Luo, Zheng Ma,Zhi-Qin John Xu, Yaoyu Zhang, Theory of the frequency principle for general deep neural networks, CSIAM Trans. Appl. Math., arXiv preprint, 1906.09235 (2019).
[7] Yaoyu Zhang, Tao Luo, Zheng Ma,Zhi-Qin John Xu*, Linear Frequency Principle Model to Understand the Absence of Overfitting in Neural Networks. Chinese Physics Letters, 2021.
[8] Tao Luo*, Zheng Ma,Zhi-Qin John Xu, Yaoyu Zhang, On the exact computation of linear frequency principle dynamics and its generalization, SIAM Journal on Mathematics of Data Science (SIMODS) to appear, arxiv 2010.08153 (2020).
[9]Tao Luo*, Zheng Ma, Zhiwei Wang, Zhi-Qin John Xu, Yaoyu Zhang, An Upper Limit of Decaying Rate with Respect to Frequency in Deep Neural Network, To appear in Mathematical and Scientific Machine Learning 2022 (MSML22),
[10] Zhi-Qin John Xu* , Hanxu Zhou, Deep frequency principle towards understanding why deeper learning is faster, AAAI 2021, arxiv 2007.14313 (2020)
[11] Ziqi Liu, Wei Cai,Zhi-Qin John Xu* , Multi-scale Deep Neural Network (MscaleDNN) for Solving Poisson-Boltzmann Equation in Complex Domains, arxiv 2007.11207 (2020) Communications in Computational Physics (CiCP).
[12] Xi-An Li,Zhi-Qin John Xu* , Lei Zhang, A multi-scale DNN algorithm for nonlinear elliptic equations with multiple scales, arxiv 2009.14597, (2020) Communications in Computational Physics (CiCP).
[13] Xi-An Li,Zhi-Qin John Xu, Lei Zhang*, Subspace Decomposition based DNN algorithm for elliptic type multi-scale PDEs. arxiv 2112.06660 (2021)
[14]Yuheng Ma,Zhi-Qin John Xu*, Jiwei Zhang*, Frequency Principle in Deep Learning Beyond Gradient-descent-based Training, arxiv 2101.00747 (2021).
[15]Hanxu Zhou, Qixuan Zhou, Zhenyuan Jin, Tao Luo, Yaoyu Zhang,Zhi-Qin John Xu*, Empirical Phase Diagram for Three-layer Neural Networks with Infinite Width. arxiv 2205.12101 (2022), NeurIPS2022.
[16]Yaoyu Zhang*, Zhongwang Zhang, Tao Luo,Zhi-Qin John Xu*, Embedding Principle of Loss Landscape of Deep Neural Networks. NeurIPS 2021 spotlight, arxiv 2105.14573 (2021)
[17] Zhongwang Zhang,Zhi-Qin John Xu*, Implicit regularization of dropout. arxiv 2207.05952 (2022)
[18]Zhiwei Bai, Tao Luo,Zhi-Qin John Xu*, Yaoyu Zhang*, Embedding Principle in Depth for the Loss Landscape Analysis of Deep Neural Networks. arxiv 2205.13283 (2022)
編輯:黃飛
?
評(píng)論
查看更多