【林轩田】机器学习基石(二)——PLA

2024-01-05 06:08
文章标签 学习 机器 基石 pla 林轩

本文主要是介绍【林轩田】机器学习基石(二)——PLA,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Lecture 2 Learning to Answer Yes or No

ppt

2.1 Perceptron Hypothesis Set 感知假说集

感知假说集这部分,林老师主要是举了个线性回归的例子,来帮我们感性地认识了 h 这个东西到底是什么。
比如说线性回归:

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

x=x0,x1,x2 x = x 0 , x 1 , x 2
时,
h=sign(w0x0+w1x1+w2x2)=sign(w0+w1x1+w2x2) h = s i g n ( w 0 x 0 + w 1 x 1 + w 2 x 2 ) = s i g n ( w 0 + w 1 x 1 + w 2 x 2 )

slide中h就相当于图片中圈和叉的分界线,找一条分割最好的分界线

2.2 Perceptron Learning Algorithm 感知演算法

这部分开始推导了。

2.1节说明了h是一个假设空间集,我们希望在h里面能找到一个g,使它最接近f

这里f是指存在的一种理想化的规律或模式,是我们不知道的,但是我们的data都是依照这种模式产生的;因为f我们不知道,但是我们有data,所以我们可以根据data来找一个g,使g这个函数在我们已知的data上表现的尽可能像f这个理想化的函数。

林老师举了一个简单的演算法的例子并说明了它的可行性。
还是考虑线性回归,

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

我们已知 (xn,yn) ( x n , y n ) 对,求的是在无数个可能的 w w 的假设空间中最可能的w,也就是我们的 g

首先从候选集随机中随机选择一个 w w ,作为w0,然后开始迭代,
迭代次数设置为 t(times)t1,2,3,...,m t ( t i m e s ) , t ∈ 1 , 2 , 3 , . . . , m
t=1 t = 1 开始,
如果

sign(wTtxn(t))yn(t) s i g n ( w t T x n ( t ) ) ≠ y n ( t )

w w 的值进行更新,
wt+1=wt+yn(t)xn(t)

如此迭代,直到没有错误。
25
返回最后的 w w ,记为wPLA,为 g

那么如何用几何的方式来描述上述过程呢?
我们知道wx都可以描述成向量形式,尽管他们可能不是二维的,我们为了方便起见,假设它们都是二维的。
当实际的 y y 为+1,而预测的y为-1时,我们更新 w w ,
y1
可以看到,这里的向量加法,w+yx是让,更新后的 w w ,更偏向x这条向量线(x与更新后的 w w 的夹角变小)。
当实际的y为-1,而预测的 y y 为+1时,我们更新w,
y2
可以看到,这里的向量加法, w+yx w + y x 是让,更新后的 w w ,更远离x这条向量线(x与更新后的 w w 的夹角变大)。
为了让我们更直观地看到每一步迭代时分类的变化,林老师举了个例子。
u1

u2

u3

u4

……

uf

注意到这里w使我们划分圈圈叉叉那条线的法向量。

2.3 Guarantee of PLA 感知器演算法的证明

这一小节的目标是证明PLA的正确性。
首先PLA可以收敛的一个重要的先决条件是数据是线性可分的。也就是说,存在某个完美的 wf w f 使得 sign(wTfxn)=yn s i g n ( w f T x n ) = y n
这个完美的 wf w f ,在几何意义上,就是有一条线,使得每一个 xn x n 都被正确地划分在线的两边。
即对于任意n:

ynwTnxn>0 y n w n T x n > 0

ynwTfxnminnynwTfxn>0 y n w f T x n ≥ min n y n w f T x n > 0

wTfwt w f T w t 随着错误的不断被更新不断地增大,
wTfwt+1=wTf(wt+ynxn)wTfwt+minnynwTfxn>wTfwt1 w f T w t + 1 = w f T ( w t + y n x n ) ≥ w f T w t + m i n n y n w f T x n > w f T w t ( 公 式 1 )

上述公式说明的是向量 wTf w f T wt w t 的内积在不断地增大,这种结果有两种可能的原因,一是两个向量的夹角余弦值越来越大,二是 wt w t 的模越来越大。
首先原因一是肯定的,因为我们的目标就是让 wt w t 越来越接近 wTf w f T ,然后我们来看看原因二。
||wt+1||2=||wt+ynxn||2=||wt||2+2ynxnwt+||ynxn||2(21) | | w t + 1 | | 2 = | | w t + y n x n | | 2 = | | w t | | 2 + 2 y n x n w t + | | y n x n | | 2 ( 公 式 2 − 1 )

由于 wt w t 是遇到错误才开始更新,所以 2ynxnwt 2 y n x n w t 是小于0的
即,
||wt||2+2ynxnwt+||ynxn||2<||wt||2+||ynxn||2||wt||2+maxn||ynxn||2(22) | | w t | | 2 + 2 y n x n w t + | | y n x n | | 2 < | | w t | | 2 + | | y n x n | | 2 ≤ | | w t | | 2 + max n | | y n x n | | 2 ( 公 式 2 − 2 )

接下来林老师提出了一个小的练习,
TT
求constant的值。
推导过程如下:
由公式1
wTfwt+1wTfwt+minnynwTfxn w f T w t + 1 ≥ w f T w t + m i n n y n w f T x n

wTfwtwTfwt1+minnynwTfxn w f T w t ≥ w f T w t − 1 + m i n n y n w f T x n

