Logistic Regression
- Linear Regression 的原理(Logistic Regression 的基礎)
目標函數
損失函數 均方誤差 推廣至多元
求解方法 最小二乘法 OLS,即分別對w和b求偏導 推廣至多元
當x滿秩或正定有 (這意味着如果樣本數<<特徵數時,存在多種解,需要引入正則項)
檢驗方式:多元線性迴歸的
模型的解釋程度(擬合度檢驗) R^2 :[0,1] 存在隨着自變量個數的增多而變大,採用修正的R^2
總體顯著性檢驗F:目標變量和自變量之間的線性關係是否顯著,即自變量的係數是否不全爲0
係數的顯著性檢驗P
採用OLS估計係數的應用條件(參數估計假設):
a. 輸入變量是確定變量,且輸入變量之間無共線性
(多重共線性會使得參數估計值方差減小,可以用DW檢驗殘差是否存在序列相關性)
所謂多重共線性(Multicollinearity)是指線性迴歸模型中的解釋變量之間由於存在精確相關關係或高度相關關係而使模型估計失真或難以估計準確。影響
(1)完全共線性下參數估計量不存在
(2)近似共線性下OLS估計量非有效
多重共線性使參數估計值的方差增大,1/(1-r2)爲方差膨脹因子(Variance Inflation Factor, VIF)
(3)參數估計量經濟含義不合理
(4)變量的顯著性檢驗失去意義,可能將重要的解釋變量排除在模型之外
(5)模型的預測功能失效。變大的方差容易使區間預測的“區間”變大,使預測失去意義。
b. 隨機誤差的期望值總和爲0,即隨機誤差與自變量不相關
c. 隨機誤差呈現正態分佈
(當存在異方差時,普通最小二乘法估計存在以下問題: 參數估計值雖然是無偏的,但不是最小方差線性無偏估計)
對於線性迴歸模型,當響應變量服從正態分佈,誤差項滿足高斯–馬爾科夫條件(零均值、等方差、不相關)時,迴歸參數的最小二乘估計是一致最小方差無偏估計。 - Generalized Linear Regression
擴展爲 Logistic Regression:二分類
目標函數: 這裏的 就是sigmoid函數
可以推出
當y=1時
當y=0時
損失函數:對數似然損失函數-logP(Y|X)
參數估計方法:對數極大似然估計,\beta = (w,b)
當y_i=0 時候第一個ln()項爲0,當y_i=1時第一個ln()爲\beta x_i,故等式可以化爲等價於
求解方法:梯度、擬牛頓、牛頓
sklearn 中solver封裝了liblinear、lbfgs、newton-cg、sag
a) liblinear:使用了開源的liblinear庫實現,內部使用了座標軸下降法來迭代優化損失函數。
b) lbfgs:擬牛頓法的一種,利用損失函數二階導數矩陣即海森矩陣來迭代優化損失函數。
c) newton-cg:也是牛頓法家族的一種,利用損失函數二階導數矩陣即海森矩陣來迭代優化損失函數。
d) sag:即隨機平均梯度下降,是梯度下降法的變種,和普通梯度下降法的區別是每次迭代僅僅用一部分的樣本來計算
L1 liblinear liblinear適用於小數據集;如果選擇L2正則化發現還是過擬合,即預測效果差的時候,就可以考慮L1正則化;如果模型的特徵非常多,希望一些不重要的特徵係數歸零,從而讓模型係數稀疏化的話,也可以使用L1正則化。
L2 liblinear libniear只支持多元邏輯迴歸的OvR,不支持MvM,但MVM相對精確。
L2 lbfgs/newton-cg/sag 較大數據集,支持one-vs-rest(OvR)和many-vs-many(MvM)兩種多元邏輯迴歸。
L2 sag 如果樣本量非常大,比如大於10萬,sag是第一選擇;但不能用於L1正則化。
係數顯著性檢驗:Wald檢驗 ,其中 爲標準差,如果P-Value小於0.05,則說明影響顯著
變量篩選辦法:
向前引入(逐個加入自變量)、向後剔除(逐個刪除)、逐步迴歸
注意事項(缺點)
數據量不能太少、自變量的共線性會對結果產生影響、異常值的干擾、不能處理缺失值- 帶正則項的Logistic Regression
目的:防止模型過擬合
函數:
常用正則項:
L1(可以產生稀疏解答,起到特徵選擇的作用,傾向於使參數變爲0),L2(傾向於將w接近0) - 和線性迴歸的比較
LINEAR LOGISTIC
目標變量的假設服從分佈 正態分佈 二項分佈或多項分佈
目標變量和自變量之間的關係 線性 非線性
殘差 有 無
參數估計方式 最小平方法 極大似然法
由於線性迴歸在整個實數域內敏感度一致,而分類範圍,需要在[0,1]之內。而邏輯迴歸就是一種減小預測範圍,將預測值限定爲[0,1]間的一種迴歸模型,其迴歸方程與迴歸曲線如下圖所示。邏輯曲線在z=0時,十分敏感,在z>>0或z<<0處,都不敏感,將預測值限定爲(0,1)。 - 和最大熵MaxEnt模型的區別和聯繫
邏輯迴歸跟最大熵模型沒有本質區別。邏輯迴歸是最大熵對應類別爲二類時的特殊情況
指數簇分佈的最大熵等價於其指數形式的最大似然。
二項式分佈的最大熵解等價於二項式指數形式(sigmoid)的最大似然;
多項式分佈的最大熵等價於多項式分佈指數形式(softmax)的最大似然。 - 和SVM的區別和聯繫
| SVM | LR |
樣本點對模型的作用 支持向量(少量) 全部
損失函數 hinge log
輸出 概率值
過擬合處理 自帶正則 需要加正則
處理多分類 二分類,需要(ovo,ova) 直接多分類
計算複雜度 海量數據中效率低下
數據要求 需要對樣本進行標準化
迴歸 可以 不可以 - 並行化的Logistic Regression
sklearn中n_jobs爲並行數,-1爲和CPU個數一致
求導得
邏輯迴歸的並行化最主要的就是對目標函數梯度計算的並行化。
目標函數的梯度向量計算中只需要進行向量間的點乘和相加,可以很容易將每個迭代過程拆分成相互獨立的計算步驟,由不同的節點進行獨立計算,然後歸併(求和)計算結果。
參考
http://blog.csdn.net/zhoubl668/article/details/19612215 LR的並行化
http://blog.csdn.net/cyh_24/article/details/50359055 LR的理論
《數據挖掘與數據化運營實戰》
《統計學習方法》
《機器學習》