SVM、LR、決策樹的對比


一、LR

LR,DT,SVM都有自身的特性,首先來看一下LR,工業界最受青睞的機器學習算法,訓練、預測的高效性能以及算法容易實現使其能輕松適應工業界的需求。LR還有個非常方便實用的額外功能就是它並不會給出離散的分類結果,而是給出該樣本屬於各個類別的概率(多分類的LR就是softmax),可以嘗試不同的截斷方式來在評測指標上進行同一模型的性能評估,從而得到最好的截斷分數。LR不管是實現還是訓練或者預測都非常高效,很輕松的handle大規模數據的問題(同時LR也很適合online learning)。此外,LR對於樣本噪聲是robust的,對於“mild”的多重共線性問題也不會受到太大影響,在特征的多重共線性很強的情況下,LR也可以通過L2正則化來應對該問題,雖然在有些情況下(想要稀疏特征)L2正則化並不太適用。

但是,當我們有大量的特征以及部分丟失數據時,LR就開始費勁了。太多的分類變量(變量值是定性的,表現為互不相容的類別或屬性,例如性別,年齡段(1,2,3,4,5)等)也會導致LR的性能較差(這個時候可以考慮做離散化,其實肯定是要做離散化的)。還有一種論調是LR使用所有的樣本數據用於訓練,這引發了一個爭論:明顯是正例或者負例的樣本(這種樣本離分類邊界較遠,不大會影響分類的curve)不太應該被考慮太多,模型理想情況是由分類邊界的樣本決定的(類似SVM的思想),如下圖。還有一個情況就是當特征是非線性時,需要做特征變換,這可能會導致特征維度急劇上升。下面是我認為的LR的一些利弊:

LR的優勢:

對觀測樣本的概率值輸出 
實現簡單高效 
多重共線性的問題可以通過L2正則化來應對 
大量的工業界解決方案 
支持online learning(個人補充) 


LR的劣勢:

特征空間太大時表現不太好 
對於大量的分類變量無能為力 
對於非線性特征需要做特征變換 
依賴所有的樣本數據

 

二、決策樹

  決策樹對於單調的特征變換是”indifferent”的,也就是說特征的單調變換對於決策樹來說不會產生任何影響,因為決策樹是通過簡單的使用矩形切分特征空間的,單調的特征變換只是做了特征空間的縮放而已。由於決策樹是的分支生成是使用離散的區間或類別值的,所以對於不管多少分類變量都能夠輕松適應,而且通過決策樹生成出來的模型很直觀而且容易解釋(隨着決策樹的分支解釋即可),而且決策樹也可以通過計算落到該葉子類目的標簽平均值獲得最終類別的概率輸出。但是這就引發了決策樹的最大問題:非常容易過擬合,我們很容易就會生成一個完美擬合訓練集的模型,但是該模型在測試集合上的表現卻很poor,所以這個時候就需要剪枝以及交叉驗證來保證模型不要過擬合了。

  過擬合的問題還可以通過使用隨機森林的方式來解決,隨機森林是對決策樹的一個很smart的擴展,即使用不同的特征集合和樣本集合生成多棵決策樹,讓它們來vote預測樣本的標簽值。但是隨機森林並沒有像單純決策樹一樣的解釋能力。 

DT的優勢:

直觀的決策過程 
能夠處理非線性特征 

DT的劣勢:

極易過擬合(使用RF可以一定程度防止過擬合,但是只要是模型就會過擬合!) 
無法輸出score,只能給出直接的分類結果

 

三、SVM

  SVM最大的好處就是它只依賴於處於分類邊界的樣本來構建分類面,可以處理非線性的特征,同時,只依賴於決策邊界的樣本還可以讓他們能夠應對”obvious”樣本缺失的問題。由於SVM能夠輕松搞定大規模的特征空間所以在文本分析等特征維度較高的領域是比較好的選擇。SVM的可解釋性並不像決策樹一樣直觀,如果使用非線性核函數,SVM的計算代價會高很多。

SVM的優勢:

可以處理高維特征 
使用核函數輕松應對非線性特征空間 
分類面不依賴於所有數據 

SVM的劣勢:

對於大量的觀測樣本,效率會很低 

找到一個“合適”的核函數還是很tricky的

 

為什么將原問題轉為對偶問題?

  • 對偶問題將原始問題中的約束轉為了對偶問題中的等式約束(KKT)
  • 方便核函數的引入
  • 改變了問題的復雜度。由求特征向量w轉化為求比例系數a,在原始問題下,求解的復雜度與樣本的維度有關,即w的維度。在對偶問題下,只與樣本數量有關。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM