轉自別處 有很多與此類似的文章 也不知道誰是原創 因原文由少於錯誤 所以下文對此有修改並且做了適當的重點標記(橫線見的內容沒大明白 並且有些復雜,后面的運行流程依據前面的得出的算子進行分類)
初步接觸
謂LR分類器(Logistic Regression Classifier),並沒有什么神秘的。在分類的情形下,經過學習之后的LR分類器其實就是一組權值w0,w1,...,wm.
當測試樣本集中的測試數據來到時,這一組權值按照與測試數據線性加和的方式,求出一個z值:
z = w0+w1*x1+w2*x2+...+wm*xm。 ① (其中x1,x2,...,xm是某樣本數據的各個特征,維度為m)
之后按照sigmoid函數的形式求出:
σ(z) = 1 / (1+exp(z)) 。②
由於sigmoid函數的定義域是(-INF, +INF),而值域為(0, 1)。因此最基本的LR分類器適合於對兩類目標進行分類。
那么LR分類器的這一組權值w0,w1,...,wm是如何求得的呢?這就需要涉及到極大似然估計MLE和優化算法的概念了。
我們將sigmoid函數看成樣本數據的概率密度函數,每一個樣本點,都可以通過上述的公式①和②計算出其概率密度
詳細描述
1.邏輯回歸模型
1.1邏輯回歸模型
考慮具有p個獨立變量的向量,設條件概率
為根據觀測量相對於某事件發生的概率。邏輯回歸模型可表示為
(1.1)
上式右側形式的函數稱為稱為邏輯函數。下圖給出其函數圖象形式。
其中。如果含有名義變量,則將其變為dummy變量。一個具有k個取值的名義變量,將變為k-1個dummy變量。這樣,有
(1.2)
定義不發生事件的條件概率為
(1.3)
那么,事件發生與事件不發生的概率之比為
(1.4)
這個比值稱為事件的發生比(the odds of experiencing an event),簡稱為odds。因為0<p<1,故odds>0。對odds取對數,即得到線性函數,
(1.5),
1.2極大似然函數
假設有n個觀測樣本,觀測值分別為設
為給定條件下得到yi=1(原文
)的概率。在同樣條件下得到yi=0(
)的條件概率為
。於是,得到一個觀測值的概率為
(1.6) -----此公式實際上是綜合前兩個等式得出,並無特別之處
因為各項觀測獨立,所以它們的聯合分布可以表示為各邊際分布的乘積。
上式稱為n個觀測的似然函數。我們的目標是能夠求出使這一似然函數的值最大的參數估計。於是,最大似然估計的關鍵就是求出參數,使上式取得最大值。
對上述函數求對數
(1.8)
上式稱為對數似然函數。為了估計能使取得最大的參數
的值。
對此函數求導,得到p+1個似然方程。
(1.9)
,j=1,2,..,p.-----p為獨立向量個數
上式稱為似然方程。為了解上述非線性方程,應用牛頓-拉斐森(Newton-Raphson)方法進行迭代求解。
1.3 牛頓-拉斐森迭代法
對求二階偏導數,即Hessian矩陣為
(1.10)
如果寫成矩陣形式,以H表示Hessian矩陣,X表示
(1.11)
令
(1.12)
則。再令
(注:前一個矩陣需轉置),即似然方程的矩陣形式。
得牛頓迭代法的形式為
(1.13)
注意到上式中矩陣H為對稱正定的,求解即為求解線性方程HX=U中的矩陣X。對H進行cholesky分解。
最大似然估計的漸近方差(asymptotic variance)和協方差(covariance)可以由信息矩陣(information matrix)的逆矩陣估計出來。而信息矩陣實際上是二階導數的負值,表示為
。估計值的方差和協方差表示為
,也就是說,估計值
的方差為矩陣I的逆矩陣的對角線上的值,而估計值
和
的協方差(
和
的協方差等於
?不解。。。)為除了對角線以外的值。然而在多數情況,我們將使用估計值
的標准方差,表示為
,for j=0,1,2,…,p (1.14)
-----------------------------------------------------------------------------------------------------------------------------------------------
2.顯著性檢驗
下面討論在邏輯回歸模型中自變量是否與反應變量顯著相關的顯著性檢驗。零假設
:
=0(表示自變量
對事件發生可能性無影響作用)。如果零假設被拒絕,說明事件發生可能性依賴於
的變化。
2.1 Wald test
對回歸系數進行顯著性檢驗時,通常使用Wald檢驗,其公式為
(2.1)
其中, 為
的標准誤差。這個單變量Wald統計量服從自由度等於1的
分布。
如果需要檢驗假設:
=0,計算統計量
(2.2)
其中,為去掉
所在的行和列的估計值,相應地,
為去掉
所在的行和列的標准誤差。這里,Wald統計量服從自由度等於p的
分布。如果將上式寫成矩陣形式,有
(2.3)
矩陣Q是第一列為零的一常數矩陣。例如,如果檢驗,則
。
然而當回歸系數的絕對值很大時,這一系數的估計標准誤就會膨脹,於是會導致Wald統計值變得很小,以致第二類錯誤的概率增加。也就是說,在實際上會導致應該拒絕零假設時卻未能拒絕。所以當發現回歸系數的絕對值很大時,就不再用Wald統計值來檢驗零假設,而應該使用似然比檢驗來代替。
2.2 似然比(Likelihood ratio test)檢驗
在一個模型里面,含有變量與不含變量
的對數似然值乘以-2的結果之差,服從
分布。這一檢驗統計量稱為似然比(likelihood ratio),用式子表示為
(2.4)
計算似然值采用公式(1.8)。
倘若需要檢驗假設:
=0,計算統計量
(2.5)
式中,表示
=0的觀測值的個數,而
表示
=1的觀測值的個數,那么n就表示所有觀測值的個數了。實際上,上式的右端的右半部分
表示只含有
的似然值。統計量G服從自由度為p的
分布
2.3 Score檢驗
在零假設:
=0下,設參數的估計值為
,即對應的
=0。計算Score統計量的公式為
(2.6)
上式中,表示在
=0下的對數似然函數(1.9)的一價偏導數值,而
表示在
=0下的對數似然函數(1.9)的二價偏導數值。Score統計量服從自由度等於1的
分布。
2.4 模型擬合信息
模型建立后,考慮和比較模型的擬合程度。有三個度量值可作為擬合的判斷根據。
(1)-2LogLikelihood
(2.7)
(2) Akaike信息准則(Akaike Information Criterion,簡寫為AIC)
(2.8)
其中K為模型中自變量的數目,S為反應變量類別總數減1,對於邏輯回歸有S=2-1=1。-2LogL的值域為0至,其值越小說明擬合越好。當模型中的參數數量越大時,似然值也就越大,-2LogL就變小。因此,將2(K+S)加到AIC公式中以抵銷參數數量產生的影響。在其它條件不變的情況下,較小的AIC值表示擬合模型較好。
(3)Schwarz准則
這一指標根據自變量數目和觀測數量對-2LogL值進行另外一種調整。SC指標的定義為
(2.9)
其中ln(n)是觀測數量的自然對數。這一指標只能用於比較對同一數據所設的不同模型。在其它條件相同時,一個模型的AIC或SC值越小說明模型擬合越好。
3.回歸系數解釋
3.1發生比
odds=[p/(1-p)],即事件發生的概率與不發生的概率之比。而發生比率(odds ration),即
(1)連續自變量。對於自變量,每增加一個單位,odds ration為
(3.1)
(2)二分類自變量的發生比率。變量的取值只能為0或1,稱為dummy variable。當取值為1,對於取值為0的發生比率為
(3.2)
亦即對應系數的冪。
(3)分類自變量的發生比率。
如果一個分類變量包括m個類別,需要建立的dummy variable的個數為m-1,所省略的那個類別稱作參照類(reference category)。設dummy variable為,其系數為
,對於參照類,其發生比率為
。
3.2 邏輯回歸系數的置信區間
對於置信度1-,參數
的100%(1-
)的置信區間為
(3.3)
上式中,為與正態曲線下的臨界Z值(critical value),
為系數估計
的標准誤差,
和
兩值便分別是置信區間的下限和上限。當樣本較大時,
=0.05水平的系數
的95%置信區間為
(3.4)
-----------------------------------------------------------------------------------------------------------------------------------------------
4.變量選擇
4.1前向選擇(forward selection):在截距模型的基礎上,將符合所定顯著水平的自變量一次一個地加入模型。
具體選擇程序如下
(1) 常數(即截距)進入模型。
(2) 根據公式(2.6)計算待進入模型變量的Score檢驗值,並得到相應的P值。
(3) 找出最小的p值,如果此p值小於顯著性水平,則此變量進入模型。如果此變量是某個名義變量的單面化(dummy)變量,則此名義變量的其它單面化變理同時也進入模型。不然,表明沒有變量可被選入模型。選擇過程終止。
(4) 回到(2)繼續下一次選擇。
4.2 后向選擇(backward selection):在模型包括所有候選變量的基礎上,將不符合保留要求顯著水平的自變量一次一個地刪除。
具體選擇程序如下
(1) 所有變量進入模型。
(2) 根據公式(2.1)計算所有變量的Wald檢驗值,並得到相應的p值。
(3) 找出其中最大的p值,如果此P值大於顯著性水平,則此變量被剔除。對於某個名義變量的單面化變量,其最小p值大於顯著性水平
,則此名義變量的其它單面化變量也被刪除。不然,表明沒有變量可被剔除,選擇過程終止。
(4) 回到(2)進行下一輪剔除。
4.3逐步回歸(stepwise selection)
(1)基本思想:逐個引入自變量。每次引入對Y影響最顯著的自變量,並對方程中的老變量逐個進行檢驗,把變為不顯著的變量逐個從方程中剔除掉,最終得到的方程中既不漏掉對Y影響顯著的變量,又不包含對Y影響不顯著的變量。
(2)篩選的步驟:首先給出引入變量的顯著性水平和剔除變量的顯著性水平
,然后按下圖篩選變量。
(3)逐步篩選法的基本步驟
逐步篩選變量的過程主要包括兩個基本步驟:一是從不在方程中的變量考慮引入新變量的步驟;二是從回歸方程中考慮剔除不顯著變量的步驟。
假設有p個需要考慮引入回歸方程的自變量.
① 設僅有截距項的最大似然估計值為。對p個自變量每個分別計算Score檢驗值,
設有最小p值的變量為,且有
,對於單面化(dummy)變量,也如此。若
,則此變量進入模型,不然停止。如果此變量是名義變量單面化(dummy)的變量,則此名義變量的其它單面化變量也進入模型。其中
為引入變量的顯著性水平。
② 為了確定當變量在模型中時其它p-1個變量也是否重要,將
分別與
進行擬合。對p-1個變量分別計算Score檢驗值,其p值設為
。設有最小p值的變量為
,且有
.若
,則進入下一步,不然停止。對於單面化變量,其方式如同上步。
③ 此步開始於模型中已含有變量與
。注意到有可能在變量
被引入后,變量
不再重要。本步包括向后刪除。根據(2.1)計算變量
與
的Wald檢驗值,和相應的p值。設
為具有最大p值的變量,即
=max(
),
.如果此p值大於
,則此變量從模型中被刪除,不然停止。對於名義變量,如果某個單面化變量的最小p值大於
,則此名義變量從模型中被刪除。
④ 如此進行下去,每當向前選擇一個變量進入后,都進行向后刪除的檢查。循環終止的條件是:所有的p個變量都進入模型中或者模型中的變量的p值小於,不包含在模型中的變量的p值大於
。或者某個變量進入模型后,在下一步又被刪除,形成循環。