逻辑回归模型(Logistic Regression, LR)基础
邏輯回歸模型(Logistic Regression, LR)基礎
邏輯回歸(Logistic Regression, LR)模型其實僅在線性回歸的基礎上,套用了一個邏輯函數,但也就由于這個邏輯函數,使得邏輯回歸模型成為了機器學習領域一顆耀眼的明星,更是計算廣告學的核心。本文主要詳述邏輯回歸模型的基礎,至于邏輯回歸模型的優化、邏輯回歸與計算廣告學等,請關注后續文章。
1?邏輯回歸模型
??? 回歸是一種極易理解的模型,就相當于y=f(x),表明自變量x與因變量y的關系。最常見問題有如醫生治病時的望、聞、問、切,之后判定病人是否生病或生了什么病,其中的望聞問切就是獲取自變量x,即特征數據,判斷是否生病就相當于獲取因變量y,即預測分類。
??? 最簡單的回歸是線性回歸,在此借用Andrew NG的講義,有如圖1.a所示,X為數據點——腫瘤的大小,Y為觀測值——是否是惡性腫瘤。通過構建線性回歸模型,如hθ(x)所示,構建線性回歸模型后,即可以根據腫瘤大小,預測是否為惡性腫瘤hθ(x)≥.05為惡性,hθ(x)<0.5為良性。
圖1 線性回歸示例
??? 然而線性回歸的魯棒性很差,例如在圖1.b的數據集上建立回歸,因最右邊噪點的存在,使回歸模型在訓練集上表現都很差。這主要是由于線性回歸在整個實數域內敏感度一致,而分類范圍,需要在[0,1]。邏輯回歸就是一種減小預測范圍,將預測值限定為[0,1]間的一種回歸模型,其回歸方程與回歸曲線如圖2所示。邏輯曲線在z=0時,十分敏感,在z>>0或z<<0處,都不敏感,將預測值限定為(0,1)。
圖2 邏輯方程與邏輯曲線
??? 邏輯回歸其實僅為在線性回歸的基礎上,套用了一個邏輯函數,但也就由于這個邏輯函數,邏輯回歸成為了機器學習領域一顆耀眼的明星,更是計算廣告學的核心。對于多元邏輯回歸,可用如下公式似合分類,其中公式(4)的變換,將在邏輯回歸模型參數估計時,化簡公式帶來很多益處,y={0,1}為分類結果。?
??? 對于訓練數據集,特征數據x={x1, x2, … , xm}和對應的分類數據y={y1, y2, … , ym}。構建邏輯回歸模型f(θ),最典型的構建方法便是應用極大似然估計。首先,對于單個樣本,其后驗概率為:
??? 那么,極大似然函數為:
??? log似然是:
2?梯度下降
??? 由第1節可知,求邏輯回歸模型f(θ),等價于:
??? 采用梯度下降法:
???? 從而迭代θ至收斂即可:
3?模型評估
??? 對于LR分類模型的評估,常用AUC來評估,關于AUC的更多定義與介紹,可見參考文獻2,在此只介紹一種極簡單的計算與理解方法。
??? 對于下圖的分類:
???? 對于訓練集的分類,訓練方法1和訓練方法2分類正確率都為80%,但明顯可以感覺到訓練方法1要比訓練方法2好。因為訓練方法1中,5和6兩數據分類錯誤,但這兩個數據位于分類面附近,而訓練方法2中,將10和1兩個數據分類錯誤,但這兩個數據均離分類面較遠。
??? AUC正是衡量分類正確度的方法,將訓練集中的label看兩類{0,1}的分類問題,分類目標是將預測結果盡量將兩者分開。將每個0和1看成一個pair關系,團中的訓練集共有5*5=25個pair關系,只有將所有pair關系一至時,分類結果才是最好的,而auc為1。在訓練方法1中,與10相關的pair關系完全正確,同樣9、8、7的pair關系也完全正確,但對于6,其pair關系(6,5)關系錯誤,而與4、3、2、1的關系正確,故其auc為(25-1)/25=0.96;對于分類方法2,其6、7、8、9的pair關系,均有一個錯誤,即(6,1)、(7,1)、(8,1)、(9,1),對于數據點10,其正任何數據點的pair關系,都錯誤,即(10,1)、(10,2)、(10,3)、(10,4)、(10,5),故方法2的auc為(25-4-5)/25=0.64,因而正如直觀所見,分類方法1要優于分類方法2。
4 演算手稿
??? 附演算手稿如下:
?
參考文獻:
1? Andrew NG. Logistic Regression Classification
2?http://www.cnblogs.com/guolei/archive/2013/05/23/3095747.html
總結
以上是生活随笔為你收集整理的逻辑回归模型(Logistic Regression, LR)基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谱聚类算法(Spectral Clust
- 下一篇: stl-vector详解