感知机python实现
给定一个数据集:
T={(x1,y1),(x2,y2),...,(xN,yN)}
yi∈{−1,+1}
输入空间中任意一点 x0 到超平面S的距离为:
−1||w||yi|w⋅x0+b|
这里||w||是w的L2范数
假设超平面S的误分点集合为M,那么所有误分点到超平面S的总距离为:
−1||w||∑xi∈Myi|w⋅xi+b|
在不考虑1||w||的情况下得到感知机学习的损失函数
L(w,b)=−∑xi∈Myi|w⋅xi+b|
假设误分类点M是固定的,那么损失函数的梯度为:
▽wL(w,b)=−∑xi∈Myixi▽wL(w,b)=−∑xi∈Myi
随机选取一个误分类点 (xi,yi),对w,b进行更新
w:=w+ηyixib:=b+ηyi
本文详细介绍了感知机的学习过程及其实现方法。给出了基于Python的感知机算法,并探讨了其损失函数及其梯度的推导过程。通过更新权重w和偏置b来减少误分类点,从而提高模型的准确性。
1376

被折叠的 条评论
为什么被折叠?



