公开课

推荐一批相关的MOOC公开课,有我学习过的,也有经过实践检验的。当然学习+实践,才是最好的入门方式。

特别推荐:

1. Andrew Ng 在 Coursera 上开设的机器学习课程Machine Learning , 机器学习入门首选课程,数百万人通过此课程走入机器学习的殿堂。

我在2012年系统学习过这门课程,也拿到了课程证书,可以参考之前写得该课程的一系列课程笔记:Coursera公开课笔记: 斯坦福大学机器学习第一课“引言(Introduction)” 等。

2. Andrew Ng 前不久(2017.8.15)在 Coursera 推出的深度学习系列专项课程:Deep Learning Specialization,该课程目标是:Master Deep Learning, and Break into AI。我在第一时间学习了这个系列的前三门课程,第四、第五门课程还没有开课,体验很棒。强烈推荐,深度学习入门首选课程

该系列包括5门课程:Neural Networks and Deep Learning(神经网络和深度学习)Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization(深度神经网络调优) , Structuring Machine Learning Projects(机器学习项目结构) , Convolutional Neural Networks(卷积神经网络)Sequence Models(序列模型)

参考我写的课程小结:Andrew Ng 深度学习课程小记 , Andrew Ng (吴恩达) 深度学习课程小结

编程基础 & 数据结构和算法

如果是零基础入门的同学,特别推荐Python作为入门编程语言:

3. Coursera 零基础 Python 入门专项课程学习使用Python编程并分析数据

Python是深度学习时代的编程语言,如果你还没有任何编程基础,推荐从Python入手,对于自然语言处理、机器学习、数据挖掘来说,都是很好的切入语言。推荐 Coursera这个Python入门系列课程,包括课程1 Programming for Everybody (Getting Started with Python), 课程2 Python Data Structures(Python数据结构),课程3 Using Python to Access Web Data (使用Python获取网络数据),课程4 Using Databases with Python(在Python中使用数据库),课程5 Capstone: Retrieving, Processing, and Visualizing Data with Python (Python 数据获取、处理和可视化)

4. Coursera上多伦多大学的编程入门课程"Learn to Program: The Fundamentals"

该课程以Python语言传授编程入门知识,实为零基础的Python入门课程。感兴趣的同学可以参考课程图谱上的课程评论 :http://coursegraph.com/coursera_programming1 ,这是之前一个同学的评价“两个老师语速都偏慢,讲解细致,又有可视化工具Python Visualizer用于详细了解程序具体执行步骤,可以说是零基础学习python编程的最佳选择。”

5. Coursera上的计算(机)基础专项课程(Fundamentals of Computing Specialization)

这个系列包括Python交互式编程设计,计算原理,算法思维等6门课程和1门毕业项目课程,目标是让学生像计算机科学家一样编程和思考(Learn how to program and think like a Computer Scientist),强烈推荐,感兴趣的同学可以关注: 计算(机)基础专项课程(Fundamentals of Computing Specialization)

6. Coursera上莱斯大学推出的Python专项课程(Introduction to Scripting in Python Specialization) ,涵盖Python基础, Python数据表示, Python数据分析, Python数据可视化等子课程,比较适合Python入门。

7. Coursera上北京大学的“程序设计与算法专项课程系列

据说是国内学生选择最多的中文程序设计课程,这个系列包含7门子课程,分别是计算导论与C语言基础, C程序设计进阶 ,C++程序设计, 算法基础, 数据结构基础, 高级数据结构与算法, 程序开发项目实践,最后一个项目实践课程联合腾讯公司设计一个实际的应用问题:搜索引擎设计。感兴趣的同学可以关注 程序设计与算法专项课程系列

8. 普林斯顿大学 Sedgewick 教授的算法公开课算法1和2:Algorithms, Part IAlgorithms, Part II 。这两门算法课程已经开过很多轮,好评如潮 ,应该算得上是 Coursera 上的明星算法课程了,感兴趣的同学可以参考课程图谱上的课程评论,强烈推荐。

“这门课可以说是最好的算法公开课了
part I 介绍了各种基本的算法和数据结构
而且ppt和视频都做得很精美 里面的算法演示非常生动形象
最赞的是Assignment
每次磕磕绊绊的做完都超级有成就感

