统计机器学习第二章 感知机
对于线性方程w*x+b = 0
对应于空间的一个超平面S,其中w是超平面的法向量,b是超平面的截距。超平面将空间划分为两个部分,位于平面两边的点分属于正负两类。
前提:数据线性可分,可以找的一个超平面S,w*x+b = 0,能够将数据完整划分开。
输入:{(x1,y1),(x2,y2),..(xN,yN),},其中yi={-1,1}
输出:w和b。
算法的原始形式:
- 选取初始值w0和b0
- 在数据集中选择数据 (xi,yi)
- 如果yi(wix+b)<=0, w←w+ηyixi b←b+ηyi
- 转到步骤2直到没有误分类点
经过有限次搜索可以找到这个分类面,不唯一,与初值选择,误分类点的选择顺序等有关。
感知机对偶,
对原始形式做变形,
w = η(y1x1+y2x2+ +yixi) ,假设ni 是这些数据点第i个点在训练过程中被误分类的总次数,则有
w=∑niηyixi
如果令ai=niη,则有w=∑aiyixi,同理b=∑aiyi
算法的对偶形式:
取 a = (a1,a2, aN)T
- 选取初始值a=0和b=0
- 在数据集中选择数据 (xi,yi)
- 如果yi∑(ajxj*xi+b)<=0, ai←ai+ηi b←b+ηyi
- 转到步骤2直到没有误分类点
- 最后学习w和b可以表示为:w=∑aiyixi,b=∑aiyi
提前计算gram矩阵,降低运算量。
posted on 2019-01-31 13:09 lancet1105 阅读(168) 评论(0) 编辑 收藏 举报