码迷,mamicode.com
首页 > 系统相关 > 详细

機器學習基石(Machine Learning Foundations) 机器学习基石 作业三 课后习题解答

时间:2016-04-10 14:48:00      阅读:252      评论:0      收藏:0      [点我收藏+]

标签:

        今天和大家分享coursera-NTU-機器學習基石(Machine Learning Foundations)-作业三的习题解答。笔者在做这些题目时遇到很多困难,当我在网上寻找答案时却找不到,而林老师又不提供答案,所以我就想把自己做题时对题目如何思考的写下来,为大家提供一些思路。当然,我对题目的理解不一定是正确的,如果各位博友发现错误请及时留言联系,谢谢!再次提醒:请不要以此博客作为通过考试的用途,还是更好学习、理解课程的途径!希望我的博客对您的学习有所帮助!

本文出处:http://blog.csdn.net/a1015553840/article/details/51103628

其他作业解析请看汇总贴:http://blog.csdn.net/a1015553840/article/details/51085129


        第三次作业林老师主要讲了四大块内容:

1.线性回归(Linear Regression):线性回归方程 ,错误计算方法为square error,参数w计算方法,pseudo-inverse,线性回归实现步骤等

2.逻辑回归(Logistic Regression):逻辑回归理论,错误计算方法cross entropy error,梯度下降法求最优解并推到逻辑回归的梯度下降公式

3.线性模型(Linear Model for Classification):证明了线性回归和逻辑回归也能用于线性分类(VC bound),随机梯度下降法(Stochstic),多类别分类OVA,OVO

4.非线性转化(Noliear Transformation):介绍了如何把低维空间内的高次曲线化为高纬空间内的线性分类,并说明他的局限性(转换代价大)


1.第一题

技术分享

(1)题意:在目标函数f上添加噪声epsilon,噪声强度为sigma^2,Ein的计算公式也已经给出。求给定sigma=0.1,d=8时,能使Ein大于0.008的最小样本数N

(2)分析:这是一道很普通的计算题,把值带入计算可以了

(3)答案:100


2.第二题

技术分享

(1)题意:hat marix H的定义已经给出,求五项陈述哪些是正确的

(2)分析:老师在上课的时候说过H的作用是将y从N维空间投影到X召开得到的d+1维度空间上。(I-H)是指y与展开平面的垂直距离。对角线trace(I-H) = N-(d+1)

        a.H是半正定的,正确,理由博主也不知道  

        b.H是可逆的,错误,博主个人觉得是错的

        c.H的一些特征值可能大于1,错误。半正定矩阵的特征值小于等于1

        d.个人觉得是正确的。trace(I-H)=N-(d+1)

        e.正确。因为H的作用是把y投影到hat y,那么不管投影几次都是不变的

(3)答案:none of above


3.第三题

技术分享

(1)题意:求下面哪个式子是题中式子的上限?

(2)分析:做出这六个Error的图如下所示技术分享

可以看到,只有第五个是他的上限

(3)答案:max(0,1-ywx)  ^ 2


4.第四题

技术分享

(1)题意:下列哪些不是对w到处可微的

(2)分析:很显然,max(0,-ywx)在0出不是可微的,左导数为-1,右导数为0

(3)答案:最后一项


技术分享

(1)题意:利用随机梯度下降法计算下列错误函数,忽略个别不可微的点,下面哪个结果是PLA

(2)分析:

                 技术分享

(3)答案: max(0,-ywx)


6.第六题

技术分享

(1)题意:求E在(0,0)附近的梯度

(2)分析:很简单,分别求E对u,v的偏倒数,然后将(0,0)带入即可

(3)答案:(-2,0)


7.第七题

技术分享

(1)题意:利用上面的梯度下降公式,从(0,0)开始迭代,步长为0.01,求迭代五次后的错误E

(2)分析:这个太简单了,随便用C或者MATLAB写个算法就可以了,博主这里就不再累述

(3)答案:2.825


8.第八题

技术分享

(1)题意:这里讲的是二元泰勒展开

(2)分析:二元泰勒展开公式为http://wenku.baidu.com/link?url=TFtNo_C9OV4MqsshuXz6yfMnjf-2A4-94zMsSS5qYepqhniR2aL6UbN3yjsCrMdFPY4_Zt2andPoxV0GII3b3QjBom1Xdmb-8cZyUgv-A3S

技术分享

带入计算即可。注意与各项的对应关系。

(3)答案:(1.5,4,-1,-2,0,3)


9.第九题

技术分享

(1)题意:利用Hessian Matrix计算牛顿方向

(2)分析:Hessian Matrix见http://baike.baidu.com/link?url=zCgekuYg4ViCDXyjWlpQZPEfGXZoUGl7bP8lpe_N6ww7bSeLqyyIKdUORTVaBdjw9KBhIXJmCmL2s5ZDEIb2y_

                   Newton迭代见http://blog.csdn.net/luoleicn/article/details/6527049

(3)答案:第一项


10.第十题

技术分享

(1)题意:利用牛顿迭代求迭代五次后E值

(2)分析:我们已经从第9题知道了牛顿方向,自己用MATLAB写一个简单的实现就可以了,这里就不再累述

(3)答案:2.361   (可以看到,牛顿迭代五次为2.361,梯度下降五次为2.825,说明牛顿迭代更快!)


11.第十一题

技术分享

(1)题意:求能够被所有二次+一次曲线shatter的最小x的集合

(2)分析:

技术分享

利用途中六条线可以轻松shatter

(3)答案:x1,x2,x3,x4,x5,x6


12.第十二题

技术分享

(1)题意:利用上面的式子将d维度的X空间转换为Z空间,求转换后的d_vc

(2)分析:加入X有N个点,则每一个点利用[x = xn]都能转化为一个维度的z,那么转换后最终得到的Z空间的维度为N。我们要做的是在Z空间进行二元分类,由于我们以前课程t推导过,d为空间的感知机(perceptrons)的d_vc = d+1。那么Z空间得到的d_vc = N +1 。那么对于任意N个点都是可以被shatter的。故N取任意大,d_ve = N+1,任意大的N都是可以被shatter的,所以d_vc = 无穷

(3)答案:无穷


第十三题到第十五题的C++实现请看:http://blog.csdn.net/a1015553840/article/details/51085094


16.第十六题

技术分享

(1)题意:这道题说的是多元逻辑回归的代价函数推导。

(2)分析:这道题笔者也不太懂,然后在百度上查找资料,国内网站上好像没有太多写多元逻辑回归的文章。所以我在一个国外的网站上找到了相关资料,然而并没有看到推导过程。网址为:http://blog.datumbox.com/machine-learning-tutorial-the-multinomial-logistic-regression-softmax-regression/ 。他是根据吴恩达的那套理论做的,其中J(theta)就是我们这里所说的Ein。

(3)答案:第二项


17.第十七题

技术分享

(1)题意:这道题的意思是我们从16中知道了Ein的计算方法,就他对wi的偏导数

(2)分析:求导即可

(3)答案:第四项


18. 第18-20题的C++实现请看:http://blog.csdn.net/a1015553840/article/details/51085835


本文出处:http://blog.csdn.net/a1015553840/article/details/51103628

其他问题解答请看汇总贴:http://blog.csdn.net/a1015553840/article/details/51085129



機器學習基石(Machine Learning Foundations) 机器学习基石 作业三 课后习题解答

标签:

原文地址:http://blog.csdn.net/a1015553840/article/details/51103645

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!