首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SVM损失函数

SVM损失函数
EN

Data Science用户
提问于 2019-08-22 06:07:05
回答 2查看 267关注 0票数 0

据我所知,如果转置(W)xi+ b>=0,y=-1,则支持向量机的假设函数是预测b>=0。但是,根据上述损失函数,若标号为>=1,则转置(W)xi+b必须大于或等于1( y=1 ),如果标号为-1 (<= -1 ),则小于-1(<=-1)为零惩罚。所以我很困惑here...So,这是否意味着如果转置(W)xi+b =0.6>=0 (从而产生h(x)=1),并且确实标出y=1,但是根据损失函数,仍然会有惩罚(因为max(0,1-0.6) =0.4)?为什么?模型没有正确分类吗?

有人能帮我澄清一下吗?非常感谢!

EN

回答 2

Data Science用户

发布于 2019-08-25 06:03:03

SVMs是用来对数据集进行最大边缘超平面分类的模型.实际上,线性支持向量机的优化问题是从相同的假设出发的,即:

\mathcal{P}: max_{w,b} \frac{1}{\Vert w \Vert}y^{(i)}(w^Tx^{(i)}+b)\geq 1\forall i约束

\equiv min_{w,b} \Vert w \Verty^{(i)}(w^Tx^{(i)}+b)\geq 1\forall i约束

\equiv min_{w,b} \frac{1}{2}w^Twy^{(i)}(w^Tx^{(i)}+b)\geq 1\forall i约束

上述情况是硬支持向量机(当数据是线性可分的)。然而,当数据集不是完全线性可分的时候,我们采用软支持向量机,并使用惩罚方法。将原问题\mathcal{P}改进为:\begin{aligned} & \mathcal{P}: & & min_{w,b} \frac{1}{2}w^Tw+C\sum_{i=1}^N \xi_i \\ & \text{subject to} & & y^{(i)}(w^Tx^{(i)}+b)\geq 1-\xi_i\forall i\\ &&& \xi_i\geq 0\forall i\\ \end{aligned},将上述约束优化问题作为一系列无约束问题求解如下:

min_{w,b} \Big[\frac{1}{2}w^Tw+C\sum_{i=1}^N \max\big(0,1-y^{(i)}(w^Tx^{(i)}+b)\big)\Big]

,这就引出了你问题的答案。在一个软支持向量机中,我们正在寻找参数(w,b),以使上述成本函数总体最小化。由于数据不是完全线性可分的,对于每一组参数(w,b),对于某些i,都会有一些非零的惩罚。但目标是将整个成本函数最小化,以获得最大的罚款幅度和最小的惩罚金额。

票数 1
EN

Data Science用户

发布于 2019-08-22 17:07:17

我们正在寻找一个最大限度的解决方案,而不仅仅是一个好的分离超平面.因此,实际上,“在”范围内的分数是有惩罚的。

否则,最优解(给定最佳分离超平面)将是将w取得很小(使用一个类似比例的b来保持相同的超平面),使边际非常大,并产生任意小的损失。(https://stats.stackexchange.com/a/373075/232706)

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/57990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档