机器学习与数据挖掘

【ML-QA-1】支持向量机SVM中常见的面试问题QA

2019-12-24  本文已影响0人  青箬笠绿蓑衣_简
image

以下只是将知识点QA化,不要为了面试硬背答案,还是先得好好看书

Q-List:

QA:

简要介绍一下SVM

支持向量机SVM是一种二类分类模型。它的基本模型是定义在特征空间中的间隔最大的线性分类器。学习的目标就是在特征空间内找到一个分离超平面,能够将实例分到不同的类。

(从分类平面,到求两类间的最大间隔,到转化为求间隔分之一,等优化问题,然后就是优化问题的解决办法,首先是用拉格拉日乘子把约束优化转化为无约束优化,对各个变量求导令其为零,得到的式子带入拉格朗日式子从而转化为对偶问题,最后再利用SMO(序列最小优化)来解决这个对偶问题。)

支持向量机包含几种模型

什么是支持向量

在线性可分的情况下,训练数据集的样本点中与分离超平面距离最近的样本点的实例称为支持向量(support vector)。

SVM为什么采用间隔最大化

当训练数据线性可分时,存在无穷个分离超平面可以将两类数据正确分开。感知机或神经网络等利用误分类最小策略,求得分离超平面,不过此时的解有无穷多个。线性可分支持向量机利用间隔最大化求得最优分离超平面,这时,解是唯一的。另一方面,此时的分隔超平面所产生的分类结果是最鲁棒的,对未知实例的泛化能力最强。

SVM中的参数 (C,ξ,γ)

线性不可分意味着某些样本点不能满足函数间隔大于等于1的约束条件,为了解决这个问题,对每个样本点引入一个松弛变量\xi_i\ge0

C是惩罚系数,即对误差的宽容度。C越大,说明越不能容忍出现误差,容易过拟合。C越小,容易欠拟合。C过大或过小,泛化能力变差。

C理解为调节优化方向中两个指标(间隔大小,分类准确度)偏好的权重。当C趋于无穷大时,这个问题也就是不允许出现分类误差的样本存在,那这就是一个hard-margin SVM问题(过拟合)。当C趋于0时,我们不再关注分类是否正确,只要求间隔越大越好,那么我们将无法得到有意义的解且算法不会收敛(欠拟合)。

\gamma是选择RBF函数作为kernel后,该函数自带的一个参数。隐含地决定了数据映射到新的特征空间后的分布,\gamma越大,支持向量越少,\gamma值越小,支持向量越多。支持向量的个数影响训练与预测的速度。

这里面需要引入一下老师们的讨论,需要考虑到RBF核的特点,特征空间分布等方面。讨论

Linear SVM和LR的异同

SVM和感知机的区别

感知机的损失函数

感知机的损失函数是所有误分类点到超平面的总距离: L(w,b)=-\sum\limits_{x_i\in{M}}y_i(w*x_i+b)

SVM的损失函数

SVM除了原始最优化问题,还有另外一种解释就是最优化以下目标函数:
\sum\limits_{i=1}^{N}[1-y_i(w*x_i+b)]_++\lambda\left\|w\right\|^2
其中第一项是经验损失Hinge Loss,合页损失函数。
L(y(w*x+b))={[1-y(w*x+b)]}_+
下标“+”表示取正值的函数,类似ReLu函数。那么当样本点被正确分类且函数间隔(确信度)y_i(w*x_i+b)>1时,损失为0,否则损失是1-y_i(w*x_i+b)
目标函数第二项是系数为\lambda的w的L2范数,正则化项,\lambda是可调节的超参数。

SVM怎么处理多分类

SVM可以处理回归问题吗

对于回归问题,优化目标函数和分类问题一致,还是min\frac{1}{2}\left\|w\right\|^2,但是约束条件不同,看下图

image
蓝色线是分类超平面,蓝色区域边界就是间隔边界,上面的点就是支持向量,因此蓝色区域内的点是没有损失的,但是外面的点是由损失的,损失大小为红色线的长度,这个地方就很像线性回归的误差了。
因此,SVM回归模型的损失函数度量为:
image

为什么把原问题转换为对偶问题

为什么求解对偶问题更加高效

因为只用求解alpha系数,而alpha系数只有支持向量才非0,其他全部为0

alpha系数有多少个

样本点的个数

核函数,种类、如何选择

高斯核为什么会把原始维度映射到无穷多维

从泰勒展开式的角度来解释
参考

核函数的意义是什么

核函数的真正意义是做到了没有真正映射到高维空间却达到了映射的作用,即减少了大量的映射计算。

什么样的函数可以作为一个有效的核函数

只要满足Mercer定理。

大规模数据能用SVM吗

SVM的空间消耗主要是在存储训练样本和核矩阵,由于SVM是借助二次规划来求解支持向量,而求解二次规划将涉及m阶矩阵的计算(m为样本的个数),当m数目很大时该矩阵的存储和计算将耗费大量的及其内存和运算时间。如果数据量很大,SVM的训练时间就会比较长,所以SVM在大数据的使用中比较受限。

参考

《统计学习方法》 李航
《机器学习》 周志华
https://blog.csdn.net/qq_32742009/article/details/81838152
https://blog.csdn.net/guo1988kui/article/details/80207551
http://blog.sina.com.cn/s/blog_62970c250102xfzj.html
http://blog.sina.com.cn/s/blog_6ae183910101cxbv.html

上一篇下一篇

猜你喜欢

热点阅读