目录

0.上节回顾

1. Perceptron Hypothesis Set

2. Perceptron Learning Algorithm(PLA)(重点)

3. Guarantee of PLA(难点)

4. Non-Separable Data


0.上节回顾

第一节课主要讲述了机器学习的定义及机器学习的过程,主要如下图。我们有数据集,通过演算法,和我们的假设集,从中找出最符合我们目标函数的

第2节课主要介绍了感知机和我们学到的第一个算法:Perceptron Learning Algorithm(PLA)。

1. Perceptron Hypothesis Set

还是来看一个简单的例子:我们根据消费者的特征来决定是否批发信用卡;如下图所示。消费者的特征有:年龄、年薪、工作时间、欠款等。我们有一个线性模型,根据计算出的结果来决定是否批发信用卡,我们的目标就是求出权重和阈值threshold.。(图中红色参数所示)。

下面是感知机的向量形式,我们也可以把阈值当作权重,从而得出一个简单的假设形式。每一个权重对应一个模型

我们可以在二维平面内画出我们的感知机,由下图可知,消费者特征是图上的点(特征数量为2),标签有两种结果,不同的参数有不同的划分结果。可以看出这是一个线性分类器。

2. Perceptron Learning Algorithm(PLA)

根据上一部分的介绍,我们已经知道了hypothesis set由许多条直线构成。我们的目的就是如何设计一个演算法A,来选择一个最好的直线,能将平面上所有的正类和负类完全分开,也就是找到最好的g,使g≈f(目标函数)。

我们可以使用逐点修正的思想,首先在平面上随意取一条直线,看看哪些点分类错误。然后开始对第一个错误点就行修正,即变换直线的位置,使这个错误点变成分类正确的点。接着,再对第二个、第三个等所有的错误分类点就行直线纠正,直到所有的点都完全分类正确了,就得到了最好的直线。这种“逐步修正”,就是PLA思想所在。

下面是一个PLA的修正实例:

对PLA,我们需要考虑以下两个问题:

  • PLA迭代一定会停下来吗?如果线性不可分怎么办?

  • PLA停下来的时候,是否能保证f≈g?如果没有停下来,是否有f≈g?

3. Guarantee of PLA

根据PLA的定义,当找到一条直线,能将所有平面上的点都分类正确,那么PLA就停止了。要达到这个终止条件,就必须保证D是线性可分(linear separable)。如果是非线性可分的,那么,PLA就不会停止。如下图所示:

对于线性可分的情况,如果有这样一条直线,能够将正类和负类完全分开,令这时候的目标权重为,则对每个点,必然满足,,且任意一点都满足:(点到直线的最短距离)。

且随着PLA每次的修正,权重会越来越接近,内积越来越大(越来越相似)。

下面给出了迭代次数T的取值范围,感兴趣的可以推一下。证明链接为:http://www.cnblogs.com/HappyAngel/p/3456762.html

4. Non-Separable Data

上一部分,我们证明了线性可分的情况下,PLA是可以停下来并正确分类的,但对于非线性可分的情况,实际上并不存在,那么之前的推导并不成立,PLA不一定会停下来。

在非线性情况下,我们可以把条件放松,即不苛求每个点都分类正确,而是容忍有错误点,取错误点的个数最少时的权重w:

下面是我们修改后的算法(Pocket算法),可以求出最值。

简单总结一下本节课介绍的内容:感知机预测集合、PLA算法、非线性可分数据的求最值方法。