叠加起来
wTfwt+1wTfwt1+2minnynwTfxn w f T w t + 1 ≥ w f T w t − 1 + 2 ∗ m i n n y n w f T x n

wTfwt+1wTfw0+(T+1)minnynwTfxn(T+1)minnynwTfxn3 w f T w t + 1 ≥ w f T w 0 + ( T + 1 ) ∗ m i n n y n w f T x n ≥ ( T + 1 ) ∗ m i n n y n w f T x n ( 公 式 3 )

由公式2
||wt+1||2||wt||2+maxn||ynxn||2 | | w t + 1 | | 2 ≤ | | w t | | 2 + max n | | y n x n | | 2


||wt||2||wt1||2+maxn||ynxn||2 | | w t | | 2 ≤ | | w t − 1 | | 2 + max n | | y n x n | | 2

叠加,得
||wt+1||2||wt1||2+2maxn||ynxn||2 | | w t + 1 | | 2 ≤ | | w t − 1 | | 2 + 2 ∗ max n | | y n x n | | 2

||wt+1||2||w0||2+(T+1)maxn||ynxn||2(T+1)maxn||ynxn||24 | | w t + 1 | | 2 ≤ | | w 0 | | 2 + ( T + 1 ) ∗ max n | | y n x n | | 2 ≤ ( T + 1 ) ∗ max n | | y n x n | | 2 ( 公 式 4 )

结合公式3,公式4,图片中左式
wTfwT||wTf||||wT||TminnynwTfxn||wTf||||wT||TminnynwTfxn||wTf||Tmaxn||ynxn|| w f T w T | | w f T | | ∗ | | w T | | ≥ T ∗ m i n n y n w f T x n | | w f T | | ∗ | | w T | | ≥ T ∗ m i n n y n w f T x n | | w f T | | ∗ T ∗ max n | | y n x n | |

也就是说这个constant为
constant=minnynwTfxn||wTf||maxn||ynxn|| c o n s t a n t = m i n n y n w f T x n | | w f T | | max n | | y n x n | |

由于 yn1,+1 y n ∈ − 1 , + 1 ,所以上述等式可以简化为
constant=minnynwTfxn||wTf||maxn||xn|| c o n s t a n t = m i n n y n w f T x n | | w f T | | ∗ max n | | x n | |

在Fun-Time里面林老师让我们计算T的上界,其实很简单,因为图片中的左式的集合意义就是向量 wTf w f T wt w t 的余弦值,余弦值的范围是 [0,1] [ 0 , 1 ] ,所以
0Tconstant1 0 ≤ T ∗ c o n s t a n t ≤ 1

也就是
T1constant2||wTf||2maxn||xn||2||minnynwTfxn||2 T ≤ 1 c o n s t a n t 2 ≤ | | w f T | | 2 ∗ max n | | x n | | 2 | | m i n n y n w f T x n | | 2

24
所以
TR2ρ2 T ≤ R 2 ρ 2

2.4 Non-Separable Data 不可分割的(线性)数据、

上面的内容告诉我们,PLA有两个重要的点

  • Data要线性可分 —-> 这是 wTf w f T wt w t 越来越接近的理论前提。
  • PLA是从错误中学习—->这个点使得 wt w t 越来越大。

PLA的优点是:快速、容易实现,且在任意维度下都可使用。
PLA的缺点是:

  • 只适用于线性可分数据(但是现实情况下,我们哪里会知道Data的确定分布呢?要是事先知道了Data的确定分布,还要机器学习干啥?),所以PLA还是比较理想化的。

在现实生活中,我们的数据是存在噪声的。

那么,如何学习到具有噪声容忍度的 w w 呢?

解决办法是,找到一条线,它在我们遇到的所有线中,误分类最小。

26
上述公式是个NP难的问题,我们使用PLA的贪心算法变体解决。
27
这里和2.2节最大的区别在于,贪心算法面对的数据(存在噪声)永远也没有办法停止。所以需要提前设定迭代阈值。

林老师在这节给出的Fun Time问题还挺值得思考的,反正我是想错了。
28
这个问题的意思是,在已知数据线性可分的前提下,我们还是用PLA的贪心算法变体来计算那条分割线,这样的计算方法和直接用PLA有什么不同?
答案是1,原因是PLA的贪心算法针对的是存在噪声的数据,所以在每次迭代时,都会对每个点进行计算,看看找到的这条w整体上是不是比上次好了;而本体PLA针对的是数据线性可分,肯定能终止的情况,它每次迭代只需要找一个错误点就行。
所以这道Fun Time题中,PLA的贪心变体执行的时间会长于PLA本体。

这篇关于【林轩田】机器学习基石(二)——PLA的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/571889

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

线性代数|机器学习-P36在图中找聚类

文章目录 1. 常见图结构2. 谱聚类 感觉后面几节课的内容跨越太大,需要补充太多的知识点,教授讲得内容跨越较大,一般一节课的内容是书本上的一章节内容,所以看视频比较吃力,需要先预习课本内容后才能够很好的理解教授讲解的知识点。 1. 常见图结构 假设我们有如下图结构: Adjacency Matrix:行和列表示的是节点的位置,A[i,j]表示的第 i 个节点和第 j 个

Node.js学习记录(二)

目录 一、express 1、初识express 2、安装express 3、创建并启动web服务器 4、监听 GET&POST 请求、响应内容给客户端 5、获取URL中携带的查询参数 6、获取URL中动态参数 7、静态资源托管 二、工具nodemon 三、express路由 1、express中路由 2、路由的匹配 3、路由模块化 4、路由模块添加前缀 四、中间件