关闭

感知机

标签: 机器学习
77人阅读 评论(0) 收藏 举报
分类:

1. 感知机模型

  感知机是一个二类的线性分类器,输入特征向量,输出+1或-1代表实例的类别。感知机的本质是能在特征空间中将实例划分为正负两类的超平面。从输入空间到输出空间的映射函数为: y=sign(\omega x+b)

y=sign(ωx+b)
其中sign是符号函数:
sign(x)={+11x0x<0
只有正样本和负样本完全位于超平面两侧的时候称样本为线性可分的。

2. 感知机的训练

  感知机模型学习的目的就是获得参数ωb

2.1 损失函数

  在选择损失函数的时候,比较容易想到的是误分类样本的个数,但是这样的损失函数不可导不易优化。因此,感知机常用的损失函数是误分类的点到超平面的距离之和。任意一个点x0到超平面的距离表示为:

1ω|ωx0+b|
对于一个错误分类的样本,满足yi(ωxi+b)>0。所以所有误分类点到超平面的总距离为:
1ωΣyi(ωx0+b)
省略常数项,感知机的损失函数写作:
L(ω,b)=Σyi(ωx0+b)

2.2 学习算法

  损失函数L(ω,b)是关于ωb的可导函数。学习算法采用随机梯度下降法(stochastic gradient descent)。损失函数的梯度表示为:

ωL(ω,b)=Σyixi
bL(ω,b)=Σyi
对应的算法步骤如下:
1. 初始化ω0b0
2. 在训练集中选取数据点(yi,xi)
3. 如果yi(ωxi+b)0
ωω+ηyixi
bb+ηyi
4.重复步骤2和3,直到训练集中没有误分类的点。

2.3 算法的收敛性

  当训练数据集是线性可分的时候,感知机的学习算法是收敛的。但是感知机学习算法具有很多种可能的解,取决于初值的选择和迭代过程中误分类点的选择顺序。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:8553次
    • 积分:224
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:2篇
    • 译文:0篇
    • 评论:2条
    最新评论