SVM目标函数的一些理解

写在前面

学习SVM的对目标函数有些疑问,做了一些笔记。感谢ZKX同学提供的帮助,(PS:这篇博客可能会继续更新

SVM

我们的问题是设定一个超平面,去最大化样本点和这个超平面的距离,这个距离我们称之为Margin(间隔)。

γ = min ⁡ i γ ( i ) \gamma=\min _{i} \gamma^{(i)} γ=iminγ(i)

在这里插入图片描述

函数间隔 Functional margin:

这一点老师的PPT上并没有给出来,所以可能学习的时候有些混淆。

γ ^ ( i ) = y ( i ) ( ω T x ( i ) + b ) \hat{\gamma}^{(i)}=y^{(i)}\left(\omega^{T} x^{(i)}+b\right) γ^(i)=y(i)(ωTx(i)+b)

这里我们扩大 ω , b \omega,b ω,b n 倍数会改变 γ ^ \hat{\gamma} γ^。因此我们引入几何间隔。

几何间隔 Geometric margin :

γ ( i ) = y ( i ) ( ( ω ∥ ω ∥ ) T x ( i ) + b ∥ ω ∥ ) \gamma^{(i)}=y^{(i)}\left(\left(\frac{\omega}{\|\omega\|}\right)^{T} x^{(i)}+\frac{b}{\|\omega\|}\right) γ(i)=y(i)((ωω)Tx(i)+ωb)

几何间隔具有缩放不变性:

γ ( i ) = y ( i ) ( ( c ⋅ ω ∥ c ⋅ ω ∥ ) T x ( i ) + c ⋅ b ∥ c ⋅ ω ∥ ) = y ( i ) ( ( ω ∥ ω ∥ ) T x ( i ) + b ∥ ω ∥ ) \begin{aligned}\gamma^{(i)} &=y^{(i)}\left(\left(\frac{c \cdot \omega}{\|c \cdot \omega\|}\right)^{T} x^{(i)}+\frac{c \cdot b}{\|c \cdot \omega\|}\right) \\&=y^{(i)}\left(\left(\frac{\omega}{\|\omega\|}\right)^{T} x^{(i)}+\frac{b}{\|\omega\|}\right)\end{aligned} γ(i)=y(i)((cωcω)Tx(i)+cωcb)=y(i)((ωω)Tx(i)+ωb)

有了这个性质我们可以对求解目标进行限制,简化优化问题。

这里要注意:如果 ∣ ω ∣ = 1 |\omega|=1 ω=1,那么函数间隔和几何间隔相等。如果超平面参数 ω \omega ω b b b成比例地改变(超平面没有改变),函数间隔也按此比例改变,而几何间隔不变。

SVM的目标问题:

max ⁡ ω , b min ⁡ i { γ ( i ) } \max _{\omega, b} \min _{i}\left\{\gamma^{(i)}\right\} ω,bmaximin{γ(i)}

目标问题可以转化为:

max ⁡ γ , ω , b γ s.t. γ ( i ) ≥ γ , ∀ i \begin{array}{ll}\max _{\gamma, \omega, b} & \gamma\\\text {s.t.} & \gamma^{(i)} \geq \gamma, \quad \forall i\end{array} maxγ,ω,bs.t.γγ(i)γ,i

其中,间隔为函数间隔:

γ ( i ) = y ( i ) ( ( ω ∥ ω ∥ ) T x ( i ) + b ∥ ω ∥ ) \gamma^{(i)}=y^{(i)}\left(\left(\frac{\omega}{\|\omega\|}\right)^{T} x^{(i)}+\frac{b}{\|\omega\|}\right) γ(i)=y(i)((ωω)Tx(i)+ωb)

因此目标问题转化为:

max ⁡ γ , ω , b γ s.t. y ( i ) ( ω T x ( i ) + b ) ≥ γ ∥ ω ∥   ∀ i \begin{array}{ll}\max _{\gamma, \omega, b} & \gamma\\\text {s.t.} & y^{(i)}\left(\omega^{T} x^{(i)}+b\right) \geq \gamma\|\omega\| \ \quad \forall i\end{array} maxγ,ω,bs.t.γy(i)(ωTx(i)+b)γω i

利用几何间隔不变性,一方面为了使优化目标更加简单。

另一方面有点类似于标准化的思想因为不同模型由于数据分布的原因, ω \omega ω b b b可能会大不相同(数据集1的分法和数据集2的分法结果的好坏因为 ω \omega ω b b b比例的不同难以直观比较)。但是把他们的最小间隔都设置为1后,就有比较性了。同一个数据的不同超平面,也有了比较的方法
min ⁡ i { y ( i ) ( ω T x ( i ) + b ) } = 1 \min _{i}\left\{y^{(i)}\left(\omega^{T} x^{(i)}+b\right)\right\}=1 imin{y(i)(ωTx(i)+b)}=1

即令最小间隔为 1 ∥ ω ∥ \frac{1}{\|\omega\|} ω1

γ = min ⁡ i { y ( i ) ( ( ω ∥ ω ∥ ) T x ( i ) + b ∥ ω ∥ ) } = 1 ∥ ω ∥ \gamma=\min _{i}\left\{y^{(i)}\left(\left(\frac{\omega}{\|\omega\|}\right)^{T} x^{(i)}+\frac{b}{\|\omega\|}\right)\right\}=\frac{1}{\|\omega\|} γ=imin{y(i)((ωω)Tx(i)+ωb)}=ω1

因此目标问题变为:

max ⁡ ω , b 1 / ∥ ω ∥  s.t.  y ( i ) ( ω T x ( i ) + b ) ≥ 1 , ∀ i \begin{array}{ll}\max _{\omega, b} & 1 /\|\omega\| \\\text { s.t. } & y^{(i)}\left(\omega^{T} x^{(i)}+b\right) \geq 1, \forall i\end{array} maxω,b s.t. 1/ωy(i)(ωTx(i)+b)1,i

又仅为最小化 1 ∥ ω ∥ \frac{1}{\|\omega\|} ω1等价于最大化 ∥ ω ∥ 2 = ω T ω \|\omega\|^{2}=\omega^{T} \omega ω2=ωTω(这样凑是为了满足二次规划形式)

最终目标函数即为:

min ⁡ ω , b ω T ω  s.t.  y ( i ) ( ω T x ( i ) + b ) ≥ 1 , ∀ i \begin{array}{l}\min _{\omega, b} \omega^{T} \omega \\\text { s.t. } \quad y^{(i)}\left(\omega^{T} x^{(i)}+b\right) \geq 1, \forall i\end{array} minω,bωTω s.t. y(i)(ωTx(i)+b)1,i

参考文献

SVM - Understanding the math - the optimal hyperplane

Lecture 6: Support Vector Machine

从零构建支持向量机(SVM)

svm函数的解释(转载)

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值