【机器学习】PLA (感知机算法 Perceptron Learning Algorithm)

1. PLA 基础理论

PLA是一个线性二分类算法。

1.1 Perceptron Hypothesis

Perceptron
我们也可以把偏置项作为一个恒为1的维度并入x向量,于是得到:

h ( x ) = s i g n ( w T x ) h(x) = sign(w^Tx) h(x)=sign(wTx)

注意:这里的负样本是-1而不是0

 
 

1.2. PLA的算法实现过程

PLA 方法

算法步骤:

  1. 选择 w 0 = 0 w_0 = 0 w0=0 (选择初始值,一般选0)
  2. 选择一个分类错误的样本n,更新w, w 1 = w 0 + y n x n w_1 = w_0 +y_nx_n w1=w0+ynxn (也有带学习率的版本)
  3. 重复第二步,直至所有样本分类正确。

如何理解更新步骤呢?

  • y n = 1 y_n=1 yn=1时,如果分类错误,则 w T x n w^Tx_n wTxn的值为负数,也就是说向量 w w w和向量 x n x_n xn的內积为负,也就是夹角为钝角,想要减小两者的角度,可以用w+x更新w(根据平行四边形法则,w+x与x的夹角会更小), 因为 y n = 1 y_n=1 yn=1,所以 w + x n w+x_n w+xn = w + y n x n w+y_nx_n w+ynxn
  • y n = − 1 y_n=-1 yn=1时,如果分类错误,则 w T x n w^Tx_n wTxn的值为正数,也就是说需要增大w与x的夹角,实现的方法是用w-x更新w,因为 y n = − 1 y_n=-1 yn=1,所以依然可以写作 w + y n x n w+y_nx_n w+ynxn
图示更新过程如下:

假设有正负样本分布如下,使用PLA找到一条将两种标记完全区分的直线。
pla图解1
PLA图解2

1.3 目标函数 w f w_f wf与PLA学习到的 w

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值