Logistic迴歸原理及公式推導
Logistic迴歸為概率型非線性迴歸模型,是研究二分類觀察結果與一些影響因素之間關係的一種多變量分析方法。通常的問題是,研究某些因素條件下某個結果是否發生,比如醫學中根據病人的一些症狀來判斷它是否患有某種病。
在講解Logistic迴歸理論之前,我們先從LR分類器說起。LR分類器,即Logistic Regression Classifier。
在分類情形下,經過學習後的LR分類器是一組權值,當測試樣本的資料輸入時,這組權值與測試資料按照線性加和得到
這裡是每個樣本的個特徵。
之後按照sigmoid函式的形式求出
由於sigmoid函式的定義域為,值域為,因此最基本的LR分類器適合對兩類目標進行分類。
所以Logistic迴歸最關鍵的問題就是研究如何求得這組權值。這個問題是用極大似然估計來做的。
下面正式地來講Logistic迴歸模型。
考慮具有個獨立變數的向量,設條件慨率(意為“在條件下發生的概率”)為根據觀測量相對於某事件
這裡稱為Logistic函式。其中
那麼在條件下不發生的概率為
所以事件發生與不發生的概率之比為
這個比值稱為事件的發生比(the odds of experiencing an event),簡記為odds。
對odds取對數得到
可以看出Logistic迴歸都是圍繞一個Logistic函式來展開的。接下來就講如何用極大似然估計求分類器的引數。
假設有個觀測樣本,觀測值分別為,設為給定條件下得到的概率,同樣地,的概率為,所以得到一個觀測值的概率為。
因為各個觀測樣本之間相互獨立,那麼它們的聯合分佈為各邊緣分佈的乘積。得到似然函式為
然後我們的目標是求出使這一似然函式的值最大的引數估計,最大似然估計就是求出引數,使得
取得最大值,對函式取對數得到
繼續對這個分別求偏導,得到個方程,比如現在對引數求偏導,由於
所以得到
這樣的方程一共有個,所以現在的問題轉化為解這個方程形成的方程組。
上述方程比較複雜,一般方法似乎不能解之,所以我們引用了牛頓-拉菲森迭代方法求解。
利用牛頓迭代求多元函式的最值問題以後再講。。。
簡單牛頓迭代法:http://zh.m.wikipedia.org/wiki/%E7%89%9B%E9%A1%BF%E6%B3%95
實際上在上述似然函式求最大值時,可以用梯度上升演算法,一直迭代下去。梯度上升演算法和牛頓迭代相比,收斂速度
慢,因為梯度上升演算法是一階收斂,而牛頓迭代屬於二階收斂。
以上內容來自使用者【演算法學習者】部落格,僅作部分格式和詞語修改。原文地址:http://blog.csdn.net/amds123/article/details/70243497