支持向量机SVM

概述(Support Vector Machines)

  • 可以做 有监督学习、无监督学习

分类问题,聚类问题 (SVC),在输入空间做一个映射,映射到一个更高维的空间去做分类。

L_2范数

  • 欧几里得距离

点到超平面 g(x) = w\cdot x +b 的距离为 M= \frac {|g(x)|}{||w||},则圆点到超平面距离为\frac{|b|}{||w||}

评估分类好坏

  • 是否无偏

margin,边际,能平移的距离,目标是最大化margin。

  • 如何描述出margin

+1 , -1代表两类问题。则有 g(x)>=1,g(x)<=-1两类,则M=\frac {2}{||w||}

  • 前提条件是把每个样本都分对

则有 y_i(wx_i+b)-1\geq 0

  • 我们的目标是最大化Margin

也就是 max M = \frac {2}{||w||} \Rightarrow min \frac{1}{2} w^Tw

  • 完整的表述

在条件 y_i(w\cdot x_i +b) \geq 1下,最小化 \Phi(x) = \frac12 w^Tw

  • 求解方法 拉格朗日 乘子法

有:L_p = \frac12 ||w||^2 - \sum _{i=1}^l a_iy_i(w\cdot x_i +b) + \sum_{i=1}^l a_i
对w和b求导后有:
\frac {\partial L_p}{\partial w} = 0 \quad \Rightarrow \quad w= \sum_{i=1}^l a_iy_ix_i
\frac {\partial L_p}{\partial b} = 0 \quad \Rightarrow \quad \sum_{i=1}^l a_iy_i = 0
将上式带入到 L_p中,可以得到其对偶函数:
L_D = \sum_i a_i - \frac12 \sum_{i,j}a_ia_jy_iy_jx_i \cdot x_j = \sum_i a_i - \frac12 \alpha^T H\alpha \quad where \quad H_{ij} = y_iy_jx_i \cdot x_j
前提是: \sum_i \alpha_i y_i =0 \quad \& \quad \alpha_i \geq 0

  • 少量不为0的 \alpha累加 得到w

g(x) = \sum_i^l \alpha_iy_ix_i \cdot x +b,向量做内积,是svm设计最精妙的地方

-求b 取x_s s表示上面求得的不为0的支持向量

y_s (x_s \cdot w +b)=1
y_s (\sum _{m \in S} \alpha _my_mx_m \cdot x_s +b)=1
可以求得b,不写了,累死。


以上前提条件是将点分对

为解决 分不对情况,加入soft margin概念

  • 加入 \xi

y_i(wx_i+b)-1 + \xi \geq 0

处理线性不可分的问题

  • 线性不可分,可以将数据映射到另外一个空间中
  • 设计一个映射,将数据映射到高维空间

K(a,b) = (a \cdot b +1)^2 = \Phi(\alpha)\cdot \Phi(b)这种高维空间的操作等价于低维空间的操作

这就是所谓的 Kernel Trick
  • 我们有固定的几种映射方法

Pllynomial : K(x_i,x_j) = (x_i \cdot x_j +1)^d
Gaussian: K(x_i,x_j) = exp(- \frac {||x_i-x_j||^2}{2\sigma^2})

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容