版权声明:本系列文章为博主原创文章,转载请注明出处!谢谢!
写作动机:
因为工作和个人兴趣的关系,博主目前正在自学机器学习相关的知识。在学习的时候感觉很多知识点很抽象,当时理解且记住了,过了段时间就又忘记了,毕竟是上了年纪的人了o(╯□╰)o
纸上得来终觉浅,绝知此事要躬行。为了能够系统的将这门抽象的课程理解透彻,同时也把自己所学分享给大家,所以在工作之余开坑将学习历程记录下来。正所谓与人方便,自己方便。博文系原创,但内容主要来自大名鼎鼎的斯坦福公开课-机器学习。既是内容一脉相承,那么本系列博文与公开课之间有怎样的关系呢?在前人的基础上,愚钝如博主的添加了许多自己的总计和领悟。
系列博文概述:
1. 内容来源:
如上所述,本系列内容来自著名的Stanford机器学习公开课,主讲为Andrew Ng,是一位在机器学习领域浸润多年的大牛,相信很多诸君均有所耳闻。据我所知,Andrew Ng至少录过如下两个系列的机器学习课程,
- Stanford大学的网络公开课,课程编号CS229,网易公开课也收录了该课程,访问外网较慢的同学可以从网易公开课学习,所有资源链接列在系列概述的结尾。本系列共20课,每课大约70分钟左右,内容较丰富,讲解了很多的数学原理和公式推导。本博文基本基于这个系列。
- Coursera上的Machine Learning系列。已经注册了,正在上课。内容比CS229精简的多,个人最喜欢的是里面的编程作业,有很好的讲义引导你一步一步写程序解决实际问题,强烈推荐。
2. 博文内容:
尽管目前网络上已经有了很多机器学习相关的中文资料,博主还是希望整理出来一份非常详尽的入门资料,当然也是自己巩固知识的过程。本系列文章侧重算法,并尽量把抽象的数学原理清晰、具体的表述出来,使得诸君只看博客就可以明白视频课程的所有内容。当然,如果时间充足(20节课,每节70分钟,有些地方估计需要反复看下,只看不记的话,本人平均一节课90分钟左右),依然建议各位去看公开课视频,视频内容毕竟更加丰富和生动。对我来说,看视频最大的问题是,当时学的相当明白,稍微过几天就忘差不多了,而且复习不太方便(只能老老实实再看一遍,如此一来,每学一课的负担就double甚至triple了)。
3. 前置课程:
本系列文章将包含机器学习相关的主要算法。由于课程涉及很多数学算法和原理推导,所以期望诸君有以下预备知识:
- 了解计算机科学相关的课程,例如算法和数据结构,知道算法复杂度的概念,知道什么是队列,堆栈,二叉树;并且有一定的编程能力;
- 了解基本的概率统计知识,知道什么是随机变量,随机变量的期望和方差;
- 了解线性代数和矩阵,知道什么是向量,如何计算矩阵/向量的乘法,逆矩阵、特征向量的实际意义等。
- 最好学过最优化理论,没学过也没关系,因为博主也没学过,所以特地写了番外篇...
如果对上述课程并不了解,可以参考下面课程配套的补充知识。
4. 相关资源:
- Coursera :Machine Learning