4.支持向量机(SVM)算法(下)

1.SVM算法的特点 

1.1 训练好的模型的算法复杂度是由支持向量的个数决定的,而不是由数据的维度决定的。 所有SVM不太容易产生overfitting

1.2 SVM训练出来的模型完全依赖于支持向量(Support Vectors),即使训练集里面所有非支持向量的点都被去除,重复训练过程,结果仍然会得到完全一样的模型。

1.3 一个SVM如果训练得出的支持向量个数比较小,SVM训练出的模型比较容易被泛化。

2.对于线性不可分的情况(linearly inseparable case)

前面也提到如果软间隔支持向量机允许某些样本点不满足,但是当有大量的样本点不满足时,则不能使用这个方法了。

2.1两个步骤来解决:

  • 利用一个非线性的映射把原数据集中的向量点转化到一个更高维度的空间中

  • 在这个高维度的空间中找一个线性的超平面来根据线性可分的情况处理

可以观看这个视频连接:https://www.youtube.com/watch?v=3liCbRZPrZA

2.2如何利用非线性映射把原始数据转化

2.2.1举个简单的小例子:

2.2.2思考两个问题:

2.2.2.1如何选择合理的非线性转化把数据转到高维中?

2.2.2.2如何解决计算机內积时算法复杂度非常高的问题?

2.2.3使用核方法(Kernel trick)

3.核方法(kernel trick)

3.1动机

3.2以下核函数和非线性映射函数的內积等同

常用的核函数:

如何选择使用哪个kernel?          

根据先验知识,比如图像分类,通常使用RBF,文字不使用RBF        

尝试不同的kernel,根据结果准确度而定。

3.3核函数的简单小例子

4.SVM扩展可解决多个类别分类问题

对于每个类,有一个当前类和其他类的二类分类器(one-vs-rest)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
支持向量机(Support Vector Machine,SVM)是一种用于分类和回归分析的监督学习算法。其理论基础可以从以下几个方面进行解释: 1. 最大间隔分类器:SVM的目标是找到一个能够将不同类别的样本点分开的超平面。这个超平面应该最大化两个不同类别样本点之间的间隔,也就是最大化两个类别支持向量(距离超平面最近的样本点)之间的距离。 2. 核函数:SVM算法可以通过使用核函数将输入空间映射到高维特征空间,进而解决非线性可分的问题。常用的核函数有线性核、多项式核和高斯核等。 3. 优化问题:SVM的目标是求解一个凸二次规划问题,通过最小化目标函数来找到最优的超平面。优化问题的目标函数包括正则化项和经验风险项,其中正则化项用于控制模型的复杂度,经验风险项用于使分类误差最小化。 4. 对偶问题:SVM的优化问题可以通过对偶问题进行求解。对偶问题可以转化为一个只与支持向量相关的表达式,从而减少了计算的复杂度。 5. 软间隔与惩罚因子:SVM可以允许一定程度的样本点分类错误,即存在一些样本点位于超平面的误分类区域内。通过引入惩罚因子,SVM可以在最大化间隔的同时,尽量减小误分类点的数量。 总的来说,SVM的理论基础包括最大间隔分类器、核函数、优化问题、对偶问题以及软间隔与惩罚因子等。这些理论基础使得SVM成为了一个强大的分类算法,在实际应用中取得了广泛的成功。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值