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 |