11-2 支撑向量机的推导过程

SVM要最大化margin,即图中两根直线之间的距离 用数学语言来表达: margin = 2 * d,最大化d就是最大化margin

点x到直线wTx+b=0w^T * x + b = 0距离为:

distance=wT+bww=w12+w22++wn2distance = \frac{|w^T+b|}{||w||} \\ ||w|| = \sqrt {w_1^2+w_2^2+\cdots+w_n^2}

所有的样本点到决策边界到距离都应该大于d,用于公式表达: 上面这个公式可写成这样的形式: 于是可得出margin上下两条直线的方程为: 注意:这里三条直线中的已经不是原来的wTw^T和b了,wbT=wT/(wd),bd=b/(wd)w_b^T=w^T/(||w||*d), b_d=b/(||w||*d) SVM的目标是最大化d,d的公式在上文已经给出。 由于支持向量x一定是在margin的上下边界点上,可以证明对于任意支持向量x,以下四个公式表达的目标的相同的: 结论: SVM算法演变为有条件的最优化问题,(st:条件) 有条件的最优化问题和没有条件的最优化问题,其求解方法大不相同。

Last updated