12 - SVM, KNN,LR, RF簡(jiǎn)要介紹

這里接第11篇的介紹。

5 支持向量機(jī)(Support Vector Machine, SVM)

支持向量機(jī)是可對(duì)類別進(jìn)行分類的有監(jiān)督的學(xué)習(xí)算法。其在樣本的特征空間中找出間隔最大的超平面對(duì)樣本進(jìn)行分類。SVM根據(jù)其學(xué)習(xí)算法不同可劃分為線性可分SVM、線性近似可分SVM與非線性SVM。實(shí)現(xiàn)上述三種SVM主要依靠核函數(shù)—線性核函數(shù)、高斯核函數(shù)、多項(xiàng)式核函數(shù)與Sigmoid核函數(shù),后三種核函數(shù)為非線性,一般建議使用高斯核函數(shù)。


image.png

如上圖,對(duì)于二分類,SVM需要確定一條最優(yōu)直線使兩類樣本分開,在圖1-4中A可以看到有多條直線可將兩組分開,但最優(yōu)的是圖1-4中B的w*x+b=0直線。對(duì)于最優(yōu)直線的確定,需要使最優(yōu)直線到最近點(diǎn)的距離最大,最近點(diǎn)被稱為支持向量(如圖1-4中B的紅點(diǎn)/圈),這里的距離是求出點(diǎn)到直線的距離最大,這是在二維空間,當(dāng)在三維及其以上的空間時(shí),直線變?yōu)槌矫?,距離則需要求點(diǎn)到超平面的幾何距離(Westreich et al 2010)。


image.png

如圖1-5中A,在二維平面內(nèi)無(wú)法將兩類樣本分開,但可以將其投影到三維空間中(如圖1-5中B),則看到可以將其分開。這種投影是通過(guò)核函數(shù)實(shí)現(xiàn)的,其先將樣本特征值在低維度上計(jì)算,再將實(shí)質(zhì)的分類效果表現(xiàn)在高維度上。為了更簡(jiǎn)便的計(jì)算和優(yōu)化,原始最優(yōu)間隔采用拉格朗日對(duì)偶法與懲罰系數(shù)C轉(zhuǎn)變,并最終使用序列最小優(yōu)化算法進(jìn)行計(jì)算(Keerthi et al 2000, Keerthi and Gilbert 2002)。

SVM的優(yōu)點(diǎn):(1)適用各種形式的數(shù)據(jù),如文本、圖像等;(2)泛化能力較好,即其過(guò)擬合的風(fēng)險(xiǎn)?。唬?)相對(duì)較好地處理高維度數(shù)據(jù);(4)核函數(shù)的應(yīng)用使其能很好的適應(yīng)各種情況。其缺點(diǎn):(1)對(duì)大規(guī)模數(shù)據(jù)難以處理;(2)只依靠少數(shù)支持向量決定最終結(jié)果,如有異常值,則結(jié)果容易出現(xiàn)較大偏差;(3)對(duì)缺失值敏感(Westreich et al 2010)。

6 K最近鄰算法(K Nearest Neighbor, KNN)

K最近鄰算法是通過(guò)計(jì)算樣本特征之間的距離,根據(jù)距離k進(jìn)行分類,屬于無(wú)參數(shù)分類和回歸方法(Altman 1992)。距離k的度量可以使用閔可夫斯基距離、歐氏距離與曼哈頓距離等距離公式進(jìn)行計(jì)算,一般其取20以內(nèi)的正整數(shù),較大的k取值會(huì)降低噪音對(duì)分析的影響,且一般對(duì)于二分類問(wèn)題,取k為奇數(shù)將有利于判別。

閔可夫斯基距離公式為:


image.png

