本文作者:陳?鼎章办,中南財(cái)經(jīng)政法大學(xué)統(tǒng)計(jì)與數(shù)學(xué)學(xué)院
文字編輯:任?哲
技術(shù)總編:張馨月
(一) 線性模型與嶺回歸
1.線性模型
??給定由m個屬性表示的特征向量X=(x1,x2,x3,...,xm)橱健,其中xi是特征向量X在第i個屬性上的取值邓深,線性模型(linear model)通過構(gòu)造一個特征向量的線性組合來表示預(yù)測值f(x)與特征向量X之間的函數(shù)關(guān)系有鹿,其一般表示形式如下:
??利用矩陣方法可以表示為:
??其中W = (w1,w2,....,wm)续膳,通過特定算法求解出W矩陣與常數(shù)項(xiàng)b民逼,線性模型就可以確定吩案。
??為了求解系數(shù)矩陣W與常數(shù)項(xiàng)b,給定樣本數(shù)據(jù)集(x1,y1),(x2,y2),(x3,y3),...(xn,yn)媒惕,我們考慮優(yōu)化如下?lián)p失函數(shù):
??觀察上述損失函數(shù)系吩,易知損失函數(shù)為凸函數(shù),具唯一最小值吓笙。此處損失函數(shù)又叫均方誤差淑玫,基于均方誤差最小化進(jìn)行模型求解的方法稱為最小二乘法(ordinary least squares)。將損失函數(shù)分別對W與b求偏導(dǎo)數(shù)并令偏導(dǎo)數(shù)為0面睛,所需公式如下:
??求解方程組絮蒿,得到W的最小二乘估計(jì):
??最小二乘估計(jì)量具有線性,無偏性叁鉴,方差最小的優(yōu)良統(tǒng)計(jì)性質(zhì)土涝。
2.嶺回歸
??觀察正規(guī)方程組的解,當(dāng)X轉(zhuǎn)置與X矩陣相乘得到的矩陣不可逆(即特征數(shù)量遠(yuǎn)大于訓(xùn)練樣本個數(shù))時幌墓,將無法通過最小二乘得到W的估計(jì)但壮;同時,在訓(xùn)練模型時易會出現(xiàn)過擬合的情況常侣。為了解決上述問題蜡饵,常用的方是引入正則化項(xiàng),優(yōu)化后得到正則化框架如下:
??其中Loss為損失函數(shù)胳施,P(w)為懲罰項(xiàng)(Penalty)溯祸,lambda為正則化力度為超參數(shù)。常用的懲罰項(xiàng)有L1(Lasso)與L2(Ridge舞肆,即嶺回歸)焦辅,小編將以L2為例,簡要說明其原理椿胯。
??嶺回歸筷登,又稱權(quán)值衰減,其懲罰項(xiàng)為W的轉(zhuǎn)置乘W矩陣哩盲,令
??對J(w)函數(shù)求一階偏導(dǎo)數(shù)并令其為0前方,求得W的最優(yōu)解為:
??其中I為單位矩陣狈醉,觀察上述估計(jì)量,X轉(zhuǎn)置X為半正定矩陣惠险,加了lambda倍的單位矩陣后顯然可逆舔糖,即嶺回歸很好地解決了原估計(jì)量中矩陣不可逆的問題。
(二) Logistic回歸與sigmod函數(shù)
1.線性分類與Logistic回歸
??線性分類(Liner Classification)旨在尋找一個激活函數(shù)莺匠,將線性回歸問題轉(zhuǎn)換成一個線性分類問題。線性分類問題分為兩大類十兢,即硬分類與軟分類趣竣。硬分類是輸入一個值(f(x)),返回一個確定的類別(y={0,1})旱物;軟分類則輸入一個值(f(x))遥缕,返回這個樣本屬于某種類別的概率p(即y=[0,1])。硬分類的代表為感知機(jī)宵呛、線性判別分析(Fisher LDA)单匣,而軟分類則包括了logistic回歸,樸素貝葉斯分類器(naivebayes classifier)宝穗,高斯判別分析(Gaussian discriminant analysismodel)等户秤。
??Logistic回歸是一個著名的線性分類算法,利用Logistic回歸可以將線性回歸問題很好地轉(zhuǎn)化成一個線性二分類問題逮矛。由線性模型的原理可知鸡号,預(yù)測值f(x,W)是一個區(qū)間為實(shí)數(shù)集R的連續(xù)型變量;而Logistic回歸通過激活函數(shù)將預(yù)測值轉(zhuǎn)換到(0,1)區(qū)間上的對應(yīng)輸出须鼎,輸出結(jié)果代表樣本屬于"正例"類別的概率p鲸伴。若概率p>0.5,分類器則判別樣本屬于正例晋控;若概率p<0.5汞窗,則分類器判別樣本屬于反例。需要注意的是赡译,在Python的sklearn模塊中仲吏,默認(rèn)將取訓(xùn)練集中數(shù)目較少的類別視為正例。
2.Sigmod函數(shù)
??Sigmod函數(shù)是一個單調(diào)遞增的平滑曲線捶朵,是Logistic回歸中很好的激活函數(shù)蜘矢。Sigmod函數(shù)表達(dá)式與圖像如下:
??圖1.Sigmod分布函數(shù),x軸為輸入的f(x,W)預(yù)測值综看,縱坐標(biāo)為對應(yīng)分類概率值p
??從直觀上看品腹,給定一個線性模型中的樣本預(yù)測值f(x,W),我們總能在sigmod函數(shù)中找到一個(0,1)之間的實(shí)數(shù)與f(x)一一對應(yīng)红碑,該實(shí)數(shù)表示樣本屬于正例類別的概率p舞吭。從數(shù)學(xué)角度泡垃,Sigmod函數(shù)求出了給定f(x,W)條件下的該類別屬于某個類別的條件概率:
(三) 優(yōu)化策略
??在確定模型之后,我們需要確定一個最合適的判定標(biāo)準(zhǔn)羡鸥,在所有的可能模型集合中找出一個最優(yōu)的模型(即確定W)蔑穴,就需要用到損失函數(shù)。在Logistic回歸中惧浴,常用的損失函數(shù)為對數(shù)似然損失函數(shù)存和。其函數(shù)表達(dá)式由最大似然估計(jì)法(MLE)導(dǎo)出,表達(dá)式如下:
??考慮優(yōu)化如下?lián)p失函數(shù):
??該損失函數(shù)本質(zhì)上為信息論中的交叉熵(Cross Entropy)的相反數(shù)衷旅,損失函數(shù)數(shù)值越小捐腿,則該模型分類的準(zhǔn)確率就越高。
??圖2.當(dāng)樣本真實(shí)結(jié)果為正例(1)時柿顶,預(yù)測該樣本為正例類別的把握(概率)越大茄袖,則對數(shù)損失的函數(shù)值越小(圖源網(wǎng)絡(luò))
(四) 算法
??梯度下降法(gradient descent)是求解無約束最優(yōu)化問題的一種常用統(tǒng)計(jì)方法。梯度的方向是函數(shù)值增大速度最快的方向嘁锯。計(jì)算一個函數(shù)的最小值宪祥,我們隨機(jī)選取一個初始點(diǎn),讓該點(diǎn)往該點(diǎn)梯度的反方向一步一步“移動”家乘,不斷更新蝗羊,進(jìn)行迭代,若該點(diǎn)最后的位置趨于不變(即函數(shù)值趨于收斂)烤低,則停止迭代過程肘交,迭代過程如下:
??其中,α為學(xué)習(xí)率扑馁,即每次迭代時邁出的“步長”涯呻;▽g(x)為梯度,表示每次迭代時移動的方向腻要。在求解一元函數(shù)極小值問題中复罐,梯度等價于函數(shù)在該點(diǎn)的一階導(dǎo)數(shù)。需要注意的是雄家,在噪聲相對較大的模型中效诅,梯度下降法容易陷入"局部極小值"的問題,此時可以適當(dāng)調(diào)整步長趟济,或是利用隨機(jī)梯度下降法(stochastic gradient descent)優(yōu)化算法乱投。
?????????????圖3.梯度下降的可視化迭代過程(圖源網(wǎng)絡(luò))