python人工智能深度學(xué)習(xí)算法優(yōu)化
1.SGD
隨機梯度下降
隨機梯度下降和其他的梯度下降主要區(qū)別,在于SGD每次只使用一個數(shù)據(jù)樣本,去計算損失函數(shù),求梯度,更新參數(shù)。這種方法的計算速度快,但是下降的速度慢,可能會在最低處兩邊震蕩,停留在局部最優(yōu)。
2.SGDM
SGM with Momentum:動量梯度下降
動量梯度下降,在進(jìn)行參數(shù)更新之前,會對之前的梯度信息,進(jìn)行指數(shù)加權(quán)平均,然后使用加權(quán)平均之后的梯度,來代替原梯度,進(jìn)行參數(shù)的更新。如此,更新的時候,都會包含之前的梯度信息。
計算的時候,會在加權(quán)平均的梯度上加上一個beta參數(shù),原梯度加上1-beta,二者之和就是用于進(jìn)行參數(shù)更新的動量梯度。
由于有之前的梯度信息,因此該方法相當(dāng)于對梯度下降加入了一個慣性。如果前面的是下降,那么此處會下降更快,如果突然接觸到了最低點,也會因為有動量,而再往前走走。也就是說當(dāng)前的方向,由此前積累的方向,和現(xiàn)在的梯度方向共同決定。因此,訓(xùn)練過程的震蕩幅度會變小,速度變快。
SGDM速度沒Adam快,但泛化能力好。
3.Adam
Adam是一種在深度學(xué)習(xí)模型中用來替代隨機梯度下降的優(yōu)化算法
它是SGDM和RMSProp算法的結(jié)合,訓(xùn)練速度快,泛化能力不太行。

4.Adagrad
Adaptive Gradient自適應(yīng)步長
該方法為現(xiàn)在的梯度*步長添加了一個系數(shù):1/(歷史梯度的平方和,再開根號)

在數(shù)據(jù)分布稀疏的時候,能更好地利用稀疏梯度的信息,比標(biāo)準(zhǔn)的SGD更有效地收斂。
5.RMSProp
梯度平方根root mean square prop

該方法和Adagrad的區(qū)別就是分母不一樣,使得系數(shù)不會因為前幾步的梯度太大而導(dǎo)致分母太大,從而導(dǎo)致系數(shù)變得太小而走不動了。類似于Momentum的計算方式。
6.NAG
Nesterov Accelerated Gradient,是在SGD和SGDM的基礎(chǔ)上的改進(jìn),在SGDM中,采用的梯度方向,是由當(dāng)前的梯度方向,以及前面累積的梯度方向共同決定,但在NAG中,是先使用累積的動量計算一次,得到下一次的梯度方向,再把下一個點的梯度方向,與歷史累積動量相結(jié)合,計算現(xiàn)在這個時刻的累計動量。

以上就是python人工智能深度學(xué)習(xí)算法優(yōu)化的詳細(xì)內(nèi)容,更多關(guān)于python人工智能算法優(yōu)化的資料請關(guān)注腳本之家其它相關(guān)文章!
- python人工智能human?learn繪圖創(chuàng)建機器學(xué)習(xí)模型
- Python 人工智能老照片修復(fù)算法學(xué)習(xí)
- python人工智能深度學(xué)習(xí)入門邏輯回歸限制
- python深度學(xué)習(xí)人工智能BackPropagation鏈?zhǔn)椒▌t
- Python人工智能深度學(xué)習(xí)模型訓(xùn)練經(jīng)驗總結(jié)
- Python人工智能深度學(xué)習(xí)RNN模型結(jié)構(gòu)流程
- Python人工智能深度學(xué)習(xí)CNN
- Python人工智能學(xué)習(xí)PyTorch實現(xiàn)WGAN示例詳解
- Python AI入門學(xué)習(xí):從Hello World到線性回歸、神經(jīng)網(wǎng)絡(luò)、圖像分類
相關(guān)文章
react中useLayoutEffect 和useEffect區(qū)別
本文主要介紹了react中useLayoutEffect 和useEffect區(qū)別,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-12-12
基于Python實現(xiàn)excel表格數(shù)據(jù)一鍵轉(zhuǎn)json格式小工具
這篇文章主要為大家詳細(xì)介紹了如何使用Python開發(fā)excel一鍵轉(zhuǎn)json小工具,實現(xiàn)任意選中excel的xlsx和xls文件轉(zhuǎn)化成json文件,并把結(jié)果顯示在界面中,需要的可以了解下2025-09-09
python面試題Python2.x和Python3.x的區(qū)別
這篇文章主要介紹了python面試題Python2.x和Python3.x的區(qū)別 ,在面試中也經(jīng)常會問到,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-05-05
python基于Node2Vec實現(xiàn)節(jié)點分類及其可視化示例詳解
這篇文章主要為大家介紹了python基于Node2Vec實現(xiàn)節(jié)點分類及其可視化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
基于Python實現(xiàn)一個網(wǎng)頁轉(zhuǎn)PDF工具
本文介紹了 Python 網(wǎng)頁轉(zhuǎn) PDF 工具的開發(fā)實戰(zhàn),工具核心需求包括單個 / 批量 URL 轉(zhuǎn)換、自定義 PDF 參數(shù)及錯誤處理,技術(shù)選型為 pdfkit、wkhtmltopdf、argparse 和 os 庫,文中詳細(xì)闡述環(huán)境搭建步驟,需要的朋友可以參考下2025-10-10
Python Paramiko模塊中exec_command()和invoke_shell()兩種操作區(qū)別
invoke_shell 使用 SSH shell channel,而 exec_command 使用 SSH exec channel,本文主要介紹了Python Paramiko模塊中exec_command()和invoke_shell()兩種操作區(qū)別,具有一定的參考價值,感興趣的可以了解一下2024-02-02

