内容简介:疑问:法1和法2求出来的是同一条直线吗?当然是相同的,法2的直线两边同除以2就得到法1的直线了。根据维基百科
已知点(2,3)、(4,5),求经过这两点的直线
法1:按照《 如何求直线方程 》
\[
k=\frac{5-3}{4-2}=1
\]
\[
\begin{align*}
y &=x+b \\
3 &= 2+b\\
b &= 1
\end{align*}
\]
所以直线为y=x+1,或x-y+1=0。
法2:按照《 已知直线上两点求直线的一般式方程 》
A=5-3=2
B=2-4=-2
C=3*4-5*2=2
所以直线为2x-2y+2=0。
疑问:法1和法2求出来的是同一条直线吗?
当然是相同的,法2的直线两边同除以2就得到法1的直线了。
根据维基百科 [1] . 直线 . 维基百科. [2019-02-28]. ,直线可以用Ax+By+C=0来表示。
但这种表示形式不是唯一的。若限制\(A\geqslant 0\),及A、B、C最大公约数为1,则可以直线用唯一形式来表示。
若把直线方程Ax+By+C=0用向量形式表示,则有\(\vec{w}\cdot \vec{x}+C=0\)。但这种表示形式也不是唯一的。对于一维直线,\(\vec{w}=\overrightarrow{(A, B)}\),称为直线的法向量。
已知直线\((3,4)\cdot \vec{x}-1=0\),求证\(\vec{w}=\overrightarrow{(3,4)}\)为该直线的法向量。
设\(P_1=(x_1,y_1)\)、\(P_2=(x_2,y_2)\)在直线上,则有\((3,4)\cdot (x_1,y_1)-1=0\),\((3,4)\cdot (x_2,y_2)-1=0\)。
向量\(\overrightarrow{P_1P_2}=(x_2-x_1,y_2-y_1)\)。
\[\begin{align*}
\overrightarrow{P_1P_2}\cdot \vec{w} &= (x_2-x_1,y_2-y_1) \cdot (3,4)\\
&= 3x_2-3x_1+4y_2-4y_1\\
&= 3x_2+4y_2 -(3x_1+4y_1) \\
&= 1 – 1 \\
&= 0
\end{align*}\]
所以\(\vec{w}\)为直线的法向量。
若有直线\(\vec{w} \cdot \vec{x}+b=0\),点\(x_0\)为直线外一点,则点\(x_0\)相对于\(\vec{w}^\top\vec{x}+b=0\)的 单位函数距离式 [2] 单位函数距离式这个名字是我自创的。 为\(\vec{w_0}\cdot \vec{x}+b_0=0\),且\(\vec{w_0}\cdot \vec{x_0}+b_0=1\)。
求直线3x+4y-1=0相对于点(3,4)的单位函数距离式。
解:
\(d=\frac{3\times 3+4\times 4 -1}{\sqrt{3^2+4^2}}=\frac{24}{5}\),称此为点到直线的几何距离。
根据定义,设单位函数距离式为\(3nx+4ny-n=0\),\(\)。
\[\begin{align*}
9n+16n-n =& 1 \\
n =& \frac{1}{24}
\end{align*}\]
所以,求直线3x+4y-1=0相对于点(3,4)的单位函数距离式为\(\frac{1}{8}x+\frac{1}{6}y-\frac{1}{24}=0\)。
第一层
现有样本集合X,每一个样本\(x_i\)有类别\(y_i\)。支持向量机处理的是二分类问题,所以设\(y_i\)可以取两个值,传统上,设\(y_i\in \{+1, -1 \}\)。
支持向量机求的是能把所有点正确分类,且对所有点距离最远的超平面。
设该超平面为\(\vec{w}\cdot \vec{x}+b=0\)。
设有点\(p_1,p_1,\cdots, p_N\),求离决侧面距离最近的点,离决侧面的距离是多少?
\[
d_{\text{min}}=\underset{1\leqslant n\leqslant N}{\min}\frac{y_n(\vec{w}\cdot \vec{x_n}+b)}{\left \| w \right \|}
\]
上式解释一下,通过变化n,令\(\frac{y_n(\vec{w}\cdot \vec{x_n}+b)}{\left \| w \right \|}\)最小。n代表了该点的序号。设该点为\(p_{\text{min}}\)。
但是决策面本身的性质要求它与所有点的距离最大,换句话说,决策面到离其最近的点的距离最大,即
\[
\begin{align}
& \underset{\vec{w},b}{\max}\ d_{\text{min}} \notag \\
=& \underset{\vec{w},b}{\max}\left\{ \underset{n}{\min}\left[\frac{y_n(\vec{w}\cdot \vec{x_n}+b)}{\left \| w \right \|}\right] \right\} \label{maxmin} \\
\end{align}
\]
上式解释一下,通过变化\(\vec{w}\)和b,令\(d_{\text{min}}\)最大。
若把超平面为\(\vec{w}\cdot \vec{x}+b=0\)看成关于\(p_{\text{min}}\)的单位函数距离式,则有\(d_{\text{min}}=\frac{1}{\left \| w \right \|}\)
等式\(\eqref{maxmin} \)可化简为\(\underset{\vec{w},b}{\max}\left( \frac{1}{\left \| w \right \|} \right)\),相当于\(\underset{\vec{w},b}{\min}\left( \left \| w \right \| \right)\)
考虑到\(\left \| \vec{w} \right \|=\sqrt{\sum w_i^2}\),我们改为最小化\(\left \| \vec{w} \right \|^2\)
考虑到对\(\left \| \vec{w} \right \|^2\)求导会产生系数2,我们改为最小化\(\frac{1}{2}\left \| \vec{w} \right \|^2\)。
从观察可知,l仅由两个不同类得边界分割面所穿过得点决定,如上图的1个X,两个O。两个不同类得边界分割面所穿过得点称为 支持向量 。
所有的支持向量\(x_i\)到超平面l的距离都相同,可设为d。
由定理1,始终存在w和b,令
\[\begin{equation}
\forall x_i \quad \left|\vec{w}^\top\vec{x_i}+b\right|=1
\label{绝对值1}
\end{equation}\]
。
考虑到每个\(x_i\)都有分类\(y_i\),且\(y_i\in \{+1, -1 \}\)。可做如下假设
\[
\begin{equation}
y_i=\begin{cases}
+1 & \text{若 } \vec{w}^\top\vec{x_i}+b\geqslant 1\\
-1 & \text{若 } \vec{w}^\top \vec{x_i}+b <1 \\
\end{cases}
\label{y的分类}
\end{equation}
\]
可以对公式\(\eqref{y的分类}\)进行归一化处理,得
\[
y_i(\vec{w}^\top\vec{x_i}+b)\geqslant 1
\]
根据《向量复习》,任意一点到该决策面的距离为 \(d=\frac{\left| \vec{w}^\top\vec{x} \right |}{\left \| \vec{w} \right \|}\)。对于支持向量\(x_i\),则有
\[\begin{equation}
d=\frac{1}{\left \| \vec{w} \right \|}
\end{equation}\]
为了最大化d,需要最小化\(\left \| \vec{w} \right \|\)。
有人会说了,这个最小化问题非常简单,\(w=\begin{bmatrix}0\\ 0\\ \vdots \\ 0 \end{bmatrix}\)就最小了。不过,你忘了我们有约束条件。最小化\(\frac{1}{2}\left \| \vec{w} \right \|^2\)的同时,还必须保证所有点正确分类呀。
所以最小化\(\frac{1}{2}\left \| \vec{w} \right \|^2\)时的约束条件为\(\forall x_i,y_i \quad y_i(\vec{w}^\top\vec{x_i}+b)\geqslant 1\)。
如果你读到现在,恭喜你,你已经打通了SVM第一层!
第二层
怎么把“能把所有点正确分类”用数学表示呢?
对任意一点\((\vec{x_i},y_i)\),将\(x_i\)代入l,
当然,如果写成
\[
y_i=\begin{cases}
+1 & \text{ 若} \vec{w}^\top\vec{x_i}+b\leqslant 0 \\
-1 & \text{ 若 } \vec{w}^\top\vec{x_i}+b>0
\end{cases}
\]
也可以。只是\(\vec{w}\)的符号相反而已。
通过放大缩小\(\vec{w}\)和\(\vec{b}\),可以对公式\(\eqref{y的分类}\)进行归一化处理,得
若对公式\(\eqref{y的分类}\)进行简单合并,得到的是\(y_i(\vec{w}^\top\vec{x_i}+b)\geqslant 0\)。待办:使用此公式进行推导。
如果该决策面能对所有点进行正确分类,则一定有\(\forall (\vec{x_i},y_i),\ y_i(\vec{w}^\top\vec{x_i}+b)\geqslant 1\)
如果限制\(A\geqslant 0\),且\(A^2+B^2=1\),也可以把直线用唯一形式来表示。
若限制\(\vec{w}\)正规化为单位向量,即\(\left\| \vec{w} \right\|=1\),则可以把直线用唯一形式来表示。 注意 ,因为\(\vec{w}\)正规化了,C也会改变。 注意 ,本文将通篇使用向量形式来表示直线(和超平面),并要求\(\vec{w}\)为单位向量。
以上所述就是小编给大家介绍的《支持向量机》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入浅出Ajax
(美)Brett McLaughlin / 东南大学出版社 / 2006-5 / 98.00元
本书将教会您如何在很短的时间内掌握使用JavaScript代码来向服务器提交异步请求?同时,您可以学习如何使用诸如动态HTML、XML、JSON、DOM等技术来解决开发过程中遇到的许多问题。让你从那些繁琐而笨拙的网站开发技术中彻底解放出来!本书将是一本指导您进行异步开发的经典参考书籍。 作为一名网站设计人员,您也许时常因为遇到以下情况而烦恼:用户只是移动了鼠标就要从服务器重载数据......一起来看看 《深入浅出Ajax》 这本书的介绍吧!