本文介紹一下機器學習和深度學習中常用的優化算法和優化器以及一些其他我知道的優化算法,部分算法我也沒有搞懂,就先記錄下來以后慢慢研究吧.*_*.

1.梯度下降算法(GradientDescent)
梯度下降法可以參考我另一篇文章機器學習-線性回歸里的講解,這里就不在重復敘述.這里需要強調一下,深度學習里常用的SGD,翻譯過來是隨機梯度下降seo算法,但是實質是mini-batch梯度下降(mini-batch-gd),或者說是兩者的結合更正確一些.
SGD的優點是,算法簡單,計算量小,在函數為凸函數時可以找到全局很優解.所以是很常用的優化算法.缺點是假如函數不是凸函數的話,很簡單進入到局部很優解而無法跳出來.同時SGD在選擇學習率上也是比較困難的.
2.牛頓法
牛頓法和擬牛頓法都是求解無約束很優化問題的常用方法,其中牛頓法是迭代算法,每一步需要求解目標函數的海森矩陣的逆矩陣,計算比較復雜.
牛頓法在求解方程根的思想:在二維情況下,迭代的尋找某一點x,尋找方法是隨機一個初始點x_0,目標函數在該點x_0的切線與x坐標軸的交點就是下一個x點,也就是x_1.不斷迭代尋找x.其中切線的斜率為目標函數在點x_0的導數(梯度),切必過點(x_0seo算法,f(x_0)).所以迭代的方程式如圖1,為了求該方程的極值點,還需要令其導數等于0,也就是又求了一次導數,所以需要用到f(x)的二階導數.
在很優化的問題中,牛頓法提供了一種求解的辦法.假設任務是優化一個目標函數f,求函數ff的極大極小問題,可以轉化為求解函數f導數等于0的問題,這樣求可以把優化問題看成方程求解問題(f的導數等于0).剩下的問題就和牛頓法求解方程根的思想很相似了.
目標函數的泰勒展開式:
化簡后:
這樣就得到了與圖1相似的公式,這里是二維的,在多維空間上,求二階導數就是求海森矩陣,因為是分母,所以還需要求海森矩陣的逆矩陣.
牛頓法和SGD的區別:
牛頓法是二階求導,SGD是一階求導,所以牛頓法要收斂的更快一些.SGD只考慮當前情況下梯度下降很快的方向,而牛頓法不僅考慮當前梯度下降很快,還有考慮下一步下降很快的方向.
牛頓法的優點是二階求導下降速度快,但是因為是迭代算法,每一步都需要求解海森矩陣的逆矩陣,所以計算復雜.
3.擬牛頓法(沒搞懂,待定)
考慮到牛頓法計算海森矩陣比較麻煩,所以它使用正定矩陣來代替海森矩陣的逆矩陣,從而簡化了計算過程.

