线性svm简单推导及其matlab实现(未完待续)

如图1所示,有a、b两类数据,a类数据有\(a_1, a_2, a_3\)三个样本点,它们的坐标分别为\((a_{1x},a_{1y}),(a_{2x},a_{2y}),(a_{3x},a_{3y})\)\(a\)类数据的标签为\(t_a=1\), b类数据有\(b_1, b_2, b_3\)三个样本点,它们的坐标分别是\((b_{1x},b_{1y}),(b_{2x},b_{2y}),(b_{3x},b_{3y})\), \(b\)类数据的标签为\(t_b=-1\)。我们的目标是要找出一条直线,\(w_0+w_1x+w_2y=0\),通过该条直线将\(a,b\)两类数据较好地分离开来,优化目标是使得\(a,b\)两类数据中距离距离该直线最近的样本点到该直线的距离相等且最大,这些样本点也叫做支持向量,例如图1中\(a_1,b_1\)即是支持向量。

1446497-20180910131126029-658371516.jpg
图1 数据分布图

我们使用Hinge loss函数作为cost function。在这里我们将cost function设为:cost=max\((0,1-t * t_p)\), 其中\(t_p\)是预测值, \(t\)是真实值, \(y_p=w_0+w_1* x+w_2*y\)。举例说明,对于点\(a_1\), 其预测值为\(t_{p_{a1}}=w_0+w_1*a_{1x}+w_2* a_{1y}\), 其cost计算为\(cost_{a1}=max(0,1-t_a* t_{p_a1})\)

cost function设置为cost=max\((0,1-t* t_p)\)的意义是什么呢?

转载于:https://www.cnblogs.com/wumh7/p/9618561.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值