直接跳过第一讲。从第二讲Perceptron开始,记录这一讲中几个印象深的点:

1. 之前自己的直觉一直对这种图理解的不好,老按照x、y去理解。

a) 这种图的每个坐标代表的是features;features的值是有物理意义的。

b) 而圈圈和叉叉是为了标注不同的样本(正样本 负样本),即label;为了后续的很多简便表示,这里正样本取+1,负样本取-1

2. Perceptron Learning策略的几何意义:表示临界线(面)的法向量旋转方向

由于label设为了+1和-1,可以直接用w+yx来表示遇上错分样本时临界线的旋转策略,很巧妙和简洁。

这里是有一个疑问的,如果每次根据一个点调整,能保证调整后这个点一定就对了么?

我想这个答案是否定的:当轮调整后,这个点不一定就对了。

比如y=+1的例子,如果W向量特别长,x特别短,而且W与x的夹角特别大,那么就可能出现W+yx之后还是不能保证W(t+1)x是正的(即夹角转不过来);

但是这并不影响最后总体的收敛趋势(如果是Linear seperable的)

3. 为什么在Linear Seperable的条件下,Perceptron Learning Algorithm的算法策略是收敛的?

林的思路是这样的:

a) 首先假设数据是linear seperable的,在这个条件下,我们认为存在一个理想的分界线法向量Wf

b) 如果我们要求的W与Wf越接近,则认为越好

c) 如何衡量W与Wf越接近?向量内积越大,则认为越接近(夹角越小)

基于上述思路可以得到

大意就是说,按照PLA的算法策略,可以保证每一轮Wf与W的内积总是越来越大的,这个就保证了算法朝着好的方向发展。

但是还有问题,每一轮W的长度也在变化啊,这样单纯比较Wf与W的内积大小就没意义了。

因此,更进一步,有了如下的推导:

至于这里为什么用2范数,我理解主要为了表述方便一些。

这么一大段的意思就每轮算法策略迭代后,我们要求的W的长度的增长速度是有上限的。(当然,也不一定是每轮都增长的,如果展开式子的中间项是比较大的负的,还可能减小)

上面两个PPT合在一起想说明一个直观的问题:算法策略每轮朝着好的方向发展的,而且W的增速是有上限的。

有了这样的一个直观的理解,我们就可以猜测,在一定迭代次数内,算法策略是可以收敛的。即,证明如下式子:

证明过程课件并没有给出,自己划一划也就出来了:

自己的字太难看,但是这样比较快捷,凑合看了。

这个证明过程,条件放松的都蛮宽的,但是可以证明PLA的算法策略是收敛的。

==================================================

第二次再过这个题目:

(1)PLA算法的迭代式子看成是对超平面法向量W的旋转

(2)证明PLA可以收敛的思路:

  a. W的长度每轮增幅有限

  b. W与Wf的内积越来越大(W越来越接近完全分类面)

【Perceptron Learning Algorithm】林轩田机器学习基石的更多相关文章

  1. 【Feasibility of Learning】林轩田机器学习基石

    这一节的核心内容在于如何由hoeffding不等式 关联到机器学习的可行性. 这个PAC很形象又准确,描述了“当前的可能性大概是正确的”,即某个概率的上届. hoeffding在机器学习上的关联就是: ...

  2. (转载)林轩田机器学习基石课程学习笔记1 — The Learning Problem

    (转载)林轩田机器学习基石课程学习笔记1 - The Learning Problem When Can Machine Learn? Why Can Machine Learn? How Can M ...

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

    机器学习的整个过程:根据模型H,使用演算法A,在训练样本D上进行训练,得到最好的h,其对应的g就是我们最后需要的机器学习的模型函数,一般g接近于目标函数f.本节课将继续深入探讨机器学习问题,介绍感知机 ...

  4. 林轩田机器学习基石笔记1—The Learning Problem

    机器学习分为四步: When Can Machine Learn? Why Can Machine Learn? How Can Machine Learn? How Can Machine Lear ...

  5. 林轩田机器学习基石笔记3—Types of Learning

    上节课我们主要介绍了解决线性分类问题的一个简单的方法:PLA.PLA能够在平面中选择一条直线将样本数据完全正确分类.而对于线性不可分的情况,可以使用Pocket Algorithm来处理.本节课将主要 ...

  6. 林轩田机器学习基石笔记4—Feasibility of Learning

    上节课介绍了机器学习可以分为不同的类型.其中,监督式学习中的二元分类和回归分析是最常见的也是最重要的机器学习问题.本节课,我们将介绍机器学习的可行性,讨论问题是否可以使用机器学习来解决. 一.Lear ...

  7. 【Deep Learning】林轩田机器学习技法

    这节课的题目是Deep learning,个人以为说的跟Deep learning比较浅,跟autoencoder和PCA这块内容比较紧密. 林介绍了deep learning近年来受到了很大的关注: ...

  8. 【The VC Dimension】林轩田机器学习基石

    首先回顾上节课末尾引出来的VC Bound概念,对于机器学习来说,VC dimension理论到底有啥用. 三点: 1. 如果有Break Point证明是一个好的假设集合 2. 如果N足够大,那么E ...

  9. 【Linear Regression】林轩田机器学习基石

    这一节开始讲基础的Linear Regression算法. (1)Linear Regression的假设空间变成了实数域 (2)Linear Regression的目标是找到使得残差更小的分割线(超 ...

随机推荐

  1. 使用loadrunner 12 手动关联

    关联的含义: 如浏览器打发送一个网页A请求,服务器返回这个请求,并且在返回的内容中携带一个session id=key,当浏览器再送出网页B的请求时,这时就要用ID=key的数据,服务器才会认为这是合 ...

  2. 【CCPC-Wannafly Winter Camp Day4 (Div1) D】欧拉回路(分类讨论)

    点此看题面 大致题意: 有一个\(n\)行\(m\)列的网格图,让你给每一条边设置一个通过次数(\(\ge1\)),使其成为欧拉回路,且通过次数总和最小. 初始化 首先,由于通过次数\(\ge1\), ...

  3. 2017.10.9 JVM入门学习

    1.什么是JVM JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现 ...

  4. 用到UdpClient的一点经验

    Thread.Abort对UdpClient.Receive阻塞的线程无效 http://computer-programming-forum.com/4-csharp/184f9d4ee63704f ...

  5. mac home brew install go

    mac利器home brew安装Go 首先你得需要安装home brew和ruby环境(因为home brew依赖ruby) 如果没有请自行到链接安装 准备好之后就开始安装go了 brew updat ...

  6. javaweb基础(36)_jdbc进行批处理

    在实际的项目开发中,有时候需要向数据库发送一批SQL语句执行,这时应避免向数据库一条条的发送执行,而应采用JDBC的批处理机制,以提升执行效率. JDBC实现批处理有两种方式:statement和pr ...

  7. multi-view datasets

    http://rll.berkeley.edu/2014_ICRA_dataset/ http://rgbd-dataset.cs.washington.edu/dataset/

  8. Python 初始—(字符编码解码)

    字符编码之间的编码转换则需要通过Unicode 进行转换,那么需要一个编码和解码实现与Unicode进行关联转换 例如utf-8转gbk utf-8----decode----->Unicode ...

  9. 2018/7/16 YMOI模拟 NOIP2013D2T3华容道

    题目描述 Description 小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面,华容道是否根本就无法完成,如果能完成,最少需要多少时间. ...

  10. UVA_10820_send a table

    When participating in programming contests, you sometimes face the following problem: You know how t ...