SVM算法面试问题汇总

自己救自己系列,不然我这个渣渣就要没工作了。

我只是个木得感情的搬运机器,以下内容都附有原链接地址,你不想我搬运的话,可以联系我删除好勒。

红色加粗是我见了好多次,感觉经常会考得点。

 

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  深度学习算法面试问题汇总

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 支持向量机(Support Vector Machine, SVM)是一种常用的机器学习算法,用于分类和回归分析。其原理是在高维空间中寻找一个超平面,将不同类别的数据点尽可能地分开。 SVM的主要思想是找到一个最优的超平面,使得在该超平面上的数据点到两个类别的最近样本点(即支持向量)的距离最大化。这样做的目的是为了提高模型的泛化能力,使其在未知数据上的预测精度更高。 SVM在训练时可以使用不同的核函数,如线性核、多项式核和高斯核等。这些核函数可以将数据点从原始特征空间映射到更高维的特征空间,从而使得数据在新的特征空间中更容易被分开。 在使用SVM算法时,需要进行一些参数的调优,如C值和核函数的参数。C值是一个正则化参数,用于平衡模型的分类精度和复杂度。较小的C值会更加关注分类精度,而较大的C值会更加关注模型的复杂度。对于线性核函数,还可以调整正则化参数C来控制对误分类的惩罚程度。 总结来说,SVM是一种强大的机器学习算法,可以用于分类和回归问题。它可以处理高维数据,并通过寻找一个最优的超平面来分开不同类别的数据点。在使用SVM时,需要合理选择核函数和调优参数,以获得更好的分类结果。 ### 回答2: SVM支持向量机)是一种用于分类和回归分析的监督学习算法。它的目标是找到一个最优超平面,将不同类别的样本点分开,使得间隔最大化。其基本思想是将输入空间映射到一个高维特征空间,通过在高维空间中寻找最优超平面来进行分类。 对于SVM算法,在机器学习的复试过程中,可能会被问到以下几个方面的问题: 1. SVM算法的原理是什么? SVM算法通过在特征空间中找到最大间隔超平面来进行分类。它通过数学优化的方法,找到能够将不同类别的样本点分隔开的超平面,并且使得超平面到最近的样本点的距离最大化。 2. SVM算法有哪些核函数? SVM算法可以使用不同的核函数进行特征空间的映射。常见的核函数有线性核函数、多项式核函数和高斯核函数等。通过不同的核函数,可以在不同的特征空间中进行分类,提高分类的准确性和鲁棒性。 3. SVM算法有哪些优点和缺点? SVM算法的优点包括:可以处理高维特征空间和非线性问题、具有较强的泛化能力、只依赖支持向量,不受无关样本的影响。缺点包括:对大规模数据集处理效率较低、对参数的选择和核函数的设计较为敏感。 4. SVM算法与其他机器学习算法有什么区别? SVM算法与其他机器学习算法在原理和应用上有所不同。与逻辑回归和朴素贝叶斯等算法相比,SVM算法是一种非概率模型,它主要关注分类超平面的最大间隔,并且可以处理非线性问题。与决策树和神经网络等算法相比,SVM算法不会陷入局部最优解,具有较强的鲁棒性。 综上所述,SVM算法是一种常用的机器学习算法,用于分类和回归分析。它通过找到最大间隔超平面来进行分类,并且可以处理高维特征空间和非线性问题。在复试过程中,了解其原理、核函数、优缺点以及与其他算法的区别,是对SVM算法的基本了解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值