2022年各種梯度下降法原理與Dropout_第1頁
2022年各種梯度下降法原理與Dropout_第2頁
2022年各種梯度下降法原理與Dropout_第3頁
2022年各種梯度下降法原理與Dropout_第4頁
2022年各種梯度下降法原理與Dropout_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

最清楚的講解各種梯度下降法原理與Dropout一、梯度法思想梯度法思想的三要素:出發(fā)點(diǎn)、下降方向、下降步長(zhǎng)。機(jī)器學(xué)習(xí)中常用的權(quán)重更新表達(dá)式為:,這里的入就是學(xué)習(xí)率,本文從這個(gè)式子出發(fā)來把機(jī)器學(xué)習(xí)中的各種“梯度〃下降法闡釋清楚。機(jī)器學(xué)習(xí)目標(biāo)函數(shù),一般都是凸函數(shù),什么叫凸函數(shù)?限于篇幅,我們不做很深的展開,在這兒我們做一個(gè)形象的比喻,凸函數(shù)求解問題,可以把目標(biāo)損失函數(shù)想象成一口鍋,來找到這個(gè)鍋的鍋底。非常直觀的想法就是,我們沿著初始某個(gè)點(diǎn)的函數(shù)的梯度方向往下走〔即梯度下降〕。在這兒,我們?cè)僮鱾€(gè)形象的類比,如果把這個(gè)走法類比為力,那么完整的三要素就是步長(zhǎng)〔走多少〕、方向、出發(fā)點(diǎn),這樣形象的比喻,讓我們對(duì)梯度問題的解決豁然開朗,出發(fā)點(diǎn)很重要,是初始化時(shí)重點(diǎn)要考慮的,而方向、步長(zhǎng)就是關(guān)鍵。事實(shí)上不同梯度的不同就在于這兩點(diǎn)的不同!梯度方向是,步長(zhǎng)設(shè)為常數(shù)△,這時(shí)就會(huì)發(fā)覺,如果用在梯度較大的時(shí)候,離最優(yōu)解比擬遠(yuǎn),W的更新比擬快;然而到了梯度較小的時(shí)候,也就是較靠近最優(yōu)解的時(shí)候,W的更新竟然也保持著跟原來一樣的速率,這樣會(huì)導(dǎo)致W很簡(jiǎn)單更新過度反而遠(yuǎn)離了最優(yōu)解,進(jìn)而出現(xiàn)在最優(yōu)解附近來回震蕩。所以,既然在遠(yuǎn)離最優(yōu)解的時(shí)候梯度大,在靠近最優(yōu)解的時(shí)候梯度小,我們讓步長(zhǎng)隨著這個(gè)律動(dòng),于是我我們就用NW|來替代△,最后得到了我們熟悉的式子:所以說這時(shí)的入是隨著坡度的陡緩而變化的,別看它是個(gè)常數(shù)。二、全量梯度下降法(Batchgradientdescent〕全量梯度下降法每次學(xué)習(xí)都使用整個(gè)訓(xùn)練集,因此每次更新都會(huì)朝著正確的方向進(jìn)行,最后能夠保證收斂于極值點(diǎn),凸函數(shù)收斂于全局極值點(diǎn),非凸函數(shù)可能會(huì)收斂于局部極值點(diǎn),缺陷就是學(xué)習(xí)時(shí)間太長(zhǎng),消耗大量?jī)?nèi)存。第二、隨機(jī)梯度下降法〔StochasticGradientDescent〕SGD—輪迭代只用一條隨機(jī)選取的數(shù)據(jù),盡管SGD的迭代次數(shù)比BGD大很多,但一次學(xué)習(xí)時(shí)間非???。SGD的缺點(diǎn)在于每次更新可能并不會(huì)按照正確的方向進(jìn)行,參數(shù)更新具有高方差,從而導(dǎo)致?lián)p失函數(shù)劇烈波動(dòng)。不過,如果目標(biāo)函數(shù)有盆地地域,SGD會(huì)使優(yōu)化的方向從當(dāng)前的局部極小值點(diǎn)跳到另一個(gè)更好的局部極小值點(diǎn),這樣對(duì)于非凸函數(shù),可能最終收斂于一個(gè)較好的局部極值點(diǎn),甚至全局極值點(diǎn)。缺點(diǎn)是,出現(xiàn)損失函數(shù)波動(dòng),如下列圖所示,并且無法推斷是否收斂。第三、小批量梯度下降法〔Mini-BatchGradientDescent)SGD相比BGD收斂速度快,然而,它也的缺點(diǎn),那就是收斂時(shí)浮動(dòng),不穩(wěn)定,在最優(yōu)解附近波動(dòng),難以推斷是否已經(jīng)收斂。這時(shí)折中的算法小批量梯度下降法,MBGD就產(chǎn)生了,道理很簡(jiǎn)單,SGD太極端,一次一條,為何不多幾條?MBGD就是用一次迭代多條數(shù)據(jù)的方法。并且如果BatchSize選擇合理,不僅收斂速度比SGD更快、更穩(wěn)定,而且在最優(yōu)解附近的跳動(dòng)也不會(huì)很大,甚至得到比BatchGradientDescent更好的解。這樣就綜合了SGD和BatchGradientDescent的優(yōu)點(diǎn),同時(shí)弱化了缺點(diǎn)。總之,Mini-Batch比SGD和BatchGradientDescent都好。第四、Momentum梯度下降法SGD、BSGD兩種改良方法都存在不同程度的震蕩,如何防止震蕩?或者說震蕩是怎么產(chǎn)生的?震蕩,從可視圖表現(xiàn)來看,就是一再更改方向,所以,如果能夠把之前下降的方向考量進(jìn)來,那么將會(huì)減少振蕩。上邊第二個(gè)圖是帶動(dòng)量的梯度下降法。下面推導(dǎo)動(dòng)量下降法。在一般的梯度下降法W-=V中,每次W的更新量V為V=dWx入;當(dāng)使用沖量時(shí),V考慮為本次的梯度下降量與局部上次更新量的矢量和,即-dWx入與上次x的更新量V乘以一個(gè)介于0,1]的系數(shù)momemtum的和,即:V=dWx入+Vxmomemtum。當(dāng)本次梯度下降方向與上次更新量的方向相同時(shí),上次的更新量能夠?qū)Ρ敬蔚乃阉髌鸬揭粋€(gè)正向加速的作用。當(dāng)本次梯度下降方向與上次更新量的方向相反時(shí),上次的更新量能夠?qū)Ρ敬蔚乃阉髌鸬揭粋€(gè)減速的作用。下面兩個(gè)圖,第一圖是沒有動(dòng)量的梯度下降法,第二圖是有動(dòng)量的梯度下降法,很明顯減少了震蕩。既減少震蕩,又大方向不變〔本次梯度下降方向〕,從而保證了效率和正確的收斂。第五、NAG梯度下降法NAG(NesterovAcceleratedGradient〕不僅僅把SGD梯度下降以前的方向考慮,還將Momentum梯度變化的幅度也考慮了進(jìn)來。上圖是Momentum的優(yōu)化軌跡,下列圖是NAG的優(yōu)化軌跡:在給出公式之前,先看一個(gè)向量圖:這個(gè)圖X于G.Hinton's的文章,網(wǎng)上對(duì)這個(gè)圖的解釋大都X于《Anoverviewofgradientdescentoptimizationalgorithms》中文翻譯,其實(shí)并沒有真正講解清楚。本文嚴(yán)格按照情愿解釋一下:Momentum梯度法首先計(jì)算的是當(dāng)前的梯度(圖中的小藍(lán)色向量〕然后沿著更新的累積梯度的方一直一個(gè)大的跳躍(圖中大藍(lán)色向量〕,而NAG梯度法首先沿著先前的累積梯度方向(棕色向量〕完成一個(gè)大的跳躍,然后加上一個(gè)小的按照動(dòng)量梯度法計(jì)算的當(dāng)前梯度(上圖紅色向量〕進(jìn)行修正得到上圖綠色的向量。此處我拋出一個(gè)問題,上圖為什么畫了兩個(gè)三角形?如果能理解第二個(gè)矢量三解形的意義,才能正在理解NAG。注意第二個(gè)矢量三角形的棕色向量與前一個(gè)的綠色向量方向一致,因?yàn)樯弦粋€(gè)矢量三角形的結(jié)果是綠色向量,而棕色代表的是先前的累積梯度,方向就應(yīng)該和綠色的一樣。然后,再加上當(dāng)前按照動(dòng)量梯度法計(jì)算出的梯度,就得到第二個(gè)三角形的綠色向量。給出公式表達(dá):我們先給出類似生活體驗(yàn)的通俗的解釋:我們要讓算法要前瞻性,提前看到前方的地形梯度,如果前面的梯度比當(dāng)前位置的梯度大,那我就可以把步子邁得比原來大一些,如果前面的梯度比現(xiàn)在的梯度小,那我就可以把步子邁得小一些。這個(gè)大一些、小一些,都是相對(duì)于原來不看前方梯度、只看當(dāng)前位置梯度的情況來說的。NAG的另一個(gè)等效形式為〔下文會(huì)詳細(xì)推導(dǎo)〕:這個(gè)NAG的等效形式與Momentum的區(qū)別在于,本次更新方向多加了一個(gè),注意到?jīng)]有,這項(xiàng)其實(shí)就是目標(biāo)函數(shù)的二階導(dǎo)數(shù)!所以NAG本質(zhì)上是多考慮了目標(biāo)函數(shù)的二階導(dǎo)信息,讀過《一篇中矣:徹底理解XGBoost!》一文的讀者,是不是覺得很面熟,二階導(dǎo)數(shù)再次發(fā)揮作用!其實(shí)所謂“往前看〃的說法,在牛頓法這樣的二階方法中經(jīng)常提到,形象說“往前看〃,數(shù)學(xué)思維則是利用了目標(biāo)函數(shù)的二階導(dǎo)信息。現(xiàn)在我們由NAG原始形式來推導(dǎo)NAG的等效形式:為了出現(xiàn)二階形式,將原始形式按照遞推展開:我們觀察這個(gè)等式,并對(duì)應(yīng)原始公式觀察比照這個(gè)長(zhǎng)等式:等式相當(dāng)于參數(shù)在更新量更新根底上的更新,所以為了看上去更有意義,對(duì)應(yīng)的形式,我們作如下記號(hào):我們?cè)诓聹y(cè)一個(gè)形式:則可作記號(hào):也就是有:為了變換形式,我們作如下展開:繼續(xù)推導(dǎo):到此為止NAG證明就結(jié)束,邏輯、意義非常完美!這就是數(shù)學(xué)之美!限于篇幅其他非常重要的梯度法AdaGrad、AdaDelta、RMSProp、Adam等在后續(xù)文章在詳加闡述。Dropout的正則化原理1、dropout如何工作典型的神經(jīng)網(wǎng)絡(luò)其訓(xùn)練流程是將輸入通過網(wǎng)絡(luò)進(jìn)行正向傳導(dǎo),然后將誤差進(jìn)行反向傳播。Dropout就是針對(duì)這一過程之中,隨機(jī)地刪除隱藏層的局部單元,進(jìn)行上述過程。步驟如下:隨機(jī)刪除網(wǎng)絡(luò)中的一些隱藏神經(jīng)元,保持輸入輸出神經(jīng)元不變將輸入通過修改后的網(wǎng)絡(luò)進(jìn)行前向傳播,然后將誤差通過修改后的網(wǎng)絡(luò)進(jìn)行反向傳播對(duì)于其它一批的訓(xùn)練樣本,重復(fù)上述操作訓(xùn)練階段使用Dropout,測(cè)試階段把Dropout屏蔽。所以,在訓(xùn)練的時(shí)候?yàn)槊總€(gè)存活下來的神經(jīng)元做同采樣比例的放大,或者,其它一種選擇就是把測(cè)試結(jié)果依據(jù)采樣比例縮小。Dropout之所以具有正則化能力的兩個(gè)解釋:強(qiáng)迫網(wǎng)絡(luò)擁有冗余的表示;Dropout在訓(xùn)練一個(gè)大規(guī)模的網(wǎng)絡(luò)組合(ensemble)強(qiáng)迫網(wǎng)絡(luò)擁有冗余的表示:在每輪迭代中,總是隨機(jī)屏蔽肯定比例的神經(jīng)元,因此輸出并不了解它正在組合哪些特征,比起沒有Dropout時(shí)過于專注于某些特征(比方拿識(shí)別貓來說,過于專注于貓的眼睛〕,現(xiàn)在模型把專注力分散到每個(gè)特征,使得這些特征也能具備比擬好的預(yù)測(cè)能力。由于原本具有很高權(quán)重的那些特征現(xiàn)在被壓縮,到達(dá)了正則化的效果。Dropout相當(dāng)于模型平均、模型組合:看作是模型平均的一種,平均一個(gè)大量不同的網(wǎng)絡(luò)。不同的網(wǎng)絡(luò)在不同的情況下過擬合,但是共用一個(gè)損失函數(shù),相當(dāng)于同時(shí)進(jìn)行了優(yōu)化,取了平均;相比之前使用全部的數(shù)據(jù)在一個(gè)模型里面訓(xùn)練,Dropout相當(dāng)于在訓(xùn)練階段每次針對(duì)一批數(shù)據(jù)就生成一個(gè)獨(dú)特的小模型,然后再將這些模型組合起來的一種方法。我們?cè)凇?/p>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論