日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

吴恩达老师深度学习视频课笔记:优化算法

發布時間:2023/11/27 生活经验 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 吴恩达老师深度学习视频课笔记:优化算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

????????優化算法能夠幫助你快速訓練模型。

????????mini-batch梯度下降法:把訓練集分割(split)為小一點的子訓練集,這些子集被叫做mini-batch。

????????batch梯度下降法指的是:同時處理整個訓練集,只有處理完整個訓練集才更新一次權值和偏置。并且預期每次迭代的成本都會下降,如果成本函數(cost function)J是迭代次數的一個函數,它應該會隨著每次迭代而減少,如果J在某次迭代中增加了,那肯定在某處出現了問題。

????????mini-batch梯度下降法指的是:每次同時處理的是單個mini-batch,而不是同時處理整個訓練集,每處理完單個子集時都會更新一次權值和偏置。但是與batch梯度下降法不同的是,如果成本函數(cost function)J是迭代次數的一個函數,則并不是每次迭代J都是下降的,它的趨勢是向下,但是也帶有更多的噪聲;在mini-batch梯度下降法中,沒有每次迭代J都是下降的也是可以的,但是走勢應該是向下的,如下圖:


????????選擇mini-batch的大小:假設m為整個訓練集的大小。一種極端情況下,如果mini-batch的大小為m,其實就是batch梯度下降法。另一種極端情況下,如果mini-batch的大小為1,則叫做隨機梯度下降法(stochastic gradient descent),每個樣本都是一個獨立的mini-batch。隨機梯度下降法永遠不會收斂,而是會一直在最小值附近波動,但是并不會在達到最下值時停留下來。實際中,mini-batch的大小應該在1和m之間選擇,1太小而m太大,如下圖:


????????如果訓練集較少,直接使用batch梯度下降法,樣本集較少就沒必要使用mini-batch梯度下降法。一般說的少是指樣本集總數小于2000.如果樣本集數目較大的話,一般的mini-batch大小在64至512之間,如64、128、256、512??紤]到電腦內存布局和訪問的方式,有時mini-batch的大小為2的n次方,code會運行的較快一些。

????????指數加權平均(exponentially weighted averages):關鍵公式vt=βvt-1+(1-β)θt,如下圖,以計算一年中第t天的平均溫度為例,圖中的v100就是一年中第100天計算的數據。有偏差修正(biascorrection)的指數加權平均。


????????偏差修正(bias correction):可以讓平均數計算更加準確。如果你關心初始時期的偏差,在剛開始計算指數加權平均數的時候,偏差修正能幫助你在早期獲得更好的估計。即用vt/(1-βt)= (βvt-1+(1-β)θt)/ (1-βt)替代之前vt=βvt-1+(1-β)θt,你會發現,隨著t的增加,β的t次方將接近于0,所以當t很大的時候,偏差修正幾乎沒有作用,如下圖:


????????動量梯度下降法(gradient descent with momentum):運行速度幾乎總是快于標準的梯度下降算法?;镜南敕ň褪怯嬎闾荻鹊闹笖导訖嗥骄⒗迷撎荻雀履愕臋嘀?。在mini-batch或batch梯度下降法中,第t次迭代過程中,你會計算導數dw,db,如下圖:


????????這樣就可以減緩梯度下降的幅度。不像梯度下降法,每一步都獨立于之前的步驟。超參β控制著指數加權平均(exponentially weighted average),β最常用的值是0.9。實際中,在使用梯度下降法或momentum時并不強制(bother)使用偏差修正,因為10次迭代以后,你的移動平移(your moving average)已經過了初始階段不再是一個具有偏差的預測。vdw的初始值為0,vdw和w具有相同的維數。vdb的初始值也為0和b具有相同的維數。有時會使用vdw=βvdw+dw替代vdw=βvdw+(1-β)dw,一般不這么做。

????????RMSprop(root mean square prop,均方根):也可以加速梯度下降,如下圖。在第t次迭代中,RMSprop會照常計算dw,db,保留指數加權平均,使用sdw替代vdw, sdw=βsdw+(1-β)dw2,這樣做能夠保留導數平方的加權平均數(an exponentially weighted average of thesquares of the derivatives)。sdb類似。接著,RMSprop會這樣更新參數值:w=w-αdw/(square root(sdw)),參數b類似。RMSprop和momentum一樣,可以消除梯度下降中的擺動,并允許你使用一個更大的學習率α。


????????Adam(Adaptive Moment Estimation):將momentum和RMSprop結合在一起,如下圖。一般使用Adam時,要計算偏差修正。Adam能有效適用于不同的神經網絡。在使用Adam時,人們經常賦值超參數β1為0.9, β2為0.999,ε為10-8,經常使用這些缺省值即可,然后嘗試不同的α值,看看哪個效果更好。


????????Learning rate decay(學習率衰減):加快學習算法的一個辦法就是隨時間慢慢減少學習率,稱之為學習率衰減,公式如下圖。如果使用學習率衰減,需要調的超參包括:α0即初始學習率;衰減率(decay? rate);k等。有時人們還會手動衰減,一般只有模型數量小的時候有用。



????????局部最優的問題:創建一個神經網絡,通常梯度為零的點,并不是局部最優點,實際上成本函數J的零梯度點通常是鞍點,如下圖。一個具有高維空間的函數,如果梯度為0,那么在每個方向它可能是凸函數,也可能是凹函數,在高維度空間更有可能碰到鞍點而不會碰到局部最優。


GitHub:?https://github.com/fengbingchun/NN_Test ?

總結

以上是生活随笔為你收集整理的吴恩达老师深度学习视频课笔记:优化算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。