算法:
输入:训练数据集
T={(x1,y1),(x2,y2),…,(xN,yN)}
,其中
xi∈Rn
,
yi∈{−1,1},i=1,2,…,N
;学习率
η(0<η≤1)
;
输出:
w,b
; 感知机模型
f(x)=sign(w⋅x+b)
.
(1) 选择初值
w0,b0
(2) 在训练集中选取数据
(xi,yi)
(3) 如果
yi(w⋅xi+b)≤0
w←w+ηyixi
b←b+ηyi
(4) 转至(2),直至训练集中没有误分类点。
模型:
f(x)=sign(w⋅x+b)
策略:
误分类点到超平面 S 的总距离
推理思路:
任意一点
误分类点到超平面 S 的距离为
所有误分类点到 S 的总距离为
不考虑 ∥w∥ ,损失函数定义为
L(w,b)=−∑xi∈Myi(w⋅xi+b)
其中
M
为误分类点的集合。 最优化方法为随机梯度下降法
∇bL(w,b)=−∑xi∈Myi
随机选择一个误分类点 (xi,yi) ,对 w,b 进行更新:
w←w+ηyixi
b←b+ηyi