邏輯回歸和SVM
相同點
http://www.cnblogs.com/bentuwuying/p/6616761.html
- 都是分類演算法
- 原始問題都線性分類。
- 都是監督學習
- 都是判別模型
- 都是應用廣泛的。
不同點
- 損失函數不同、假設不同、思路不同
邏輯回歸的思路是基於概率的,有些教材比如李航的《統計學習方法》裡面根本沒有提到損失函數。SVM則是基於幾何間隔最大化,李航的《統計學習方法》也沒有提出明確的損失函數的概念,但觀察原始問題引入拉格朗日乘數後的表達式 ,可以將其中與拉格朗日乘數相乘的部分看做損失函數,而前面的 則可以看做正則項(這也算是一個不同點)。 具體而言,當y∈{1,-1}時,邏輯回歸的損失函數由上一篇可知是 ,而SVM的損失函數則是Hinge損失函數:
2. 由於上述損失函數的不同,邏輯回歸考慮所有點的損失,但離分類平面越遠的點貢獻的損失越小,影響越小;SVM只考慮誤分類點的損失,對損失貢獻最大的是少數幾個支持向量。
3. 由於第2點,
Linear SVM不直接依賴數據分布,分類平面不受一類點影響;LR則受所有數據點的影響,如果數據不同類別strongly unbalance一般需要先對數據做balancing。
https://www.zhihu.com/question/26768865/answer/34048357
4.
Linear SVM依賴數據表達的距離測度,所以需要對數據先做normalization;LR不受其影響
https://www.zhihu.com/question/26768865/answer/34048357
http://117.143.109.163/cache/www.win-vector.com/dfiles/LogisticRegressionMaxEnt.pdf?ich_args2=162-11220514037202_4bebc1ff28017a95c7ebb16e20a79629_10001002_9c896429d6c0f9d6943c518939a83798_93ffac0a6aaf35ac00e5ce7393b09e4b
5. 在軟間隔SVM中,有一個超參數需要調參,誤分類點的懲罰參數(李航的《統計學習方法》P109里的C值),而邏輯回歸沒有這種超參數。
6. 在預測未知點時,邏輯回歸能給出一個概率值,而SVM只能給出0/1。這在實際使用中可能會是一個考慮的點。
7. SVM在用核函數時,SMO演算法可以每次只計算兩個點的核函數,而邏輯回歸使用核函數則要仍然要計算所有點之間的核函數,在數據量大時,計算量差距比較明顯。
這個ppt里給了一個有趣的從邏輯回歸推到到SVM表達式的方式
SVM與LR的區別_百度文庫
推薦閱讀:
※SPSS教程:手把手教你設置啞變數以及解讀結果
※SPSS學習筆記:因變數二分類資料的logistic回歸分析
※用Python學習數據分析(5)機器學習入門必學線性回歸與邏輯回歸
※面壁者系列:Logistic回歸
TAG:機器學習 | SVM | Logistic回歸 |