自己救自己系列,不然我这个渣渣就要没工作了。
我只是个木得感情的搬运机器,以下内容都附有原链接地址,你不想我搬运的话,可以联系我删除好勒。
红色加粗是我见了好多次,感觉经常会考得点。
1、SVM的推倒,原理,最优化方法。为何SVM可以解决分类问题。
感谢来自牛客大佬的题目 https://www.nowcoder.com/discuss/65186?type=2&order=0&pos=4&page=2
推倒: 硬间隔最大化(几何间隔)---学习的对偶问题---软间隔最大化(引入松弛变量)---非线性支持向量机(核技巧)。
参见这位大佬:https://blog.csdn.net/qq_40778406/article/details/79879434
原理 : SVM是一种二类分类模型。它的基本模型是在特征空间中寻找间隔最大化的分离超平面的线性分类器。
(间隔最大使它有别于感知机)
(1)当训练样本线性可分时,通过硬间隔最大化,学习一个线性分类器,即线性可分支持向量机;
(2)当训练数据近似线性可分时,引入松弛变量,通过软间隔最大化,学习一个线性分类器,即线性支持向量机;
(3)当训练数据线性不可分时,通过使用核技巧及软间隔最大化,学习非线性支持向量机。
最优化方法:SMO算法。 将原来含m个向量的非常大的二次规划问题分解成了一系列非常小的可解的二次规划问题
详见这位大佬 https://www.cnblogs.com/massquantity/p/11419971.html
2、svm里什么时候用线性核和高斯核吧,比如样本数很多时,用啥核?
当样本数很多时,应该用线性核,计算量比高斯核要小很多。另外,当线性可分时(可以理解为当数据特征的维度很高时),线性核和高斯核效果差不多;线性不可分时,高斯核效果更好。
感谢牛客大佬: https://www.nowcoder.com/discuss/76939?type=2&order=3&pos=15&page=1
3、SVM的原理是什么?
SVM为什么采用间隔最大化?
答:(1)可得唯一最优分离超平面 (2)鲁棒性,泛化性强
为什么要将求解SVM的原始问题转换为其对偶问题?
答:(1)更易求解 (2)自然引入核函数,从而泛化到非线性分类问题
为什么SVM要引入核函数?
svm RBF核函数的具体公式?
为什么SVM对缺失数据敏感?
SVM是用的是哪个库?Sklearn/libsvm中的SVM都有什么参数可以调节?
SVM如何处理多分类问题?
详细答案参见 CSDN超级大佬:https://blog.csdn.net/szlcw1/article/details/52259668
4、SVM损失函数
Hinge(合页)损失函数+正则化
参见 https://www.jianshu.com/p/fe14cd066077
5、为什么要转为对偶问题?(阿里面试)
(a) 目前处理的模型严重依赖于数据集的维度d,如果维度d太高就会严重提升运算时间;
(b) 对偶问题事实上把SVM从依赖d个维度转变到依赖N个数据点,考虑到在最后计算时只有支持向量才有意义,所以这个计算量实际上比N小很多。
感谢西电校草大佬 https://blog.csdn.net/cppjava_/article/details/68060439
更多你需要的
1、机器学习相关准备知识
1.0 感知机算法面试问题汇总
1.1 SVM算法面试问题汇总 (机器学习必考)
1.2 决策树算法面试问题汇总
1.3 逻辑回归(LR)算法面试问题汇总
1.4 KNN算法面试问题汇总
1.5 集成学习算法面试问题汇总
1.6 朴素贝叶斯算法面试问题汇总
2、深度学习相关准备知识
2.1 深度学习算法面试问题汇总