邏輯回歸與最大熵模型

本文為《統(tǒng)計(jì)學(xué)習(xí)方法》第6章筆記。

概論

邏輯回歸與最大熵模型都屬于對數(shù)線性模型,邏輯回歸求解似然函數(shù)的極大值,得到參數(shù)w,最大熵模型先轉(zhuǎn)對偶問題,求得條件概率模型,也是通過極大值求解得到w。涉及到最優(yōu)化算法的部分都比較晦澀,由于本人理解得也不深刻,這里就不詳細(xì)展開了。

邏輯回歸模型

邏輯斯蒂分布

設(shè)X為連續(xù)隨機(jī)變量,服從邏輯斯蒂分布的分布函數(shù)和密度函數(shù)分別為:
F(x)=P(X \leq x)=\frac{1}{1+e^{-(x-u)/\gamma}}\\ f(x)=F'(x)=\frac{e^{-(x-u)/\gamma}}{\gamma(1+e^{-(x-u)/\gamma})^2}

二項(xiàng)邏輯斯蒂回歸模型

條件概率分布為:
P(Y=1|x)=\frac{exp(w \odot x+b)}{1+exp(w \odot x+b)}\\ P(Y=0|x)=\frac{1}{1+exp(w \odot x+b)}
將b擴(kuò)充到w向量內(nèi),1擴(kuò)充到x向量內(nèi),則方程簡化為
P(Y=1|x)=\frac{exp(w \odot x)}{1+exp(w \odot x)}\\ P(Y=0|x)=\frac{1}{1+exp(w \odot x)}
幾率:事情發(fā)生與不發(fā)生的概率之比。
對數(shù)幾率logit(p)=log\frac{p}{1-p}
對邏輯回歸而言,對數(shù)幾率為w\odot x

模型參數(shù)估計(jì)

設(shè)P(Y=1|x)=\pi(x)\\ P(Y=0|x)=1-\pi(x)
似然函數(shù)為:
\prod_{i=1}^N \pi(x_i)^{y_i}[1-\pi(x_i)]^{1-y_i}
對數(shù)似然函數(shù)為:
L(w)=\sum_{i=1}^N [y_ilog\pi(x_i)+(1-y_i)log(1-\pi(x_i))]\\ =\sum_{i=1}^N [y_i log\frac{\pi(x_i)}{1-\pi(x_i)}+log(1-\pi(x_i))]\\ =\sum_{i=1}^N [y_i (w \odot x_i)-log(1+exp(w \odot x_i))]
對L(w)求極大值,得到w的估計(jì)值。一般使用梯度下降或擬牛頓法(代碼中常見的BFGS算法)

多項(xiàng)邏輯斯蒂回歸

P(Y=k|x)=\frac{exp(w_k \odot x)}{1+\sum_{k=1}^{K-1}exp(w_k \odot x)},k=1,2,...K-1\\ P(Y=K|x)=\frac{1}{1+\sum_{k=1}^{K-1}exp(w_k \odot x)}

最大熵模型

假設(shè)離散隨機(jī)變量X的概率分布為P(X),則其熵為:
H(P)=-\sum_x P(x)logP(x)
熵滿足不等式:
0 \leq H(p) \leq log|X|
|X|為X的取值個(gè)數(shù),當(dāng)X服從均勻分布時(shí),熵最大。
熵最大原理:最好的模型是熵最大的模型。在沒有更多信息時(shí),不確定的部分都是等概率的。
給定訓(xùn)練數(shù)據(jù)集,聯(lián)合經(jīng)驗(yàn)分布和邊緣經(jīng)驗(yàn)分布為:
\widetilde P(X=x,Y=y)=\frac {v(X=x,Y=y)}{N}\\ \widetilde P(X=x)=\frac {v(X=x)}{N}\\ v(X=x,Y=y)表示訓(xùn)練數(shù)據(jù)中(x,y)出現(xiàn)的頻次,v(X=x)表示x出現(xiàn)的頻次
用特征函數(shù)f描述x和y之間的某一個(gè)事實(shí):
f(x,y)= \left\{\begin{array}\\ 1,x與y滿足某一個(gè)事實(shí)\\ 0,其他 \end{array}\right.
f關(guān)于聯(lián)合經(jīng)驗(yàn)分布的期望值為:
E_{\widetilde P}(f)=\sum_{x,y}\widetilde P(x,y)f(x,y)
f關(guān)于邊緣經(jīng)驗(yàn)分布及模型P(Y|X)的期望為:
E_P(f)=\sum_{x,y}\widetilde P(x)P(y|x)f(x,y)
如果模型能夠獲取數(shù)據(jù)中的信息,那么2個(gè)期望值應(yīng)該相等
E_{\widetilde P}(f)=E_P(f)
定義在P(Y|X)上的條件熵為:
H(P)=-\sum_{x,y}\widetilde P(x)P(y|x)logP(y|x)
滿足所有約束的模型集合C為:
C \equiv {P \in \rho|E_{\widetilde P}(f_i)=E_P(f_i),i=1,2,...n}
模型集合C中條件熵最大的模型成為最大熵模型,公式中對數(shù)為自然對數(shù)。
在約束條件下的求解,需要用到拉格朗日函數(shù),然后轉(zhuǎn)對偶問題,這里略去推導(dǎo)過程(可自行查詢資料),對偶問題為:
max_w min_{P \in C} L(P,w)
先求得min_{P \in C} L(P,w)的解為
P_w(y|x)=\frac{1}{Z_w(x)}exp(\sum_{i=1}^n w_if_i(x,y))\\ Z_w(x)=\sum_y exp(\sum_{i=1}^n w_if_i(x,y)) ,稱為規(guī)范化因子
再求極大化問題,得到參數(shù)w的解。這需要用到最優(yōu)化算法,常見的有改進(jìn)的迭代尺度法(IIS)、梯度下降法、牛頓法、擬牛頓法(典型如BFGS)
這里稍微做點(diǎn)介紹:
IIS思路:假設(shè)w+\delta能使得模型的似然函數(shù)增大,則更新w\rightarrow w+\delta
IIS最后求解的方程為:
\sum_ {x,y}\widetilde P(x)P_w(y|x) f_i(x,y)exp(\delta_i f^{\#}(x,y))=E_{\widetilde P}(f_i) -----------(1)\\ f^{\#}(x,y)=\sum_i f_i(x,y),表示特征在(x,y)出現(xiàn)的次數(shù)
如果f^{\#}(x,y)是常數(shù)M(對任何x,y),則:
\delta_i=\frac{1}{M}log\frac{E_{\widetilde P}(f_i)}{E_{P}(f_i)}
如果不是常數(shù),可以通過牛頓法求解:
g(\delta_i)=0表示以上(1)式,則:
\delta_i^{k+1}=\delta_i^k-\frac{g(\delta_i^k)}{g'(\delta_i^k)}
擬牛頓法思路:牛頓法需要求解黑塞矩陣H的逆,較為麻煩,擬牛頓法考慮用一個(gè)n階矩陣逼近H(BFGS算法)或H的逆(DFP算法)
BFGS算法更新逼近矩陣:
B_{k+1}=B_k+\frac{y_ky_k^T}{y_k^T\delta_k}-\frac{B_k\delta_k\delta_k^TB_k}{\delta_k^TB_k\delta_k}\\ y_k=g_{k+1}-g_k , \delta_k=w^{k+1}-w^k \\ 其中B_k用于逼近H

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容