@[toc]
1 Logistic Regression
Logistic Regression 邏輯回歸葱峡,簡(jiǎn)稱LR踩衩,適合于分類問(wèn)題
1.1 LR模型
對(duì)于線性回歸模型叭爱,需要擬合一個(gè)的函數(shù)昆咽,回歸問(wèn)題適合于連續(xù)的問(wèn)題惜犀,而對(duì)于分類問(wèn)題躬厌,需要得到一系列離散的標(biāo)簽马昨,以二分類為例,需要預(yù)測(cè)的類別為0,1.可以使用sigmoid函數(shù)將連續(xù)問(wèn)題轉(zhuǎn)化為離散問(wèn)題:
sigmoid函數(shù)的圖像為:
其中鸿捧,時(shí)抢呆,, 時(shí)笛谦,. Sigmoid函數(shù)的導(dǎo)數(shù)為:
令抱虐,則有:
對(duì)于二分類問(wèn)題,該函數(shù)的輸出可以理解為分類為1的概率饥脑,如果把X記為, 記為為要估計(jì)的模型參數(shù)恳邀,則LR的矩陣形式為:
1.2 損失函數(shù)
由于表示的是被分類為1的概率,而被分類為0的概率則為灶轰,對(duì)于離散隨機(jī)變量谣沸,我們可以寫(xiě)出分布列:
y | 1 | 0 |
---|---|---|
用一個(gè)式子表示就是
這就是的分布函數(shù),函數(shù)中的\theta表示要估計(jì)的參數(shù)笋颤,熟悉概率論的都知道乳附,要估計(jì)分布函數(shù)中的參數(shù)可以有矩估計(jì)和極大似然法兩種,這里選極大似然法伴澄,也叫最大似然法赋除,這里把他的概念寫(xiě)出來(lái):
也就是說(shuō),假設(shè)所有的訓(xùn)練樣本所對(duì)應(yīng)的隨機(jī)變量是獨(dú)立同分布的非凌,其分布函數(shù)為举农,獨(dú)立同分布的隨機(jī)變量的聯(lián)合分布函數(shù)就是每個(gè)分布函數(shù)的乘積,把這個(gè)聯(lián)合分布函數(shù)稱為似然函數(shù)敞嗡,表示為:
因?yàn)樗迫缓瘮?shù)取對(duì)數(shù)后達(dá)到最大值時(shí)候的與本身達(dá)到最大值后的是相同的颁糟,即:
所以我們一般用對(duì)數(shù)似然函數(shù),似然函數(shù)取反就是損失函數(shù)喉悴,而最大化似然函數(shù)就是最小化損失函數(shù):
那損失函數(shù)什么時(shí)候取最小值呢棱貌?當(dāng)然就是其導(dǎo)數(shù)取0的時(shí)候啦。注意這里的表示m個(gè)待估計(jì)的參數(shù)箕肃,取極值時(shí)要求每個(gè)偏導(dǎo)都為0. 損失函數(shù)的矩陣表達(dá)方法為:
其中為單位矩陣
1.3 優(yōu)化方法
對(duì)于二分類的LR婚脱,可以使用梯度下降法,坐標(biāo)軸下降法突雪,牛頓法等起惕。梯度下降法容易理解涡贱,就是參數(shù)按照梯度減小的方向更新(形式上的推導(dǎo))咏删,
在LR中,我們?cè)谧铋_(kāi)始給出了SIgmoid的導(dǎo)數(shù)问词,因此用梯度下降法更新參數(shù)可以表示為:
而牛頓法最初是用來(lái)求解函數(shù)零點(diǎn)的督函,而極值代表一階導(dǎo)數(shù)的零點(diǎn),因此可以用牛頓法。記為一階偏導(dǎo)數(shù)辰狡,為二階偏導(dǎo)數(shù)锋叨,則有:
坐標(biāo)軸下降法則是固定一個(gè)坐標(biāo),沿著另外一個(gè)坐標(biāo)尋找最優(yōu)點(diǎn)宛篇,適合于導(dǎo)數(shù)不連續(xù)的情況娃磺。
1.4 Regulization(正則化)
為什么要正則化,這是因?yàn)闄C(jī)器學(xué)習(xí)模型中叫倍,學(xué)習(xí)到的參數(shù)是直接與特征向量相乘的偷卧,如LR中有:
在不變的情況下,如果特別大吆倦,那乘積就會(huì)特別大听诸,假如在測(cè)試的時(shí)候,某個(gè)測(cè)試樣本跟訓(xùn)練樣本的分布不太一樣蚕泽,那么經(jīng)過(guò)參數(shù)放大后可能得到一個(gè)非常離譜的值晌梨。參數(shù)的取值過(guò)大會(huì)讓模型異常敏感,也容易過(guò)擬合须妻,那么如何避免這種情況呢仔蝌?一種可行的方法就是,我們不希望學(xué)習(xí)到的參數(shù)取值太大荒吏,那就讓他們盡量接近于0掌逛,即:
矩陣表達(dá)就是,我們稱為L(zhǎng)1正則項(xiàng)司倚,同樣的豆混,也有L2正則項(xiàng),
因?yàn)檎齽t項(xiàng)也是關(guān)于的函數(shù)动知,也是我們要優(yōu)化的目標(biāo)之一(目標(biāo)是讓它最小)皿伺,這樣就可以合并到損失函數(shù)中:
是正則項(xiàng)的權(quán)重。加入正則項(xiàng)后盒粮,學(xué)習(xí)到的參數(shù)就不會(huì)太大鸵鸥,模型也就沒(méi)那么敏感。當(dāng)然丹皱,如果正則項(xiàng)的權(quán)重過(guò)大妒穴,那所有的參數(shù)會(huì)很小,模型會(huì)異常不敏感摊崭,基本所有的輸入都會(huì)得到一個(gè)差不多的輸出讼油,所有這個(gè)權(quán)重也要仔細(xì)考慮。
此外呢簸,由于是直接加到優(yōu)化函數(shù)后的矮台,相當(dāng)于對(duì)函數(shù)做平移乏屯,我們并不需要正則化這個(gè)參數(shù)。
1.5多元邏輯回歸
多元邏輯回歸是二元情況的推廣瘦赫,每個(gè)類的概率用Softmax函數(shù)計(jì)算辰晕。假設(shè)要分K類,每個(gè)要學(xué)習(xí)的參數(shù)為 記
則x屬于每個(gè)類的概率可以計(jì)算為:
如下圖:
softmax其實(shí)就相當(dāng)于把輸入放大后再做歸一化确虱。
在多個(gè)類計(jì)算損失函數(shù)時(shí)含友,用到的是多個(gè)類的entropy,這時(shí)要用到One-hot矩陣校辩,也就是:
具體計(jì)算的時(shí)候唱较,使用:
1.6 總結(jié)
自己的實(shí)驗(yàn)數(shù)據(jù)集中有23萬(wàn)條數(shù)據(jù),從結(jié)果看召川,LR的準(zhǔn)確率算很高的南缓,最關(guān)鍵的是訓(xùn)練速度很快。