支持向量机(SVM)详解:从原理到应用
1. SVM 原理推导
SVM 算法并非在两组数据间随意选择一条分割线,而是致力于最大化两组数据间的距离。以判断客户忠诚度为例,我们能够借助该算法确定两类(忠诚与不忠诚)之间的最佳决策边界,进而明确区分忠诚客户和非忠诚客户的因素。
为了实现这一目标,我们的目标是求解函数 $wx - b = 0$ 中的 $w$,此函数也可改写为 $b = \sum_{i = 1}^{n} w_ix_i$,其中 $x_i$ 是该维度的值,$w_i$ 有待确定。这些方程定义了 $n$ 维空间中的一个超平面。
然而,这只是两类数据间的一个任意空间。为找到两组数据的最大分隔,我们需再定义两个超平面:一个在现有超平面之上,一个在其之下。可分别定义为 $wx + b = 1$ 和 $wx + b = -1$。此时,虽不知具体数据,但已拥有上下两个边界。
接下来,我们要最大化上下超平面间的边界。通过几何方法,我们发现上下超平面间的垂直距离为 $\frac{2}{|w|}$。原目标是最大化边界,可简化为最小化 $|w|$,即两个超平面间的欧几里得距离。
这种方法有诸多益处,例如 $|w| = \sqrt{w \cdot w}$ 是一个凸函数,借助众多可用算法能快速求解。更优的做法是将函数重新定义为 $\frac{1}{2} |w|^2$,这是一个二次规划问题,利用 Karush - Kuhn - Tucker 条件可轻松解决。
2. 处理非线性数据:核技巧
前面的例子均为线性数据,但多数实际数据是非线性且具有多维度的。我们可运用 SVM 的核技巧将线性模型转化为非线性模型,以处理非线性数据相
超级会员免费看
订阅专栏 解锁全文
2396

被折叠的 条评论
为什么被折叠?



