【学习总结】Machine Learning Foundations(待补充。。。)
2017-12-08 11:40
567 查看
机器学习基石课程网站
第一讲:The Learning Problem
What is Machine Learning(什么是机器学习)
机器学习的过程:从资料出发,然后经过电脑的计算,最终得到某一种表现的增进
机器学习的三个关键:
要有某一种效能某一种表现能够增进(即潜藏的模式是可以学的);
有规则,但我们不知道怎么把它写下来;
有资料
Applications of Machine Learning(机器学习的应用)
民生六大需求
Components of Machine Learning(机器学习的组成)
input:x ∈ X
output:y ∈ Y
target function : f : X → Y (去学习的不知道的模式)
data(training examples) : D = {(x1,y1),(x2,y2),...,(xn,yn)}
hypothesis(表现很好的公式为 g : X → Y)
H(hypothesis set):一系列可能存在的公式
详细的学习流程:
Machine Learning and Other Fields(机器学习和其它领域)
机器学习:使用大量的数据去找出一个g 和目标函数 f 很相近
资料探勘:使用非常大量的资料,试图找出对特点的应用有趣或有用的性质
人工智慧:电脑会做一些聪明的事情
第二讲:Learning to Answer Yes/No
Perceptron Hypothesis Set(感知器的假设集)
X=(X1,X2,...,Xd) 把X用向量表示,且是有好多个维度的向量,Wi则是X中Xi维度的权重
threshold:门槛值,分数大于门槛则为正,否则为负
h的长相:假设X是二维的
X表示图上的点,Y表示该点应该是圈圈还是叉叉,h(x)就是一条线,此为线性分类器
Perceptron Learning Algorithm(PLA)(感知器学习算法)
修正图示:
如果目标为正,得到的为负,则加,均相反则减
t:表示第几轮
直到不再出现错误时候停下来,传回去
Cyclic PLA
Guarantee of PLA(PLA算法可行保证)
linear separability:线性可分
linear separable D :存在目标 Wf ,
线性可分成立条件:Yn = sign(Wf^T · Xn)
则Yn(t) · Wf^T · Xn(t) ≥ min Yn · Wf^T · Xn > 0
由于 Wf^T · Wt+1 = Wf^T(Wt · Yn(t) · Xn(t))
= Wf^T · Wt + Wf^T · Yn(t) · Xn(t)
> Wf^T · Wt + 0
得 Wf^T 和 Wt+1 越来越接近
又由于只有犯错误的时候才更新,即Yn ≠ sign(Wf^T · Xn)
即 Yn · Wf^T · Xn ≤ 0
|| Wt+1 ||^2 = || Wt + Yn(t) · Xn(t) ||^2
= || Wt ||^2 + 2Wt· Yn(t) · Xn(t) + || Yn(t) · Xn(t) ||^2
≤ || Wt ||^2 +max || Yn(t) · Xn(t) ||^2 +0
此处Xn(t)起关键作用
故Wt+1会缓慢增长,但不会无限增长,因为cos 最大为1,得证
Non-Separable Data(不可分割的数据)
pocket algorithm(口袋演算法):
找到错误
纠正错误
比较犯错误率,扔掉不够好的
第三讲:Types of Learning
Learning with Different Output Space(从输出空间出发)
binary classification(二元分类):
multiclass classification(多类别分类):
regression(回归分析):输出空间是整个实数
bounded regression(有范围的回归分析):输出空间是有范围的
structured learning(结构学习):我们要的输出空间有某一种结构在里面,我们希望电脑想办法去学到这些结构
Learning with Different Data Label(从数据出发)
supervised learning(监督学习):给出数据,及其对应的标记 all data
unsupervised learning(非监督学习):只给数据,不给标记 no data
clustering(分群):文章主题归类,顾客分类
density detection(密度):有范围的,不过我们不告诉它Y
outlier detection:资料大部分正常的,只有小部分怪怪的
semi-supervised learning(半监督学习):
some data
reinforcement learning(增强式学习):靠另外的输出来学习动作,是一笔一笔学习到东西的 implicit Yn by goodness
Learning with Different Protocol(从协议出发)
被动:
batch learning(成批学习):all know data (like duck feeding)
online learning(线上学习):按顺序一笔一笔来学习,循序的学习方式 sequential data
PLA 可以容易地适应线性学习
reinforcement learning(增强式学习)
主动:
active(主动学习):strategically - observed data
Learning with Different Input Space(从输入空间出发)
concrete features:把具体的特征算一个数,来进行比较得出输出,把人类思考的预处理来喂给机器进行学习
raw features:简单的物理特征
abstract features(抽象的特征):机器或人类抽取特征,再用特征去学习(没有具体的物理特征给机器去学习)
第四讲:Feasibility of Learning
Learning is Impossible(学习是不可能的?)
小黑格示例
no free lunch:我们只知道数据以内学到什么,至于数据外的部分学到什么我们是不知道的
Probability to the Rescue(发生错误概率)
弹珠示例
当样例足够大时,v 和 μ 就会非常接近,假设误差范围为 ε
Hoeffding Inequallity : P[|v - μ| > ε] ≤ 2exp(-2 ε^2 N) 大于误差范围的概率是非常小
PAC : probably approximately correct 大概差不多是对的
Connection to Learning(与学习的关系)
一个h
衡量h 跟 f 不一样的机率是多少,手上的资料就相当于手上的弹珠,来衡量
推断不知道的数据:
资料够大的时候:
我们说g 跟 h 很接近
目前做到的事情是验证某个hypothesis表现得好不好
学习流程:
Connection to Real Learning(与真正学习的关系)
什么叫做不好的资料?Eout 和 Ein 相差很远,比 ε 远,让演算法踩到雷
Hoeffding保证的事情是这里没有太多格BAD,总共不好的机率很小,把数据分成很多
hypothesis 为了让我们的演算法做选择
不好的数据的范围:
选到不好的演算法的概率是非常小的,故说每一个h 都是安全的
学习方法:
此次M = ∞
作业一
Question1
题意:下面哪些问题最适合用机器学习
解析:适合用机器学习解决的问题有如下特点
存在某些目标
规则难以定义
有可以学习的资料
i 将数字分为素数和非素数,有有效的划分方式,错误;
ii 检测潜在的信用卡收费欺诈问题,正确;
ii确定物体的落地时间,有物理公式,错误;
iv 确定繁忙交叉路口交通信号灯的最佳周期,正确;
v 确定进行特定医学检查的年龄,正确
答案:ii,iv,v
Question 2
题意:问题2-5,确定用于解决以下问题的最合适的学习算法
解析:通过不同的策略下棋并获得反馈。增强式学习的特点,设计回报函数,利用输出作为反馈
答案:reinforcement learning
Question 3
题意:在没有预定义标题的情况下将书本分类
解析:unsupervised learning 无监督学习的特点。没有预先给定特征,让机器学习自行划分
答案:unsupervised learning
Question 4
题意:通过1000张有脸的图片和10000没有脸的图片,学习分辨图片中是否有脸
解析:监督式学习的特征,给出数据的同时也给出标记
答案:supervised learning
Question 5
题意:有选择地安排实验,快速知道癌症药的潜能
解析:有选择行的,机器是主动学习的,而非被动学习
答案:active learning
Question 6
题意:问题6-8是关于数据集外的错误发生概率,分析N+1 到 N+L有几个偶数
解析:
答案:
Question 7
题意:所有能拟合D的f的个数
解析:f 对于D之外的样本的拟合不管。D以外有L个,f对这L个样本的拟合程度是任意的,故2^L种
答案:2^L
Question 8:
题意:
解析:
答案:
Question 9:
题意:关于问题9-12,u为箱子里面有橙色的弹珠的比例
解析:要求v = u,则抽取的十个样本中,应该有五个为橙色,则v = u的概率C(10)(5)0.5^5 * 0.5^5 = 0.24
答案:0.24
Question 10:
题意:同上
解析:C(10)(9)0.9^9 * 0.1
答案:0.39
Question 11:
题意:如果u = 0.9 ,那么 v ≤ 0.1的概率是多少
解析:要v ≤ 0.1 那么橙色的数量为1个或0个,则 C(10)(1)0.9 * 0.1^9 + 0.1^10 = 9.1*10^(-9)
答案:9.1*10^(-9)
Question 12:
题意:如果u=0.9,根据Hoeffding的不等式,求v ≤ 0.1 的概率
解析:P[|
bccd
v - μ| > ε] ≤ 2exp(-2 ε^2
N),此时 ε = 0.8 ,N = 10 代入求得5.52 * 10^(-6)
答案:5.52 * 10^(-6)
Question 13:
题意:有四种骰子,每个骰子有六个面,标号为1-6
A:所有偶数面为橙色,所有奇数面为绿色
B:所有奇数面为橙色,所有偶数面为绿色
C:1-3为橙色,4-6为绿色
D:1-3为绿色,4-6为橙色
如果我们从袋子中取五个骰子,五个骰子的1全为橙色的概率
解析:只有B和C中的1为橙色,故我们取出的骰子为B或C,因为四种骰子的数量一样,故取出B或C的概率为0.5,那么五个骰子都为B或C的概率为0.5^5 = 8/256
答案:8/256
Question 14:
题意:如果我们从袋中取出五个骰子,那么我们能够获得某些数字全为橙色的概率
解析:1全为橙色:B,C 2全为橙色:A,C 3全为橙色:B,C 4全为橙色:A,D 5全为橙色B,D 6全为橙色:A,D 即我们要不取出的全为B,C,要么取出的全为A,C,要么取出的全为A,D,要么取出的全为B,D 共2^5
*4种 这些中,全为A,全为B,全为C,全为D被重复算了一遍,所以要减去4 概率为(4* 2^5 -4)/(4^5) = 31/256
答案:31/256
Question 15:
题意:
解析:
答案:
Question 16:
题意:
解析:
答案:
Question 17:
题意:
解析:
答案:
Question 18:
题意:
解析:
答案:
Question 19:
题意:
解析:
答案:
Question 20:
题意:
解析:
答案:
第一讲:The Learning Problem
What is Machine Learning(什么是机器学习)
机器学习的过程:从资料出发,然后经过电脑的计算,最终得到某一种表现的增进
机器学习的三个关键:
要有某一种效能某一种表现能够增进(即潜藏的模式是可以学的);
有规则,但我们不知道怎么把它写下来;
有资料
Applications of Machine Learning(机器学习的应用)
民生六大需求
Components of Machine Learning(机器学习的组成)
input:x ∈ X
output:y ∈ Y
target function : f : X → Y (去学习的不知道的模式)
data(training examples) : D = {(x1,y1),(x2,y2),...,(xn,yn)}
hypothesis(表现很好的公式为 g : X → Y)
H(hypothesis set):一系列可能存在的公式
详细的学习流程:
Machine Learning and Other Fields(机器学习和其它领域)
机器学习:使用大量的数据去找出一个g 和目标函数 f 很相近
资料探勘:使用非常大量的资料,试图找出对特点的应用有趣或有用的性质
人工智慧:电脑会做一些聪明的事情
第二讲:Learning to Answer Yes/No
Perceptron Hypothesis Set(感知器的假设集)
X=(X1,X2,...,Xd) 把X用向量表示,且是有好多个维度的向量,Wi则是X中Xi维度的权重
threshold:门槛值,分数大于门槛则为正,否则为负
h的长相:假设X是二维的
X表示图上的点,Y表示该点应该是圈圈还是叉叉,h(x)就是一条线,此为线性分类器
Perceptron Learning Algorithm(PLA)(感知器学习算法)
修正图示:
如果目标为正,得到的为负,则加,均相反则减
t:表示第几轮
直到不再出现错误时候停下来,传回去
Cyclic PLA
Guarantee of PLA(PLA算法可行保证)
linear separability:线性可分
linear separable D :存在目标 Wf ,
线性可分成立条件:Yn = sign(Wf^T · Xn)
则Yn(t) · Wf^T · Xn(t) ≥ min Yn · Wf^T · Xn > 0
由于 Wf^T · Wt+1 = Wf^T(Wt · Yn(t) · Xn(t))
= Wf^T · Wt + Wf^T · Yn(t) · Xn(t)
> Wf^T · Wt + 0
得 Wf^T 和 Wt+1 越来越接近
又由于只有犯错误的时候才更新,即Yn ≠ sign(Wf^T · Xn)
即 Yn · Wf^T · Xn ≤ 0
|| Wt+1 ||^2 = || Wt + Yn(t) · Xn(t) ||^2
= || Wt ||^2 + 2Wt· Yn(t) · Xn(t) + || Yn(t) · Xn(t) ||^2
≤ || Wt ||^2 +max || Yn(t) · Xn(t) ||^2 +0
此处Xn(t)起关键作用
故Wt+1会缓慢增长,但不会无限增长,因为cos 最大为1,得证
Non-Separable Data(不可分割的数据)
pocket algorithm(口袋演算法):
找到错误
纠正错误
比较犯错误率,扔掉不够好的
第三讲:Types of Learning
Learning with Different Output Space(从输出空间出发)
binary classification(二元分类):
multiclass classification(多类别分类):
regression(回归分析):输出空间是整个实数
bounded regression(有范围的回归分析):输出空间是有范围的
structured learning(结构学习):我们要的输出空间有某一种结构在里面,我们希望电脑想办法去学到这些结构
Learning with Different Data Label(从数据出发)
supervised learning(监督学习):给出数据,及其对应的标记 all data
unsupervised learning(非监督学习):只给数据,不给标记 no data
clustering(分群):文章主题归类,顾客分类
density detection(密度):有范围的,不过我们不告诉它Y
outlier detection:资料大部分正常的,只有小部分怪怪的
semi-supervised learning(半监督学习):
some data
reinforcement learning(增强式学习):靠另外的输出来学习动作,是一笔一笔学习到东西的 implicit Yn by goodness
Learning with Different Protocol(从协议出发)
被动:
batch learning(成批学习):all know data (like duck feeding)
online learning(线上学习):按顺序一笔一笔来学习,循序的学习方式 sequential data
PLA 可以容易地适应线性学习
reinforcement learning(增强式学习)
主动:
active(主动学习):strategically - observed data
Learning with Different Input Space(从输入空间出发)
concrete features:把具体的特征算一个数,来进行比较得出输出,把人类思考的预处理来喂给机器进行学习
raw features:简单的物理特征
abstract features(抽象的特征):机器或人类抽取特征,再用特征去学习(没有具体的物理特征给机器去学习)
第四讲:Feasibility of Learning
Learning is Impossible(学习是不可能的?)
小黑格示例
no free lunch:我们只知道数据以内学到什么,至于数据外的部分学到什么我们是不知道的
Probability to the Rescue(发生错误概率)
弹珠示例
当样例足够大时,v 和 μ 就会非常接近,假设误差范围为 ε
Hoeffding Inequallity : P[|v - μ| > ε] ≤ 2exp(-2 ε^2 N) 大于误差范围的概率是非常小
PAC : probably approximately correct 大概差不多是对的
Connection to Learning(与学习的关系)
一个h
衡量h 跟 f 不一样的机率是多少,手上的资料就相当于手上的弹珠,来衡量
推断不知道的数据:
资料够大的时候:
我们说g 跟 h 很接近
目前做到的事情是验证某个hypothesis表现得好不好
学习流程:
Connection to Real Learning(与真正学习的关系)
什么叫做不好的资料?Eout 和 Ein 相差很远,比 ε 远,让演算法踩到雷
Hoeffding保证的事情是这里没有太多格BAD,总共不好的机率很小,把数据分成很多
hypothesis 为了让我们的演算法做选择
不好的数据的范围:
选到不好的演算法的概率是非常小的,故说每一个h 都是安全的
学习方法:
此次M = ∞
作业一
Question1
题意:下面哪些问题最适合用机器学习
解析:适合用机器学习解决的问题有如下特点
存在某些目标
规则难以定义
有可以学习的资料
i 将数字分为素数和非素数,有有效的划分方式,错误;
ii 检测潜在的信用卡收费欺诈问题,正确;
ii确定物体的落地时间,有物理公式,错误;
iv 确定繁忙交叉路口交通信号灯的最佳周期,正确;
v 确定进行特定医学检查的年龄,正确
答案:ii,iv,v
Question 2
题意:问题2-5,确定用于解决以下问题的最合适的学习算法
解析:通过不同的策略下棋并获得反馈。增强式学习的特点,设计回报函数,利用输出作为反馈
答案:reinforcement learning
Question 3
题意:在没有预定义标题的情况下将书本分类
解析:unsupervised learning 无监督学习的特点。没有预先给定特征,让机器学习自行划分
答案:unsupervised learning
Question 4
题意:通过1000张有脸的图片和10000没有脸的图片,学习分辨图片中是否有脸
解析:监督式学习的特征,给出数据的同时也给出标记
答案:supervised learning
Question 5
题意:有选择地安排实验,快速知道癌症药的潜能
解析:有选择行的,机器是主动学习的,而非被动学习
答案:active learning
Question 6
题意:问题6-8是关于数据集外的错误发生概率,分析N+1 到 N+L有几个偶数
解析:
答案:
Question 7
题意:所有能拟合D的f的个数
解析:f 对于D之外的样本的拟合不管。D以外有L个,f对这L个样本的拟合程度是任意的,故2^L种
答案:2^L
Question 8:
题意:
解析:
答案:
Question 9:
题意:关于问题9-12,u为箱子里面有橙色的弹珠的比例
解析:要求v = u,则抽取的十个样本中,应该有五个为橙色,则v = u的概率C(10)(5)0.5^5 * 0.5^5 = 0.24
答案:0.24
Question 10:
题意:同上
解析:C(10)(9)0.9^9 * 0.1
答案:0.39
Question 11:
题意:如果u = 0.9 ,那么 v ≤ 0.1的概率是多少
解析:要v ≤ 0.1 那么橙色的数量为1个或0个,则 C(10)(1)0.9 * 0.1^9 + 0.1^10 = 9.1*10^(-9)
答案:9.1*10^(-9)
Question 12:
题意:如果u=0.9,根据Hoeffding的不等式,求v ≤ 0.1 的概率
解析:P[|
bccd
v - μ| > ε] ≤ 2exp(-2 ε^2
N),此时 ε = 0.8 ,N = 10 代入求得5.52 * 10^(-6)
答案:5.52 * 10^(-6)
Question 13:
题意:有四种骰子,每个骰子有六个面,标号为1-6
A:所有偶数面为橙色,所有奇数面为绿色
B:所有奇数面为橙色,所有偶数面为绿色
C:1-3为橙色,4-6为绿色
D:1-3为绿色,4-6为橙色
如果我们从袋子中取五个骰子,五个骰子的1全为橙色的概率
解析:只有B和C中的1为橙色,故我们取出的骰子为B或C,因为四种骰子的数量一样,故取出B或C的概率为0.5,那么五个骰子都为B或C的概率为0.5^5 = 8/256
答案:8/256
Question 14:
题意:如果我们从袋中取出五个骰子,那么我们能够获得某些数字全为橙色的概率
解析:1全为橙色:B,C 2全为橙色:A,C 3全为橙色:B,C 4全为橙色:A,D 5全为橙色B,D 6全为橙色:A,D 即我们要不取出的全为B,C,要么取出的全为A,C,要么取出的全为A,D,要么取出的全为B,D 共2^5
*4种 这些中,全为A,全为B,全为C,全为D被重复算了一遍,所以要减去4 概率为(4* 2^5 -4)/(4^5) = 31/256
答案:31/256
Question 15:
题意:
解析:
答案:
Question 16:
题意:
解析:
答案:
Question 17:
题意:
解析:
答案:
Question 18:
题意:
解析:
答案:
Question 19:
题意:
解析:
答案:
Question 20:
题意:
解析:
答案:
相关文章推荐
- 机器学习实践 学习笔记1 Machine learning basics
- Coursera deeplearning.ai 深度学习习题3-1-Structuring Machine Learning Projects(1)
- Coursera Machine Learning 学习笔记(十三)
- 随手记:机器学习工程师新手最常犯的六种错误(Top 6 errors novice machine learning engineers make)
- 機器學習基石 (Machine Learning Foundations)
- Pattern Recognition and Machine Learning 读书总结(持续更新中)
- VMI学习总结 - Virtualmachine introspection
- selenium webdriver 学习总结-JUnit4 入门_补充枚举 (三)
- 《Neural Networks for Machine Learning》 by Hinton 学习笔记(一)
- Foundations of Machine Learning: The Margin Explanation for Boosting's Effectiveness
- Foundations : Machine Learning Specialization of University of Washington
- 深度学习DeepLearning.ai系列课程学习总结:11. 优化算法理论讲解
- Kaggle学习之Machine Learning from Disaster(2) -SVM
- 深度学习DeepLearning.ai系列课程学习总结:14. Tensorflow入门
- Large Scale Machine Learning--An Engineering Perspective--1. 大规模机器学习平台的构成
- Machine Learning Foundations 第9节-第12节
- 随手记:机器学习工程师新手最常犯的六种错误(Top 6 errors novice machine learning engineers make)
- DeepLearningToolBox学习——RBM(Restrict Boltzmann Machine)II
- Stanford Online Machine Learning 学习笔记1——单变量线性回归
- 深度学习DeepLearning.ai系列课程学习总结:3. Python矢量化实现神经网络