林轩田机器学习基石笔记2 - Learning to Answer Yes/No

Perceptron Hypothesis Set

感知器,一个具体的例子:评定要不要给用户信用卡,给(y=+1),不给(y = -1)
用户信息

xi:维度

wi:权重

threshold:阈值
在这里插入图片描述

简化符号,将threshold当做w0,同时引入x0=-1
在这里插入图片描述

Perceptrons in R2,在二维图上表示h(x),sign(w0+w1x1+w1x2)=0为平面上的一条直线,直线两次分别为y=+1和y=-1。
在这里插入图片描述

在二维空间中,perceptrons是一条直线,称为线性分类器,在更高维空间中为平面或者更高为平面。

Perceptron Learning Algorithm(PLA)

怎样设计一个演算法,从很多线里面选一条最好的线(与f越接近越好,g≈f)?

有一条线(g0)作为开始,可能存在错误,然后逐渐修正他,使错误减少。

用w0代表g0,t代表第几轮
在这里插入图片描述

找到第一个分类错误的点,如果这个点应该是正类但是被分到负类,说明w与x的夹角>90度,修正方法是使夹角<90度,用w+yx(y = +1)把w转回来。如果这个点应该是负类但是被分到正类,说明w与x的夹角<90度,修正方法是使夹角大约90度,用w+yx(y = -1)把w转出去。一直更新到没有错误的时候。

常见使用方式:从1号开始到最后一号或者随机查看所有的号,循环看有没有错误的点,有就修正,直到没有错误。
在这里插入图片描述

使用PLA逐步修正得到线的图示:
在这里插入图片描述

任意连接两点,得到一条初始的线,与w垂直(w为法向量)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

问题:

这个演算法一定会停下来吗?

假设停下来,对于资料以外的数据,能否保证g与f一样?
在这里插入图片描述

Guarantee of PLA

要想PLA最终可以停下来就必须保证Data是线性可分(linearn separable)的。

在这里插入图片描述

对于线性可分,存在目标线wf满足yn=sign(wTfxn)。

内积越大,wf越接近wt。PLA对错误点修正后,将wt更新为wt+1。wTfwt+1的内积大于wTfwt,所以PLA是有效的。

在这里插入图片描述

但是内积更大,也可能是向量长度更大而不是角度更小。证明wt和wt+1向量长度关系。||w2t+1||相比||wt2||的增量值不超过max||x2n||(yn取+1和-1,平方后为+1)。则wt+1的增长被限制。令w0=0,经过T轮错误修改后得到cosθ的取值。

在这里插入图片描述

Non - Separable Data

根据上面推导,如果资料是线性可分,PLA会停下来。但是前提是假设资料是线性可分的,PLA的好处是十分简单。但是实际情况下,并不知道wf,不知道PLA是否会停下来。

在这里插入图片描述

资料中可能会存在noise,即使本来是线性可分,但是可能因为noise变得不是线性可分。

在这里插入图片描述

假设noise很小,找一条犯错误最少的线作为g。但是这个问题是NP-hard问题,目前无法得到结论。

在这里插入图片描述

PLA的变形:口袋演算法,每次随机找到新的线和自己口袋里的线比较,永远在口袋里放最好的线(错误最少的线)。经过足够多的迭代次数后停止。

在这里插入图片描述

Pocket Algorithm要比PLA速度慢一些。

Summary

对于线性可分,PLA可以停下来并正确分类。对于非线性可分,使用口袋演算法解决。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值