【机器学习】SVM面试题:简单介绍一下SVM?支持向量机SVM、逻辑回归LR、决策树DT的直观对比和理论对比,该如何选择?SVM为什么采用间隔最大化?为什么要将求解SVM的原始问题转换为其对偶问题?

简介: 支持向量机(SVM)的介绍,包括其基本概念、与逻辑回归(LR)和决策树(DT)的直观和理论对比,如何选择这些算法,SVM为何采用间隔最大化,求解SVM时为何转换为对偶问题,核函数的引入原因,以及SVM对缺失数据的敏感性。

介绍一下SVM

(1)简单介绍一下SVM

支持向量机(support vector machines,SVM)是一种二分类模型。分为

线性可分支持向量机:训练数据线性可分,通过硬间隔最大化学习一个线性的分类器,又称为硬间隔支持向量机。
线性支持向量机:训练数据近似线性可分,通过软间隔最大化学习一个线性的分类器,又称为软间隔支持向量机。
非线性支持向量机:训练数据线性不可分,通过核技巧及软间隔最大化,学习非线性支持向量机。(核技巧:当输入空间为欧式空间或离散集合、特征空间为希尔伯特空间时,核函数表示将输入空间映射到特征空间得到的特征向量之间的内积。通过使用核函数,可以学习非线性支持向量机,等价于隐式地在高维的特征空间中学习线性支持向量机)

它的基本模型是在特征空间中寻找间隔最大化的分离超平面的线性分类器。是一个原始最大间隔最优化问题,通过对偶算法,即先转为拉格朗日函数问题,再将拉格朗日函数转为求其对偶问题,即将朗格朗日优化问题中的 min(max) 求解顺序对调,变为max(min)。

(2)支持向量机SVM、逻辑回归LR、决策树DT的直观对比和理论对比,该如何选择?

  • 直观区别

逻辑回归:逻辑回归的决策边界总是一条直线(或者一个平面,在更高维度上是超平面),逻辑回归方法得到的决策边界总是线性的,并不能得到这里需要的环状边界。因此,逻辑回归适用于处理接近线性可分的分类问题。

决策树:决策树是按照层次结构的规则生成的,决策规则只是用平行于轴线的直线将特征空间切分,如果边界是非线性的,并且能通过不断将特征空间切分为矩形来模拟,那么决策树是比逻辑回归更好的选择。

SVM:SVM是通过把特征空间映射到核空间,使得各个类别线性可分。先提升特征的维度,在高纬度用一个平面来分割数据(线性分类器),这个平面映射回原来的二维特征空间,就能得到一个环状的决策边界。

  • 理论区别

模型复杂度:SVM 支持核函数,可处理线性非线性问题,既可以用于分类问题,也可以用于回归问题;LR 模型简单,训练速度快,适合处理线性问题,非线性问题需要转换,适用于二分类问题;决策树也能处理非线性特征,但容易过拟合,需要进行剪枝,适用于多分类问题。

损失函数:SVM hinge loss; 带L2正则化的LR对应的是cross entropy loss,不带的是正则化的是log loss; 决策树的损失函数由叶节点上的经验熵决定。

数据量:LR和决策树都适合用于数据量大的情况,SVM在样本数据量较大需要较长训练时间,因此更适用于数据量小的情况

敏感度:LR对缺失值敏感,不能有缺失值;SVM噪声不能太多,对缺失数据敏感;决策树对缺失数据不敏感

(3)SVM为什么采用间隔最大化

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

(4)为什么要将求解SVM的原始问题转换为其对偶问题

  • 对偶问题往往更易求解,当我们寻找约束存在时的最优点的时候,约束的存在虽然减小了需要搜寻的范围,但是却使问题变得更加复杂。为了使问题变得易于处理,我们的方法是把目标函数和约束全部融入一个新的函数,即拉格朗日函数,再通过这个函数来寻找最优点。

  • 可以自然引入核函数,进而推广到非线性分类问题

(5)为什么 SVM 要引入核函数

当样本在原始空间线性不可分时,可将样本从原始空间映射到一个更高维的特征空间,使得样本在这个特征空间内线性可分。

(6)为什么SVM对缺失数据敏感

