1、手推LogisticRegression(損失函數(shù))
二項(xiàng)邏輯斯蒂回歸模型是如下條件概率分布:
這里的包含偏置項(xiàng)
玄柏,即為
兼呵,其對(duì)應(yīng)的
。
由此可得:
即:
也就是說驮瞧,的對(duì)數(shù)幾率由輸入
的線性函數(shù)表示的模型稱為邏輯斯蒂回歸模型氓扛。
接下來應(yīng)用極大似然估計(jì)法估計(jì)模型參數(shù):
設(shè):
似然函數(shù)為:
對(duì)數(shù)似然函數(shù)為:
直接對(duì)
求導(dǎo)是無法得到解析解的,因此采用梯度下降法或者擬牛頓法等方法優(yōu)化
论笔。
這里我們可以求解對(duì)各
的梯度,為了推導(dǎo)簡(jiǎn)便,我們寫出 sigmoid 函數(shù):
從而:
有一個(gè)很好的性質(zhì):
從而可以寫作:
接下來求對(duì)各
的梯度:
2报咳、邏輯斯蒂回歸在多分類時(shí)的情形
對(duì)于分類:
3凌彬、邏輯斯蒂回歸為什么采用 sigmoid 函數(shù)?
sigmoid 函數(shù)可以很方便的將
的結(jié)果映射到
區(qū)間上最楷,從而代表分類概率的大小整份。
sigmoid 函數(shù)在 0 附近斜率較大,而在遠(yuǎn)離 0 處的斜率較小籽孙,這體現(xiàn)了模型對(duì)不同樣本點(diǎn)的敏感性的大小烈评,即對(duì)于遠(yuǎn)離分類邊界的點(diǎn)敏感性較小,對(duì)于分類邊界附近的點(diǎn)敏感性較大犯建。這有利于模型重點(diǎn)關(guān)注較難分類的樣本讲冠,從而取得較好的分類效果。
sigmoid 函數(shù)的選擇也可以從最大熵模型推導(dǎo)得出胎挎。
4沟启、最大熵模型與邏輯斯蒂回歸模型的關(guān)系
邏輯斯蒂回歸模型可以視作最大熵模型的一個(gè)特例忆家。
假設(shè)分類模型是一個(gè)條件概率分布,給定訓(xùn)練數(shù)據(jù)集德迹,可以確定聯(lián)合分布
的經(jīng)驗(yàn)分布
和邊緣分布
的經(jīng)驗(yàn)分布
芽卿。
其中表示訓(xùn)練數(shù)據(jù)集中樣本
的頻數(shù),
表示訓(xùn)練數(shù)據(jù)集中輸入
出現(xiàn)的頻數(shù)胳搞,
為樣本容量卸例。
用特征函數(shù)描述輸入
和輸出
之間的某個(gè)事實(shí),定義為:
特征函數(shù)關(guān)于經(jīng)驗(yàn)分布
的期望值
為:
特征函數(shù)關(guān)于模型
與經(jīng)驗(yàn)分布
的期望值
為:
若模型能夠獲取訓(xùn)練數(shù)據(jù)中的信息肌毅,則可假設(shè)這兩個(gè)期望相等(注意是我們的模型學(xué)得的結(jié)果):
將上式作為模型的約束條件筷转,設(shè)所有滿足約束的模型集合為:
定義在條件概率分布上的條件熵為:
則最大熵模型的學(xué)習(xí)變?yōu)榍蠼饧s束最優(yōu)化問題:
改寫為等價(jià)的最小化問題:
引入拉格朗日乘子,構(gòu)造拉格朗日函數(shù):
原問題等價(jià)于:
對(duì)偶問題為:
求對(duì)
對(duì)偏導(dǎo)數(shù):
解得:
由得:
之后悬而,求解對(duì)偶問題外層的極大化問題呜舒,即把上式帶入后再求解最優(yōu)的
使得
最大。
不難看出笨奠,這里的的形式和 Logistic Regression 很像袭蝗。
實(shí)際上,若取特征函數(shù):
則:
這就得到了邏輯斯蒂回歸般婆。
5到腥、LR 與 SVM 的區(qū)別與聯(lián)系
相同點(diǎn):
LR 和 SVM 都是分類算法
如果不考慮核函數(shù),LR 和 SVM 都是線性分類算法蔚袍,即分類決策面都是線性的
LR 和 SVM 都是有監(jiān)督學(xué)習(xí)算法
LR 和 SVM 都是判別模型
不同點(diǎn):
- 損失函數(shù)的不同乡范。LR 采用的是對(duì)數(shù)損失函數(shù),SVM 采用的是合頁損失函數(shù)啤咽。而前者比后者發(fā)散更快晋辆,因此相比 SVM,LR 對(duì)異常值更加敏感闰蚕。
分類原理的不同栈拖。LR 基于概率模型,通過極大似然估計(jì)的方法估計(jì)出參數(shù)的值没陡,而 SVM 基于幾何間隔最大化原理涩哟。所以 SVM 會(huì)找到唯一的最優(yōu)解,而 LR 沒有這個(gè)特性盼玄。
對(duì)于線性不可分的復(fù)雜情形贴彼,SVM 可以利用核函數(shù)將線性不可分的低維數(shù)據(jù)映射為線性可分的高維數(shù)據(jù);而 LR 很少用到核函數(shù)(LR 是可以使用核函數(shù)的埃儿,接下來會(huì)進(jìn)行說明)器仗,因?yàn)?LR 模型中每個(gè)樣本點(diǎn)都必須參與核函數(shù)的計(jì)算,計(jì)算復(fù)雜度很高。所以在具體應(yīng)用中精钮,LR 很少運(yùn)用核函數(shù)機(jī)制威鹿,遇到線性不可分的情形多使用 SVM 解決。
這里簡(jiǎn)要說下 Kernel Logistic Regression(KLR):
為了說明 LR 可以使用核函數(shù)轨香,先證明如下定理:
- 對(duì)于任意帶 L2 正則化的線性模型都可以使用 Kernel Trick忽你。
具體說來,對(duì)如下模型:
最優(yōu)解一定可以表示成
臂容,從而使得
中出現(xiàn)內(nèi)積的形式科雳,可以使用 Kernel Trick 簡(jiǎn)化計(jì)算。
證明:設(shè)脓杉,其中
糟秘,且
。若
球散,則:
且:
則是比
更好的解尿赚,矛盾。因此
沛婴,即
吼畏,即
可由
的線性組合表示督赤。證畢嘁灯。
應(yīng)用此定理可知,帶 L2 正則項(xiàng)的 LR 模型可以應(yīng)用 Kernel Trick躲舌,得到的模型 KLR 具有處理非線性可分?jǐn)?shù)據(jù)的能力丑婿,且一定程度上可以防止過擬合(因?yàn)榘齽t項(xiàng))。
SVM 輸出分類結(jié)果 0 或 1没卸,而 LR 輸出介于 0 和 1 之間的表示分類概率的數(shù)值羹奉,這在某些應(yīng)用場(chǎng)景下是非常有用的,比如醫(yī)療診斷這樣后果較為嚴(yán)重的場(chǎng)合约计,或者我們對(duì)數(shù)據(jù)質(zhì)量并不是十分有信心的時(shí)候诀拭,LR 可以告訴我們?cè)诙啻蟪潭壬峡梢韵嘈拍P彤a(chǎn)生的分類結(jié)果。
SVM 的結(jié)果只受邊界附近少數(shù)幾個(gè)樣本點(diǎn)的影響煤蚌,LR 的結(jié)果則受所有樣本點(diǎn)的影響耕挨。兩者沒有絕對(duì)的優(yōu)劣之分,具體使用結(jié)合應(yīng)用場(chǎng)景尉桩。
Reference
https://blog.csdn.net/cuiy0818/article/details/81288701
https://medium.com/@george.drakos62/support-vector-machine-vs-logistic-regression-94cc2975433f