1 SVM原理
SVM是一種二分類模型恕出。它的基本模型是在特征空間中尋找間隔最大化的分離超平面的線性分類器唉铜。(間隔最大化是它的獨(dú)特之處)筷屡,通過(guò)該超平面實(shí)現(xiàn)對(duì)未知樣本集的分類。
- 當(dāng)訓(xùn)練樣本線性可分時(shí)擅耽,通過(guò)硬間隔最大化活孩,學(xué)習(xí)一個(gè)線性分類器物遇,即線性可分支持向量機(jī)乖仇。
- 當(dāng)訓(xùn)練數(shù)據(jù)近似線性可分時(shí),引入松弛變量询兴,通過(guò)軟間隔最大化乃沙,學(xué)習(xí)一個(gè)線性分類器,即線性支持向量機(jī)诗舰。
- 當(dāng)訓(xùn)練數(shù)據(jù)線性不可分時(shí)警儒,通過(guò)使用核技巧及軟間隔最大化,學(xué)習(xí)非線性支持向量機(jī)眶根。
2 SVM核函數(shù)意義蜀铲、種類與選擇
意義:原始樣本空間中可能不存在這樣可以將樣本正確分為兩類的超平面,但是我們知道如果原始空間的維數(shù)是有限的属百,也就是說(shuō)屬性數(shù)是有限的记劝,則一定存在一個(gè)高維特征空間能夠?qū)颖緞澐帧VM通過(guò)核函數(shù)將輸入空間映射到高維特征空間族扰,最終在高維特征空間中構(gòu)造出最優(yōu)分離超平面厌丑,從而把平面上本身無(wú)法線性可分的數(shù)據(jù)分開(kāi)。核函數(shù)的真正意義是做到了沒(méi)有真正映射到高維空間卻達(dá)到了映射的作用渔呵,即減少了大量的映射計(jì)算怒竿。
選擇:
利用專家先驗(yàn)知識(shí)選定核函數(shù),例如已經(jīng)知道問(wèn)題是線性可分的扩氢,就可以使用線性核耕驰,不必選用非線性核。
如果特征的數(shù)量大到和樣本數(shù)量差不多录豺,則選用線性核函數(shù)SVM或LR朦肘。
如果特征的數(shù)量小托嚣,樣本的數(shù)量正常,則選用高斯核函數(shù)SVM厚骗。
如果特征的數(shù)量小示启,樣本數(shù)量很多,由于求解最優(yōu)化問(wèn)題的時(shí)候领舰,目標(biāo)函數(shù)涉及兩兩樣本計(jì)算內(nèi)積夫嗓,使用高斯核明顯計(jì)算量會(huì)大于線性核,所以手動(dòng)添加一些特征冲秽,使得線性可分舍咖,然后可以用LR或者線性核的SVM;
利用交叉驗(yàn)證锉桑,試用不同的核函數(shù)排霉,誤差最小的即為效果最好的核函數(shù)。
混合核函數(shù)方法民轴,將不同的核函數(shù)結(jié)合起來(lái)攻柠。
3 為什么要將求解SVM的原始問(wèn)題轉(zhuǎn)換為其對(duì)偶問(wèn)題
- 無(wú)論原始問(wèn)題是否是凸的,對(duì)偶問(wèn)題都是凸優(yōu)化問(wèn)題后裸;
- 對(duì)偶問(wèn)題可以給出原始問(wèn)題一個(gè)下界瑰钮;
- 當(dāng)滿足一定條件(KKT條件或Slater條件)時(shí),原始問(wèn)題與對(duì)偶問(wèn)題的解是完全等價(jià)的微驶;
- 可以自然引入核函數(shù)浪谴。
4 SVM為什么采用間隔最大化
當(dāng)訓(xùn)練數(shù)據(jù)線性可分時(shí),存在無(wú)窮個(gè)分離超平面可以將兩類數(shù)據(jù)正確分開(kāi)因苹。感知機(jī)或神經(jīng)網(wǎng)絡(luò)等利用誤分類最小策略苟耻,求得分離超平面,不過(guò)此時(shí)的解有無(wú)窮多個(gè)扶檐。線性可分支持向量機(jī)利用間隔最大化求得最優(yōu)分離超平面凶杖,這時(shí),解是唯一的蘸秘。另一方面官卡,此時(shí)的分隔超平面所產(chǎn)生的分類結(jié)果是最魯棒的,對(duì)未知實(shí)例的泛化能力最強(qiáng)醋虏。
5 SVM對(duì)噪聲敏感
- 少數(shù)支持向量決定了最終結(jié)果,這不但可以幫助我們抓住關(guān)鍵樣本寻咒、“剔除”大量冗余樣本,而且注定了該方法不但算法簡(jiǎn)單,而且具有較好的“魯棒”性。這種“魯棒”性主要體現(xiàn)在:
增颈嚼、刪非支持向量樣本對(duì)模型沒(méi)有影響;
支持向量樣本集具有一定的魯棒性;
有些成功的應(yīng)用中,SVM 方法對(duì)核的選取不敏感
- 但當(dāng)噪聲出現(xiàn)的過(guò)多毛秘,以及當(dāng)噪聲出現(xiàn)并成為支持向量時(shí),那么噪聲對(duì)模型對(duì)影響是巨大的。所以此時(shí)SVM對(duì)噪聲不具備魯棒性叫挟!以下兩種情況會(huì)增大噪聲成為支持向量的概率:
噪聲數(shù)量太多
噪聲以新的分布形式出現(xiàn)艰匙,與原先樣本集的噪聲分布表現(xiàn)的相當(dāng)不同。此時(shí)噪聲也有大概率落在最大分類間隔中間抹恳,從而成為支持向量员凝,大大影響模型。
所以我們常說(shuō)的魯棒性其實(shí)是主要是體現(xiàn)在對(duì)Outlier(異常點(diǎn)奋献、離群點(diǎn))上健霹。
6 SVM缺失值影響
這里說(shuō)的缺失數(shù)據(jù)是指缺失某些特征數(shù)據(jù),向量數(shù)據(jù)不完整瓶蚂。SVM沒(méi)有處理缺失值的策略(決策樹(shù)有)糖埋。而SVM希望樣本在特征空間中線性可分,若存在缺失值它們?cè)谠撎卣骶S度很難正確的分類(例如SVM要度量距離(distance measurement)窃这,高斯核瞳别,那么缺失值處理不當(dāng)就會(huì)導(dǎo)致效果很差),所以特征空間的好壞對(duì)SVM的性能很重要杭攻。缺失特征數(shù)據(jù)將影響訓(xùn)練結(jié)果的好壞祟敛。
7 SVM在大數(shù)據(jù)上有哪些缺陷
SVM的空間消耗主要是在存儲(chǔ)訓(xùn)練樣本和核矩陣,由于SVM是借助二次規(guī)劃來(lái)求解支持向量朴上,而求解二次規(guī)劃將涉及m階矩陣的計(jì)算(m為樣本的個(gè)數(shù))垒棋,當(dāng)m數(shù)目很大時(shí)該矩陣的存儲(chǔ)和計(jì)算將耗費(fèi)大量的內(nèi)存和運(yùn)算時(shí)間。如果數(shù)據(jù)量很大痪宰,SVM的訓(xùn)練時(shí)間就會(huì)比較長(zhǎng),所以SVM在大數(shù)據(jù)的使用中比較受限畔裕。
8 SVM之防止過(guò)擬合以及如何調(diào)節(jié)懲罰因子C
過(guò)擬合是什么就不再解釋了衣撬。SVM其實(shí)是一個(gè)自帶L2正則項(xiàng)的分類器。SVM防止過(guò)擬合的主要技巧就在于調(diào)整軟間隔松弛變量的懲罰因子C扮饶。C越大表明越不能容忍錯(cuò)分具练,當(dāng)無(wú)窮大時(shí)則退化為硬間隔分類器。合適的C大小可以照顧到整體數(shù)據(jù)而不是被一個(gè)Outlier給帶偏整個(gè)判決平面甜无。至于C大小的具體調(diào)參通晨傅悖可以采用交叉驗(yàn)證來(lái)獲得。每個(gè)松弛變量對(duì)應(yīng)的懲罰因子可以不一樣岂丘。
一般情況下陵究,低偏差,高方差奥帘,即遇到過(guò)擬合時(shí)铜邮,減小C;高偏差,低方差松蒜,即遇到欠擬合時(shí)扔茅,增大C。
9 SVM中樣本偏斜的處理方法
樣本偏斜是指數(shù)據(jù)集中正負(fù)類樣本數(shù)量不均秸苗,比如正類樣本有10000個(gè)召娜,負(fù)類樣本只有100個(gè),這就可能使得超平面被“推向”負(fù)類(因?yàn)樨?fù)類數(shù)量少惊楼,分布得不夠廣)萤晴,影響結(jié)果的準(zhǔn)確性。
對(duì)于樣本偏斜(樣本不平衡)的情況胁后,在各種機(jī)器學(xué)習(xí)方法中店读,我們有針對(duì)樣本的通用處理辦法:如上(下)采樣,數(shù)據(jù)合成攀芯,加權(quán)等屯断。
僅在SVM中,我們可以通過(guò)為正負(fù)類樣本設(shè)置不同的懲罰因子來(lái)解決樣本偏斜的問(wèn)題侣诺。具體做法是為負(fù)類設(shè)置大一點(diǎn)的懲罰因子殖演,因?yàn)樨?fù)類本來(lái)就少,不能再分錯(cuò)了年鸳,然后正負(fù)類的懲罰因子遵循一定的比例趴久,比如正負(fù)類數(shù)量比為100:1,則懲罰因子的比例直接就定為1:100搔确,具體值要通過(guò)實(shí)驗(yàn)確定彼棍。
10 SVM優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
非線性映射是SVM方法的理論基礎(chǔ),SVM利用內(nèi)積核函數(shù)代替向高維空間的非線性映射;
對(duì)特征空間劃分的最優(yōu)超平面是SVM的目標(biāo),最大化分類邊際的思想是SVM方法的核心膳算;
支持向量是SVM的訓(xùn)練結(jié)果,在SVM分類決策中起決定作用的是支持向量座硕;
SVM 的最終決策函數(shù)只由少數(shù)的支持向量所確定,計(jì)算的復(fù)雜性取決于支持向量的數(shù)目,而不是樣本空間的維數(shù),這在某種意義上避免了“維數(shù)災(zāi)難”。
小樣本集上分類效果通常比較好涕蜂。
少數(shù)支持向量決定了最終結(jié)果,這不但可以幫助我們抓住關(guān)鍵樣本华匾、“剔除”大量冗余樣本,而且注定了該方法不但算法簡(jiǎn)單,而且具有較好的“魯棒”性。這種“魯棒”性主要體現(xiàn)在:
①增机隙、刪非支持向量樣本對(duì)模型沒(méi)有影響;
②支持向量樣本集具有一定的魯棒性;
③有些成功的應(yīng)用中,SVM 方法對(duì)核的選取不敏感
SVM 是一種有堅(jiān)實(shí)理論基礎(chǔ)的新穎的小樣本學(xué)習(xí)方法蜘拉。它基本上不涉及概率測(cè)度及大數(shù)定律等,因此不同于現(xiàn)有的統(tǒng)計(jì)方法。從本質(zhì)上看,它避開(kāi)了從歸納到演繹的傳統(tǒng)過(guò)程,實(shí)現(xiàn)了高效的從訓(xùn)練樣本到預(yù)報(bào)樣本的“轉(zhuǎn)導(dǎo)推理”,大大簡(jiǎn)化了通常的分類和回歸等問(wèn)題有鹿。
缺點(diǎn):
SVM算法對(duì)大規(guī)模訓(xùn)練樣本難以實(shí)施旭旭。由于SVM是借助二次規(guī)劃來(lái)求解支持向量,而求解二次規(guī)劃將涉及m階矩陣的計(jì)算(m為樣本的個(gè)數(shù))印颤,當(dāng)m數(shù)目很大時(shí)該矩陣的存儲(chǔ)和計(jì)算將耗費(fèi)大量的機(jī)器內(nèi)存和運(yùn)算時(shí)間(上面有講)您机。
用SVM解決多分類問(wèn)題存在困難。傳統(tǒng)的SVM就是解決二分類問(wèn)題的,上面有介紹不少解決多分類問(wèn)題的SVM技巧际看,不過(guò)各種方法都一定程度上的缺陷咸产。
對(duì)缺失值敏感,核函數(shù)的選擇與調(diào)參比較復(fù)雜仲闽。
11 樣本失衡時(shí)脑溢,如何評(píng)價(jià)分類器的性能好壞?
答:使用ROC曲線赖欣。Roc曲線下的面積屑彻,介于0.1和1之間。AUC值是一個(gè)概率值顶吮,當(dāng)你隨機(jī)挑選一個(gè)正樣本以及負(fù)樣本社牲,當(dāng)前的分類算法根據(jù)計(jì)算得到的Score值將這個(gè)正樣本排在負(fù)樣本前面的概率就是AUC值,AUC值越大悴了,當(dāng)前分類算法越有可能將正樣本排在負(fù)樣本前面搏恤。Auc作為數(shù)值可以直觀的評(píng)價(jià)分類器的好壞,值越大越好湃交,隨機(jī)情況大概是0.5熟空,所以一般不錯(cuò)的分類器AUC至少要大于0.5。
選擇ROC和ROC下曲線面積是因?yàn)榉诸悊?wèn)題經(jīng)常會(huì)碰到正負(fù)樣本不均衡的問(wèn)題搞莺,此時(shí)準(zhǔn)確率和召回率不能有效評(píng)價(jià)分類器的性能息罗,而ROC曲線有個(gè)很好的特性:當(dāng)測(cè)試集中的正負(fù)樣本的分布變換的時(shí)候,ROC曲線能夠保持不變才沧。
12 數(shù)據(jù)不規(guī)范化對(duì)SVM的影響迈喉?
答:大值特征會(huì)掩蓋小值特征(內(nèi)積計(jì)算)。高斯核會(huì)計(jì)算向量間的距離糜工,也會(huì)產(chǎn)生同樣的問(wèn)題弊添;多項(xiàng)式核會(huì)引起數(shù)值問(wèn)題。影響求解的速度捌木。數(shù)據(jù)規(guī)范化后,會(huì)丟失一些信息嫉戚。預(yù)測(cè)的時(shí)候刨裆,也要進(jìn)行規(guī)范化
13 線性核VS多項(xiàng)式核VS徑向基核?
答:1)訓(xùn)練速度:線性核只需要調(diào)節(jié)懲罰因子一個(gè)參數(shù)彬檀,所以速度快帆啃;多項(xiàng)式核參數(shù)多,難調(diào);徑向基核函數(shù)還需要調(diào)節(jié)γ,需要計(jì)算e的冪窍帝,所以訓(xùn)練速度變慢努潘。【調(diào)參一般使用交叉驗(yàn)證,所以速度會(huì)慢】
2)訓(xùn)練結(jié)果:線性核的得到的權(quán)重w可以反映出特征的重要性疯坤,從而進(jìn)行特征選擇报慕;多項(xiàng)式核的結(jié)果更加直觀,解釋性強(qiáng);徑向基核得到權(quán)重是無(wú)法解釋的压怠。
3)適應(yīng)的數(shù)據(jù):線性核:樣本數(shù)量遠(yuǎn)小于特征數(shù)量(n<<m)【此時(shí)不需要映射到高維】眠冈,或者樣本數(shù)量與特征數(shù)量都很大【此時(shí)主要考慮訓(xùn)練速度】;徑向基核:樣本數(shù)量遠(yuǎn)大于特征數(shù)量(n>>m)
14 徑向基核函數(shù)中參數(shù)的物理意義
答:如果σ選得很大的話菌瘫,高次特征上的權(quán)重實(shí)際上衰減得非澄贤纾快,使用泰勒展開(kāi)就可以發(fā)現(xiàn)雨让,當(dāng)很大的時(shí)候雇盖,泰勒展開(kāi)的高次項(xiàng)的系數(shù)會(huì)變小得很快,所以實(shí)際上相當(dāng)于一個(gè)低維的子空間栖忠;
如果σ選得很小崔挖,則可以將任意的數(shù)據(jù)映射為線性可分——當(dāng)然,這并不一定是好事娃闲,因?yàn)殡S之而來(lái)的可能是非常嚴(yán)重的過(guò)擬合問(wèn)題虚汛,因?yàn)榇藭r(shí)泰勒展開(kāi)式中有效的項(xiàng)將變得非常多,甚至無(wú)窮多皇帮,那么就相當(dāng)于映射到了一個(gè)無(wú)窮維的空間卷哩,任意數(shù)據(jù)都將變得線性可分。
15 LR與SVM的異同
相同
第一属拾,LR和SVM都是分類算法将谊。
第二,如果不考慮核函數(shù)渐白,LR和SVM都是線性分類算法尊浓,也就是說(shuō)他們的分類決策面都是線性的。
第三纯衍,LR和SVM都是監(jiān)督學(xué)習(xí)算法栋齿。
第四,LR和SVM都是判別模型襟诸。
第五瓦堵,LR和SVM都有很好的數(shù)學(xué)理論支撐。
不同
第一歌亲,loss function不同菇用。
第二,支持向量機(jī)只考慮局部的邊界線附近的點(diǎn)陷揪,而邏輯回歸考慮全局(遠(yuǎn)離的點(diǎn)對(duì)邊界線的確定也起作用)惋鸥。
第三杂穷,在解決非線性問(wèn)題時(shí),支持向量機(jī)采用核函數(shù)的機(jī)制卦绣,而LR通常不采用核函數(shù)的方法耐量。在計(jì)算決策面時(shí),SVM算法里只有少數(shù)幾個(gè)代表支持向量的樣本參與了計(jì)算迎卤,也就是只有少數(shù)幾個(gè)樣本需要參與核計(jì)算(即kernal machine解的系數(shù)是稀疏的)拴鸵。然而,LR算法里蜗搔,每個(gè)樣本點(diǎn)都必須參與決策面的計(jì)算過(guò)程劲藐,也就是說(shuō),假設(shè)我們?cè)贚R里也運(yùn)用核函數(shù)的原理樟凄,那么每個(gè)樣本點(diǎn)都必須參與核計(jì)算聘芜,這帶來(lái)的計(jì)算復(fù)雜度是相當(dāng)高的。所以缝龄,在具體應(yīng)用時(shí)汰现,LR很少運(yùn)用核函數(shù)機(jī)制。?
第四叔壤,?線性SVM依賴數(shù)據(jù)表達(dá)的距離測(cè)度瞎饲,所以需要對(duì)數(shù)據(jù)先做normalization,LR不受其影響炼绘。一個(gè)計(jì)算概率嗅战,一個(gè)計(jì)算距離!?
第五俺亮,SVM的損失函數(shù)就自帶正則M院础!=旁(損失函數(shù)中的1/2||w||^2項(xiàng))东且,這就是為什么SVM是結(jié)構(gòu)風(fēng)險(xiǎn)最小化算法的原因!1炯ァ珊泳!而LR必須另外在損失函數(shù)上添加正則項(xiàng)!?椒小旨椒!所謂結(jié)構(gòu)風(fēng)險(xiǎn)最小化,意思就是在訓(xùn)練誤差和模型復(fù)雜度之間尋求平衡堵漱,防止過(guò)擬合,從而達(dá)到真實(shí)誤差的最小化涣仿。未達(dá)到結(jié)構(gòu)風(fēng)險(xiǎn)最小化的目的勤庐,最常用的方法就是添加正則項(xiàng)示惊,SVM的目標(biāo)函數(shù)里居然自帶正則項(xiàng)!S淞米罚!再看一下上面提到過(guò)的SVM目標(biāo)函數(shù):
16 LR和SVM哪個(gè)更能對(duì)付異常點(diǎn)out lier?
我們?cè)賮?lái)看看丈探,所謂out lier录择,是怎么產(chǎn)生的,無(wú)非有兩種情況碗降,一種就是這個(gè)樣本的標(biāo)簽y搞錯(cuò)了隘竭,一種就是沒(méi)搞錯(cuò),但這個(gè)樣本是一個(gè)個(gè)例讼渊,不具備統(tǒng)計(jì)特性动看。
不論對(duì)于哪一種情況,svm會(huì)在f將這個(gè)out lier預(yù)測(cè)的比較正確時(shí)爪幻,就停止菱皆,不會(huì)一直優(yōu)化對(duì)out lier的預(yù)測(cè),因?yàn)闆](méi)有什么太大意義了挨稿。而lr則不同仇轻,它會(huì)繼續(xù)要求f對(duì)這個(gè)out lier的預(yù)測(cè)進(jìn)行優(yōu)化,并且永不停止奶甘,顯然篷店,這樣的優(yōu)化很可能會(huì)削弱f的泛化性能,因?yàn)闆](méi)有必要死磕out lier 甩十。
答案就是SVM4印!侣监!