邏輯迴歸原理

邏輯迴歸

之前在線性迴歸的章節中,我們瞭解了線性迴歸的原理就是把點落在一條直線上,而在邏輯迴歸的部分則是希望能夠把點落在一條曲線上,這是廣義的線性迴歸,然後我們再用一個閾值來將那些點分開而達到分類的效果。

而在最大熵原理的指導下,我們知道了那條曲線應該是一個什麼樣子的。


LR和最大熵模型

首先,回顧我們之前推導出的最大熵模型爲:exp(i=1nwifi(x,y))y exp(i=1nwifi(x,y))

在二分類的邏輯迴歸模型中,y的取值假定有兩種 y0,y1 ,那麼對應到特徵函數 fi(x,y) 上,我們可以設定:f(x,y)={h(x),  y=y10,  y=y0 ,也就是說,我們定義特徵函數只有在y=y1 的時候抽取特徵。

y=y1 時:

P(y1|x)=exp(i=1nwifi(x,y1))exp(i=1nwifi(x,y1))+exp(i=1nwifi(x,y0))

P(y1|x)=exp(w h(x))exp(w h(x))+exp(w 0)

P(y1|x)=exp(w h(x))exp(w h(x))+1

y=y0 時:

P(y0|x)=exp(i=1nwifi(x,y0))exp(i=1nwifi(x,y1))+exp(i=1nwifi(x,y0))

P(y0|x)=exp(w 0)exp(w h(x))+exp(w 0)

P(y0|x)=1exp(w h(x))+1

綜合起來:

P(y0|x)=1P(y1|x)

具體結合二分類的邏輯迴歸模型來說,在LR中,條件概率由P(Y|X)表示,X的取值範圍是所有實數,而Y的取值範圍只有兩個,這裏爲了數學上的計算方便一點,把這兩個定位1和0,也就是說在上面的式子中,令 y1=1,y0=0 ,此時LR的條件概率分佈爲:

{P(Y=1|X)=exp(h(x))1+exp(h(x)) P(Y=0|X)=11+exp(h(x))


LR和對數機率

我們既然知道了LR的條件概率分佈,也就知道了對於一個給定的x,可以求出被分類成1和0的概率值,通過將x分類到概率值比較大的那一類就可以完成對於x的分類過程。

一件事件的機率(odds)是指該事件發生的概率與不發生的概率的比值。也就是說,如果一個事件發生的概率是p,那麼不發生的概率自然是1-p,那麼它的機率就是 p1p ,如果將機率對數化:logit(p)=log(p/1-p)

在LR中,如果只關注y=1的概率時,輸出y=1的對數機率就是輸入x的線性函數:

logP(Y=1|X)1P(Y=1|X)=wx


LR的參數估計

根據上面的推導,可以設:{P(Y=1|X)=h(x) P(Y=0|X)=1h(x)

我們可以用極大似然估計來求解模型的參數

*之前在最大熵模型的章節中就證明過

似然函數爲:i=1N[h(xi)yi][1h(xi)1yi]

對數化後爲:

i=1N[yilog h(xi)+(1yi)log(1h(xi))]

i=1N[yilogh(xi)1h(xi)+log(1h(xi))]

i=1N[yi(wxi)+log(1+exp(wxi))]

然後用梯度下降或者牛頓法來繼續求解。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章