LR和SVM的聯繫區別

LR和SVM可能是面試中問到的非樹模型中很常見的一個問題了,主要的是推公式以及說明求解過程如SVM。筆者在面美團的時候就要求推了LR和SVM,過程不難,平時每天推一遍,你就會發現面試的時候最讓人覺得愉快的就說推公式了,然後推完之後就是問一下與之有關的亂七八糟的問題了


聯繫:

1、LR和SVM都可以處理分類問題,且一般都用於處理線性二分類問題(在改進的情況下可以處理多分類問題)

2、兩個方法都可以增加不同的正則化項,如l1、l2等等。所以在很多實驗中,兩種演算法的結果是很接近的。

3、LR和SVM都可以用來做非線性分類,只要加核函數就好。

4、LR和SVM都是線性模型,當然這裡我們不要考慮核函數

5、都屬於判別模型


區別:

1、LR是參數模型,SVM是非參數模型。

2、從目標函數來看,區別在於邏輯回歸採用的是logistical loss,SVM採用的是hinge loss,這兩個損失函數的目的都是增加對分類影響較大的數據點的權重,減少與分類關係較小的數據點的權重。

3、邏輯回歸相對來說模型更簡單,好理解,特別是大規模線性分類時比較方便。而SVM的理解和優化相對來說複雜一些,SVM轉化為對偶問題後,分類只需要計算與少數幾個支持向量的距離,這個在進行複雜核函數計算時優勢很明顯,能夠大大簡化模型和計算。

4、SVM不直接依賴數據分布,而LR則依賴,因為SVM只與支持向量那幾個點有關係,而LR和所有點都有關係。

5、SVM依賴penalty係數,實驗中需要做CV

6、SVM本身是結構風險最小化模型,而LR是經驗風險最小化模型

另外怎麼選模型:

在Andrew NG的課里講到過:

1. 如果Feature的數量很大,跟樣本數量差不多,這時候選用LR或者是Linear Kernel的SVM

2. 如果Feature的數量比較小,樣本數量一般,不算大也不算小,選用SVM+Gaussian Kernel

3. 如果Feature的數量比較小,而樣本數量很多,需要手工添加一些feature變成第一種情況

還有的解釋的比較詳細的,可以看引用,差不多能回答出來幾點就好了,具體的因為模型不一樣,能說出來一大推其他的不同點

Linear SVM 和 LR 有什麼異同?----說的好

LR與SVM的異同 - 止戰 - 博客園

SVM和logistic回歸分別在什麼情況下使用?

【機器學習】Linear SVM 和 LR 的聯繫和區別

筆者只是一些問題的搬運工,具體需要對問題進行深入的小夥伴還望自己閱讀相關文獻,這裡只是提出一些問題,以便於面試時問到,如果內容有一些錯誤,還望批評指正!

米娜 Thanks?(?ω?)?


推薦閱讀:

CS231n課程筆記翻譯:神經網路筆記 2
推薦兩個博客:《Python 與機器學習》,《MachineLearning》
機器學習與移動端會碰出怎樣的火花?

TAG:机器学习 | 推荐系统 | 深度学习DeepLearning |