2)机器学习基石笔记Lecture2:Learning to Answer Yes/No相关推荐

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

    Perceptron Hypothesis Set 感知器,一个具体的例子:评定要不要给用户信用卡,给(y=+1),不给(y = -1) xi:维度 wi:权重 threshold:阈值 简化符号,将 ...

  2. 机器学习基石笔记5——为什么机器可以学习(1)

    转载请注明出处:http://www.cnblogs.com/ymingjingr/p/4271742.html 目录 机器学习基石笔记1--在何时可以使用机器学习(1) 机器学习基石笔记2--在何时 ...

  3. 机器学习基石 Lecture1: The Learning Problem

    机器学习基石 Lecture1: The Learning Problem Course Introduction Course Design What is Machine Learning 定义 ...

  4. 台湾大学林轩田机器学习基石课程学习笔记2 -- Learning to Answer Yes/No

    红色石头的个人网站:redstonewill.com 上节课,我们主要简述了机器学习的定义及其重要性,并用流程图的形式介绍了机器学习的整个过程:根据模型H,使用演算法A,在训练样本D上进行训练,得到最 ...

  5. 林轩田机器学习基石(Machine Learning Foundations)笔记(一)

    要求两周之内看完林轩田机器学习基石和技法,速度是要的,但是感觉看得太快我会不久就会忘记.因此记录一下梗概,顺便写写看视频时解决的不懂的地方(有种思想就是把知识传播给更多人,有时候就是靠大佬们善意的一句 ...

  6. 1)机器学习基石笔记Lecture1:The Learning Problem

    网上关于机器学习的课程有很多,其中最著名的是吴恩达老师的课程,最近又发现了NTU林轩田老师的<机器学习基石>课程,这门课也很好.课程总共分为4部分,总共分为16节课,今天来记录第一节课. ...

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

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

  8. 机器学习基石笔记(三):学习的类型

    文章目录 Lecture 3: Types of Learning Learning with Different Output Space $Y$ Fun Time Learning with Di ...

  9. 机器学习基石笔记(六):泛化理论

    文章目录 Lecture 6: Theory of Generalization Restriction of Break Point Fun Time Bounding Function: Basi ...

最新文章

  1. Dubbo2.6.5+Nacos注册中心(代替Zookeeper)
  2. xen networking(2)
  3. Robotium只有apk文件测试实例
  4. [Gradle] 在 Eclipse 下利用 gradle 构建系统
  5. socket 编程入门教程(一)TCP server 端:3、sockaddr与sockaddr_in
  6. har文件解析工具_嵌入式MCU也能跑AI?STM32 Cube.AI工具包使用初探
  7. C++安全方向(二):2.5 Base58_比特币钱包地址_算法分析
  8. (10)MySQL触发器(同时操作两张表)
  9. MySQL复习值代码知识点(2)
  10. CactiEZ中文版10.1与CAS单点登录
  11. 联通3G用户破千万 建成全球规模最大WCDMA网络
  12. 在浏览器中将表格导入到本地的EXCEL文件,注意控制内存
  13. 黑马JAVA P108 语法知识:枚举、枚举作用
  14. 在读服务器端的备份说明文件错误,3dmax保存文件时出错,提示“无法创建备份文件”的原因和解决方法...
  15. win10共享打印机搜索不到计算机,w10共享打印机搜索不到如何处理
  16. 【Swift】图片裁剪
  17. 使用instrument-->Allocations进行内存分析
  18. C语言编程 犯二的程度,犯二的程度 - osc_jhl7rojx的个人空间 - OSCHINA - 中文开源技术交流社区...
  19. java 首字母大写方法
  20. x64dbg安装xAnalyzer插件失败问题解决

热门文章

  1. [Leedcode][JAVA][第5题][最长回文子串][数组][动态规划]
  2. 清零 css,css样式清零及常用类
  3. 回溯求解排列组合(求源码评论区留言)
  4. redis5 外部不能连接_【硬见小百科】PCB连接的方法
  5. webpack最新版本_webpack小结-开发环境构建优化
  6. raid卡组不同raid_RAID磁盘阵列是如何运作的?
  7. linux 安全审计功能,数据库安全审计在数据安全中的功能
  8. 【Modern OpenGL】摄像机系统 Camera
  9. 简单的UTF8编码生成
  10. vector利用swap()函数进行内存的释放