如何正确的学习Coursera上Andrew Ng的机器学习课程?

题主目前大三,数学基础都有,编程语言会的有c,c++,java,python,现在开始自学机器学习。通过知乎搜“机器学习入门”开始了解到Andrew …
关注者
2,592
被浏览
369,821

41 个回答

看起来吃力主要原因不在于语言,而在于数学,机器学习的核心是数学而不仅是编程,计算机只是数学的延伸。线性代数矩阵运算要非常熟悉才行,这块不熟的话基本就算是中文也没有用,如果很熟的话看公式听不懂也能理解。如果数学不是很强,建议去看麻省的线性代数。机器学习的学习曲线对于一般人来说还是非常陡峭的,编程自不必说,更难是数学,各种优化理论、概率论、线性代数、图论,所以做这块的都是计算机科学或者应用数学专业,而且都要到硕士之后才能稍微有点感觉,原因就是没有过硬的数学基础很难做出独立研究或开发自己的算法。而只会调用现成的包,含金量就跟计算机培训差不多。

其实人工智能在专业领域会细分很多,比如计算机专业就会偏向机器学习,统计学家偏向统计学习,这两者的区别就在于学习时采用的方法不一样。一般来说,机器学习更偏向于矩阵运算,会有大量的矩阵求逆、相乘、点乘等,所以Ng推荐使用Matlab或者Oracle(此处应为Octave,感谢指正),因为虽然Python也有相应的计算库,但在自己设计算法和调试的时候不如Matlab方便,因此我也建议使用Matlab,可以更好理解其背后的数学思想。而统计学习会偏向概率论,所以统计学习往往会有大量概率分布和模拟数,就不具体展开了。Coursera的机器学习课程其实还是偏入门的,可以跟着一起看上海交大张志华教授的机器学习概论和统计学习概论,另外推荐李航的统计学习方法,深入浅出。还是强调机器学习的本质是数学,所以不要纠结于听英语还是看中字,有那个时间还不如找一些凸优化和概率论的书看。


虽然Coursera上的课我也上完了,我也很感激Ng为全世界的学生提供免费的学习资源,但是整体上来说,这门课只是大师通俗的帮我们把学过的知识与机器学习联系起来。而我们只是看到了山,离山顶还非常非常远。

刚刚刷完这门课,过来答一下这个问题。


其实今年做毕设的时候我刷过其中一部分课程,当时在做deep learning,其中涉及到不少概念都与machine learning相关,于是就走马观花跳着看了一部分视频,但总感觉只是懂个皮毛,所以这次决定从头到尾完整地刷一遍,把一些概念再熟悉一遍,把习题和代码作业都解决掉。在刷的过程中越来越爱上了Coursera这个平台,从lecture到notes到quiz到assignment,从概念和实现两个层面来带着你巩固知识点,lecture视频缓冲快,但感觉Ng语速节奏太慢,所以我一般调成1.5倍速来看,一开始我用中文字幕,但后来发现有的中文字幕翻译的零零碎碎,句子被打碎影响理解,但英文字幕就好一些,而且Ng这门课就是给小白入门的,所以英文也很简单,只要有一点英语基础的,建议直接看英文字幕,毕竟之后搞ml的话,各种论文著作文档都是英文的。notes也很全面,quiz难度不大但对于理解lecture的内容很有帮助,assignment的代码基本框架都给你,你只需要把一些关键的公式向量化就可以了,所以我非常推荐做完assign把代码(ex.m)完整的看一遍,而不是只看实现的那一个方法,完成代码后可以通过序列号提交,终端会显示每道题得分,这个赞爆了,不过coursera上不是每门课都有这个,希望以后更多的课可以配置上。当然,再强调一遍,这门课是给小白的,所以刷完这门课仅仅是初步入门(甚至连入门都算不上),因为为了照顾小白的数学底子,有些涉及到偏复杂的概率论的知识点都没讲(其实也不复杂,只不过需要更多时间做解释),比如MDPs HMM,其实这门课就是

CS 229: Machine Learning

的简化版,所以如果时间充裕,其实可以直接上手学cs299,那个讲的更全面更细致,难度也高一点,涉及比较多的公式推导.如果是想做computer vision的,stanford还有门精品课:

Stanford University CS231n: Convolutional Neural Networks for Visual Recognition

想做nlp的,stanford还有一门

Stanford University CS224d: Deep Learning for Natural Language Processing

这两门课都有全套的lecture video slice assign。

下一步准备配合着台湾林轩田的《机器学习基石+技法》把李航的《统计学习方法》这本书走一遍,据说林轩田的教程要比ng难不止一个数量级,这门课虽然从coursera上撤下来了(据说是因为课程平台升级?),但从林老师个人网站

Hsuan-Tien Lin

还是可以找到video assign以及slice的,希望能抽时间刷完,等刷完我再开个『如何评价林轩田的机器学习教程?』问题聊一下。

另外我把这门课的ppt截图都弄下来了,方便以后复习查阅,需要自取。

传送门:

Yuliang's Blog