上述公式中,當(dāng)p=2時(shí),變?yōu)闅W氏距離,當(dāng)p=1時(shí),變?yōu)槁D距離(Hechenbichler and Schliep 2004)。
KNN屬于“懶惰學(xué)習(xí)”,即只是將訓(xùn)練集數(shù)據(jù)儲(chǔ)存起來(lái),再來(lái)新樣本時(shí)進(jìn)行距離計(jì)算,根據(jù)投票結(jié)果判別新樣本屬于哪一類。例如圖1-6,藍(lán)色方框與紅色三角為已知的訓(xùn)練集,當(dāng)有綠色圓圈新樣本進(jìn)行判別時(shí),假設(shè)k為1,則有兩個(gè)紅色三角與一個(gè)為藍(lán)色方框參與判別,這樣投票結(jié)果為2:1,故綠色圓圈屬于紅色三角形一類;假如k為2,則有兩個(gè)紅色三角與三個(gè)為藍(lán)色方框參與判別,這樣投票結(jié)果為2:3,故綠色圓圈屬于藍(lán)色方框。所以k值需要選擇,一般是根據(jù)經(jīng)驗(yàn)進(jìn)行設(shè)置,并且每個(gè)樣本(如紅三角)對(duì)判別決策所占的比重也可以進(jìn)行設(shè)定即為權(quán)重KNN(Hechenbichler and Schliep 2004)。


image.png

KNN的實(shí)現(xiàn)主要有蠻力實(shí)現(xiàn)法(即上述投票法)、KD樹實(shí)現(xiàn)和球樹實(shí)現(xiàn)等算法。
KNN的優(yōu)點(diǎn):(1)對(duì)多分類問(wèn)題處理結(jié)果較好;(2)無(wú)需估計(jì)參數(shù),簡(jiǎn)單易于理解;(3)對(duì)于非線性數(shù)據(jù)處理結(jié)果較好,即沒有對(duì)數(shù)據(jù)分布的假設(shè)。其缺點(diǎn):(1)計(jì)算量較大,運(yùn)算速度慢,預(yù)測(cè)慢;(2)對(duì)數(shù)據(jù)的無(wú)關(guān)特征敏感;(3)不會(huì)從訓(xùn)練集中學(xué)習(xí),只是簡(jiǎn)單利于其本身,導(dǎo)致泛化能力不強(qiáng)

7 邏輯回歸(Logistic Regression, LR)

邏輯回歸是一種有監(jiān)督的學(xué)習(xí)方法,其函數(shù)基本的公式:


image.png

上述公式為Sigmoid函數(shù),圖為1-7,其輸出值在[0, 1]之間,需要選擇一個(gè)閾值,通常是0.5,當(dāng)p(x) > 0.5時(shí),x為A類,如果p(x) < 0.5時(shí),x為B類。閾值可以調(diào)整,其代表對(duì)于這個(gè)事情的把握度,如上述的閾值為0.5,如計(jì)算的p(x1)=0.3,則有50%的把握認(rèn)為x1屬于B類(Press 2013)。
LR的運(yùn)算基本過(guò)程:(1)假設(shè)p(x)=1,構(gòu)造sigmoid函數(shù),即利用最大似然取對(duì)數(shù)作為誤差函數(shù),用梯度下降求最小的誤差函數(shù)值,求出a與b;(2)根據(jù)訓(xùn)練數(shù)據(jù)集多組數(shù)據(jù),重復(fù)循環(huán)(1)n次,計(jì)算數(shù)據(jù)集梯度,更新sigmoid參數(shù),確定最終的sigmoid函數(shù);(3)輸入預(yù)測(cè)集數(shù)據(jù);(4)運(yùn)用最終sigmoid函數(shù)求解分類(Dreiseitl and Ohno-Machado 2002)。
LR的優(yōu)點(diǎn):(1)容易接收新數(shù)據(jù),對(duì)模型更新;(2)能夠容易解決變量間的共線性問(wèn)題;(3)運(yùn)算速度快,適合二分類問(wèn)題。其缺點(diǎn):(1)適用的數(shù)據(jù)和具體場(chǎng)景較少;(2)不適用于樣本具有很大的特征值(即變量過(guò)多);(3)容易欠擬合,分類準(zhǔn)確性較低;(4)使用前提是應(yīng)變量和自變量有線性關(guān)系,只是廣義線性模型,不能處理非線性問(wèn)題。

