SVM 支持向量机算法(Support Vector Machine )【Python机器学习系列(十四)

本文详细介绍了使用SVM的拉格朗日乘子法求解目标函数,包括目标函数的构建、拉格朗日函数的简化,以及如何通过拉格朗日乘子找到最优解。同时讨论了核函数的应用,以处理非线性可分的数据,并提到了SMO算法和梯度下降在求解中的作用。
摘要由CSDN通过智能技术生成

ω

,

b

1

2

ω

2

min_{\omega,b}\frac{1}{2}||\omega||^2

minω,b​21​∣∣ω∣∣2

进一步,限制条件可再转化为:

(

ω

T

x

i

b

)

y

i

1

0

(\omega^Tx_i + b)y_i-1 ≥ 0

(ωTxi​+b)yi​−1≥0


2.2 Part2 SVM拉格朗日乘子法求解

现在我们已经得到了目标函数表达式与限制条件的表达式,可以使用拉格朗日乘子法对其进行求解。
构建拉格朗日函数表达式如下:

L

(

ω

,

b

,

λ

)

=

1

2

ω

2

i

=

1

m

λ

i

[

1

(

ω

T

x

i

b

)

y

i

]

L(\omega,b,\lambda)=\frac{1}{2}||\omega||2+\sum_{i=1}{m}{\lambda_i}{[1-(\omega^Tx_i+b)y_i]}

L(ω,b,λ)=21​∣∣ω∣∣2+∑i=1m​λi​[1−(ωTxi​+b)yi​]

=

1

2

ω

T

ω

i

=

1

m

λ

i

[

1

(

ω

T

x

i

b

)

y

i

]

=\frac{1}{2}\omega^T \omega+\sum_{i=1}{m}{\lambda_i}{[1-(\omegaTx_i+b)y_i]}

=21​ωTω+∑i=1m​λi​[1−(ωTxi​+b)yi​]

目标问题是一个凸二次规划问题:目标函数是二次型函数,且约束函数是仿射函数。所以该问题有全局最小值。

其中,

λ

\lambda

λ是拉格朗日乘子,这里的m是样本的个数,每个样本对应一个拉格朗日算子,共计m个拉格朗日算子,对应m个限制条件。

F

(

ω

,

b

,

λ

)

对F(\omega,b,\lambda)

对F(ω,b,λ)求关于

ω

\omega

ω 和

b

b

b的偏导,并令其为0,再求解:

L

(

ω

,

b

,

λ

)

ω

=

ω

i

=

1

m

λ

i

y

i

x

i

=

0

\frac{∂L(\omega,b,\lambda)}{∂\omega}=\omega-\sum_{i=1}^{m}\lambda_iy_ix_i=0

∂ω∂L(ω,b,λ)​=ω−∑i=1m​λi​yi​xi​=0

L

(

ω

,

b

,

λ

)

b

=

i

=

1

m

λ

i

y

i

=

0

\frac{∂L(\omega,b,\lambda)}{∂b}=-\sum_{i=1}^{m}\lambda_iy_i=0

∂b∂L(ω,b,λ)​=−∑i=1m​λi​yi​=0

解得

ω

=

i

=

1

m

λ

i

y

i

x

i

\omega=\sum_{i=1}^{m}\lambda_iy_ix_i

ω=∑i=1m​λi​yi​xi​

0

=

i

=

1

m

λ

i

y

i

0=\sum_{i=1}^{m}\lambda_iy_i

0

  • 8
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值