本文爲《統計學習方法》第6章筆記。
概論
邏輯迴歸與最大熵模型都屬於對數線性模型,邏輯迴歸求解似然函數的極大值,得到參數w,最大熵模型先轉對偶問題,求得條件概率模型,也是通過極大值求解得到w。涉及到最優化算法的部分都比較晦澀,由於本人理解得也不深刻,這裏就不詳細展開了。
邏輯迴歸模型
邏輯斯蒂分佈
設X爲連續隨機變量,服從邏輯斯蒂分佈的分佈函數和密度函數分別爲:
二項邏輯斯蒂迴歸模型
條件概率分佈爲:
將b擴充到w向量內,1擴充到x向量內,則方程簡化爲
機率:事情發生與不發生的概率之比。
對數機率:
對邏輯迴歸而言,對數機率爲
模型參數估計
設
似然函數爲:
對數似然函數爲:
對L(w)求極大值,得到w的估計值。一般使用梯度下降或擬牛頓法(代碼中常見的BFGS算法)
多項邏輯斯蒂迴歸
最大熵模型
假設離散隨機變量X的概率分佈爲P(X),則其熵爲:
熵滿足不等式:
|X|爲X的取值個數,當X服從均勻分佈時,熵最大。
熵最大原理:最好的模型是熵最大的模型。在沒有更多信息時,不確定的部分都是等概率的。
給定訓練數據集,聯合經驗分佈和邊緣經驗分佈爲:
用特徵函數f描述x和y之間的某一個事實:
f關於聯合經驗分佈的期望值爲:
f關於邊緣經驗分佈及模型P(Y|X)的期望爲:
如果模型能夠獲取數據中的信息,那麼2個期望值應該相等
定義在P(Y|X)上的條件熵爲:
滿足所有約束的模型集合C爲:
模型集合C中條件熵最大的模型成爲最大熵模型,公式中對數爲自然對數。
在約束條件下的求解,需要用到拉格朗日函數,然後轉對偶問題,這裏略去推導過程(可自行查詢資料),對偶問題爲:
先求得的解爲
再求極大化問題,得到參數w的解。這需要用到最優化算法,常見的有改進的迭代尺度法(IIS)、梯度下降法、牛頓法、擬牛頓法(典型如BFGS)
這裏稍微做點介紹:
IIS思路:假設能使得模型的似然函數增大,則更新
IIS最後求解的方程爲:
如果是常數M(對任何x,y),則:
如果不是常數,可以通過牛頓法求解:
以表示以上(1)式,則:
擬牛頓法思路:牛頓法需要求解黑塞矩陣H的逆,較爲麻煩,擬牛頓法考慮用一個n階矩陣逼近H(BFGS算法)或H的逆(DFP算法)
BFGS算法更新逼近矩陣: