天天看點

Logistic regression 為什麼用 sigmoid ?

假設我們有一個線性分類器:

Logistic regression 為什麼用 sigmoid ?

我們要求得合适的 W ,使 0-1 loss 的期望值最小,即下面這個期望最小:

Logistic regression 為什麼用 sigmoid ?

一對 x y 的 0-1 loss 為:

Logistic regression 為什麼用 sigmoid ?

在資料集上的 0-1 loss 期望值為:

Logistic regression 為什麼用 sigmoid ?

由 鍊式法則 将機率p變換如下:

Logistic regression 為什麼用 sigmoid ?

為了最小化 R(h),隻需要對每個 x 最小化它的 conditional risk:

Logistic regression 為什麼用 sigmoid ?

由 0-1 loss 的定義,當 h(x)不等于 c 時,loss 為 1,否則為 0,是以上面變為:

Logistic regression 為什麼用 sigmoid ?

又因為

Logistic regression 為什麼用 sigmoid ?

是以:

Logistic regression 為什麼用 sigmoid ?

為了使 條件風險 最小,就需要 p 最大,也就是需要 h 為:

Logistic regression 為什麼用 sigmoid ?

上面的問題等價于 找到 c*,使右面的部分成立:

Logistic regression 為什麼用 sigmoid ?

取 log :

Logistic regression 為什麼用 sigmoid ?

在二分類問題中,上面則為:

Logistic regression 為什麼用 sigmoid ?

即,我們得到了 log-odds ratio !

接下來就是對 log-odds ratio 進行模組化,最簡單的就是想到線性模型:

Logistic regression 為什麼用 sigmoid ?

則:

Logistic regression 為什麼用 sigmoid ?

于是得到 sigmoid 函數:

Logistic regression 為什麼用 sigmoid ?

由此可見,log-odds 是個很自然的選擇,sigmoid 是對 log-odds 的線性模組化。

學習資料:

https://onionesquereality.wordpress.com/2016/05/18/where-does-the-sigmoid-in-logistic-regression-come-from/

https://stats.stackexchange.com/questions/162988/why-sigmoid-function-instead-of-anything-else

推薦閱讀 曆史技術博文連結彙總

也許可以找到你想要的:

[入門問題][TensorFlow][深度學習][強化學習][神經網絡][機器學習][自然語言處理][聊天機器人]

繼續閱讀