《机器学习基石》第一周 —— 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 ...
随机推荐
- 如何用MathType编辑圆圈符号
数学往往是由很多的公式和符号组成的,一些用户朋友在写文章需要用到一些符号的时候,发现一般的编辑器很难满足一些比较专业的需求.这个时候就需要一款专业的数学公式编辑器.公式编辑器MathType就是这样诞 ...
- LeetCode: Validate Binary Search Tree [098]
[题目] Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defin ...
- EasyNVR现场部署搭配EasyNVS云端集中控制应用于幼儿园直播场景的最佳方案!
在之前的介绍中,我们已经介绍了很多EasyNVR成功应用于幼儿园类教育直播的场景,例如<EasyDarwin幼教云视频平台在幼教平台领域大放异彩!>.<基于EasyDarwin云视频 ...
- 160817、Java数据类型以及变量的定义
Java 是一种强类型的语言,声明变量时必须指明数据类型.变量(variable)的值占据一定的内存空间.不同类型的变量占据不同的大小. Java中共有8种基本数据类型,包括4 种整型.2 种浮点型. ...
- ZOJ 2059 The Twin Towers(双塔DP)
The Twin Towers Time Limit: 2 Seconds Memory Limit: 65536 KB Twin towers we see you standing ta ...
- set集合可以添加重复元素
set集合判断元素的唯一性要重写hashcode和equals方法,这样就能保证不会加入重复的元素, 但是在以下这种情况下任然可以加入重复元素,即使他们的hashcode和equals方法结果相同 p ...
- 深入C#学习系列一:序列化(Serialize)、反序列化(Deserialize)(转)
序列化又称串行化,是.NET运行时环境用来支持用户定义类型的流化的机制.其目的是以某种存储形成使自定义对象持久化,或者将这种对象从一个地方传输到另一个地方. .NET框架提供了两种串行化的方式: ...
- 巨蟒python全栈开发django7:多表增加和查询
1.回顾内容&&补充 补充1: 补充2: 这个选择的是第二个解释器. 选择第一个的话,只是针对当前的项目,如果再开新项目的话,需要重新下载安装相关的包. 点击保存,因为我们注释掉了,创 ...
- Linux运维-zabbix_agent最新版的yum安装
agentd端可以直接使用yum来进行安装 rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1. ...
- 安装nginx包
1.二进制安装源码包,直接输入yum stall nginx -y就可以 2,后面会涉及路径,所以先查下nginx的路径rpm -ql nginx 3,进入bin目录进行设置 4, 5,查看系统自带的 ...