这里说的缺失数据是指缺失某些特征数据,向量数据不完整。SVM 没有处理缺失值的策略。

(7)SVM 核函数之间的区别

一般选择线性核和高斯核,也就是线性核与 RBF 核。
线性核:主要用于线性可分的情形,参数少,速度快,对于一般数据,分类效果已经很理想了。
径向基RBF核:主要用于线性不可分的情形,参数多,分类结果非常依赖于参数。如果Feature 的数量很大,跟样本数量差不多,这时候选用线性核的 SVM。 如果 Feature的数量比较小,样本数量一般,不算大也不算小,选用高斯核的 SVM。

目录
相关文章
|
2月前
|
机器学习/深度学习 算法 Java
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
|
2月前
|
机器学习/深度学习 算法 知识图谱
【机器学习】逻辑回归原理(极大似然估计,逻辑函数Sigmod函数模型详解!!!)
【机器学习】逻辑回归原理(极大似然估计,逻辑函数Sigmod函数模型详解!!!)
|
2月前
|
机器学习/深度学习 存储 自然语言处理
【机器学习】基于逻辑回归的分类预测
【机器学习】基于逻辑回归的分类预测
|
2月前
|
机器学习/深度学习 算法 数据可视化
【机器学习】决策树------迅速了解其基本思想,Sklearn的决策树API及构建决策树的步骤!!!
【机器学习】决策树------迅速了解其基本思想,Sklearn的决策树API及构建决策树的步骤!!!
|
2月前
|
机器学习/深度学习 算法
【机器学习】逻辑回归介绍(逻辑回归应用场景,原理,损失及优化详解!!!)
【机器学习】逻辑回归介绍(逻辑回归应用场景,原理,损失及优化详解!!!)
|
3月前
|
机器学习/深度学习 算法 Python
从菜鸟到大师:一棵决策树如何引领你的Python机器学习之旅
【9月更文挑战第9天】在数据科学领域,机器学习如同璀璨明珠,吸引无数探索者。尤其对于新手而言,纷繁复杂的算法常让人感到迷茫。本文将以决策树为切入点,带您从Python机器学习的新手逐步成长为高手。决策树以其直观易懂的特点成为入门利器。通过构建决策树分类器并应用到鸢尾花数据集上,我们展示了其基本用法及效果。掌握决策树后,还需深入理解其工作原理,调整参数,并探索集成学习方法,最终将所学应用于实际问题解决中,不断提升技能。愿这棵智慧之树助您成为独当一面的大师。
46 3
|
3月前
|
机器学习/深度学习 算法 Python
决策树下的智慧果实:Python机器学习实战,轻松摘取数据洞察的果实
【9月更文挑战第7天】当我们身处数据海洋,如何提炼出有价值的洞察?决策树作为一种直观且强大的机器学习算法,宛如智慧之树,引领我们在繁复的数据中找到答案。通过Python的scikit-learn库,我们可以轻松实现决策树模型,对数据进行分类或回归分析。本教程将带领大家从零开始,通过实际案例掌握决策树的原理与应用,探索数据中的秘密。
50 1
|
3月前
|
机器学习/深度学习 算法 前端开发
R语言基础机器学习模型:深入探索决策树与随机森林
【9月更文挑战第2天】决策树和随机森林作为R语言中基础且强大的机器学习模型,各有其独特的优势和适用范围。了解并熟练掌握这两种模型,对于数据科学家和机器学习爱好者来说,无疑是一个重要的里程碑。希望本文能够帮助您更好地理解这两种模型,并在实际项目中灵活应用。
|
4月前
|
机器学习/深度学习 人工智能 算法
【人工智能】机器学习、分类问题和逻辑回归的基本概念、步骤、特点以及多分类问题的处理方法
机器学习是人工智能的一个核心分支,它专注于开发算法,使计算机系统能够自动地从数据中学习并改进其性能,而无需进行明确的编程。这些算法能够识别数据中的模式,并利用这些模式来做出预测或决策。机器学习的主要应用领域包括自然语言处理、计算机视觉、推荐系统、金融预测、医疗诊断等。
69 1
|
16天前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
51 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型