為什麼sigmoid function可以表示分類問題的probability?
正在學Andrew Ng的機器學習的網課,講到了分類問題中,如果把sigmoid function理解成y=1的概率:
那麼根據最大似然原理就可以推出那個cost function,到這裡我都理解,但是為什麼sigmoid function可以理解成概率呢?我試著推了一下:
如果假定數據集可以像linear regression里那樣model成一個線性函數:
其中是誤差,時數據就label為1,否則就label為0。那麼當確定的時候,假設是個正值,如果,那麼數據就會被錯誤的label成0。如果sigmoid function確實表示了y=1的概率,那麼就可以倒過來求誤差的分布:
或者寫成:
這剛好是平均值為0,方差為的Logistic distribution的累積分布函數,也就是說只要誤差符合這樣一個Logistic distribution,那麼用sigmoid function來表示y=1概率就是說的通的。
這和用假定誤差符合正態分布,來推導最小二乘法很像。但是我的疑問就是,誤差符合正態分布可以用central limit theorem解釋,但誤差符合logistic分布好象就不好解釋了,雖然這兩個分布長得很像,但還是不一樣的。另外在用正態分布推最小二乘法的時候是不限定方差的,因為最後的結果中不會出現方差,但是這裡的推導必須限定logistic regression的方差是,這個好像也很難解釋。
總之我現在就卡在這裡了,求大神指教!
線性回歸假設 . 而高斯分布有線性可加性,等價於. 所以有這種加個雜訊項的表示只適用於高斯分布。
而logistic回歸假設..至於為什麼要用sigmoid,因為sigmoid是Bernoulli分布的canonical link function. 什麼是canonical link function呢,這得從exponential family和general linear model談起。假設p(y|x)是如下exponential family的分布那麼可以推出y的期望為這個就是canonical link function。而p(y|x)是Bernoulli的話,就是sigmoid。是高斯的話,。然後假設,我們就有了logistic regression和linear regression。p(y|x)是其他分布的話還能推出其他回歸模型。這叫general linear model.另外一種解釋是假設數據是由如下過程生成的
是多項式分布,也就是Bernoulli的多維推廣,可以是屬於如下exponential family的任何分布
(補充:這族分布包含另一回答中的同方差高斯。)
那麼可以推出
這裡
sigmoid是上面softmax的二維情形。
這樣說有點本末倒置了。並不是先寫出sigmoid 函數,然後假定它是類別的條件概率。而是由條件概率的定義在一定的假設下推出它是sigmoid 函數。而這個假設就是同方差假設,即給定每個類別時變數的條件分布是高斯的並且方差相同。
對於二分類問題,我們要回答的問題是,已知輸入樣本x時,它屬於類1的條件概率為
其中,
當x是連續變數時,假設x對兩類的條件概率服從高斯分布且方差相同,
其中是隨機變數的維數,所以有
所以
可見, 是 的線性函數,其中,
而
以上是兩類分類問題的推導。
推廣以上推導結論到多類問題,給定樣本x屬於第k類的後驗概率為:
此時結果是softmax 函數。
為什麼要同方差?因為同方差的時候,a式中的上下兩項的二次項剛好可以消掉,只剩下一次項。中間省去了一些簡單的推導過程,[敲黑板]下去自己多推一推啊!
推薦閱讀:
TAG:機器學習 | 概率 | 統計 | logisticregression |