深度学习机器学习之TensorFlow

SVM 随笔

2019-10-27  本文已影响0人  zidea

前言

当下机器学习比较重要 3 中算法,个人都目前为止认为比较重要机器学习算法分别是,深度学习、SVM 和决策树。在深度学习出现之前,是 SVM 的时代 SVM 占据了机器学习算法优势地位整整 15 年。

SVM VS 深度学习

深度学习是对原始特征重新表示,也就是原始特征虽然学的很懒,通过。就拿深度学习擅长的图像识别,是因为我们人类使用 pixel 来表示图片,用 pixel 来表示图片是一种比较烂表示方式,这是通过深度学习能够帮助我提取一些新表示特片特征来对图像进行表示。
而且深度学习有时候即使对于设计者是个黑核模式,也就是我们不知道机器如何学习来给出其预测或推荐。有时候我们是需要知道机器是如何学习,学习到了什么,以及如何做出决定和推荐。

而 SVM 好处是通过数学推导出来的模型。个人尝试了解一下感觉还是比较难。

SVM VS 决策树

SVM 和决策树都是找决策边界

SVM(Support Vector Machine)


SVM = Hinge Loss + (核方法)Kernel Method

概念 SVM (Support Vector Machine)

SVM 是我们必须掌握统计算法,而且 SVM 推导过程要比其应用更加重要。使用 SVM 前提是我们分类问题是线性可分的。

SVM 用于解决分问题的分类器。介绍且背后算法,了解算法后便于我们更好调整参数。在深度学习出现之前被大家广泛应用用于分类算法。

svm
图中有我们用颜色来表示不同样本,所谓分类问题就是找到一条线,让线两边分别是不同的类别。

我么不仅需要关注训练误差,我们更要关系期望损失

SVM 关键术语

SVM 分类

SVM 推导过程

训练数据

我们在构建训练数据集时候,需要将所有正样本设计为计算后大于 1
\vec{W} \cdot \vec{X_+} + b \ge 1
\vec{W} \cdot \vec{X_-} + b \le -1
这就是 SVM 的最大间隔假设。

小技巧

我们通过一些小技巧将上面两个公式合并为一个公式
y_i(\vec{w}x_+ \cdot \vec{u} + b) \ge 1
y_i(\vec{w}x_- \cdot \vec{u} + b) \ge 1
y_i(\vec{w}x \cdot \vec{u} + b) \ge 1
约束条件在训练集中所有样本都需要满足这个公式
对于支持向量的点在上面公式不等号变为等号
y_i(\vec{w}x \cdot \vec{u} + b) = 1

求取宽度

width = (\vec{x_+} -\vec{x_-}) \cdot \frac{\vec{W}}{||w||}

width = (\vec{x_+} -\vec{x_-}) \cdot \frac{\vec{W}}{||w||} = \frac{\vec{x_+} \cdot \vec{w}}{||w||} - \frac{\vec{x_-} \cdot \vec{w}}{||w||}
width = \frac{1-b}{||w||} + \frac{1+b}{||w||} = \frac{2}{||w||}
y_i(\vec{w}x \cdot \vec{u} + b) = 1
那么我们让街宽最大就是让 \frac{2}{||w||} 大,那么也就是问题变为了\max \frac{2}{||w||}
我们将问题进行一系列转换那么求 \max \frac{2}{||w||} 转换为了 \min \frac{1}{2} ||w||^2

L = \frac{1}{2} ||\vec{w}||^2 - \sum \alpha_i (y_i(\vec{w} \cdot \vec{x} + b ) - 1)

\frac{\partial L}{\partial \vec{w}} = \vec{w} - \sum \alpha_i \cdot y_i \cdot x_i = 0
\vec{w} = \sum \alpha_i \cdot y_i \cdot x_i

\frac{\partial L}{\partial b} = \sum \alpha_i y_i = 0
然后将 \vec{w} = \sum \alpha_i \cdot y_i \cdot x_i 公式带入下面公式中进行推导
L = \frac{1}{2} ||\vec{w}||^2 - \sum \alpha_i (y_i(\vec{w} \cdot \vec{x} + b ) - 1)

L = \frac{1}{2} \sum \alpha_i \cdot y_i \cdot x_i \vec{w} \sum \alpha_i \cdot y_i \cdot x_i - \sum \alpha_i y_i x_i \cdot (\sum \alpha_i y_i x_i )- \sum \alpha_i y_i b + \sum \alpha_i
= \sum\alpha_i - \frac{1}{2} \sum \sum \alpha_i y_i x_i \alpha_j y_j x_j

上一篇下一篇

猜你喜欢

热点阅读