之所以會有這個問題,是因為在學習 logistic regression 時,《統計機器學習》一書說它的負對數似然函式是凸函式,而 logistic regression 的負對數似然函式(negative log likelihood)和 交叉熵函式(cross entropy)具有一樣的形式,
先給出結論,logistic regression 時,cross entropy 是凸的,但多層神經網路時,cross entropy 不是凸的,
logistic regression 時,cross entropy 是凸的:
Why is the error function minimized in logistic regression convex? -- Deepak Roy Chittajallu
多層神經網路(MLP)時,cross entropy 不是凸的:(肯定不是凸的啊,不然調參哪來這么多問題)
Cost function of neural network is non-convex? - Cross Validated
cross entropy 損失函式:(\(\hat{y}\) 為預測值,\(y\) 為真實值)
\[-y \log \hat{y}-(1-y) \log (1-\hat{y}) \]直觀解釋
簡單點的解釋是,logistic regression 時,證明兩個凸函式相加還是凸函式,因為 \(y\) 不是 0 就是 1,那就要證明此時 \(- \log \hat{y}\) 和 \(- \log (1-\hat{y})\) 關于 \(w\) 都是凸函式,也就是證明 Hessian 矩陣半正定,證明看上述鏈接,
而 MLP 時,給出直觀解釋是,在神經網路的某一隱藏層交換兩個神經元的權重,最后輸出層得到的值不會變,這就說明如果有一個最優解,那交換神經元權重后,解仍然是最優的,那么此時就存在兩個最優解了,那就不是凸函式了,
logistic regression 為什么還用梯度下降法求解呢,不直接求決議解?
在令 cross entropy 一階導數為 0 時,就會發現無法將權重 \(w\) 提到等式左邊,即無法寫成 \(w = 式子\) 這種形式,所以雖然有等式約束,但直接求決議解還是挺困難,所以梯度下降法、牛頓法、擬牛頓法常用來求解 logistic regression,
References
Why is the error function minimized in logistic regression convex? -- Deepak Roy Chittajallu
Cost function of neural network is non-convex? - Cross Validated
Logistic回歸能有決議解嗎? - Zzzzzzzz的回答 - 知乎
凸還是非凸?交叉熵在softmax和neural network中的不同凸性 -- RHONYN
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/187960.html
標籤:其他
上一篇:python使用face_recognition包的環境設定
下一篇:七月在線spark教程
