线性可分支持向量机 对偶性形式求解
Posted Zetaa
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线性可分支持向量机 对偶性形式求解相关的知识,希望对你有一定的参考价值。
前言:仅个人小记。https://blog.csdn.net/qq_25847123/article/details/108055404给出了原问题的解法。这里给出支持向量机中凸二次规划问题的对偶解法。不论是对偶还是原问题形式,都是转成二次规划问题,编程角度上来看没太大差别。但从理论角度来看,对偶性形式能够直接凸显出“内积”形式,进而可以很好地引入“核”概念。
对偶形式
min
α
1
2
∑
i
=
1
N
∑
i
=
1
N
α
i
α
j
y
i
y
j
(
x
i
x
j
)
−
∑
i
=
1
N
α
i
s
.
t
.
∑
i
=
1
N
α
i
y
i
=
1
α
i
≥
0
,
i
=
1
,
2
,
.
.
.
,
N
\\min_\\alpha\\frac12\\sum_i=1^N\\sum_i=1^N\\alpha_i\\alpha_jy_iy_j(\\colorred\\boldsymbolx_i\\boldsymbolx_j)-\\sum_i=1^N\\alpha_i\\\\ \\mathsfs.t. \\sum_i=1^N \\alpha_iy_i=1\\\\ \\alpha_i\\geq 0,i=1,2,...,N
αmin21i=1∑Ni=1∑Nαiαjyiyj(xixj)−i=1∑Nαis.t.i=1∑Nαiyi=1αi≥0,i=1,2,...,N
求解出
α
∗
\\alpha^*
α∗,进而根据下面结论可以得到原始问题的解
w
∗
=
∑
i
=
1
N
α
i
∗
y
i
x
i
b
∗
=
y
j
−
∑
i
=
1
N
α
i
∗
y
i
(
x
i
x
j
)
w^*=\\sum_i=1^N\\alpha_i^*y_i\\boldsymbolx_i\\\\ b^* = y_j-\\sum_i=1^N \\alpha_i^*y_i(\\boldsymbolx_i\\boldsymbolx_j)
w∗=i=1∑Nαi∗yixib∗=yj−i=1∑Nαi∗yi(xixj)其中
j
j
j式对应于某一个大于
0
0
0的
α
j
\\alpha_j
αj即可。进而求出了原始问题的解,进而线性可分支持向量机训练完毕。
注意到在对偶最优化问题中,完全可以把内积 x i ⋅ y j , i , j ∈ [ 1 , N ] \\colorred\\boldsymbolx_i\\cdot \\boldsymboly_j,i,j\\in [1,N] xi⋅yj,i,j∈[1,N]提前计算出来。同时观察到,使用对偶形式训练支持向量机的过程中,对于数据集,只是使用到了求内积运算,而不再有任何其他运算。故而,在后面可以将内积概念广义化,进而推出非线性的支持向量机。
也注意到,对偶形式中目标函数的二次部分可以直接提取出二次型矩阵,并将目标函数写作矩阵形式为
[
α
1
α
2
.
α
N
]
(
1
2
[
y
1
y
1
(
x
1
⋅
x
1
)
y
1
y
2
(
x
1
⋅
x
2
)
.
.
.
y
1
y
3
(
x
1
⋅
x
3
)
y
2
y
1
(
x
2
⋅
x
1
)
y
2
y
2
(
x
2
⋅
x
2
)
.
.
.
y
2
y
N
(
x
2
⋅
x
N
)
.
.
.
.
.
.
y
N
y
1
(
x
N
⋅
x
1
)
y
N
y
2
(
x
N
⋅
x
2
)
.
.
.
y
N
y
N
(
x
N
⋅
x
N
)
]
[
α
1
α
2
.
α
N
]
−
[
1
1
.
1
]
)
\\beginbmatrix \\alpha_1&\\alpha_2&.&\\alpha_N\\endbmatrix (\\frac12\\beginbmatrix y_1y_1(\\boldsymbolx_1\\cdot \\boldsymbolx_1) & y_1y_2(\\boldsymbolx_1\\cdot \\boldsymbolx_2) & ... & y_1y_3(\\boldsymbolx_1\\cdot \\boldsymbolx_3)\\\\ y_2y_1(\\boldsymbolx_2\\cdot \\boldsymbolx_1) & y_2y_2(\\boldsymbolx_2\\cdot \\boldsymbolx_2) & ... & y_2y_N(\\boldsymbolx_2\\cdot \\boldsymbolx_N)\\\\ .&.&...&.\\\\ y_Ny_1(\\boldsymbolx_N\\cdot \\boldsymbolx_1) & y_Ny_2(\\boldsymbolx_N\\cdot \\boldsymbolx_2) & ... & y_Ny_N(\\boldsymbolx_N\\cdot \\boldsymbolx_N)\\\\ \\endbmatrix \\beginbmatrix \\alpha_1\\\\\\alpha_2\\\\.\\\\\\alpha_N\\endbmatrix-\\beginbmatrix 1\\\\1\\\\.\\\\1\\endbmatrix)
[α1α2.αN](21⎣⎢⎢⎡y1y1(x1⋅x1)y2y1(x2⋅x1).yNy1(xN⋅x1)y1y2(x1机器学习SVM面试题:简单介绍一下SVM?支持向量机SVM逻辑回归LR决策树DT的直观对比和理论对比,该如何选择?SVM为什么采用间隔最大化?为什么要将求解SVM的原始问题转换为其对偶问题?