我个人只会基础的java 从来没有学过算法
跟着上最后把part II也上完了

即使没基础 努力去完成Assgnment还是会有很多收获的
碰到不会的地方可以看下forum checklist 里面有很多提示”

“Part II较Part I在部分Programming Assignments上增加了timing和memory的难度,API100%不再意味着全部100%,这正是这门课程的精华之处:不是灌输算法知识,而是通过实际操作的过程让学员深入理解数据结构和算法调优在经济上的意义。个人很喜欢论坛上大家在Performance Thread里贴出自己的report然后交流优化心得的过程,很有圆桌会议的架势。这门课的教授Robert Sedgewick师出名门,是Knuth在斯坦福的博士。老爷子年岁已近70,一直活跃在论坛上解答和讨论问题,敬业程度让人赞叹。”

9. Coursera上斯坦福大学的算法专项课程(Algorithms Specialization)

这个专项课程由早期的算法设计与分析课1和2重组为4门子课程,这两门斯坦福算法课的评价非常高,可与普林斯顿大学的算法课程媲美,感兴趣的同学可以参考课程图谱上的早期评论 Algorithms: Design and Analysis, Part 1, Algorithms: Design and Analysis, Part 2

10. 加州大学圣地亚哥分校的“数据结构与算法 专项课程”,这个系列包含6门课程,分别是:Algorithmic Toolbox(算法工具箱)Data Structures(数据结构)Algorithms on Graphs(图算法)Algorithms on Strings(字符串算法)http://coursegraph.com/coursera-algorithms-on-strings , Advanced Algorithms and Complexity(高级算法与算法复杂度)Genome Assembly Programming Challenge(算法毕业项目)

11. Coursera上的“Java并行,并发和分布式编程专项课程系列(Parallel, Concurrent, and Distributed Programming in Java Specialization)

这是编程进阶课程,该系列包含3个子课程,分别是Java并行编程,Java并发编程和Java分布式编程,感兴趣的同学可以关注 Java并行,并发和分布式编程专项课程系列(Parallel, Concurrent, and Distributed Programming in Java Specialization)

机器学习 & 深度学习 & 概率图模型 & 推荐系统 & 自然语言处理

12. 台湾大学林軒田教授的 “机器学习基石上 (Machine Learning Foundations)---Mathematical Foundations” 刚刚开课, ,这门课程当初开得时候好评如潮,比Andrew Ng老师的机器学习课程有一定的难度,是中文机器学习领域课程当之无愧的王者,感兴趣的同学可以参考老版课程评论:機器學習基石 (Machine Learning Foundations)

13. Geoffrey Hinton 大神的 面向机器学习的神经网络(Neural Networks for Machine Learning)

Geoffrey Hinton大神的这门深度学习课程 2012年在 Coursera 上开过一轮,之后一直沉寂,直到 Coursera 新课程平台上线,这门课程已开过多轮次,来自课程图谱网友的评论:

“Deep learning必修课”

“宗派大师+开拓者直接讲课,秒杀一切二流子”
这门深度学习课程相对上面 Andrew Ng深度学习课程有一定难道,但是没有编程作业,只有Quiz.

14. Coursera 华盛顿大学的 "Machine Learning(机器学习) 专项课程": Machine Learning 专项课程

这个系列课程有4门课程,包括 Machine Learning Foundations: A Case Study Approach (机器学习基础:案例研究) , Machine Learning: Regression (机器学习:回归) , Machine Learning: Classification (机器学习:分类)Machine Learning: Clustering & Retrieval (机器学习:聚类与检索)

15. Coursera上新推出的一个高级机器学习专项课程系列 ,由俄罗斯国立高等经济学院和Yandex联合推出,授课语言为英语,囊括深度学习,Kaggle数据科学竞赛,机器学习中的贝叶斯方法,强化学习,计算机视觉,自然语言处理等7门课程:Advanced Machine Learning Specialization

16. 斯坦福大学 Daphne Koller 教授的概率图模型专项课程系列(Probabilistic Graphical Models Specialization)