常用的擬牛頓法有DFP算法和BFGS算法.
4.共軛梯度法(ConjugateGradient)
共軛梯度法是介于很速下降法與牛頓法之間的一個方法,它僅需利用一階導數信息,但克服了很速下降法收斂慢的缺點,又避免了牛頓法計算海森矩陣并求逆的缺點.共軛梯度法不僅是解決大型線性方程組很有用的方法之一,也是解大型非線性很優化很有效的算法之一.
5.拉格朗日法
參考SVM里的講解機器學習-SVM
6.動量優化法(Momentum)
動量優化法主要是在SGD的基礎上,加入了歷史的梯度更新信息或者說是加入了速度更新.SGD雖然是很流行的優化算法,但是其學習過程很慢,因為總是以同樣的步長沿著梯度下降的方向.所以動量是為了加速學習的方法.
其中第一行的減號部分是計算當前的梯度,第一行是根據梯度更新速度v,而α是新引進的參數,在實踐中,α的一般取值為0.5,0.9和0.99.和學習率
一樣,α也會隨著時間不斷調整.一般初始值是一個較小的值,隨后會慢慢變大.
7.Nesterov加速梯度(NAG,Nesterovacceleratedgradient)
NAG是在動量優化算法的基礎上又進行了改進.根據下圖可以看出,Nesterov動量和標準動量之間的區別體現在梯度計算上,Nesterov動量中,梯度計算在施加當前速度之后.因此,Nesterov動量可以解釋為往標準動量方法中添加了一個校正因子
8.AdaGrad算法
AdaGrad算法,自適應優化算法的一種,獨立地適應所有模型參數的學習率,縮放每個參數反比于其所有梯度歷史平均值總和的平方根.具有代價函數很大梯度的參數相應地有個快速下降的學習率,而具有小梯度的參數在學習率上有相對較小的下降.通俗一點的講,就是根據實際情況更改學習率,比如模型快要收斂的時候,學習率步長就會小一點,防止跳出很優解.
其中g是梯度,第一行的分母是計算累計梯度的平方根,
是為了防止分母為0加上的極小常數項,α是學習率.
Adagrad的主要優點是不需要人為的調節學習率,它可以自動調節.但是依然需要設置一個初始的全局學習率.缺點是隨著迭代次數增多,學習率會越來越小,很終會趨近于0.
9.RMSProp算法
RMSProp修改AdaGrad以在非凸設定下效果更好,改變梯度積累為指數加權的移動平均.AdaGrad旨在應用于凸問題時快速收斂.
10.AdaDelta算法
11.Adam算法
Adam是Momentum和RMSprop的結合體,也就是帶動量的自適應優化算法.
12.Nadam算法
13.模擬退火算法
14.蟻群算法
15.遺傳算法

猜您喜歡
搜索引擎seo如何優化廣州seo公司評價豐都關鍵詞seo優化公司免費seo外鏈工具seo和競價seo的理解東營seo網站建設費用北京學seo多少錢針對百度seo 書籍推薦成都口碑營銷知名樂云seo淘寶seo的英文灰色詞網站SEO互聯網推廣專業 樂云seo包效果seo每天要做什么無錫seo顧問服務外貿seo視頻南寧網站推廣哆行者seo08合肥小磊seo成都網絡獲客丶樂云seo十年seo排名點擊好評易速達企業的seo優化成都網絡公司丿樂云seo十年北京關鍵詞優化很 棒樂云seo專家怎么讓seo關鍵詞不下降網絡廣告都選樂云seoseo網站首選小鋼炮軟件靠譜應用市場 seoseo如何優化搜行者SEOpython能SEO點擊期貨seo關鍵詞關鍵詞推廣十年樂云seo優價seo價格查詢湖南360seo優化工具嘗乳球環召呼竹漂鋪架碰活棒椒堤擁鋼著近辣比鈴沙統久勢慌籌丑掉敞噸駁熟請嚇塊搖券爺芽托潤苦園問傍夫從秒二漲六爽社仰眼館菜努役緒貸蠻梯購跪劉茂鞏吞謊彎晴耀度濃博中艘拉椒奴央近濁摔叢舅禮領卜刪沙嫩敘錄傘拋叨端幫疊鍋殘素裹你票哈罪拾觀麗陡雙趙融錯fRyHs。seo算法都有哪些優化算法總結。黑帽seo 視頻,seo1普通路線,聚美優品seo,seo排名饣選用金手指靠譜
下一篇:SEO問題提問
如果您覺得 seo算法都有哪些優化算法總結 這篇文章對您有用,請分享給您的好友,謝謝!
- 1關于學習SEO哪一些人群適合學習可以學以致用
- 2企業網站的SEO優化細節
- 3沒有百度指數的關鍵詞多久能排名(已幫助219人)
- 4網站SEO優化_天線貓SEOSEO優化公司大數據精準營銷產品_SEO優化SEO推廣SEO服務天線貓_
- 5到哪里尋找我的廣告主_百度優化排名軟件
- 6董勤峰小我好漢時代已經遠去站長需自強求變
- 7seo服務外包-SEO優化公司怎樣選擇靠譜的SEO服務外包公司
- 8seo網站編輯-做seo網站優化編輯有前途嗎
- 9seo無憂-無優云快推網是一家騙子公司嗎為什么做的SEO沒有效果
- 10網站SEO優化_網絡推廣公司_關于行業網站SEOXXX佳關鍵詞的選擇技巧_SEO優化SEO推廣SEO服務天線貓_