今天和大家分享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)题意:求下面哪个式子是题中式子的上限?
可以看到,只有第五个是他的上限
(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