简单整理一下机器学习方面入门的资料。
前言
首先放弃海量的资料,什么 xx学院机器学习内部资源、机器学习从入门到进阶百 G 资源、xx 人工智能教程,等等。都没用,几十个G,没工夫看完,而且资料越多越迷茫。
其次,也不用从零开始。机器学习是一门融合概率论、线性代数、凸优化、计算机、神经科学等多方面的复杂技术。学好机器学习需要的理论知识很多,当前没用学习到的东西肯定也很多,所以会在学习的过程中产生懈怠,丧失学习的积极性。直接从实践入手的话,从实践到理论的话,方便查漏补缺,也会对学习产生更多的正反馈。
下面进入正题。
机器学习基础
1)Andrew Ng《Machine Learning》
首先非常推荐这门课,地址:
机器学习-吴恩达(b站上也有)。
关于这门课的官方介绍是:本课程将广泛介绍机器学习、数据挖掘和统计模式识别。相关主题包括:(i) 监督式学习(参数和非参数算法、支持向量机、核函数和神经网络)。(ii) 无监督学习(集群、降维、推荐系统和深度学习)。(iii) 机器学习实例(偏见/方差理论;机器学习和AI领域的创新)。课程将引用很多案例和应用,您还需要学习如何在不同领域应用学习算法,例如智能机器人(感知和控制)、文本理解(网络搜索和垃圾邮件过滤)、计算机视觉、医学信息学、音频、数据库挖掘等领域。
这门课基本涵盖了机器学习的主要知识点,例如:线性回归、逻辑回归、支持向量机、神经网络、K-Means、异常检测等等。而且课程中没有复杂的公式推导和理论分析。Ng 的目的是让机器学习初学者能够快速对整个机器学习知识点有比较整体的认识,便于快速入门。
这门课每个知识点都会配套相应的练习题。可以在 Coursera 上下载,线下完成并提交。唯一的缺点可能是该习题都是基于 matlab 平台的。但是,Github 上已经有人把作业整理成为 Python 的形式了。有 .py 和 .ipynb 两种格式。
https://github.com/nsoojin/coursera-ml-py
https://github.com/kaleko/CourseraML
2)台大林轩田《机器学习基石》
台湾大学林轩田老师的《机器学习基石》课程由浅入深、内容全面,基本涵盖了机器学习领域的很多方面。其作为机器学习的入门和进阶资料非常适合。而且林老师的教学风格也很幽默风趣,总让读者在轻松愉快的氛围中掌握知识。这门课比 Ng 的《Machine Learning》稍难一些,侧重于机器学习理论知识。 地址:
https://www.csie.ntu.edu.tw/~htlin/(视频B站有)
下面是一位大神在这门课的16节课的精炼笔记,以供参考:
【11】Linear Models for Classification
3)台大林轩田《机器学习技法》
《机器学习技法》课程是《机器学习基石》的进阶课程。主要介绍了机器学习领域经典的一些算法,包括支持向量机、决策树、随机森林、神经网络等等。难度要略高于《机器学习基石》,具有很强的实用性。地址:
https://www.csie.ntu.edu.tw/~htlin/
下面同是这位大神给出的课程笔记:
【1】Linear Support Vector Machine
【2】Dual Support Vector Machine
【3】Kernel Support Vector Machine
【4】Soft-Margin Support Vector Machine
【11】Gradient Boosted Decision Tree
【14】Radial Basis Function Network
进阶
斯坦福CS231n李飞飞计算机视觉
这门课是李飞飞主讲的王牌课程,属于机器学习的深化课程。主要介绍深度学习(尤其是卷积神经网络和与其相关的框架)在计算机视觉领域的应用,内容涵盖多种神经网络具体结构与训练应用细节,以及针对大规模图像识别,物体定位,物体检测,图像风格迁移,图像理解描述与视频内容识别等问题的前沿解决思路。汉化课程链接:
斯坦福CS231n李飞飞计算机视觉