一、什么是感知机模型?
感知机是线性分类的二分类模型,输入为实例的特征向量,输出为实例的类别,分别用1和-1表示。感知机将输入空间(特征空间)中的实例划分为正负两类分离的超平面,旨在求出将训练集进行线性划分的超平面,为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得最优解。感知机是神经网络和支持向量机的基础。
二、感知机模型
感知机的函数公式为: f ( x ) = s i g n ( w ⋅ x + b ) f(x)=sign(w·x+b) f(x)=sign(w⋅x+b)
其中 w w w和 b b b为感知机模型参数, w ∈ R n w\in R^n w∈Rn叫做权值或者权值向量, b ∈ R b\in R b∈R叫做偏差, w ⋅ x w·x w⋅x叫做 w w w和 x x x的内积, s i g n sign sign是符号函数,即: s i g n ( x ) = { 1 , x ⩾ 0 − 1 , x < 0 sign(x)=\begin{cases}1&,x\geqslant0\\-1&,x<0\end{cases} sign(x)={
1−1,x⩾0,x<0
感知机的假设空间是定义在特征空间中所有线性分类模型的函数集合,即 { f ∣ f ( x ) = w ⋅ x + b } \{f|f(x)=w·x+b\} {
f∣f(x)=w⋅x+b}
感知机的几何解释:线性方程 w ⋅ x + b = 0 w·x+b=0 w⋅x+b=0对应特征空间 R n R^n Rn中的一个超平面 S S S,其中 w w w是超平面的法向量, b b b是超平面的截距。该超平面将特征空间分为两个部分,将特征向量分为正负两类。因此,超平面 S S S成为分离超平面。
三、感知机的学习策略
假设训练数据集是线性可分的,感知机的学习目标就是找到能够将正负实例点完全分开的超平面,即确定感知机模型参数 w w w和 b b b,因此就是确定(经验)损失函数并求损失函数的最优解,即最小化。
感知机 s i g n ( w ⋅ x + b ) sign(w·x+b) sign(w⋅x+b)学习的损失函数定义为:
L ( w , b ) = − ∑ x ∈ M y i ( w ⋅ x i + b ) L(w,b)=-\sum\limits_{x\in M}y_i(w·x_i+b) L(w,b)=−x∈M∑yi(w⋅xi+b)
下面给出推导:
1)首先输入空间 R n R^n Rn中任意点 x 0 x_0 x0到超平面 S S S的距离: 1 ∣ ∣ w ∣ ∣ ∣ w ⋅ x 0 + b ∣ \frac{1}{||w||}|w·x_0+b| ∣∣w∣∣1∣w⋅x0+b∣,其中 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣是 w w w的 L 2 L2 L2范数;
2)对于误分类数据 ( x i , y i ) (x_i,y_i) (xi,yi)来说,当 w ⋅ x i + b > 0 w·x_i+b>0 w⋅xi+b>0时, y i = − 1 y_i=-1 yi=−1,而当 w ⋅ x i + b < 0 w·x_i+b<0 w⋅xi+b<0时, y i = 1 y_i=1 y