1. 線(xiàn)性回歸模型
假設(shè)特征和結(jié)果滿(mǎn)足線(xiàn)性關(guān)系,;經(jīng)過(guò)最?似然估計(jì)推導(dǎo)出來(lái)的待優(yōu)化的?標(biāo)函數(shù)與平?損失函數(shù)是等價(jià)的,。
● 嶺回歸
加入L2正則項(xiàng),等價(jià)于對(duì)參數(shù)w引入?yún)f(xié)方差為a的零均值高斯先驗(yàn),,不能做variable selection,。
● LASSO回歸
加入L1正則項(xiàng),等價(jià)于對(duì)參數(shù)w引入拉普拉斯先驗(yàn),,可以做variable selection,。
2. LR原理
LR是一中常見(jiàn)的用于分類(lèi)的模型,本質(zhì)上還是一個(gè)線(xiàn)性回歸,,先把特征線(xiàn)性組合,,然后使用sigmoid函數(shù)(單調(diào)可微)將結(jié)果約束到0~1之間,結(jié)果用于二分類(lèi)或者回歸預(yù)測(cè),。
● 模型參數(shù)估計(jì)
最大似然估計(jì)法估計(jì)模型參數(shù),,使用梯度下降或者擬牛頓法進(jìn)行學(xué)習(xí)。
● 損失函數(shù)
最小化交叉熵誤差,,等價(jià)于最大似然估計(jì),。
● 解決非線(xiàn)性分類(lèi)問(wèn)題
加核函數(shù)或特征變換,顯式地把特征映射到高維空間,。
3. SVM原理
一個(gè)樣本集線(xiàn)性可分的時(shí)候,,存在無(wú)窮個(gè)可以將兩類(lèi)數(shù)據(jù)正確分開(kāi),而SVM是通過(guò)最大化間隔來(lái)選擇分類(lèi)超平面,,最大化這個(gè)間隔可以構(gòu)造成一個(gè)約束最優(yōu)化問(wèn)題,,這是一個(gè)凸二次規(guī)劃問(wèn)題,然后使用拉格朗日乘子法把約束優(yōu)化問(wèn)題轉(zhuǎn)為無(wú)約束優(yōu)化問(wèn)題,,令各個(gè)變量偏導(dǎo)為0代入拉格朗日函數(shù)得到它的對(duì)偶問(wèn)題,,最后用SMO算法來(lái)求解這個(gè)對(duì)偶問(wèn)題。
● 解對(duì)偶問(wèn)題的好處
一是對(duì)偶問(wèn)題更好解,,因?yàn)樵瓎?wèn)題是凸二次規(guī)劃問(wèn)題,,對(duì)偶問(wèn)題那里只需要求解alpha系數(shù),而alpha系數(shù)只有支持向量才非0(KKT條件),。二是自然引入核函數(shù),,進(jìn)而推廣到非線(xiàn)性問(wèn)題。
● 軟間隔
當(dāng)數(shù)據(jù)近似線(xiàn)性可分時(shí),可以引入松弛變量,,使間隔加上松弛變量大于等于1,,針對(duì)每一個(gè)松弛變量都有一個(gè)懲罰。
● 核技巧
用一個(gè)變換把數(shù)據(jù)從原空間映射到新空間,,數(shù)據(jù)在新空間是線(xiàn)性可分的,。由于新空間有可能非常高維甚至無(wú)限維,難以計(jì)算且難以表示,,所以不顯式的定義該映射函數(shù),,而是定義一個(gè)函數(shù)把兩個(gè)樣本直接映射到他們?cè)谛驴臻g的內(nèi)積,因?yàn)榍蠼鈱?duì)偶問(wèn)題時(shí)只需要用到內(nèi)積,。常用核函數(shù)有高斯核,、多項(xiàng)式核、線(xiàn)性核,、拉普拉斯核,、sigmoid核。
● 核函數(shù)的選擇
根據(jù)專(zhuān)家先驗(yàn)知識(shí),,或采用交叉驗(yàn)證,,試用不同的核函數(shù)(線(xiàn)性核,多項(xiàng)式核和徑向基核函數(shù)),。
4. LR與SVM的異同
● 相同之處
如果不考慮核函數(shù),,LR和SVM都是線(xiàn)性分類(lèi)器,都是監(jiān)督算法,,都是判別模型,。
● 不同之處
損失函數(shù)不同,LR使用logistical loss(交叉熵),,SVM使用hingeloss,,SVM的損失函數(shù)自帶正則項(xiàng),而LR則需要自己添加正則項(xiàng),。
解決非線(xiàn)性問(wèn)題時(shí),,SVM采用核函數(shù)機(jī)制,而LR一般不用,,因?yàn)閺?fù)雜核函數(shù)需要很大計(jì)算量,,SVM中只有支持向量參與計(jì)算,而LR是全部樣本都需要參與計(jì)算,,若使用核函數(shù)計(jì)算量太大,。
對(duì)異常值的敏感度不一樣。LR中所有樣本都對(duì)分類(lèi)平面有影響,,所以異常點(diǎn)的影響會(huì)被掩蓋,。但SVM的分類(lèi)平面取決于支持向量,,如果支持向量受到異常值影響,則結(jié)果難以預(yù)測(cè),。
在高維空間LR的表現(xiàn)比SVM更穩(wěn)定,,因?yàn)镾VM是要最大化間隔,這個(gè)間隔依賴(lài)與距離測(cè)度,,在高維空間時(shí)這個(gè)距離測(cè)度往往不太好,。(所以需要做歸一化)
5. 分類(lèi)任務(wù)常用的目標(biāo)函數(shù)
交叉熵誤差,hinge loss等,。
● 相對(duì)熵
也稱(chēng)KL散度,,相對(duì)熵可以用來(lái)衡量?jī)蓚€(gè)概率分布之間的差異。
● 交叉熵
可以用來(lái)計(jì)算學(xué)習(xí)模型分布與訓(xùn)練分布之間的差異,,交叉熵?fù)p失通常適用于Softmax 分類(lèi)器。最小化相對(duì)熵(KL散度)等價(jià)于最小化交叉熵,,也等價(jià)于最大化似然估計(jì),。
● Hinge loss(折頁(yè)損失函數(shù))
在二分類(lèi)情況下,公式如下:L(y) =max(0 , 1–t*y),,其中,,y是預(yù)測(cè)值(-1到1之間),t為目標(biāo)值(1或 -1),。其含義為,,y的值在 -1到1之間即可,并不鼓勵(lì)|y|>1,,即讓某個(gè)樣本能夠正確分類(lèi)就可以了,,不鼓勵(lì)分類(lèi)器過(guò)度自信,當(dāng)樣本與分割線(xiàn)的距離超過(guò)1時(shí)并不會(huì)有任何獎(jiǎng)勵(lì),。目的在于使分類(lèi)器更專(zhuān)注于整體的分類(lèi)誤差,。
6. LR邏輯回歸為什么對(duì)特征進(jìn)行離散化
● 離散特征的增加和減少都很容易,,易于模型的快速迭代,;
● 稀疏向量?jī)?nèi)積乘法運(yùn)算速度快,計(jì)算結(jié)果方便存儲(chǔ),,容易擴(kuò)展,;
● 離散化后的特征對(duì)異常數(shù)據(jù)有很強(qiáng)的魯棒性:比如一個(gè)特征是年齡>30是1,,否則0。如果特征沒(méi)有離散化,,一個(gè)異常數(shù)據(jù)“年齡300歲”會(huì)給模型造成很大的干擾,;
● 邏輯回歸屬于廣義線(xiàn)性模型,表達(dá)能力受限,;單變量離散化為N個(gè)后,,每個(gè)變量有單獨(dú)的權(quán)重,,相當(dāng)于為模型引入了非線(xiàn)性,能夠提升模型表達(dá)能力,,加大擬合,;
● 離散化后可以進(jìn)行特征交叉,由M N個(gè)變量變?yōu)镸*N個(gè)變量,,進(jìn)一步引入非線(xiàn)性,,提升表達(dá)能力;
● 特征離散化后,,模型會(huì)更穩(wěn)定,,比如如果對(duì)用戶(hù)年齡離散化,20-30作為一個(gè)區(qū)間,,不會(huì)因?yàn)橐粋€(gè)用戶(hù)年齡長(zhǎng)了一歲就變成一個(gè)完全不同的人,。當(dāng)然處于區(qū)間相鄰處的樣本會(huì)剛好相反,所以怎么劃分區(qū)間是門(mén)學(xué)問(wèn),;
● 特征離散化以后,,起到了簡(jiǎn)化了邏輯回歸模型的作用,降低了模型過(guò)擬合的風(fēng)險(xiǎn),。
7. 正則項(xiàng)
● 結(jié)構(gòu)風(fēng)險(xiǎn)最小化
即正則化,。在經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化基礎(chǔ)上加上正則項(xiàng),懲罰復(fù)雜的模型,。結(jié)構(gòu)風(fēng)險(xiǎn)小同時(shí)需要經(jīng)驗(yàn)風(fēng)險(xiǎn)小和模型簡(jiǎn)單,,如貝葉斯估計(jì)中的最大后驗(yàn)概率估計(jì)。
● 經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化
即誤差函數(shù)最小,,樣本數(shù)量大時(shí),,經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化學(xué)習(xí)效果好,如極大似然估計(jì),。樣本少時(shí)會(huì)出現(xiàn)過(guò)擬合,。
● 范數(shù)
其非負(fù)性使得它天然適合作為機(jī)器學(xué)習(xí)的正則項(xiàng)。
L1范數(shù):向量中各個(gè)元素絕對(duì)值之和,。
L2范數(shù):向量中各個(gè)元素平方和的開(kāi)二次方根,。
Lp范數(shù):向量中各個(gè)元素絕對(duì)值的p次方和的開(kāi)p次方根。
● L1正則
項(xiàng)目標(biāo)函數(shù)中增加所有權(quán)重w參數(shù)的絕對(duì)值之和, 逼迫更多w為零(也就是變稀疏. L2因?yàn)槠鋵?dǎo)數(shù)也趨0, 奔向零的速度不如L1給力了),,傾向于使參數(shù)稀疏化,;
● L2正則項(xiàng)
傾向于使參數(shù)稠密地接近于0,目標(biāo)函數(shù)中增加所有權(quán)重w參數(shù)的平方之和, 逼迫所有w盡可能趨向零但不為零,。
8. 決策樹(shù)
概念:決策樹(shù)一種基本的分類(lèi)和回歸方法,,呈樹(shù)形結(jié)構(gòu),表示基于特征對(duì)實(shí)例進(jìn)行分類(lèi)的過(guò)程,。決策樹(shù)的學(xué)習(xí)過(guò)程包括三個(gè)步驟:特征選擇,、決策樹(shù)的生成以及決策樹(shù)的修剪(預(yù)剪枝和后剪枝),。特征選擇的準(zhǔn)則是信息增益或者信息增益比(基尼系數(shù))。
● ID3生成算法
從根節(jié)點(diǎn)開(kāi)始,,對(duì)結(jié)點(diǎn)結(jié)算所有可能的特征的信息增益,,選擇信息增益最大的特征作為結(jié)點(diǎn)特征,然后對(duì)子節(jié)點(diǎn)遞歸的調(diào)用這個(gè)方法,,構(gòu)建決策樹(shù),。信息增益偏向于選擇取值較多的特征,容易過(guò)擬合,。
● C4.5生成算法
與ID3算法相似,,用信息增益率(偏好可取值數(shù)目較少)來(lái)選擇特征。小技巧:先找出信息增益高于平均水平的屬性,,再?gòu)闹羞x擇增益率最高的,。
● CART生成算法
全稱(chēng)分類(lèi)樹(shù)與回歸樹(shù),可用于分類(lèi)也可用于回歸,。分類(lèi)樹(shù)用基尼系數(shù)(越小越好)進(jìn)行特征選擇,,用最小二乘回歸樹(shù)生成算法生成回歸樹(shù)(結(jié)點(diǎn)下所有點(diǎn)的均值作為該結(jié)點(diǎn)的預(yù)測(cè)值)。
● 基尼指數(shù)
反映了從數(shù)據(jù)集中隨機(jī)抽取兩個(gè)樣本,,其類(lèi)別標(biāo)記不一致的概率。因此基尼指數(shù)越小,,則數(shù)據(jù)集的純度越高,。
● 決策樹(shù)的剪枝
通過(guò)極小化決策樹(shù)整體的損失函數(shù)來(lái)進(jìn)行剪枝。從樹(shù)的葉節(jié)點(diǎn)開(kāi)始向上回縮,,假設(shè)回縮前樹(shù)為T(mén)a,,回縮到父節(jié)點(diǎn)后樹(shù)為T(mén)b,計(jì)算兩棵樹(shù)的損失函數(shù),,如果回縮后損失函數(shù)變小,,則剪枝,把父節(jié)點(diǎn)設(shè)為葉節(jié)點(diǎn),,這樣迭代,。
9. 隨機(jī)森林(樣本隨機(jī)性和特征隨機(jī)性)
● 原理
由很多棵決策樹(shù)組成,每棵決策樹(shù)之間沒(méi)有關(guān)聯(lián),。每棵樹(shù)的生成方法是,,隨機(jī)而且有放回地(如果沒(méi)有放回那就每棵樹(shù)都訓(xùn)練集完全不相交,太片面)從訓(xùn)練集選取N個(gè)(訓(xùn)練集大小為N)訓(xùn)練樣本作為訓(xùn)練集,,所以每棵樹(shù)訓(xùn)練集都不一樣,,但包含重復(fù)樣本,生成決策樹(shù)選擇特征時(shí),,從特征子集里面選擇最優(yōu)的特征用于分裂,。得到森林后,,輸入樣本讓每棵決策樹(shù)進(jìn)行判斷,輸出結(jié)果為被最多決策樹(shù)選擇的分類(lèi),。
● 與Bagging區(qū)別
與Bagging不一樣的是會(huì)抽取與樣本數(shù)目同樣大小的樣本來(lái)訓(xùn)練(Bagging一般少于n),,且只用部分特征得到分類(lèi)器(Bagging用全部特征)。
● 森林中任意兩棵樹(shù)的相關(guān)性
相關(guān)性越大,,錯(cuò)誤率越大,。
● 森林中每棵樹(shù)的分類(lèi)能力
每棵樹(shù)的分類(lèi)能力越強(qiáng),整個(gè)森林的錯(cuò)誤率越低,。
● 隨機(jī)森林唯一的一個(gè)參數(shù)
特征個(gè)數(shù)m,,減小m會(huì)降低樹(shù)的相關(guān)性和分類(lèi)能力,增加m兩者也會(huì)隨之增大,。
10. 集成學(xué)習(xí)
● Bagging
對(duì)原數(shù)據(jù)有放回抽取,,構(gòu)建出多個(gè)樣本數(shù)據(jù)集,訓(xùn)練出多個(gè)分類(lèi)器,。
● Boosting
使用全部樣本(可調(diào)權(quán)重)依次訓(xùn)練每個(gè)學(xué)習(xí)器, 迭代集成(平滑加權(quán)),。通過(guò)改變樣本分布,對(duì)容易錯(cuò)分的數(shù)據(jù)加強(qiáng)學(xué)習(xí),,增加錯(cuò)分樣本數(shù)據(jù)的權(quán)重,。
● 兩者區(qū)別:
樣本選擇不同
Bagging是有放回地抽取數(shù)據(jù)集,每輪訓(xùn)練集是獨(dú)立的,。而B(niǎo)oosting每一輪的訓(xùn)練集不變,,但是訓(xùn)練集中每個(gè)樣本的權(quán)重會(huì)發(fā)生變化,根據(jù)上一輪分類(lèi)結(jié)果調(diào)整,。
樣本權(quán)重不同
Bagging每個(gè)樣本權(quán)重相等,,Boosting根據(jù)錯(cuò)誤率不斷調(diào)整樣本的權(quán)重,被錯(cuò)分的樣本權(quán)重會(huì)增加,。
生成方式不同
Bagging各個(gè)分類(lèi)器可以并行生成,,而B(niǎo)oosting只能順序生成。
優(yōu)化目標(biāo)有差異
Bagging減小的是方差,,Boosting減小的是偏差,。Bagging減小方差是因?yàn)閷?duì)多個(gè)用不同訓(xùn)練集得到的分類(lèi)器取了平均(取平均比單一的方差要小),。Boosting減小偏差是因?yàn)槊看蔚荚谥罢`差的基礎(chǔ)上進(jìn)一步降低錯(cuò)誤率,,所以就是減小偏差,對(duì)于訓(xùn)練集的擬合程度好,。
11. Boosting方法
● AdaBoost
初始化樣本權(quán)重,,每個(gè)樣本最開(kāi)始的權(quán)重一樣。訓(xùn)練弱分類(lèi)器,,若樣本在這次訓(xùn)練中被正確分類(lèi),,則降低它的權(quán)重,,反之增加。這樣多次訓(xùn)練得到多個(gè)弱分類(lèi)器組成一個(gè)強(qiáng)分類(lèi)器,,誤差率小的弱分類(lèi)器擁有更大的權(quán)重,。
● 提升樹(shù)
提升樹(shù)是迭代多棵回歸樹(shù)來(lái)共同決策, 當(dāng)采用平方誤差函數(shù),,每一棵回歸樹(shù)學(xué)習(xí)的是之前所有樹(shù)的結(jié)論和殘差,,擬合得到一個(gè)當(dāng)前的殘差回歸樹(shù),最后累加所有樹(shù)的結(jié)果作為最終結(jié)果,。
GBDT
梯度提升樹(shù),。利用損失函數(shù)的負(fù)梯度在當(dāng)前模型的值作為提升樹(shù)算法的殘差的近似值。因?yàn)楫?dāng)損失函數(shù)不是平方誤差時(shí),,殘差不是簡(jiǎn)單的真實(shí)值減去預(yù)測(cè)值,,把目標(biāo)函數(shù)對(duì)當(dāng)前模型求梯度,就可以得到模型改進(jìn)的方向,,負(fù)梯度就可以近似成殘差,。
XGBoost
基于C 通過(guò)多線(xiàn)程實(shí)現(xiàn)了回歸樹(shù)的并行構(gòu)建,并在原有GBDT基礎(chǔ)上加以改進(jìn),,在目標(biāo)函數(shù)增加了正則化項(xiàng),,正則項(xiàng)里包括了樹(shù)的葉子結(jié)點(diǎn)個(gè)數(shù)、每個(gè)葉子結(jié)點(diǎn)上輸出分?jǐn)?shù)的L2模的平方和,,且對(duì)目標(biāo)函數(shù)做了二階泰勒展開(kāi),從而極大提升了模型的訓(xùn)練速度和預(yù)測(cè)精度,。
12. XGBoost為什么要泰勒展開(kāi)
二階導(dǎo)數(shù)有利于梯度下降更快更準(zhǔn),使用泰勒展開(kāi)取得函數(shù)做自變量的二階導(dǎo)數(shù)形式, 可以在不選定損失函數(shù)具體形式的情況下, 僅僅依靠輸入數(shù)據(jù)的值就可以進(jìn)行葉子分裂優(yōu)化計(jì)算,。簡(jiǎn)短來(lái)說(shuō),,就是為了統(tǒng)一損失函數(shù)求導(dǎo)的形式以支持自定義損失函數(shù)。
13. GBDT和XGBoost的區(qū)別
● 基分類(lèi)器的選擇:GBDT以CART做基分類(lèi)器,,XGBoost還支持線(xiàn)性分類(lèi)器,。
● GBDT在優(yōu)化時(shí)只用到了一階導(dǎo)數(shù)信息,XGBoost對(duì)目標(biāo)函數(shù)進(jìn)行了二階泰勒展開(kāi),,同時(shí)用到一階和二階導(dǎo)數(shù),。
● XGBoost在目標(biāo)函數(shù)里加入了正則項(xiàng),控制模型的復(fù)雜度,。
● XGBoost可以為缺失值或者指定的值指定分支的默認(rèn)方向,,對(duì)特征值有缺失的樣本可以自動(dòng)學(xué)習(xí)出他的分裂方向。
● XGBoost支持并行,,可以在特征粒度上并行,,在訓(xùn)練前對(duì)特征進(jìn)行分塊排序,,在尋找最佳分裂點(diǎn)的時(shí)候可以并行化計(jì)算,,大大提升速度,。
14. RF和GBDT的區(qū)別
● 相同點(diǎn)
都是由多棵樹(shù)組成,,最終的結(jié)果都是由多棵樹(shù)一起決定。
● 不同點(diǎn)
組成隨機(jī)森林的樹(shù)可以分類(lèi)樹(shù)也可以是回歸樹(shù),,而GBDT只由回歸樹(shù)組成;
組成隨機(jī)森林的樹(shù)可以并行生成,,而GBDT是串行生成;
隨機(jī)森林的結(jié)果是多棵樹(shù)投票表決的,,而GBDT則是多棵樹(shù)累加之和,;
隨機(jī)森林對(duì)異常值不敏感,,而GBDT對(duì)異常值比較敏感,;
隨機(jī)森林是減少模型的方差,而GBDT是減少模型的偏差,。
15. XGBoost和LightGBM的區(qū)別
● XGBoost采用的是level-wise的分裂策略,,而lightGBM采用了leaf-wise的策略,區(qū)別是XGBoost對(duì)每一層所有節(jié)點(diǎn)做無(wú)差別分裂,,可能有些節(jié)點(diǎn)的增益非常小,,對(duì)結(jié)果影響不大,,但是XGBoost也進(jìn)行了分裂,,帶來(lái)了務(wù)必要的開(kāi)銷(xiāo)。leaft-wise的做法是在當(dāng)前所有葉子節(jié)點(diǎn)中選擇分裂收益最大的節(jié)點(diǎn)進(jìn)行分裂,,如此遞歸進(jìn)行,,很明顯leaf-wise這種做法容易過(guò)擬合,因?yàn)槿菀紫萑氡容^高的深度中,,因此需要對(duì)最大深度做限制,,從而避免過(guò)擬合。
● LightGBM使用了基于histogram的決策樹(shù)算法,,這一點(diǎn)不同與XGBoost中的exact算法,,histogram算法在內(nèi)存和計(jì)算代價(jià)上都有不小優(yōu)勢(shì)。
16. EM算法
● 定義:在概率模型中尋找參數(shù)最大似然估計(jì)或者最大后驗(yàn)估計(jì)的算法,其中概率模型依賴(lài)于無(wú)法觀測(cè)的隱性變量,。
● 方法:最大期望算法經(jīng)過(guò)兩個(gè)步驟交替進(jìn)行計(jì)算:第一步是計(jì)算期望(E),,利用對(duì)隱藏變量的現(xiàn)有估計(jì)值,計(jì)算其最大似然估計(jì)值,;第二步是最大化(M),,最大化在E步上求得的最大似然值來(lái)計(jì)算參數(shù)的值。M步上找到的參數(shù)估計(jì)值被用于下一個(gè)E步計(jì)算中,,這個(gè)過(guò)程不斷交替進(jìn)行,。
17. 歸一化處理
● 標(biāo)準(zhǔn)化:把特征值變?yōu)榫?,方差1,。
● 歸一化:把每個(gè)特征向量的值放縮到相同數(shù)值范圍,,如[0,1]。
● 歸一化的作用
加快梯度下降求最優(yōu)解的速度,。因?yàn)槿魞蓚€(gè)特征的值區(qū)間相差大,,數(shù)據(jù)會(huì)呈扁長(zhǎng)形,梯度下降很可能會(huì)走之字形路線(xiàn)(垂直等高線(xiàn)走),。
可能提高精度,。有些分類(lèi)器依賴(lài)于計(jì)算樣本之間的距離,而區(qū)間大特征值對(duì)距離影響會(huì)更大,,但若區(qū)間小的特征值才是真正重要的特征,,則容易被忽略。
● 哪些機(jī)器學(xué)習(xí)算法需要?dú)w一化
利用梯度下降法求解的模型一般需要?dú)w一化,,如線(xiàn)性回歸,、LR、SVM,、KNN,、神經(jīng)網(wǎng)絡(luò)等。樹(shù)形模型一般不需要?dú)w一化,,因?yàn)樗麄儾魂P(guān)心變量的值(數(shù)值縮放不影響分裂位置),,而是關(guān)心變量的分布,如決策樹(shù),、隨機(jī)森林。
18. 如何進(jìn)行特征選擇
● 特征選擇是一個(gè)重要的數(shù)據(jù)預(yù)處理過(guò)程,,主要有兩個(gè)原因:一是減少特征數(shù)量,、降維,使模型泛化能力更強(qiáng),,減少過(guò)擬合;二是增強(qiáng)對(duì)特征和特征值之間的理解,。
● 常見(jiàn)的特征選擇方式
去除方差較小的特征;
正則化:L1正則化能夠生成稀疏的模型;L2正則化的表現(xiàn)更加穩(wěn)定,,由于有用的特征往往對(duì)應(yīng)系數(shù)非零;
穩(wěn)定性選擇:在不同的數(shù)據(jù)子集和特征子集上運(yùn)行特征選擇算法,,不斷的重復(fù),最終匯總特征選擇結(jié)果,。選擇算法可以是回歸,、SVM或其他類(lèi)似的方法。
19. 樣本不均勻
● 加權(quán):不同類(lèi)別分錯(cuò)的代價(jià)設(shè)為不同,。
● 采樣:上采樣和下采樣,,上采樣是把小眾類(lèi)復(fù)制多份,下采樣是從大眾類(lèi)中選取部分樣本,。
上采樣
上采樣會(huì)把小眾樣本復(fù)制多份,,一個(gè)點(diǎn)會(huì)在高維空間中反復(fù)出現(xiàn),這會(huì)導(dǎo)致一個(gè)問(wèn)題,,那就是運(yùn)氣好就能分對(duì)很多點(diǎn),,否則分錯(cuò)很多點(diǎn)。為了解決這一問(wèn)題,,可以在每次生成新數(shù)據(jù)點(diǎn)時(shí)加入輕微的隨機(jī)擾動(dòng),。
下采樣
因?yàn)橄虏蓸訒?huì)丟失信息,為了減少信息的損失,,第一種方法可以利用模型融合的方法(bagging):多次下采樣(放回采樣,,這樣產(chǎn)生的訓(xùn)練集才相互獨(dú)立)產(chǎn)生多個(gè)不同的訓(xùn)練集,進(jìn)而訓(xùn)練多個(gè)不同的分類(lèi)器,,通過(guò)組合多個(gè)分類(lèi)器的結(jié)果得到最終的結(jié)果,。第二種方法利用增量訓(xùn)練的思想(Boosting):先通過(guò)一次下采樣產(chǎn)生訓(xùn)練集,訓(xùn)練一個(gè)分類(lèi)器,,對(duì)于那些分類(lèi)正確的大眾樣本不放回,,然后對(duì)這個(gè)更小的大眾樣本下采樣產(chǎn)生訓(xùn)練集,訓(xùn)練第二個(gè)分類(lèi)器,,以此類(lèi)推,,最終組合所有分類(lèi)器的結(jié)果得到最終結(jié)果。
20. 模型評(píng)價(jià)指標(biāo)
● TP:正類(lèi)預(yù)測(cè)為正類(lèi)
● FN:正類(lèi)預(yù)測(cè)為負(fù)類(lèi)
● FP:負(fù)類(lèi)預(yù)測(cè)為正類(lèi)
● TN:負(fù)類(lèi)預(yù)測(cè)為負(fù)類(lèi)
● 精確率:預(yù)測(cè)為正的樣本當(dāng)中有多少預(yù)測(cè)正確了,,P = TP/(TP FP)
● 召回率:真正為正的樣本當(dāng)中有多少被預(yù)測(cè),,R = TP/(TP FN)
● F1值: 綜合考慮了精確率和召回率,2/F1 = 1/R 1/P
● ROC:橫軸是假陽(yáng)性,,F(xiàn)PR=FP/(FP TN),,真實(shí)的反例中,預(yù)測(cè)為正例的比例,;縱軸是真陽(yáng)性,,TPR=TP/(TP FN),真實(shí)的正例中,預(yù)測(cè)為正例的比例,;繪制方法:假設(shè)已有一系列樣本被分為正類(lèi)的概率,,按概率值從大到小排序,依次將該概率值作為閾值來(lái)預(yù)測(cè)分類(lèi),,每個(gè)閾值都對(duì)應(yīng)一對(duì)FPR,、TPR,這樣一來(lái)就能繪制出曲線(xiàn),。
● AUC:ROC曲線(xiàn)的面積,,AUC大的分類(lèi)器效果更好。
21. 常用計(jì)算距離的方法
● 歐氏距離:將樣本的不同屬性之間的差別等同對(duì)待,,但實(shí)際上可能有些屬性更重要,。適用于各分量的度量標(biāo)準(zhǔn)統(tǒng)一的情況。
● 曼哈頓距離:兩個(gè)點(diǎn)在標(biāo)準(zhǔn)坐標(biāo)系上的絕對(duì)軸距之和,。計(jì)算速度快,。
● 切比雪夫距離:國(guó)王可以直行、橫行,、斜行,,所以國(guó)王走一步可以移動(dòng)到相鄰8個(gè)方格中的任意一個(gè)。國(guó)王從格子(x1,y1)走到格子(x2,y2)最少需要的步數(shù)叫切比雪夫距離,。
22. 聚類(lèi)
常用方法有:層次的方法(hierarchical method),、劃分方法(partitioning method)、基于密度的方法(density-based method),、基于網(wǎng)格的方法(grid-based method),、基于模型的方法(model-based method)等。
● 經(jīng)典K-means(劃分)算法流程
隨機(jī)地選擇k個(gè)對(duì)象,,每個(gè)對(duì)象初始地代表了一個(gè)簇的中心,;
對(duì)剩余的每個(gè)對(duì)象,根據(jù)其與各簇中心的距離,,將它賦給最近的簇,;
重新計(jì)算每個(gè)簇的平均值,更新為新的簇中心,;
不斷重復(fù)ii,、iii,,直到準(zhǔn)則函數(shù)收斂,。
● K個(gè)初始類(lèi)簇點(diǎn)的選取還有兩種方法
選擇彼此距離盡可能遠(yuǎn)的K個(gè)點(diǎn);
先對(duì)數(shù)據(jù)用層次聚類(lèi)算法進(jìn)行聚類(lèi),,得到K個(gè)簇之后,從每個(gè)類(lèi)簇中選擇一個(gè)點(diǎn),該點(diǎn)可以是該類(lèi)簇的中心點(diǎn),,或者是距離類(lèi)簇中心點(diǎn)最近的那個(gè)點(diǎn),。
● K值的選擇
輪廓系數(shù),求出所有樣本的輪廓系數(shù)后再求平均值就得到了平均輪廓系數(shù),。平均輪廓系數(shù)的取值范圍為[-1,1],,且簇內(nèi)樣本的距離越近,簇間樣本距離越遠(yuǎn),,平均輪廓系數(shù)越大,,聚類(lèi)效果越好。那么,,很自然地,,平均輪廓系數(shù)最大的k便是最佳聚類(lèi)數(shù)。
● 經(jīng)典DBSCAN算法流程
DBSCAN通過(guò)檢查數(shù)據(jù)集中每點(diǎn)的Eps鄰域來(lái)搜索簇,,如果點(diǎn)p的Eps鄰域包含的點(diǎn)多于MinPts個(gè),,則創(chuàng)建一個(gè)以p為核心對(duì)象的簇;
然后,,DBSCAN迭代地聚集從這些核心對(duì)象直接密度可達(dá)的對(duì)象,,這個(gè)過(guò)程可能涉及一些密度可達(dá)簇的合并;
當(dāng)沒(méi)有新的點(diǎn)添加到任何簇時(shí),,該過(guò)程結(jié)束,。
● K-means與DBSCAN對(duì)比
和傳統(tǒng)的K-Means算法相比,DBSCAN最大的不同就是不需要輸入類(lèi)別數(shù)k,,當(dāng)然它最大的優(yōu)勢(shì)是可以發(fā)現(xiàn)任意形狀的聚類(lèi)簇,,而不是像K-Means,一般僅僅使用于凸的樣本集聚類(lèi),。同時(shí)它在聚類(lèi)的同時(shí)還可以找出異常點(diǎn),。
● DBSCAN的主要優(yōu)點(diǎn)
可以對(duì)任意形狀的稠密數(shù)據(jù)集進(jìn)行聚類(lèi),相對(duì)的,,K-Means之類(lèi)的聚類(lèi)算法一般只適用于凸數(shù)據(jù)集,;
可以在聚類(lèi)的同時(shí)發(fā)現(xiàn)異常點(diǎn),對(duì)數(shù)據(jù)集中的異常點(diǎn)不敏感,;
聚類(lèi)結(jié)果沒(méi)有偏倚,,相對(duì)的,K-Means之類(lèi)的聚類(lèi)算法初始值對(duì)聚類(lèi)結(jié)果有很大影響,。
● DBSCAN的主要缺點(diǎn)
如果樣本集的密度不均勻,、聚類(lèi)間距差相差很大時(shí),聚類(lèi)質(zhì)量較差,,這時(shí)用DBSCAN聚類(lèi)一般不適合,;
如果樣本集較大時(shí),,聚類(lèi)收斂時(shí)間較長(zhǎng),此時(shí)可以對(duì)搜索最近鄰時(shí)建立的KD樹(shù)或者球樹(shù)進(jìn)行規(guī)模限制來(lái)改進(jìn),;
調(diào)參相對(duì)于傳統(tǒng)的K-Means之類(lèi)的聚類(lèi)算法稍復(fù)雜,,主要需要對(duì)距離閾值?,鄰域樣本數(shù)閾值MinPts聯(lián)合調(diào)參,,不同的參數(shù)組合對(duì)最后的聚類(lèi)效果有較大影響,。