机器学习-支持向量机

支持向量机

在逻辑回归中,我们需要z远大于0,函数接近1
同理,z远小于0,函数接近于0
机器学习-支持向量机
这是逻辑回归的损失函数
机器学习-支持向量机
损失函数的图像分别为
机器学习-支持向量机
机器学习-支持向量机
在逻辑回归的基础上
我们分别以1,-1为分界,1之后的都为0,再延伸出一条直线(下图粉线),作为我们新的损失函数。
我们把y=1时的新的图像命名为cost1(z)
y=0时的新的图像命名为cost0(z)
同时用cost1(z),cost0(z)替换我们逻辑回归的损失函数对应的两项h(x)
并去掉逻辑回归损失函数中前面的平均化项1/m
机器学习-支持向量机
我们把损失函数的前半段看到A,后面的正则化项看做B项
则式子变成A+λB
同时,我们去掉正则化参数λ,取而代之,在A前面加上参数C(本质上相同),得到我们新的损失函数
机器学习-支持向量机
最终得到
机器学习-支持向量机

对于我们这个新的损失函数来说
支持向量机会直接输出y=1或0,而不会是输出一个概率
机器学习-支持向量机
损失函数图像如下
机器学习-支持向量机

那么支持向量机能带给我们什么?
观察这个损失函数
如果C很大
我们会很想让第一项为0(因为我们的目标是最小化损失函数)
机器学习-支持向量机
由此我们想要训练的情况是
y=1时z>=1
y=0时z<=-1
机器学习-支持向量机

举个例子
对于下图这个样本来说,我们可以有很多决策边界把他们区分开
机器学习-支持向量机

但是有的曲线(粉线,绿线)看着会很怪,显得不那么自然,而黑线看上去就很协调,我们画两条辅助线(蓝线)
黑线使得决策边界与样本之间的最小距离很大
所以有时候支持向量机也叫:大间距分类器
机器学习-支持向量机

但目前我们的前提是C很大
如果此时出现一个异常点,就会让决策边界由黑线变为粉线(C仍然代表正则化参数)
其实C就相当于是1/λ
如果C不是很大,不会出现这种情况
机器学习-支持向量机