8 隨機(jī)森林[(Random Forest, RF)

隨機(jī)森林是將多個(gè)決策樹集合在一起的一種算法,基本單元為決策樹,并且可以用于回歸和分類(Breiman 2001, Liaw and Wiener 2002)。其名字由“隨機(jī)”與“森林”組成,“隨機(jī)”有兩個(gè)含義,一指在訓(xùn)練集中隨機(jī)且有放回的抽取n個(gè)樣本進(jìn)行建模,二指每個(gè)節(jié)點(diǎn)在特征值M中隨機(jī)抽取k(k<M)個(gè)進(jìn)行建模,且每個(gè)節(jié)點(diǎn)處的k應(yīng)相同,這兩個(gè)隨機(jī)使該算法不容易過(guò)擬合(Ho 1998)。“森林”即為多個(gè)決策樹組成,其要求基本同上述的決策樹,但這里的決策樹沒有剪枝的過(guò)程,讓其盡量生長(zhǎng)(Cutler et al 2012)。其將多個(gè)決策樹組合在一起是采用集成學(xué)習(xí)方法,該算法的中心思想是讓每個(gè)決策樹產(chǎn)生一個(gè)結(jié)果,再對(duì)這些結(jié)果進(jìn)行統(tǒng)計(jì),哪種結(jié)果數(shù)量最多,即為最終結(jié)果。

RF實(shí)現(xiàn)的過(guò)程(1)隨機(jī)有放回的從樣本N中選出n個(gè)子樣本;(2)每個(gè)節(jié)點(diǎn)在特征值M中隨機(jī)選出k個(gè)特征值;(3)重復(fù)第一與第二步s次,創(chuàng)建s個(gè)決策樹;(4)對(duì)s個(gè)決策樹結(jié)果分析,哪一類決策樹最多,則最終判別為哪一類。

RF算法主要有兩個(gè)參數(shù),第一個(gè)為抽取每個(gè)樣本的特征值k,第二個(gè)為決策樹的數(shù)量。特征值k一般建議為全部特征值的開方(Geurts et al 2006)。在確定較優(yōu)的k后,一般取決策樹數(shù)為500進(jìn)行嘗試,查看隨著決策樹的數(shù)量增多,袋外錯(cuò)誤率是否會(huì)穩(wěn)定在一個(gè)定值,取能達(dá)到這個(gè)定值的最小決策樹數(shù)的數(shù)量。

隨機(jī)森林算法優(yōu)點(diǎn):(1)能夠有效處理大數(shù)據(jù);(2)能處理高維度變量的樣本,不需要降維;(3)能較好處理缺失值問(wèn)題。其缺點(diǎn):(1)不能直觀進(jìn)行解釋(2)過(guò)度擬合某些具有噪聲分類。
上述的八種算法,一般多用于二分類問(wèn)題,如“有或無(wú)”與“好或壞”等,但在實(shí)際應(yīng)用中也有較多的多分類問(wèn)題,如彩虹可以劃分7種顏色,當(dāng)判別一個(gè)新的顏色屬于這7種顏色的哪一種時(shí),這就需要解決一個(gè)七分類問(wèn)題。多分類是二分類的一個(gè)拓展,解決辦法有兩種,第一種是一對(duì)多,即先從K類中選出一種,剩余K-1類歸為一種,這樣需要建立K個(gè)判別模型,當(dāng)有新數(shù)據(jù)進(jìn)行判別時(shí),新樣本需在K個(gè)判別模型中,同時(shí)進(jìn)行判別,看被判別為哪一類的可能性最大,就判別為哪類;

第二種是一對(duì)一,即選出所有可能的分別二類組合建立
image.png

個(gè)判別模型,當(dāng)有新樣本來(lái)時(shí),分別在建立的判別模型中進(jìn)行分類,這樣哪一類被判別的次數(shù)最多,就歸為哪類。第一種算法運(yùn)行速度快,但各類樣本數(shù)不平衡時(shí),判別結(jié)果會(huì)傾向于樣本數(shù)多的類別,第二種算法能解決這個(gè)問(wèn)題,但其運(yùn)行速度相對(duì)較慢。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容