簡體   English   中英

Logistic回歸的隨機梯度下降總是返回Inf的代價,權重向量再也不會接近

[英]Stochastic Gradient Descent for Logistic Regression always returns a cost of Inf and weight vector never gets any closer

我正在嘗試在MATLAB中實現邏輯回歸求解器,並且通過隨機梯度下降法來尋找權重。 我遇到了一個問題,我的數據似乎產生了無限的成本,而且無論發生什么情況,它都永遠不會下降……這兩點看起來都很好,我無法想象為什么我的成本函數總是會返回無限的。

這是我的訓練數據 ,第一列是課程(1或0),接下來的七列是我要回歸的要素。

您的漸變符號有誤:

漸變= learningRate。*(trueClass(m)-ForecastClass)。*轉置([1.0 features(m,:)])

它應該是:

漸變= learningRate。*(predictedClass-trueClass(m))。*轉置([1.0 features(m,:)])

有關詳細信息,請參見Ng的注釋 相對於第j個參數的梯度如下獲得:(其中h(x)是對數函數; y是真實標簽; x是特征向量。) 在此處輸入圖片說明

否則,當您采用漸變的負數時,您將進行漸變。 我相信這就是為什么您最終會得到無窮的成本的原因,因為它是死循環,而且您永遠也不會擺脫它。

更新規則仍應為:

weightVector = weightVector-漸變

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM