《机器学习基石》第一周 —— When Can Machine Learn?
(注:由于之前进行了吴恩达机器学习课程的学习,其中有部分内容与机器学习基石的内容重叠,所以以下该系列的笔记只记录新的知识)
《机器学习基石》课程围绕着下面这四个问题而展开:

主要内容:
一、什么时候适合用机器学习?
二、该课程所采用的一套符号表示
三、机器学习的流程
四、感知机算法
五、学习的类型
六、机器学习的无效性
七、机器学习的可行性(在无效性的前提下加一些条件限制)
一、什么时候适合用机器学习?

对于第一点:我们学习的对象必须要存在某些显式的或者潜在的规律,否则,如果学习对象都毫无规律,那么学习到的所谓的知识(经验)也就站不住脚了。
对于第二点:这些问题难以使用某些算法或者公式明确地算出结果,假如可以,那么我们就只需要学习数学和算法就足以解决问题,又何须机器学习呢?所以机器学习就是可以用来解决这些有规律但规律又相对模糊的问题。
对于第三点:只有依靠以往大量的经历所得到的经验,才是可靠的。
二、该课程所采用的一套符号表示


三、机器学习的流程

四、感知机算法
五、学习的类型
1.根据输出y的取值类型而区别,有分类、回归、结构化学习:

2.根据(样本)输出y的有无或者有多少而区别,有监督式学习、无监督式学习、半监督式学习、增强式学习:

3.根据学习的协议而区别,有:batch leanring、online leanring、active learning:


4.根据输入x的类型而区别,有:concrete features、raw features、abstract feature。
concrete features:有具体的、形象化的含义,例如身高、点击次数等这些特征。
raw features:原始的、未经过处理的特征,例如图片的像素等。
abstract feature:没有现实含义的,如资料编号或者用户ID。
5.总结:

六、机器学习的无效性
所谓机器学习的无效性,按照个人的理解,就是:单凭从给出的数据集中学习到的规律无法应用于数据集之外的数据,或者说是:每个人都学习到了不同的规律,且这些规律对于数据集都是成立的,但是对于数据集之外的数据就不成立了,这就是机器学习的不可行性。但是,假如增加一些条件限制,机器学习就可行了。其中一个很重要的条件限制就是:样本大小,也就是数据集的大小N足够大。下节详情。
七、机器学习的可行性
1.证明机器学习可行性的式子就是Hoeffding's inequality,其中u是实际上类别0的比例(假设是二分类),v是数据集(样本)类别0的比例:

当N足够大时,v就近似等于u,这就说明了从样本集中学到的规律,就近似是真实的规律,这样就能将学习到的规律应用到数据集之外的数据了。
2.对上面的结论作更严谨的推导:
设u = Ein(h),v = Eout(h),其中Ein(h)为h固定时h对样本预测的错误率, Eout(h)为固定时h对测试数据(或者说所有数据)预测的错误率。
所以,如果样本集的大小N足够大,那么:

注意,当Ein(h) 约等于 Eout(h)时,并不意味着h约等于f,因为Ein(h)和 Eout(h)可能很大,这样h的预测效果就非常差了。只有保证了Ein(h)很小的情况下,才能求出最接近f的h。而各种优化算法如梯度下降、最小二乘法等,就是使得Ein(h)非常小的有力工具。
3.综上,保证机器学习可行性的条件至少有两点:
1) 样本(训练集)足够大:保证了Ein(h) 约等于 Eout(h)。
2) Ein(h)足够小:保证了Eout(h)足够小,即保证了h对所有数据的预测误差足够小。
《机器学习基石》第一周 —— When Can Machine Learn?的更多相关文章
- 机器学习基石第一讲:the learning problem
博客已经迁移至Marcovaldo's blog (http://marcovaldong.github.io/) Andrew Ng的Machine Learning比較简单,已经看完.林田轩的机器 ...
- Coursera-AndrewNg(吴恩达)机器学习笔记——第一周
一.初识机器学习 何为机器学习?A computer program is said to learn from experience E with respect to some task T an ...
- 吴恩达《深度学习》-第三门课 结构化机器学习项目(Structuring Machine Learning Projects)-第一周 机器学习(ML)策略(1)(ML strategy(1))-课程笔记
第一周 机器学习(ML)策略(1)(ML strategy(1)) 1.1 为什么是 ML 策略?(Why ML Strategy?) 希望在这门课程中,可以教给一些策略,一些分析机器学习问题的方法, ...
- 第一周 总结笔记 / 斯坦福-Machine Learning-Andrew Ng
课程主页:https://www.coursera.org/learn/machine-learning/home/welcome 收集再多的资料也没用,关键是要自己理解总结,做笔记就是一个归纳总结的 ...
- 《Machine Learning》系列学习笔记之第一周
<Machine Learning>系列学习笔记 第一周 第一部分 Introduction The definition of machine learning (1)older, in ...
- 機器學習基石(Machine Learning Foundations) 机器学习基石 课后习题链接汇总
大家好,我是Mac Jiang,非常高兴您能在百忙之中阅读我的博客!这个专题我主要讲的是Coursera-台湾大学-機器學習基石(Machine Learning Foundations)的课后习题解 ...
- 机器学习基石(台湾大学 林轩田),Lecture 1: The Learning Problem
课程的讲授从logo出发,logo由四个图案拼接而成,两个大的和两个小的.比较小的两个下一次课程就可能会解释到它们的意思,两个大的可能到课程后期才会解释到它们的意思(提示:红色代表使用机器学习危险,蓝 ...
- (转载)林轩田机器学习基石课程学习笔记1 — The Learning Problem
(转载)林轩田机器学习基石课程学习笔记1 - The Learning Problem When Can Machine Learn? Why Can Machine Learn? How Can M ...
- ML笔记_机器学习基石01
1 定义 机器学习 (Machine Learning):improving some performance measure with experience computed from data ...
随机推荐
- (转)初步认识拓展UnityEditor编辑器定制
初步认识拓展UnityEditor编辑器定制 热度 9529 2015-9-4 18:50 |个人分类:Unity3d| 编辑器, 拓展 我相信无数初学者看别人游戏都经常看到他们的Inspector中 ...
- android自定义View_2——Making the View Interactive
前言:绘制出一个view只是自定义view的一个部分,还需要自定义一些view的行为,来反馈用户的使用操作,反馈的 行为要合理性,就像真是的物理世界一样,不要太玄幻哦. 可以将view的行为封装到in ...
- Redis 在windows中启动
redis-server.exe redis.windows.conf 或 redis-server.exe redis.conf
- django的ORM中的2个易混点
1.django数据模型中null=True和blank=True的区别 null 是针对数据库而言,如果 null=True, 表示数据库的该字段可以为空,即在Null字段显示为YES. blank ...
- 程序如何在RAM ROM运行,内存分配与分区
关于RAM ROM RAM与ROM就是具体的存储空间,统称为存储器 RAM(random access memory):运行内存,CPU可以直接访问,读写速度非常快,但是不能掉电存储.它又分为: 动态 ...
- js split 的用法和定义 js split分割字符串成数组的实例代码
关于js split的用法,我们经常用来将字符串分割为数组方便后续操作,今天写一段广告判断代码的时候,竟然忘了split的用法了,特整理下,方便需要的朋友, 关于js split的用法其它也不多说什么 ...
- event对象及各种事件
事件(event) event对象 (1)什么是event对象? Event 对象代表事件的状态,比如事件在其中发生的元素.键盘按键的状态.鼠标的位置.鼠标按钮的状态.事件通常与函数结合使用,函数不会 ...
- 关于python代码是编译执行还是解释执行
Python 是编译型语言还是解释型语言?回答这个问题前,应该先弄清楚什么是编译型语言,什么是解释型语言. 所谓编译执行就是源代码经过编译器编译处理,生成目标机器码,就是机器能直接运行的二进制代码,下 ...
- 前端框架之jQuery
一 iQuery是什么 jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team jQuery是继prototype之后又一个优秀的Java ...
- 两个div同时滚动
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...