作为Coursera上最早的几门课程之一,这门概率图模型课程的相当有难度,完成作业拿到证书还是很有挑战的,感兴趣的同学可以参考早期这门课程的评论:http://coursegraph.com/coursera_pgm

17. Coursera 上明尼苏达大学的推荐系统专项课程(Recommender Systems Specialization)

这个系列由5门子课程组成,目标是:Master Recommender Systems - Learn to design, build, and evaluate recommender systems for commerce and content. 该系列源自Coursera上早期的“推荐系统导论(Introduction to Recommender Systems), 评价很好,感兴趣的同学可以参考这门课程的评论 http://coursegraph.com/coursera_recsys

18. 韩国延世大学的文本挖掘与分析公开课“Hands-on Text Mining and Analytics”:

该课程授课语言为英语,试听了一下,授课老师语速比较慢,有口音,不过在可接受范围,感兴趣的同学可以关注

数据科学 & 数据挖掘

19. 密歇根大学推出的 Python数据科学应用(Applied Data Science with Python)专项课程系列

这个系列课程有5门课程,包括Python数据科学导论课程(Introduction to Data Science in Python)Python数据可视化(Applied Plotting, Charting & Data Representation in Python)Python机器学习(Applied Machine Learning in Python)Python文本挖掘(Applied Text Mining in Python) , Python社交网络分析(Applied Social Network Analysis in Python)

20. 约翰霍普金斯大学的数据科学专项课程系列:"Data Science 专项课程"

这个系列包括10门课程:The Data Scientist’s Toolbox(数据科学家的工具箱)R Programming(R编程) Getting and Cleaning Data(数据清洗和获取) Exploratory Data Analysis(数据分析初探) Reproducible Research(可重复研究) Statistical Inference(统计推断) Regression Models(回归模型) Practical Machine Learning(机器学习实践) Developing Data Products(数据产品开发) Data Science Capstone(数据科学毕业项目)

21. 伊利诺伊大学香槟分校的数据挖掘专项课程系列:Data Mining 专项课程

这个系列课程有6门课程,包括 Data Visualization(数据可视化)Text Retrieval and Search Engines(文本检索和搜索引擎)Text Mining and Analytics (文本挖掘和分析), 这两门课由翟成祥教授主讲; Pattern Discovery in Data Mining(数据挖掘中的模式发现) , Cluster Analysis in Data Mining(数据挖掘中的聚类分析)Data Mining Project(数据挖掘项目实践),这三门课程由韩家炜教授主讲

22. 加州大学圣地亚哥分校的"Big Data(大数据)专项课程"

这个系列包括6门课程,依次是 Introduction to Big Data(大数据导引)Big Data Modeling and Management Systems(大数据建模和管理系统)
Integration and Processing(大数据集成与处理)Machine Learning With Big Data(大数据机器学习)Graph Analytics for Big Data(大数据图形分析)Big Data - Capstone Project (大数据毕业项目)

23. 华盛顿大学的大规模数据科学专项课程(Data Science at Scale 专项课程):

这个系列包括3门子课程和1个毕业项目课程,目标是解决真正的数据挑战:“Tackle Real Data Challenges. Master computational, statistical, and informational data science in three courses”

24. Coursera上由俄罗斯搜索巨头Yandex推出的面向数据工程师的大数据专项课程(Big Data for Data Engineers Specialization)

这个专项系列包括5个子课程,涵盖HDFS, MapReduce, Spark, Hive, Spark SQL, 大规模机器学习,实时流处理等,都是实打实的干货,感兴趣的同学可以关注:面向数据工程师的大数据专项课程(Big Data for Data Engineers Specialization)

数学
数学也是基础,如果你觉得数学上没有底,那么可以补一补数学

25. 美国俄亥俄州立大学在Coursera上开设的微积分姊妹课刚刚:Calculus One(微积分一)Calculus Two: Sequences and Series(微积分二),这门课程是我学过的最有意思的微积分课程,老师的讲课很有意思,也有激情,所以语速感觉比较快。深度学习时代,数学依然是基础,强烈推荐这门微积分课程,无论是入门还是回顾。