機器學習的梯度下降演算法中尋找最合適學習率「阿爾法」的意義是什麼?

時間 2021-06-05 14:23:51

1樓:洋洋

目標函式的變數還是theta,可以把alpha視為乙個可以改變的常量,我們的目的就是為了更快地更準確地收斂到最小值。

就好比要從a點到b點,ab=100公尺,我們的目的是達到b點(目標函式收斂),我們(變數)可以選擇不同的交通工具(alpha)到達b點,

乘飛機(alpha較大),還沒起飛就到b點了,那就得回來,因為慣性大所以要來回好多次(振盪)才能準確到b點騎自行車(alpha適中),慣性小,速度也不慢,很快就到b點用腳走(alpha較小),速度慢,而且肯定能一次性準確達到b點,但是速度太慢了,還不如騎車好

所以,alpha就像交通工具一樣,決定了到達目的地的快慢。每個人可以選不同的交通工具,同樣,變數也可以有不同的alpha,我們偏向於選擇最優的交通工具,alpha也類似。個人觀點,有誤敬請指正

2樓:小小帝奇

J(theta)是theta變數的函式,alpha是通過梯度下降法求出的當前alpha下乙個的值,並沒有求出代價函式曲線,然後不斷迭代alpha求出J(theta)值。

3樓:Sixiang

在優化理論中,學習率還有乙個更形象的叫法,叫步長(stepsize)

在梯度下降演算法中,步長決定了每一次迭代過程中,會往梯度下降的方向移動的距離。試想一下,如果步長很大,演算法會在區域性最優點附近來回跳動,不會收斂(如下圖);但如果步長太短,演算法每步的移動距離很短,就會導致演算法收斂速度很慢。

因此比較常見的用法是使得步長滿足如下條件:and .(比如:)這樣可以使得步長在迭代的過程中逐漸減小,但是又不至於迭代次數過大時學習率過低。

但是根據問題(價值函式的影象)的不同,收斂的速度,以及收斂到的解的效果都會不同。比如說,如果問題的價值函式很平滑(梯度很小),那我們應該設定稍微大一點的步長讓演算法盡快收斂(eg. );但如果價值函式很陡(梯度很大),那我們可能需要設定比較小的步長讓演算法不至於跳出最優解(eg.

)。但我們在優化的時候往往是不知道價值函式的影象是什麼樣的,這也就是為什麼要測試不同的步長,也就是學習率的原因。

Bertsekas, D. P. (1999). Nonlinear programming.

4樓:胡聖朗

Learning rate 屬於調節引數, 就像 professor Ng 說的,是需要不斷train模型的時候調節的目的當然就是可以通過人為設定調整模型training的次數最終達到相對converge.

至於設定多少就得靠試了.

對於模型的training 是會設定epochs(訓練次數),訓練次數越多那耗時越長所以通過綜合設定各類引數(Hyperparameters) 達到高效準確的訓練模型

當然對於模型準確性來說來說資料本身是最重要的

梯度下降法是萬能的模型訓練演算法嗎?

螃蟹貓 梯度下降是最優化最基本的方法。機器學習把問題抽象為最優化問題。因此你覺得梯度下降成了機器學習的萬能方法。然而,就像梯度下降的缺點一樣,你這個 覺得 很可能是個區域性最優。 田star 並不是。如果有梯度的資訊,有限記憶體BFGS是更好的辦法!而且所謂的學習率,如果不是凸問題就不能設定為常數,...

關於機器學習演算法中的smote處理不平衡問題,是針對於整個資料集處理還是僅針對訓練集來處理?

facetothefate 嘛,這個問題顯然可以翻譯成 對於交叉驗證,到底應該在哪做over sampling?顯然有這麼幾種做法 1,對整個開發集做over sampling,然後再交叉驗證 2,先劃分,對訓練集做 over sampling,用測試集測試 首先第一點要銘記於心的是,我們進行交叉驗...

機器學習中的邏輯回歸演算法很常見,但是邏輯回歸中的邏輯二字如何理解?

華子 原回答 我也是最近才知道這個歷史,因為最開始的時候這個東西是乙個英中國人研究父母身高 X 和子女身高 Y 關係的時候,搞出來的。他發現A家庭父母都是一公尺九,B家庭父母都是一公尺六,結果A家庭子女一公尺八五,B 家庭子女一公尺七,兩個家庭的子代身高 回歸 到乙個中間值。以上資料只是我瞎編的例子...