大家好,我是Mac Jiang,今天和大家分享coursera-NTU-機器學習基石(Machine Learning Foundations)-作业1的习题解答。笔者是在学习了Ng的Machine Learning之后开始学习这门课程的,但还是感觉收获颇丰。Ng的课程主要站在计算机专业的角度,教你如何使用机器学习,注重方法而不是数学推导,是一门很好的入门教程;而林轩田老师的机器学习基石是站在统计分析角度,证明机器学习算法为什么要这么做,更加注重于理论的证明,如果你想更加深入了解机器学习,或者想自己编写机器学习算法的,学习这门课还是很有必要的!
首先声明,笔者在这里提供一些作业解答的目的不是为了让你得到更高的分数,而是对一些学习上有困难的同学提供一些帮助。笔者的目的是提供一种可行的思路,但是说实话,这里面很多题目笔者也没能够理解。所以如果各位博友发现任何错误或者有更好的思考方法,请留言联系,谢谢!再次提醒:请不要以此博客作为通过考试的用途,还是更好学习、理解课程的途径!
其他解答看汇总帖:http://blog.csdn.net/a1015553840/article/details/51085129
1.第一题
(1)题意:下列哪些问题最适合用机器学习解决
(2)分析:适合用机器学习解决的问题主要包括以下特点
a.存在某些目标,隐藏规则(underlying pattren)
b.这些规则我们难以定义,不知道如何写下了
c.有学习这个隐藏规则的资料data
i.区分一个数是否为素数:错误,我们可以很简单写出素数的规则,只能被1或他本身整除
ii.确定信用卡是否被盗刷:正确,这是极其学习里面的异常点检测问题
iii.确定一个物体的落地时间:错误,这里有物理学公式,h=0.5*g*t^2
iv.确定拥挤路口交通信号灯的最佳循环:正确
v.确定某种药物的推荐服用者年龄:正确,可以通过聚类找出效果好的群
(3)答案:ii,iv,v
2.第二题
(1)题意:问题2-5,都是确定相对于每种任务的最佳机器学习算法。下象棋,利用不同的策略并把输出作为反馈
(2)分析:这显然是增强学习(reinforcement)。增强学习是指设计回报函数,若决定进行一步,如果这部的表现结果较好,则给一些正回报,如果这一部表现结果较差,则返回一些负的回报。这道题显然,利用输出作为反馈,可以知道这步棋的好坏,给予相应的回报。
(3)答案:reinforce Learning
3.第三题
(1)题意:在没给定标题的情况下分类书本
(2)分析:这显然是无监督学习(unsupervised learning)。书本没有给定标题,即样本没有y值。可以根据数的单词,厚度等特征聚类,将特征相近的聚为一类,这是无监督学习
(3)答案:unsupervised learning
4.第四题
(1)题意:区别一张图片中是否有人脸,给定1000张有人脸的图片和10000张没有人脸的图片
(2)分析:已经知道图片是有人脸的和没人脸的,每张图片都有标签了,显然是监督学习(supervised learning )
(3)答案:supervised learning
5.第五题
(1)题意:有选择的安排实验,快速知道癌症药的潜在左右
(2)分析:这里的答案是active learning。我的理解是,我们想知道这种药的潜在左右,所以我们有选择性的安排实验,这是一个提问的过程,是主动学习。
(3)答案:active learning
6.第六题
(1)题意:太复杂了,自己看吧~就是要我们分析N+1到N+L有几个偶数
(2)暴力解决:56~101有23个偶数
N为奇,N+L为奇:N=55,N+L=101,(N+1~N+L)56~101有23个,选项1结果为22错误,选项2结果为24错误,排除1和2
N位奇,N+L为偶:N=55,N+L=100,(N+1~N+L)56~100有23个偶数,选项5为22错误
可以严重,其他两种情况对选项3都是正确的
(3)答案:选项3,下整减下整
7.第七题
(1)题意:f can generate D的意思是,f可以拟合D中的每个元素。题目让我们求这些f的总个数,即所有能拟合D的f个数。
(2)分析:f拟合D,而他对D以外的样本的拟合不管。D以外的样本共有L个,即这些f对这L个样本的拟合程度是任意的,共2^L种
(3)答案:2^L
8.第八题
(1)分析:虽然看了上面的解答,但还是有一点疑惑。 我个人理解不知道对否,写在下面:
由于f产生任何的D的概率都是一样的,因此对于test data而言本身没有任何‘规律’可言,因此无论我选用哪一个algorithm(当然,这个algorithm产生的g结果都是-1或1),对test data来说其实都是一样的‘糟糕’。因此这个EOTS的数学期望是相等的。---这是别人的解答
(2)答案:最后一项
9.第九题
(1)题意:假设u为箱子内橙色的弹珠的比例,v为我们抽取10个计算出来的橙色弹珠比例,如果u=0.5,那么v=u的概率
(2)分析:由于u=0.5,我们抽出10个,那么要求抽出5个橙色的。说明:我们用C(n)(m)表示概率中从n个位置抽取m个的组合情况,则这道题可以理解为从10个位置抽取出5个位置放橙色,然后其他位置放绿色。那就是C(10)(5) * (0.5)^5 * (0.5)^5 = (10*9*8*7*6)/(1*2*3*4*5) *(0.5)^10 = 0.24
(3)答案:0.24
10.第十题
(1)题意:和上面这道题一样,问u=0.9时,v=u的概率
(2)分析:要v=0.9,那么久要抽出9个黄色的,而每次抽出黄的概率为u=0.9,抽出绿色概率为0.1。故抽出九个的橙色概率为:C(10)(9) * (0.9)^9 * 0.1=0.39
(3)答案:0.39
11.第十一题
(1)题意:如果u=0.9,那个v小于等于0.1的概率
(2)分析:v小于等于0.1可以分为两种情况,v=0和v=0.1;
v=0.1时,C(10)(1) * 0.9 * (0.1)^9 = 9 * 10^(-9)
v=0时,0.1^(10) = 10^(-10)
共9.1 * 10^(-9)
(3)答案:9.1 * 10^(-9)
12.第十二题
(1)题意:利用Hoeffding Inequality计算 当u=0.9时v小于等于0.1的概率
(2)分析:Hoeffding Inequality为 P([v-u] 大于 epsilon) 小于等于 2* e^(-2*N*epsilon^2),N为抽样个数,带入计算就可以了
(3)答案:5.52 * 10^(-6)
13.第十三题
(1)题意:有四种筛子,每个筛子有六个面,标号1-6
A:所有偶数面被涂为橙色,所有奇数面被涂为绿色
B:所有奇数面被涂为橙色,所有偶数面被涂为绿色
C:所有1-3被涂为橙色,4-6被涂为绿色
D:所有1-3倍涂为绿色,4-6被涂为橙色
袋子中每种骰子的数量都有无限多个,而且每种骰子数量相同,问:一次取5个筛子,问这些筛子有,1全为橙色的概率。
(2)分析:由于只有B,C的1是橙色的,所以我们取5个要么是B类的要么是C类的。那么取到骰子位B或C的概率为0.5
那么,5个都为B或C的概率为:0.5^5 = 8/256
(3)答案:8/256
14.第十四题
(1)题意:抽5个筛子,那么至少有一种数字全为橙色的概率
(2)分析: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
(3)答案:31/256
第15题到17题的C++实现:http://blog.csdn.net/a1015553840/article/details/50979434
第18题到20题的C++实现:http://blog.csdn.net/a1015553840/article/details/50979640
From:http://blog.csdn.net/a1015553840/article/details/50986313
其他解答看汇总帖:http://blog.csdn.net/a1015553840/article/details/51085129