支持向量机
支持向量机在我的数学建模中已经使用过多次,因此在这里我不写出代码,只给出当时比赛的几个pdf。(懒狗一只)
基本内容
支持向量机的三个重点内容:间隔、对偶、核方法。
有了这三个重点属性,我们可以很好的构建适合数据的超平面,使得模型具有较高的准确性和普适性。
间隔与支持向量
在样本空间中,划分超平面可以通过
分类结果可以划分为两个区域,可以用如下形式表示:
两个区域的距离与这两个平面的距离相等,距离之和为:
想要最大化间隔,相当于最小化
对偶问题
对每个约束添加拉格朗日乘子
解出
核函数与核方法
在实际应用中,很多训练样本并不满足线性可分这一要求,这个时候,我们应当选用合适的核函数将训练样本映射到更高的维度,在高维度的空间中寻找到对应的超平面,令
常见的核函数可以参考
软间隔与正则化
在实际生活中,很难做到找到某个核函数使得训练集恰好在特征空间中完全线性可分,也很难断定这个线性可分的结果是不是由于过拟合造成的,为了缓解这个问题,我们需要允许支持向量机在一些样本上出错。为此,我们引入软间隔的概念。
- 硬间隔:所有样本必须划分正确
- 软间隔:允许部分样本划分错误
于是,优化目标可以写成:
其中
显然,当C趋近无穷大时,迫使所有样本满足约束;当
更一般的形式可以写成:
蒟蒻的论文
2022年第三届“华数杯”全国大学生数学建模竞赛(国三等奖):
2022年高教社杯数学建模竞赛(省二等奖):