邏輯回歸損失函式為什麼使用最大似然估計而不用最小二乘法?

時間 2021-05-08 06:45:49

1樓:遊衍莫忘

說點自己的理解,邏輯回歸中的最小二乘為什麼不一定是convex

假如有乙個資料集如圖所示,紅色代表1,藍色代表0,我們大概可以知道最優的解是

假如我們的損失函式是最小二乘,也就是 ,初始值是,上面被判定為1,下面被判定為0。

我們從開始找損失函式最小,很容易找到

此時我們面臨乙個艱難的選擇,要不要跨過那幾個藍色的點,達到

此時這三個藍色的點帶入 在0附近,而在0附件的Sigmoid函式會隨著 的變化而急速變化,比如說 只需要變化很小,Sigmoid就可以從0.2變成0.8

也就是說如果我們從移到,三個藍色的點貢獻的損失函式會急速增大。而其他的點貢獻的損失函式會減小,但是不一定能彌補這個增大,因為遠離分界線的點Sigmoid函式變化的非常緩慢。

也就是說非convex是由於在分界線上Sigmoid函式急速變化,而遠離分界線時,Sigmoid函式變化緩慢造成的。

解決方法就是加個 函式作為補償,給遠離分界線的點更大的影響力。

2樓:李rumor

本質是因為sigmoid+quadratic非凸,這樣的做的結果是收斂速度慢。

詳細解答:

神經網路-損失函式

但要注意這個凸的概念是針對最後一層的sigmoid,整個深度神經網路仍然是非凸的:

神經網路的損失函式為什麼是非凸的?

3樓:滄海小魚兒

首先,機器學習的損失函式是人為設計的,用於評判模型好壞(擬合程度)的乙個標準、尺子,就像去評判任何一件事物一樣,從不同角度看往往存在不同的評判標準,不同的標準往往各有優劣,並不衝突。唯一需要注意的就是最好選乙個容易測量的標準,不然就難以評判了。

其次,既然不同標準並不衝突,那使用最小二乘作為邏輯回歸的損失函式當然是可以,那這裡為什麼不用最小二乘而用最大似然呢?請看一下最小二乘作為損失函式的函式曲線:

圖1 最小二乘作為邏輯回歸模型的損失函式,theta為待優化引數

以及最大似然作為損失函式的函式曲線(最大似然損失函式後面給出):

圖2 最大似然作為邏輯回歸模型的損失函式,theta為待優化引數

很顯然了,圖2比圖1展現的函式要簡單多了,很容易求到引數的最優解(凸函式),而圖1很容易陷入區域性最優解(非凸函式)。這就是前面說的選取的標準要容易測量,這就是邏輯回歸損失函式為什麼使用最大似然而不用最小二乘的原因了。

以上是這個問題的答案,下面來推一下邏輯回歸中最大損失函式到底是怎麼來的,因為我看到很多地方只是說了一下用到最大似然的方法,就直接給出了最終的形式,還看到有書裡面過程搞錯了,也給出了最終的正確形式。

既然是最大似然,我們的目標當然是要最大化似然概率了:

對於二分類問題有:

用乙個式子表示上面這個分段的函式為:(記得寫成相乘的形式)

代入目標函式中,再對目標函式取對數,則目標函式變為:

如果用 來表示 ,則可用 來表示 ,再將目標函式max換成min,則目標函式變為:

這樣就得到最終的形式了!

4樓:哥德巴赫的猜想

個人認為這個問題可以從求最優解的角度來解釋:

如果用最小二乘法,目標函式就是 ,是非凸的,不容易求解,會得到區域性最優。

如果用最大似然估計,目標函式就是對數似然函式: ,是關於 的高階連續可導凸函式,可以方便通過一些凸優化演算法求解,比如梯度下降法、牛頓法等。

怎麼從通俗意義上理解邏輯回歸的損失函式?

損失函式是衡量學習成果好壞的乙個標準 這裡的關鍵乙個是伯努利分布,乙個是最大似然估計最大似然估計往往會轉化成對數的形式,對數函式是單調的,也就是說,乙個變數的最大值,在做完對數變換後,仍然是最大值,然而,任何概率取對數,都會成為負數,人們往往更喜歡處理負數的相反數,乙個負數的最大值,是它取相反數後的...

為什麼優化損失函式的上界可以優化損失函式?

DomainAdaptation 題主所說的應該是非凸的0 1損失函式和相應的替代損失函式吧。在非代價敏感的分類的問題中,我們最容易想到就是用0 1損失函式來度量錯分樣本的損失。但由於0 1損失非凸,不好優化,於是人們採用了一系列的替代損失函式 surragate loss function 來替代...

為什麼完全非彈性碰撞損失的機械能損失最大?

文言 可以證明,兩個質點間的一對作用力與反作用力作功之和在任何參考係中相同。於是在其中乙個質點a參考係下 a點不動 碰撞前b點速度為V,碰撞後b點速度為0,a對b做最大負功,這中間是一對非保守性的相互作用力。換回背景參考係下,這對相互作用力做功之和為最大負功,那麼系統機械能損失最大。 黃亦斌 黃亦斌...