python人工智慧深度學習演算法優化

2022-09-24 14:30:30 字數 999 閱讀 9839

目錄

隨機梯度下降

隨機梯度下降和其他的梯度下降主要區別,在於sgd每次只使用乙個資料樣本,去計算損失函式,求梯度,更新引數。這種方法的計算速度快,但是下降的速度慢,可能會在最低處兩邊**,停留在區域性最優。

sgm with momentum:動量梯度下降

動量梯度下降,在進行引數hxzvoufkv更新之前,會對之前的梯度資訊,進行指數加權平均,然後使用加權平均之後的梯度,來代替原梯度,進行引數的更新。如此,更新的時候,都會包含之前的梯度資訊。

計算的時候,會在加權平均的梯度上加上乙個beta引數,原梯度加上1-beta,二者之和就是用於進行引數更新的動量梯度。

由於有之前的梯度資訊,因此該方法相當於對梯度下降加入了乙個慣性。如果前面的是下降,那麼此處會下降更快,如果突然接觸到了最低點,也會因為有動量,而再往前走走。也就是說當前的方www.cppcns.com向,由此前積累的方向,和現在的梯度方向共同決定。因此,訓練過程的**幅度會變小,速度變快。

sgdm速度沒adam快,但泛化能力好。

adam是一種在深度學習模型中用來替代隨機梯度下降的優化演算法

它是sgdm和rmsprop演算法的結合,訓練速度快,泛化能力不太行。

adaptive gradient自適應步長

該方法為現在的梯度*步長新增了乙個係數:1/歷史梯度的平方和,再開根號)

在資料分布稀疏的時候,能更好地利用稀疏梯度的資訊,比標準的sgd更有效地收斂。

梯度平方根root mean square prop

該方法和adagrad的區別就是分母不一樣,使得係數不會因為前幾步的梯度太大而導致分母太大,從而導致係數變得太小而走不動了。類似於momentum的計算方式。

nesterov accelerated gradient,是在sgd和sgdm的基礎上的改進,在sgdm中,採用的梯度方向,是由當前的梯度方向,以及前面累積的梯度方向共同決定,但在nag中,是先使用累積的動量計算一次,得到下一次的梯度方向,再把下一程式設計客棧個點的梯度方向,與歷史累積動量相結合,計算現在這個時刻的累計動量。

python深度學習 人工智慧雜記

人工智慧的簡潔定義如下 努力將通常由人類完成的智力任務自動化。早期的西洋棋程式僅包含程式設計師精心編寫的硬編碼規則,並不屬於機器學習。在相當長的時間內,許多專家相信,只要程式設計師精 心編寫足夠多的明確規則來處理知識,就可以實現與人類水平相當的人工智慧。這一方法被稱為符號主義人工智慧 symboli...

人工智慧,機器學習,深度學習

所謂人工智慧,通俗地講是指由人工製造出來的系統所表現出來的智慧型 機器學習簡單來講就是通過演算法,使機器能從大量歷史資料中學習規律,從而對新的樣本做出智慧型識別或對未來做 機器學習是基於概率統計 矩陣或圖模型而得出的分析結論 機器學習是人工智慧的乙個分支 深度學習是機器學習的乙個新領域 監督學習 邏...

Python人工智慧深度學習RNN模型結構流程

目錄 rnn主要特點是,在dnn隱藏層的輸出內容會被儲存,並且可以作為輸入給到下乙個神經元。如下圖所示,當 台北 這個詞被輸入的時候,前面的詞有可能是 離開 有可能是 到達 如果把上一次輸入的 離開 所得的隱藏層內容,輸入給下一層,這樣就有可能區分開是 離開台北 還是 到達台北 如果隱藏層儲存的內容...