機器學習 梯度下降演算法

2022-03-29 09:27:30 字數 1068 閱讀 5908

梯度下降法是乙個最優化演算法,通常也稱為最速下降法

最速下降法是求解無約束優化問題最簡單和最古老的方法之一,雖然現在已經不具有實用性,但是許多有效演算法都是以它為基礎進行改進和修正而得到的。

最速下降法是用負梯度方向為搜尋方向的,最速下降法越接近目標值,步長越小,前進越慢。

可以用於求解非線性方程組。

舉乙個非常簡單的例子,如求函式

f(x) = x^2 的最小值。

利用梯度下降的方法解題步驟如下:

1、求梯度

▽ = 2x

2向梯度相反的方向移動

,如下x = x - v·▽,其中,

v為步長。

如果步長足夠小,則可以保證每一次迭代都在減小,但可能導致收斂太慢,如果步長太大,則不能保證每一次迭代都減少,也不能保證收斂。

當x=1的時候,斜率是2,x = 1-0.001×2 = 1-0.002 = 0.998,逐漸接近0

當x=1的時候,斜率是-2,x = -1+0.001×2 = -1+0.002 = -0.998,逐漸接近0

3迴圈迭代步驟2,直到x的值變化到使得

f(x) 在兩次迭代之間的差值足夠小,比如0.00000001,也就是說,直到兩次迭代計算出來的

f(x)基本沒有變化,則說明此時

f(x)已經達到區域性最小值了。

4、此時,輸出x,這個

就是使得函式

f(x)

最小時的x的取值 。

機器學習 梯度下降演算法

梯度下降法是乙個 最優化演算法,通常也稱為最速下降法。最速下降法是求解無約束優化問題最簡單和最古老的方法之一,雖然現在已經不具有實用性,但是許多有效演算法都是以它為基礎進行改進和修正而得到的。最速下降法是用負梯度方向為搜尋方向的,最速下降法越接近目標值,步長越小,前進越慢。可以用於求解非線性方程組。...

機器學習 梯度下降演算法

梯度下降演算法。什麼是梯度 梯度 梯度的本意是乙個向量,由函式對每個引數的偏導組成,表示某一函式在該點處的方向導數沿著該方向取得最大值,即函式在該點處沿著該方向變化最快,變化率最大。梯度下降演算法原理 演算法思想 梯度下降是一種非常通用的優化演算法,能夠為大範圍的問題找到最優解。梯度下降的中心思想就...

機器學習 梯度下降

參照 機器學習 這本書的第4.4.3節。一.解決目標及情景假設 當給定一些資料,輸入x向量已知,輸出y也已知,設計乙個線性函式y h x 去擬合這些資料。既然是線性函式,在此不妨設為h x w0 x0 w1 x1。此時我們遇到的問題就是如何確定w0和w1這兩個引數,即w w0,w1 這個向量。既然是...