支持向量机背后的数学

向量的内积(inner product)

对于向量

[egin{array}{l}
u = left[ {egin{array}{*{20}{c}}
{{u_1}}\
{{u_2}}
end{array}} ight]\
v = left[ {egin{array}{*{20}{c}}
{{v_1}}\
{{v_2}}
end{array}} ight]
end{array}]

它们的内积

[{u^T}v = {u_1}{v_1} + {u_2}{v_2}]

又有

[left| u ight| = sqrt {u_1^2 + u_2^2} ]

假设v在u上的投影距离为p,则

[{u^T}v = pleft| u ight|]

如果u和v的夹角大于90°则p是复数,小于90°为正数


有了上面的基础,接下来看支持向量机的损是函数

[underbrace {min }_ heta left{ {Cleft[ {sumlimits_{i = 1}^m {{y^{left( i ight)}}{mathop{ m Cos} olimits} {t_1}left( {{ heta ^T}{x^{left( i ight)}}} ight) + left( {1 - {y^{left( i ight)}}} ight){mathop{ m Cos} olimits} {t_0}left( {{ heta ^T}{x^{left( i ight)}}} ight)} } ight] + frac{1}{2}sumlimits_{j = 1}^n { heta _j^2} } ight}]

支持向量机试图最小化这个公式,对于前半部分

[{Cleft[ {sumlimits_{i = 1}^m {{y^{left( i ight)}}{mathop{ m Cos} olimits} {t_1}left( {{ heta ^T}{x^{left( i ight)}}} ight) + left( {1 - {y^{left( i ight)}}} ight){mathop{ m Cos} olimits} {t_0}left( {{ heta ^T}{x^{left( i ight)}}} ight)} } ight]}]

当y=1时,θTx会朝着θTx≥1的趋势去优化θ

当y=0时,θTx会朝着θTx≤-1的趋势去优化θ

对于后半部分

[{frac{1}{2}sumlimits_{j = 1}^n { heta _j^2} }]

对于下面两种情况

为方便理解,这里简化θ只有两个参数(θ1,θ2),且θ0=0,则

[frac{1}{2}sumlimits_{j = 1}^n { heta _j^2}  = frac{1}{2}left( { heta _1^2 + heta _2^2} ight) = frac{1}{2}{left( {sqrt { heta _1^2 + heta _2^2} } ight)^2} = frac{1}{2}{left| heta  ight|^2}]

可以看出,支持向量机为最小化这一部分,会试图最小化θ

结合第一部分

当y=1时,θTx会朝着θTx≥1的趋势去优化θ,加上第二部分的θ尽量小,则对于

[{ heta ^T}{x^{left( i ight)}} = {p^{left( i ight)}}left| heta  ight|]

p(i)需要尽量大

 

支持向量机会选择后者,因为它有比较大的p。

原文地址:https://www.cnblogs.com/qkloveslife/p/9898247.html