作者归档:课程图谱

那些值得推荐和收藏的线性代数学习资源

关于线性代数的重要性,很多做机器学习的同学可能会感同身受,这里引用“牛人林达华推荐有关机器学习的数学书籍”这篇文章中关于线性代数的一段话:

线性代数 (Linear Algebra):

我想国内的大学生都会学过这门课程,但是,未必每一位老师都能贯彻它的精要。这门学科对于Learning是必备的基础,对它的透彻掌握是必不可少的。我在科大一年级的时候就学习了这门课,后来到了香港后,又重新把线性代数读了一遍,所读的是

Introduction to Linear Algebra (3rd Ed.) by Gilbert Strang.

这本书是MIT的线性代数课使用的教材,也是被很多其它大学选用的经典教材。它的难度适中,讲解清晰,重要的是对许多核心的概念讨论得比较透彻。我个人觉得,学习线性代数,最重要的不是去熟练矩阵运算和解方程的方法——这些在实际工作中MATLAB可以代劳,关键的是要深入理解几个基础而又重要的概念:子空间(Subspace),正交(Orthogonality),特征值和特征向量(Eigenvalues and eigenvectors),和线性变换(Linear transform)。从我的角度看来,一本线代教科书的质量,就在于它能否给这些根本概念以足够的重视,能否把它们的联系讲清楚。Strang的这本书在这方面是做得很好的。

而且,这本书有个得天独厚的优势。书的作者长期在MIT讲授线性代数课(18.06),课程的video在MIT的Open courseware网站上有提供。有时间的朋友可以一边看着名师授课的录像,一边对照课本学习或者复习。

https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/
(注:这里我修正了一下链接,原文链接已经没有了)

那么这里首推的线性代数学习资源就是 Gilbert Strang 教授的这门线性代数课程了,除了上面链接中官方主页的英文原版外,国内网易公开课也早已引进并有同步翻译。

1. 麻省理工公开课:线性代数

http://open.163.com/special/opencourse/daishu.html

课程介绍:

“线性代数”,同微积分一样,是高等数学中两大入门课程之一,不仅是一门非常好的数学课程,也是一门非常好的工具学科,在很多领域都有广泛的用途。它的研 究对象是向量,向量空间(或称线性空间),线性变换和有限维的线性方程组。本课程讲述了矩阵理论及线性代数的基本知识,侧重于那些与其他学科相关的内容, 包括方程组、向量空间、行列式、特征值、相似矩阵及正定矩阵。

课程主讲人:Gilbert Strang 教授

吉尔伯特-斯特朗:1934年11月27日出生,是美国享有盛誉的数学家,在有限元理论、变分法、小波分析及线性代数方面均有所建树。他对教育的贡献尤为 卓著,包括所著有的七部经典数学教材及一部专著。斯特朗自1962年至今担任麻省理工学院教授,其所授课程《线性代数导论》、《计算科学与工程》均在 MIT开放课程软件(MIT OpenCourseWare)中收录,获得广泛好评。

我大概在2013年学习过这门课程,也花了很多时间找这门课程的书籍资源,最终锁定了这本书的第四版英文版电子版:Introduction to Linear Algebra_4ED_Strang ,感兴趣的同学可以关注我们的公众号AINLP,后台回复"xiandai"获取下载链接。

2. 3Blue1Brown: Essence of linear algebra(线性代数的本质)

如果说上面 Gilbert Strang 教授的线性代数课程和书籍都是大部头,那么鼎鼎大名的3Blue1Brown出品的这个线性代数的本质系列视频就是开胃菜,总共14个小视频,视频控制在9-18分钟之间,很适合短时间快速温习。不过这套视频的评价也很高,以下是来自《3Blue1Brown:“线性代数的本质”完整笔记》的点评:

我最早系统地学习线性代数是在大二时候,当时特意选修了学校物理系开设的4学分的线代,大概也就是比我们自己专业的线代多了一章向量空间的内容,其实最后上完发现,整个课程内容还是偏向于计算,对线性代数的几何直觉少有提起,对线性代数的实际运用更是鲜有涉及。同济的那本薄薄的如同九阴真经一般的教材,把线性代数讲的云里雾里,当时一个人在自习教室度过多少不眠之夜,一点一点去思考其概念定理背后的实际意义,多半也是边猜边想,苦不堪言。直到多年以后,有幸在网上听到了MIT的Strang老师开设的线代公开课,才对一些基础概念渐渐明朗,虽然至今又过去了很多年,但是对一些本质的理解,依然清晰。
不过,仔细想想,国内的教材写的云里雾里,才促使了我自发的思考,如果一切得来太容易,也许就不会那么刻骨铭心。我很早之前就想过这个问题,国内的教科书作者简直就是在下一盘大棋,自己出版的书写的高深莫测,翻译国外的书又翻译的含糊曲折,那么留给学生的只有两条路,要么去看原版的英语书,要么就是自己一点点看云雾缭绕的国产书,边猜边想边证明,不管走哪条路,都能走向成功。

最近,在youtube上看到了3Blue1Brown的Essence of linear algebra这门课,有种如获至宝的感觉,整个课程的时间并不长,但是对线性代数的讲解却十分到位,有种浓缩版的Gilbert Strang线代课程的感觉。希望通过这个课程,重温一下Linear Algebra。

这个视频,可以在油管上看官方原版:Essence of linear algebra
也可以在B站上观看:线性代数的本质 - 01 - 向量究竟是什么?
https://www.bilibili.com/video/av5987715/

3. Immersive Linear Algebra

用交互式可视化方法学习数学估计是很多同学梦寐以求的,前两天看到这条微博:

《英文版的线性代数电子书:Immersive Linear Algebra》该书是今天 Hacker News 首页头条。号称是全球第一个全交互式图形的线代电子书。

所以在这里收藏一下,有空的同学可以试一下这个在线学习线性代数的网站,不过看似还有最后两个章节没有完成:http://immersivemath.com/ila/index.html

4. Matrix Algebra for Engineers

http://coursegraph.com/coursera-matrix-algebra-engineers

香港科技大学的面向工程师的矩阵代数(Matrix Algebra for Engineers),该课程介绍的全部是关于矩阵的知识,涵盖了工程师应该知道的线性代数相关知识。学习这门课程的前提是高中数学知识,最好完成了单变量微积分课程之后选修该课程效果更佳。

This course is all about matrices, and concisely covers the linear algebra that an engineer should know. We define matrices and how to add and multiply them, and introduce some special types of matrices. We describe the Gaussian elimination algorithm used to solve systems of linear equations and the corresponding LU decomposition of a matrix. We explain the concept of vector spaces and define the main vocabulary of linear algebra. We develop the theory of determinants and use it to solve the eigenvalue problem. After each video, there are problems to solve and I have tried to choose problems that exemplify the main idea of the lecture. I try to give enough problems for students to solidify their understanding of the material, but not so many that students feel overwhelmed and drop out. I do encourage students to attempt the given problems, but if they get stuck, full solutions can be found in the lecture notes for the course. The mathematics in this matrix algebra course is presented at the level of an advanced high school student, but typically students would take this course after completing a university-level single variable calculus course.

这门课程有个lecture-notes可以直接下载:
http://www.math.ust.hk/~machas/matrix-algebra-for-engineers.pdf

5. Mathematics for Machine Learning: Linear Algebra

http://coursegraph.com/coursera-linear-algebra-machine-learning

伦敦帝国理工学院的 面向机器学习的数学-线性代数课程(Mathematics for Machine Learning: Linear Algebra),这个课程属于Mathematics for Machine Learning Specialization 系列,该系列包含3门子课程,涵盖线性代数,多变量微积分,以及主成分分析(PCA),这个专项系列课程的目标是弥补数学与机器学习以及数据科学鸿沟:Mathematics for Machine Learning。Learn about the prerequisite mathematics for applications in data science and machine learning

In this course on Linear Algebra we look at what linear algebra is and how it relates to vectors and matrices. Then we look through what vectors and matrices are and how to work with them, including the knotty problem of eigenvalues and eigenvectors, and how to use these to solve problems. Finally we look at how to use these to do fun things with datasets - like how to rotate images of faces and how to extract eigenvectors to look at how the Pagerank algorithm works. Since we're aiming at data-driven applications, we'll be implementing some of these ideas in code, not just on pencil and paper. Towards the end of the course, you'll write code blocks and encounter Jupyter notebooks in Python, but don't worry, these will be quite short, focussed on the concepts, and will guide you through if you’ve not coded before. At the end of this course you will have an intuitive understanding of vectors and matrices that will help you bridge the gap into linear algebra problems, and how to apply these concepts to machine learning.

6. 可汗学院公开课:线性代数

http://open.163.com/special/Khan/linearalgebra.html

网易公开课引进翻译的可汗学院线性代数公开课,总共143集,每集短小精悍:

在这个课程里面,主讲者介绍了线性代数的很多内容,包括:矩阵,线性方程组,向量及其运算,向量空间,子空间,零空间,变换,秩与维数,正交化,特征值与特征向量,等等。以上这些内容是线性代数的关键内容,它们也被广泛地应用到现代科学当中。

关于线性代数学习资源,还有很多,这里仅仅抛砖引玉,欢迎大家留言提供线索。

最后,提供一个线性代数学习资源的“大礼包”,包括Gilbert Strang 教授线性代数英文教材第四版电子版,香港科技大学的面向工程师的矩阵代数课程notes,以及从其他地方收集的线性代数网盘资源,感兴趣的同学可以关注我们的公众号AINLP,回复"xiandai"获取:

注:本文首发于课程图谱,转载请注明出处“课程图谱博客”:http://blog.coursegraph.com

本文链接地址:那些值得推荐和收藏的线性代数学习资源 http://blog.coursegraph.com/?p=1014

Geoffrey Hinton 大神面向机器学习的神经网络公开课及相关视频资料

Geoffrey Hinton 大神的"面向机器学习的神经网络(Neural Networks for Machine Learning)"公开课早在2012年就在 Coursera 上开过一轮,之后一直沉寂,直到 Coursera 新课程平台上线,这门经典课程已开过多轮次,之前我们在《深度学习课程资源整理》隆重推荐过。

1月15日,Geoffrey Hinton 大神在twitter上宣布:

My Coursera MOOC "Neural Networks for Machine Learning" was prepared in 2012 and is now seriously out of date so I have asked them to discontinue the course. But the lectures are still a good introduction to many of the basic ideas and are available at https://www.cs.toronto.edu/~hinton/coursera_lectures.html

大意是这门在Coursera上的MOOC课程是在2012年准备的,现在有点过时了,所以要求他们(Coursera)停止提供这门课程。但是这门深度学习课程依然是介绍神经网络相关基础概念的好资料,所以课程视频依然保留在多伦多大学hinton大神的主页下,感兴趣的同学可以直接观看:https://www.cs.toronto.edu/~hinton/coursera_lectures.html

我试了一下Coursera,发现如果之前注册过,还能打开这门课程,但是一旦是非登录状态后,这门课程已经无法在Coursera上找到了:

https://www.coursera.org/learn/neural-networks

这样稍微有点遗憾,不能在Coursera上做相关的Quiz,感兴趣的同学可以参考课程图谱上早期关于这门课程的评论:

http://coursegraph.com/coursera_neuralnets

“宗派大师+开拓者直接讲课,秒杀一切二流子!”

“巨牛级别的人物来开课,我也不说啥了。”

“还有什么好说的呢?Deep Learning必修课程啊!”

该课程最后在Coursera上开课的时间大概在2018年11月份:

http://coursegraph.com/coursera-neural-networks

最后,如果你觉得访问多伦多Hinton教授主页那个教程页面不方便,这里提供早期从Coursera上下载的课程版本,包括视频、PPT、英文字幕等,关注AINLP公众号,回复“hinton"获取:

注:本文首发于“课程图谱博客”:http://blog.coursegraph.com

本文链接地址:Geoffrey Hinton 大神面向机器学习的神经网络公开课及相关视频资料 http://blog.coursegraph.com/?p=985

谷歌云平台上基于TensorFlow的高级机器学习专项课程

Coursera近期推了一门新专项课程:谷歌云平台上基于TensorFlow的高级机器学习专项课程(Advanced Machine Learning with TensorFlow on Google Cloud Platform Specialization),看起来很不错。这个系列包含5门子课程,涵盖端到端机器学习、生产环境机器学习系统、图像理解、面向时间序列和自然语言处理的序列模型、推荐系统等内容,感兴趣的同学可以关注:Learn Advanced Machine Learning with Google Cloud. Build production-ready machine learning models with TensorFlow on Google Cloud Platform.

课程链接:http://coursegraph.com/coursera-specializations-advanced-machine-learning-tensorflow-gcp
继续阅读

Andrew Ng 老师新推的通俗人工智能课程以及其他相关资料

Andrew Ng 老师是我的偶像,他在普及机器学习和深度学习的道路上纵情向前,这不他又在 Coursera 上新推了一门通俗人工智能课程:AI For Everyone(全民AI) :

http://coursegraph.com/coursera-ai-for-everyone

这门课程面向大众进行AI科普,将于2019年年初开课,目前已经可以注册课程。AI不仅适用于工程师,这门非技术性人工智能课程将帮助学习者了解机器学习和深度学习等相关技术,以及将AI应用于自己组织中的问题和机会。 通过这门课程,学习者将会了解当前人工智能可以或者不能做的事情。最后,学习者将了解AI如何影响社会以及我们将如何应对这种技术变革。

AI is not only for engineers. This non-technical course will help you understand technologies like machine learning and deep learning and spot opportunities to apply AI to problems in your own organization. You will see examples of what today’s AI can – and cannot – do. Finally, you will understand how AI is impacting society and how to navigate through this technological change.

If you are a non-technical business leader, “AI for Everyone” will help you understand how to build a sustainable AI strategy. If you are a machine learning engineer or data scientist, this is the course to ask your manager, VP or CEO to take if you want them to understand what you can (and cannot!) do.

继续阅读

Coursera专项课程推荐:金融中的机器学习和强化学习

Coursera近期新推了一个金融和机器学习的专项课程系列:Machine Learning and Reinforcement Learning in Finance Specialization(金融中的机器学习和强化学习),看起来很有意思。

课程链接:http://coursegraph.com/coursera-specializations-machine-learning-reinforcement-finance

这个专项课程的主要目标是为金融相关的机器学习核心范式和算法奠定坚实的基础而提供必要的知识和实战技能,特别关注机器学习在金融投资中不同的实际问题中的应用。

该系列旨在帮助学生解决他们在现实生活中可能遇到的实际的机器学习问题,包括:

(1)将问题映射到可用的机器学习方法的泛化场景,

(2)选择最适合解决问题的特定机器学习方法,以及

(3)成功实施解决方案,并评估其性能。

该专业课程面向三类学生设计:

· 在银行,资产管理公司或对冲基金等金融机构工作的从业人员

· 对将机器学习应用于日内交易感兴趣的个人

· 目前正在攻读金融学,统计学,计算机科学,数学,物理学,工程学或其他相关学科的学位的全日制学生,这些学生希望了解机器学习在金融领域的实际应用。
继续阅读

Coursera上数据科学相关课程(公开课)汇总推荐

Coursera上的数据科学课程有很多,这里汇总一批。

1、 Introduction to Data Science Specialization

IBM公司推出的数据科学导论专项课程系列(Introduction to Data Science Specialization),这个系列包括4门子课程,涵盖数据科学简介,面向数据科学的开源工具,数据科学方法论,SQL基础,感兴趣的同学可以关注:Launch your career in Data Science。Data Science skills to prepare for a career or further advanced learning in Data Science.

1) What is Data Science?
2) Open Source tools for Data Science
3) Data Science Methodology
4) Databases and SQL for Data Science

2、Applied Data Science Specialization

IBM公司推出的 应用数据科学专项课程系列(Applied Data Science Specialization),这个系列包括4门子课程,涵盖面向数据科学的Python,Python数据可视化,Python数据分析,数据科学应用毕业项目,感兴趣的同学可以关注:Get hands-on skills for a Career in Data Science。Learn Python, analyze and visualize data. Apply your skills to data science and machine learning.

1) Python for Data Science
2) Data Visualization with Python
3) Data Analysis with Python
4) Applied Data Science Capstone

3、Applied Data Science with Python Specialization

密歇根大学的Python数据科学应用专项课程系列(Applied Data Science with Python),这个系列的目标主要是通过Python编程语言介绍数据科学的相关领域,包括应用统计学,机器学习,信息可视化,文本分析和社交网络分析等知识,并结合一些流行的Python工具包进行讲授,例如pandas, matplotlib, scikit-learn, nltk以及networkx等Python工具。感兴趣的同学可以关注:Gain new insights into your data-Learn to apply data science methods and techniques, and acquire analysis skills.

1) Introduction to Data Science in Python
2) Applied Plotting, Charting & Data Representation in Python
3) Applied Machine Learning in Python
4) Applied Text Mining in Python
5) Applied Social Network Analysis in Python

4、Data Science Specialization

约翰霍普金斯大学的数据科学专项课程系列(Data Science Specialization),这个系列课程有10门子课程,包括数据科学家的工具箱,R语言编程,数据清洗和获取,数据分析初探,可重复研究,统计推断,回归模型,机器学习实践,数据产品开发,数据科学毕业项目,感兴趣的同学可以关注: Launch Your Career in Data Science-A nine-course introduction to data science, developed and taught by leading professors.

1) The Data Scientist’s Toolbox
2) R Programming
3) Getting and Cleaning Data
4) Exploratory Data Analysis
5) Reproducible Research
6) Statistical Inference
7) Regression Models
8) Practical Machine Learning
9) Developing Data Products
10) Data Science Capstone

5、Data Science at Scale Specialization

华盛顿大学的大规模数据科学专项课程系列(Data Science at Scale ),这个系列包括3门子课程和1个毕业项目课程,包括大规模数据系统和算法,数据分析模型与方法,数据科学结果分析等,感兴趣的同学可以关注: Tackle Real Data Challenges-Master computational, statistical, and informational data science in three courses.

1) Data Manipulation at Scale: Systems and Algorithms
2) Practical Predictive Analytics: Models and Methods
3) Communicating Data Science Results
4) Data Science at Scale – Capstone Project

6、Advanced Data Science with IBM Specialization

IBM公司推出的高级数据科学专项课程系列(Advanced Data Science with IBM Specialization),这个系列包括4门子课程,涵盖数据科学基础,高级机器学习和信号处理,结合深度学习的人工智能应用等,感兴趣的同学可以关注:Expert in DataScience, Machine Learning and AI。Become an IBM-approved Expert in Data Science, Machine Learning and Artificial Intelligence.

1) Fundamentals of Scalable Data Science
2) Advanced Machine Learning and Signal Processing
3) Applied AI with DeepLearning
4) Advanced Data Science Capstone

7、Data Mining Specialization

伊利诺伊大学香槟分校的数据挖掘专项课程系列(Data Mining Specialization),这个系列包含5门子课程和1个毕业项目课程,涵盖数据可视化,信息检索,文本挖掘与分析,模式发现和聚类分析等,感兴趣的同学可以关注:Data Mining Specialization-Analyze Text, Discover Patterns, Visualize Data. Solve real-world data mining challenges.

1) Data Visualization
2) Text Retrieval and Search Engines
3) Text Mining and Analytics
4) Pattern Discovery in Data Mining
5) Cluster Analysis in Data Mining
6) Data Mining Project

8、Data Analysis and Interpretation Specialization

数据分析和解读专项课程系列(Data Analysis and Interpretation Specialization),该系列包括5门子课程,分别是数据管理和可视化,数据分析工具,回归模型,机器学习,毕业项目,感兴趣的同学可以关注:Learn Data Science Fundamentals-Drive real world impact with a four-course introduction to data science.

1) Data Management and Visualization
2) Data Analysis Tools
3) Regression Modeling in Practice
4) Machine Learning for Data Analysis
5) Data Analysis and Interpretation Capstone

9、Executive Data Science Specialization

可管理的数据科学专项课程系列(Executive Data Science Specialization),这个系列包含4门子课程和1门毕业项目课程,涵盖数据科学速成,数据科学小组建设,数据分析管理,现实生活中的数据科学等,感兴趣的同学可以关注:Be The Leader Your Data Team Needs-Learn to lead a data science team that generates first-rate analyses in four courses.

1)A Crash Course in Data Science
2)Building a Data Science Team
3)Managing Data Analysis
4)Data Science in Real Life
5)Executive Data Science Capstone

10、其他相关的数据科学课程

1) Data Science Math Skills
2) Data Science Ethics
3) How to Win a Data Science Competition: Learn from Top Kagglers

注:本文首发“课程图谱博客”:http://blog.coursegraph.com

同步发布到这里, 本本文链接地址:http://blog.coursegraph.com/coursera上数据科学相关课程数据科学公开课汇总推荐 http://blog.coursegraph.com/?p=851

Coursera上数学类相关课程(公开课)汇总推荐

数学课程是基础,Coursera上有很多数学公开课,这里做个汇总,注意由于Coursera上有一批很有特色的统计学相关的数学课程,我们将在下一期里单独汇总。

1 斯坦福大学 Introduction to Mathematical Thinking(数学思维导论)

http://coursegraph.com/coursera-mathematical-thinking

引用老版课程一个同学的评价,供参考:

这门课是高中数学到大学数学的一个过度。高中数学一般重计算不太注重证明,这门课讲了基本的逻辑,数学语言(两个 quantifier,there exists, for all)和证明的几个基本方法,比如证明充要条件要从两个方向证、证伪只需要举个反例,原命题不好证的时候可以证等价的逆否命题以及很常用的数学归纳法。课程讲了数论里一些基本定理,然后通过让你证一些看起来显然而不需要证明的证明题来训练你证明的技能和逻辑思考的能力,看起来显然的命题也是要证明才能说服人的,课程最后简略的讲了下数学分析里面实数的引入,但这部分讲的不完整。Keith Devlin 是个 old school 的讲师,上课只用纸和笔,也是属于比较热情的讲师,他每周都会录几个答疑的视频。这门比较适合大一的新生上,开得也比较频繁。

课程简介:

Learn how to think the way mathematicians do – a powerful cognitive process developed over thousands of years. Mathematical thinking is not the same as doing mathematics – at least not as mathematics is typically presented in our school system. School math typically focuses on learning procedures to solve highly stereotyped problems. Professional mathematicians think a certain way to solve real problems, problems that can arise from the everyday world, or from science, or from within mathematics itself. The key to success in school math is to learn to think inside-the-box. In contrast, a key feature of mathematical thinking is thinking outside-the-box – a valuable ability in today’s world. This course helps to develop that crucial way of thinking.

2 加州大学尔湾分校 初级微积分系列课程

1)Pre-Calculus: Functions(初级微积分:函数)

http://coursegraph.com/coursera-pre-calculus

This course covers mathematical topics in college algebra, with an emphasis on functions. The course is designed to help prepare students to enroll for a first semester course in single variable calculus. Upon completing this course, you will be able to: 1. Solve linear and quadratic equations 2. Solve some classes of rational and radical equations 3. Graph polynomial, rational, piece-wise, exponential and logarithmic functions 4. Find integer roots of polynomial equations 5. Solve exponential and logarithm equations 6. Understand the inverse relations between exponential and logarithm equations 7. Compute values of exponential and logarithm expressions using basic properties

2)Pre-Calculus: Trigonometry(初级微积分:三角)

http://coursegraph.com/coursera-trigonometry

This course covers mathematical topics in trigonometry. Trigonometry is the study of triangle angles and lengths, but trigonometric functions have far reaching applications beyond simple studies of triangles. This course is designed to help prepare students to enroll for a first semester course in single variable calculus. Upon completing this course, you will be able to: 1. Evaluate trigonometric functions using the unit circle and right triangle approaches 2. Solve trigonometric equations 3. Verify trigonometric identities 4. Prove and use basic trigonometric identities. 5. Manipulate trigonometric expressions using standard identities 6. Solve right triangles 7. Apply the Law of Sines and the Law of Cosines

3 宾夕法尼亚大学的 单变量微积分系列课程

1)Calculus: Single Variable Part 1 - Functions(单变量微积分1:函数)
http://coursegraph.com/coursera-single-variable-calculus

Calculus is one of the grandest achievements of human thought, explaining everything from planetary orbits to the optimal size of a city to the periodicity of a heartbeat. This brisk course covers the core ideas of single-variable Calculus with emphases on conceptual understanding and applications. The course is ideal for students beginning in the engineering, physical, and social sciences. Distinguishing features of the course include: 1) the introduction and use of Taylor series and approximations from the beginning; 2) a novel synthesis of discrete and continuous forms of Calculus; 3) an emphasis on the conceptual over the computational; and 4) a clear, dynamic, unified approach. In this first part--part one of five--you will extend your understanding of Taylor series, review limits, learn the *why* behind l'Hopital's rule, and, most importantly, learn a new language for describing growth and decay of functions: the BIG O.

2)Calculus: Single Variable Part 2 - Differentiation(单变量微积分2:微分)

http://coursegraph.com/coursera-differentiation-calculus

Calculus is one of the grandest achievements of human thought, explaining everything from planetary orbits to the optimal size of a city to the periodicity of a heartbeat. This brisk course covers the core ideas of single-variable Calculus with emphases on conceptual understanding and applications. The course is ideal for students beginning in the engineering, physical, and social sciences. Distinguishing features of the course include: 1) the introduction and use of Taylor series and approximations from the beginning; 2) a novel synthesis of discrete and continuous forms of Calculus; 3) an emphasis on the conceptual over the computational; and 4) a clear, dynamic, unified approach. In this second part--part two of five--we cover derivatives, differentiation rules, linearization, higher derivatives, optimization, differentials, and differentiation operators.

3)Calculus: Single Variable Part 3 - Integration(单变量微积分3:积分)

http://coursegraph.com/coursera-integration-calculus

Calculus is one of the grandest achievements of human thought, explaining everything from planetary orbits to the optimal size of a city to the periodicity of a heartbeat. This brisk course covers the core ideas of single-variable Calculus with emphases on conceptual understanding and applications. The course is ideal for students beginning in the engineering, physical, and social sciences. Distinguishing features of the course include: 1) the introduction and use of Taylor series and approximations from the beginning; 2) a novel synthesis of discrete and continuous forms of Calculus; 3) an emphasis on the conceptual over the computational; and 4) a clear, dynamic, unified approach. In this third part--part three of five--we cover integrating differential equations, techniques of integration, the fundamental theorem of integral calculus, and difficult integrals.

4) Calculus: Single Variable Part 4 - Applications(单变量微积分4:应用)

http://coursegraph.com/coursera-applications-calculus

Calculus is one of the grandest achievements of human thought, explaining everything from planetary orbits to the optimal size of a city to the periodicity of a heartbeat. This brisk course covers the core ideas of single-variable Calculus with emphases on conceptual understanding and applications. The course is ideal for students beginning in the engineering, physical, and social sciences. Distinguishing features of the course include: 1) the introduction and use of Taylor series and approximations from the beginning; 2) a novel synthesis of discrete and continuous forms of Calculus; 3) an emphasis on the conceptual over the computational; and 4) a clear, dynamic, unified approach. In this fourth part--part four of five--we cover computing areas and volumes, other geometric applications, physical applications, and averages and mass. We also introduce probability.

4 杜克大学 Data Science Math Skills(数据科学中的数学技巧)

http://coursegraph.com/coursera-datasciencemathskills

这门课程主要介绍数据科学中涉及的相关数学概念,让学生了解基本的数学概念,掌握基本的数学语言,内容涵盖集合论、求和的Sigma符号、数学上的笛卡尔(x,y)平面、指数、对数和自然对数函数,概率论以及叶斯定理等:

Data science courses contain math—no avoiding that! This course is designed to teach learners the basic math you will need in order to be successful in almost any data science math course and was created for learners who have basic math skills but may not have taken algebra or pre-calculus. Data Science Math Skills introduces the core math that data science is built upon, with no extra complexity, introducing unfamiliar ideas and math symbols one-at-a-time. Learners who complete this course will master the vocabulary, notation, concepts, and algebra rules that all data scientists must know before moving on to more advanced material.

5 加州大学圣迭戈分校 Introduction to Discrete Mathematics for Computer Science Specialization(面向计算机科学的离散数学专项课程)

http://coursegraph.com/coursera-specializations-discrete-mathematics

面向计算机科学的离散数学专项课程(Introduction to Discrete Mathematics for Computer Science Specialization),这个系列包含5门子课程,涵盖证明、组合数学与概率、图论,数论和密码学,配送问题项目等,感兴趣的同学可以关注: Build a Foundation for Your Career in IT-Master the math powering our lives and prepare for your software engineer or security analyst career

Discrete Math is needed to see mathematical structures in the object you work with, and understand their properties. This ability is important for software engineers, data scientists, security and financial analysts (it is not a coincidence that math puzzles are often used for interviews). We cover the basic notions and results (combinatorics, graphs, probability, number theory) that are universally needed. To deliver techniques and ideas in discrete mathematics to the learner we extensively use interactive puzzles specially created for this specialization. To bring the learners experience closer to IT-applications we incorporate programming examples, problems and projects in our courses.

1) What is a Proof(什么是证明)

http://coursegraph.com/coursera-what-is-a-proof

There is a perceived barrier to mathematics: proofs. In this course we will try to convince you that this barrier is more frightening than prohibitive: most proofs are easy to understand if explained correctly, and often they are even fun. We provide an accompanied excursion in the “proof zoo” showing you examples of techniques of different kind applied to different topics. We use some puzzles as examples, not because they are “practical”, but because discussing them we learn important reasoning and problem solving techniques that are useful. We hope you enjoy playing with the puzzles and inventing/understandings the proofs. As prerequisites we assume only basic math (e.g., we expect you to know what is a square or how to add fractions), basic programming in python (functions, loops, recursion), common sense and curiosity. Our intended audience are all people that work or plan to work in IT, starting from motivated high school students.

2)Combinatorics and Probability(组合和概率)

Counting is one of the basic mathematically related tasks we encounter on a day to day basis. The main question here is the following. If we need to count something, can we do anything better than just counting all objects one by one? Do we need to create a list of all phone numbers to ensure that there are enough phone numbers for everyone? Is there a way to tell that our algorithm will run in a reasonable time before implementing and actually running it? All these questions are addressed by a mathematical field called Combinatorics. In this course we discuss most standard combinatorial settings that can help to answer questions of this type. We will especially concentrate on developing the ability to distinguish these settings in real life and algorithmic problems. This will help the learner to actually implement new knowledge. Apart from that we will discuss recursive technique for counting that is important for algorithmic implementations. One of the main `consumers’ of Combinatorics is Probability Theory. This area is connected with numerous sides of life, on one hand being an important concept in everyday life and on the other hand being an indispensable tool in such modern and important fields as Statistics and Machine Learning. In this course we will concentrate on providing the working knowledge of basics of probability and a good intuition in this area. The practice shows that such an intuition is not easy to develop. In the end of the course we will create a program that successfully plays a tricky and very counterintuitive dice game. As prerequisites we assume only basic math (e.g., we expect you to know what is a square or how to add fractions), basic programming in python (functions, loops, recursion), common sense and curiosity. Our intended audience are all people that work or plan to work in IT, starting from motivated high school students.

3)Introduction to Graph Theory(图论导论)

We invite you to a fascinating journey into Graph Theory — an area which connects the elegance of painting and the rigor of mathematics; is simple, but not unsophisticated. Graph Theory gives us, both an easy way to pictorially represent many major mathematical results, and insights into the deep theories behind them. In this course, among other intriguing applications, we will see how GPS systems find shortest routes, how engineers design integrated circuits, how biologists assemble genomes, why a political map can always be colored using a few colors. We will study Ramsey Theory which proves that in a large system, complete disorder is impossible! By the end of the course, we will implement an algorithm which finds an optimal assignment of students to schools. This algorithm, developed by David Gale and Lloyd S. Shapley, was later recognized by the conferral of Nobel Prize in Economics. As prerequisites we assume only basic math (e.g., we expect you to know what is a square or how to add fractions), basic programming in python (functions, loops, recursion), common sense and curiosity. Our intended audience are all people that work or plan to work in IT, starting from motivated high school students.

4) Number Theory and Cryptography(数论和密码学)

We all learn numbers from the childhood. Some of us like to count, others hate it, but any person uses numbers everyday to buy things, pay for services, estimated time and necessary resources. People have been wondering about numbers’ properties for thousands of years. And for thousands of years it was more or less just a game that was only interesting for pure mathematicians. Famous 20th century mathematician G.H. Hardy once said “The Theory of Numbers has always been regarded as one of the most obviously useless branches of Pure Mathematics”. Just 30 years after his death, an algorithm for encryption of secret messages was developed using achievements of number theory. It was called RSA after the names of its authors, and its implementation is probably the most frequently used computer program in the word nowadays. Without it, nobody would be able to make secure payments over the internet, or even log in securely to e-mail and other personal services. In this short course, we will make the whole journey from the foundation to RSA in 4 weeks. By the end, you will be able to apply the basics of the number theory to encrypt and decrypt messages, and to break the code if one applies RSA carelessly. You will even pass a cryptographic quest! As prerequisites we assume only basic math (e.g., we expect you to know what is a square or how to add fractions), basic programming in python (functions, loops, recursion), common sense and curiosity. Our intended audience are all people that work or plan to work in IT, starting from motivated high school students.

5)Solving Delivery Problem(解决旅行商问题)

http://coursegraph.com/coursera-delivery-problem

We’ll implement together an efficient program for a problem needed by delivery companies all over the world millions times per day — the travelling salesman problem. The goal in this problem is to visit all the given places as quickly as possible. How to find an optimal solution to this problem quickly? We still don’t have provably efficient algorithms for this difficult computational problem and this is the essence of the P versus NP problem, the most important open question in Computer Science. Still, we’ll implement several efficient solutions for real world instances of the travelling salesman problem. While designing these solutions, we will rely heavily on the material learned in the courses of the specialization: proof techniques, combinatorics, probability, graph theory. We’ll see several examples of using discrete mathematics ideas to get more and more efficient solutions.

6 伦敦帝国理工学院 Mathematics for Machine Learning Specialization(面向机器学习的数学专项课程系列)

http://coursegraph.com/coursera-specializations-mathematics-machine-learning

伦敦帝国理工学院的面向机器学习的数学专项课程系列(Mathematics for Machine Learning Specialization),该系列包含3门子课程,涵盖线性代数,多变量微积分,以及主成分分析(PCA),这个专项系列课程的目标是弥补数学与机器学习以及数据科学鸿沟,感兴趣的同学可以关注:Mathematics for Machine Learning。Learn about the prerequisite mathematics for applications in data science and machine learning

For a lot of higher level courses in Machine Learning and Data Science, you find you need to freshen up on the basics in maths - stuff you may have studied before in school or university, but which was taught in another context, or not very intuitively, such that you struggle to relate it to how it’s used in Computer Science. This specialisation aims to bridge that gap, getting you up to speed in the underlying maths, building an intuitive understanding, and relating it to Machine Learning and Data Science. In the first course on Linear Algebra we look at what linear algebra is and how it relates to data. Then we look through what vectors and matrices are and how to work with them. The second course, Multivariate Calculus, builds on this to look at how to optimise fitting functions to get good fits to data. It starts from introductory calculus and then uses the matrices and vectors from the first course to look at data fitting. The third course, Dimensionality Reduction with Principal Components Analysis, uses the maths from the first two courses to do simple optimisation for the situation where you don’t have an understanding of how the data variables relate to each other. At the end of this specialisation you will have gained the prerequisite mathematical knowledge to continue your journey and take more advanced courses in machine learning.

1) Mathematics for Machine Learning: Linear Algebra(面向机器学习的数学:线性代数)

http://coursegraph.com/coursera-linear-algebra-machine-learning

In this course on Linear Algebra we look at what linear algebra is and how it relates to vectors and matrices. Then we look through what vectors and matrices are and how to work with them, including the knotty problem of eigenvalues and eigenvectors, and how to use these to solve problems. Finally we look at how to use these to do fun things with datasets - like how to rotate images of faces and how to extract eigenvectors to look at how the Pagerank algorithm works. Since we're aiming at data-driven applications, we'll be implementing some of these ideas in code, not just on pencil and paper. Towards the end of the course, you'll write code blocks and encounter Jupyter notebooks in Python, but don't worry, these will be quite short, focussed on the concepts, and will guide you through if you’ve not coded before. At the end of this course you will have an intuitive understanding of vectors and matrices that will help you bridge the gap into linear algebra problems, and how to apply these concepts to machine learning.

2)Mathematics for Machine Learning: Multivariate Calculus(面向机器学习的数学:多变量微积分)

http://coursegraph.com/coursera-multivariate-calculus-machine-learning

This course offers a brief introduction to the multivariate calculus required to build many common machine learning techniques. We start at the very beginning with a refresher on the “rise over run” formulation of a slope, before converting this to the formal definition of the gradient of a function. We then start to build up a set of tools for making calculus easier and faster. Next, we learn how to calculate vectors that point up hill on multidimensional surfaces and even put this into action using an interactive game. We take a look at how we can use calculus to build approximations to functions, as well as helping us to quantify how accurate we should expect those approximations to be. We also spend some time talking about where calculus comes up in the training of neural networks, before finally showing you how it is applied in linear regression models. This course is intended to offer an intuitive understanding of calculus, as well as the language necessary to look concepts up yourselves when you get stuck. Hopefully, without going into too much detail, you’ll still come away with the confidence to dive into some more focused machine learning courses in future.

3)Mathematics for Machine Learning: PCA(面向机器学习的数学:主成分分析)

http://coursegraph.com/coursera-pca-machine-learning

This course introduces the mathematical foundations to derive Principal Component Analysis (PCA), a fundamental dimensionality reduction technique. We'll cover some basic statistics of data sets, such as mean values and variances, we'll compute distances and angles between vectors using inner products and derive orthogonal projections of data onto lower-dimensional subspaces. Using all these tools, we'll then derive PCA as a method that minimizes the average squared reconstruction error between data points and their reconstruction. At the end of this course, you'll be familiar with important mathematical concepts and you can implement PCA all by yourself. If you’re struggling, you’ll find a set of jupyter notebooks that will allow you to explore properties of the techniques and walk you through what you need to do to get on track. If you are already an expert, this course may refresh some of your knowledge.

注:本文首发“课程图谱博客”:http://blog.coursegraph.com

同步发布到这里, 本文链接地址:http://blog.coursegraph.com/coursera上数学类相关课程数学公开课汇总推荐 http://blog.coursegraph.com/?p=804

Coursera上博弈论相关课程(公开课)汇总推荐

博弈论(Game Theory)很有意思,大家可能首先想到的就是赌博,据说博弈论最早源于赌博策略和数学,下面是来自维基百科的解释:

博弈论(英语:game theory),又译为对策论,或者赛局理论,应用数学的一个分支,1944年冯·诺伊曼与奥斯卡·摩根斯特恩合著《博弈论与经济行为》,标志着现代系统博弈理论的的初步形成,因此他被称为“博弈论之父”。博弈论被认为是20世纪经济学最伟大的成果之一。目前在生物学、经济学、国际关系、计算机科学、政治学、军事战略和其他很多学科都有广泛的应用。主要研究公式化了的激励结构(游戏或者博弈)间的相互作用。是研究具有斗争或竞争性质现象的数学理论和方法。也是运筹学的一个重要学科。

作为互联网广告研发人员,应该或多或少了解一点计算广告学,其中支撑Google, 百度等互联网巨头广告业务的竞价排名机制的核心之一就是博弈论。另外经济学中有很多博弈论的影子,电影“美丽心灵”中的主角数学家约翰纳什,由于他与另外两位数学家在非合作博弈的均衡分析理论方面做出了开创性的贡献,对博弈论和经济学产生了重大影响,而获得1994年诺贝尔经济学奖,纳什均衡则是博弈论课程中不可或缺的一节课。Coursera上有好几门博弈论(Game Theory)相关的课程,这里做个汇总整理。

1. 斯坦福大学的 博弈论(Game Theory)

这门课程早在Coursera诞生之初就有了,后经多次优化,现在有上和下两个部分,这门课程属于博弈论上,重在博弈论基础,需要学习者有一定的数学思维和数学基础,例如基础的概率理论和一些微积分基础知识:

This course is aimed at students, researchers, and practitioners who wish to understand more about strategic interactions. You must be comfortable with mathematical thinking and rigorous arguments. Relatively little specific math is required; but you should be familiar with basic probability theory (for example, you should know what a conditional probability is), and some very light calculus would be helpful.

2. 斯坦福大学的 博弈论二: 高级应用(Game Theory II: Advanced Applications)

上门博弈论课程的续集,关注博弈论的应用,包括机制设计,拍卖机制等:

Popularized by movies such as "A Beautiful Mind", game theory is the mathematical modeling of strategic interaction among rational (and irrational) agents. Over four weeks of lectures, this advanced course considers how to design interactions between agents in order to achieve good social outcomes. Three main topics are covered: social choice theory (i.e., collective decision making and voting systems), mechanism design, and auctions. In the first week we consider the problem of aggregating different agents' preferences, discussing voting rules and the challenges faced in collective decision making. We present some of the most important theoretical results in the area: notably, Arrow's Theorem, which proves that there is no "perfect" voting system, and also the Gibbard-Satterthwaite and Muller-Satterthwaite Theorems. We move on to consider the problem of making collective decisions when agents are self interested and can strategically misreport their preferences. We explain "mechanism design" -- a broad framework for designing interactions between self-interested agents -- and give some key theoretical results. Our third week focuses on the problem of designing mechanisms to maximize aggregate happiness across agents, and presents the powerful family of Vickrey-Clarke-Groves mechanisms. The course wraps up with a fourth week that considers the problem of allocating scarce resources among self-interested agents, and that provides an introduction to auction theory.

3. 东京大学的 博弈论入门课程(Welcome to Game Theory)

入门级博弈论课程,由东京大学推出,英文授课:

This course provides a brief introduction to game theory. Our main goal is to understand the basic ideas behind the key concepts in game theory, such as equilibrium, rationality, and cooperation. The course uses very little mathematics, and it is ideal for those who are looking for a conceptual introduction to game theory. Business competition, political campaigns, the struggle for existence by animals and plants, and so on, can all be regarded as a kind of “game,” in which individuals try to do their best against others. Game theory provides a general framework to describe and analyze how individuals behave in such “strategic” situations. This course focuses on the key concepts in game theory, and attempts to outline the informal basic ideas that are often hidden behind mathematical definitions. Game theory has been applied to a number of disciplines, including economics, political science, psychology, sociology, biology, and computer science. Therefore, a warm welcome is extended to audiences from all fields who are interested in what game theory is all about.

4. 佐治亚理工学院的 组合博弈论(Games without Chance: Combinatorial Game Theory)

这门课程主要关注组合博弈论,覆盖不靠运气游戏背后的数学理论和分析:This course will cover the mathematical theory and analysis of simple games without chance moves.

本课程将讲解如何运用数学理论,分析不含运气步骤(随机步骤)的简单游戏。本课程将探索不含运气步骤(随机步骤)的两个玩家游戏中的数学理论。我们将讨论如何简化游戏,什么情况下游戏等同于数字运算,以及怎样的游戏才算公正。许多例子都是有关一此简单的游戏,有的你可能还没有听说过:Hackenbush(“无向图删边”游戏)、Nim(“拈”游戏)、Push(推箱子游戏)、Toads and Frogs(“蟾蜍和青蛙”游戏),等。虽然完成这门课程并不能让你成为国际象棋或围棋高手,但是会让你更深入了解游戏的结构。

5. 国立台湾大学的 实验经济学: 行为博弈论 (Experimental Economics I: Behavioral Game Theory)

台湾大学王道一副教授 (Associate Professor)的实验经济学课程-行为博弈论:

人是否会如同理论经济学的预测进行决策?这门课将透过每周的课程视频以及课后作业带你了解实验经济学的基本概念。每周将会有习题练习以及指定阅读的期刊论文。你将会参与一些在线的实验、报告论文并且互评其他同学的报告。❖课程介绍(About the course)这是一门进阶的经济学课程,课程目标为介绍实验经济学的基本概念,并且让学生们能开始在这个领域从事自己的相关研究。详细课程目标如下:1.实验经济学的介绍:在上完这堂课之后,学生应能列举经济学各个领域的数个知名实验,并且解释实验结果如何验证或否证经济理论及其他实地数据。2.评论近期相关领域研究:上完这堂课之后,学生应能阅读并评论实验经济学相关的期刊论文。在课堂中,学生将会阅读指定的期刊论文,并且(在视频中)亲自上台报告一篇论文。❖授课形式(Course format)1.本堂课将以视频的形式为主,搭配课后作业的形式来进行。每个同学将阅读一篇实验经济学论文,并录像成两段各10分钟的介绍视频并后上传至Coursera(或上传到Youku,再复制连接到作业上传区)。第一段期中报告视频请同学介绍该论文所描述的实验设计,第二段,也就是期末报告视频则介绍实验结果。此外每位同学至少需观看其他两位同学的呈现内容,并给予评论。2.这堂课将简单地运用以下赛局(博弈)概念:奈许均衡/纳什均衡(Nash Equilibrium)混合策略均衡(Mixed Strategy Equilibrium)子赛局完美均衡/子博弈精练纳什均衡(SPNE)共识/共同知识(Common Knowledge)信念(Belief)

注:本文首发“课程图谱博客”:http://blog.coursegraph.com
同步发布到这里, 本文链接地址:http://blog.coursegraph.com/coursera上博弈论课程博弈论公开课汇总推荐 http://blog.coursegraph.com/?p=782

Coursera上数据结构 & 算法课程(公开课)汇总推荐

数据结构和算法是基本功,Coursera上有很多数据结构和算法方面的经典课程,这里做个总结。

1. 普林斯顿大学 Sedgewick 教授的 算法1: Algorithms, Part I

这门算法课程已经开过很多轮,好评如潮 ,应该算得上是 Coursera 上的明星算法课程了,感兴趣的同学可以参考课程图谱上的旧版 课程评论,强烈推荐:

This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.

2. 普林斯顿大学 Sedgewick 教授的 算法2: Algorithms, Part II

系列课程,依然强烈推荐,感兴趣的同学可以参考早期课程的评价:http://coursegraph.com/coursera_algs4partII

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

This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.

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

斯坦福大学的算法专项课程系列(Algorithms Specialization),这个系列包含4门子课程,涵盖基础的算法主题和高级算法主题,此前评价非常高,五颗星推荐,感兴趣的同学可以关注: Learn To Think Like A Computer Scientist-Master the fundamentals of the design and analysis of algorithms.

Algorithms are the heart of computer science, and the subject has countless practical applications as well as intellectual depth. This specialization is an introduction to algorithms for learners with at least a little programming experience. The specialization is rigorous but emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details. After completing this specialization, you will be well-positioned to ace your technical interviews and speak fluently about algorithms with other programmers and computer scientists. About the instructor: Tim Roughgarden has been a professor in the Computer Science Department at Stanford University since 2004. He has taught and published extensively on the subject of algorithms and their applications.

可参考老版课程评论:Algorithms: Design and Analysis, Part 1Algorithms: Design and Analysis, Part 2

3.1 Divide and Conquer, Sorting and Searching, and Randomized Algorithms

The primary topics in this part of the specialization are: asymptotic ("Big-oh") notation, sorting and searching, divide and conquer (master method, integer and matrix multiplication, closest pair), and randomized algorithms (QuickSort, contraction algorithm for min cuts).

3.2 Graph Search, Shortest Paths, and Data Structures

The primary topics in this part of the specialization are: data structures (heaps, balanced search trees, hash tables, bloom filters), graph primitives (applications of breadth-first and depth-first search, connectivity, shortest paths), and their applications (ranging from deduplication to social network analysis).

3.3 Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

The primary topics in this part of the specialization are: greedy algorithms (scheduling, minimum spanning trees, clustering, Huffman codes) and dynamic programming (knapsack, sequence alignment, optimal search trees).

3.4 Shortest Paths Revisited, NP-Complete Problems and What To Do About Them

The primary topics in this part of the specialization are: shortest paths (Bellman-Ford, Floyd-Warshall, Johnson), NP-completeness and what it means for the algorithm designer, and strategies for coping with computationally intractable problems (analysis of heuristics, local search).

4. 北京大学的 程序设计与算法专项课程系列

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

本专项课程旨在系统培养你的程序设计与编写能力。系列课程从计算机的基础知识讲起,无论你来自任何学科和行业背景,都能快速理解;同时我们又系统性地介绍了C程序设计,C++程序设计,算法基础,数据结构与算法相关的内容,各门课之间联系紧密,循序渐进,能够帮你奠定坚实的程序开发基础;课程全部配套在线编程测试,将有效地训练和提升你编写程序的实际动手能力。并通过结业实践项目为你提供应用程序设计解决复杂现实问题的锻炼,从而积累实际开发的经验。因此,我们希望本专项课程能够帮助你完成从仅了解基本的计算机知识到能够利用高质量的程序解决实际问题的转变。

5. 加州大学圣地亚哥分校的 数据结构与算法专项课程系列(Data Structures and Algorithms Specialization)

这个系列包含5门子课程和1门毕业项目课程,包括算法工具箱,数据结构 ,图算法,字符串算法 ,高级算法与算法复杂度,算法毕业项目 等,感兴趣的同学可以关注: Master Algorithmic Programming Techniques-Learn algorithms through programming and advance your software engineering or data science career

This specialization is a mix of theory and practice: you will learn algorithmic techniques for solving various computational problems and will implement about 100 algorithmic coding problems in a programming language of your choice. No other online course in Algorithms even comes close to offering you a wealth of programming challenges that you may face at your next job interview. To prepare you, we invested over 3000 hours into designing our challenges as an alternative to multiple choice questions that you usually find in MOOCs. Sorry, we do not believe in multiple choice questions when it comes to learning algorithms...or anything else in computer science! For each algorithm you develop and implement, we designed multiple tests to check its correctness and running time — you will have to debug your programs without even knowing what these tests are! It may sound difficult, but we believe it is the only way to truly understand how the algorithms work and to master the art of programming. The specialization contains two real-world projects: Big Networks and Genome Assembly. You will analyze both road networks and social networks and will learn how to compute the shortest route between New York and San Francisco (1000 times faster than the standard shortest path algorithms!) Afterwards, you will learn how to assemble genomes from millions of short fragments of DNA and how assembly algorithms fuel recent developments in personalized medicine.

注:本文首发“课程图谱博客”:http://blog.coursegraph.com ,同步发布到这里, 本文链接地址:http://blog.coursegraph.com/coursera上数据结构-算法课程-算法公开课-汇总推荐 http://blog.coursegraph.com/?p=736

Coursera上机器学习课程(公开课)汇总推荐

Coursera上有很多机器学习课程,这里做个总结,因为机器学习相关的概念和应用很多,这里推荐的课程仅限于和机器学习直接相关的课程,虽然深度学习属于机器学习范畴,这里暂时也将其排除在外,后续会专门推出深度学习课程的系列推荐。

1. Andrew Ng 老师的 机器学习课程(Machine Learning)

机器学习入门首选课程,没有之一。这门课程从一开始诞生就备受瞩目,据说全世界有数百万人通过这门课程入门机器学习。课程的级别是入门级别的,对学习者的背景要求不高,Andrew Ng 老师讲解的又很通俗易懂,所以强烈推荐从这门课程开始走入机器学习。课程简介:

机器学习是一门研究在非特定编程条件下让计算机采取行动的学科。最近二十年,机器学习为我们带来了自动驾驶汽车、实用的语音识别、高效的网络搜索,让我们对人类基因的解读能力大大提高。当今机器学习技术已经非常普遍,您很可能在毫无察觉情况下每天使用几十次。许多研究者还认为机器学习是人工智能(AI)取得进展的最有效途径。在本课程中,您将学习最高效的机器学习技术,了解如何使用这些技术,并自己动手实践这些技术。更重要的是,您将不仅将学习理论知识,还将学习如何实践,如何快速使用强大的技术来解决新问题。最后,您将了解在硅谷企业如何在机器学习和AI领域进行创新。 本课程将广泛介绍机器学习、数据挖掘和统计模式识别。相关主题包括:(i) 监督式学习(参数和非参数算法、支持向量机、核函数和神经网络)。(ii) 无监督学习(集群、降维、推荐系统和深度学习)。(iii) 机器学习实例(偏见/方差理论;机器学习和AI领域的创新)。课程将引用很多案例和应用,您还需要学习如何在不同领域应用学习算法,例如智能机器人(感知和控制)、文本理解(网络搜索和垃圾邮件过滤)、计算机视觉、医学信息学、音频、数据库挖掘等领域。

这里有老版课程评论,非常值得参考推荐:Machine Learning

2. 台湾大学林轩田老师的 機器學習基石上 (Machine Learning Foundations)---Mathematical Foundations

如果有一定的基础或者学完了Andrew Ng老师的机器学习课程,这门机器学习基石上-数学基础可以作为进阶课程。林老师早期推出的两门机器学习课程口碑和难度均有:机器学习基石机器学习技法 ,现在重组为上和下,非常值得期待:

Machine learning is the study that allows computers to adaptively improve their performance with experience accumulated from the data observed. Our two sister courses teach the most fundamental algorithmic, theoretical and practical tools that any user of machine learning needs to know. This first course of the two would focus more on mathematical tools, and the other course would focus more on algorithmic tools. [機器學習旨在讓電腦能由資料中累積的經驗來自我進步。我們的兩項姊妹課程將介紹各領域中的機器學習使用者都應該知道的基礎演算法、理論及實務工具。本課程將較為著重數學類的工具,而另一課程將較為著重方法類的工具。]

3. 台湾大学林轩田老师的 機器學習基石下 (Machine Learning Foundations)---Algorithmic Foundations

作为2的姊妹篇,这个机器学习基石下-算法基础 更注重机器学习算法相关知识:

Machine learning is the study that allows computers to adaptively improve their performance with experience accumulated from the data observed. Our two sister courses teach the most fundamental algorithmic, theoretical and practical tools that any user of machine learning needs to know. This second course of the two would focus more on algorithmic tools, and the other course would focus more on mathematical tools. [機器學習旨在讓電腦能由資料中累積的經驗來自我進步。我們的兩項姊妹課程將介紹各領域中的機器學習使用者都應該知道的基礎演算法、理論及實務工具。本課程將較為著重方法類的工具,而另一課程將較為著重數學類的工具。

可参考早期的老版本课程评论:機器學習基石 (Machine Learning Foundations) 機器學習技法 (Machine Learning Techniques)

4. 华盛顿大学的 "机器学习专项课程(Machine Learning Specialization)"

这个系列课程包含4门子课程,分别是 机器学习基础:案例研究 , 机器学习:回归 , 机器学习:分类, 机器学习:聚类与检索:

This Specialization from leading researchers at the University of Washington introduces you to the exciting, high-demand field of Machine Learning. Through a series of practical case studies, you will gain applied experience in major areas of Machine Learning including Prediction, Classification, Clustering, and Information Retrieval. You will learn to analyze large and complex datasets, create systems that adapt and improve over time, and build intelligent applications that can make predictions from data.

4.1 Machine Learning Foundations: A Case Study Approach(机器学习基础: 案例研究)

你是否好奇数据可以告诉你什么?你是否想在关于机器学习促进商业的核心方式上有深层次的理解?你是否想能同专家们讨论关于回归,分类,深度学习以及推荐系统的一切?在这门课上,你将会通过一系列实际案例学习来获取实践经历。

Do you have data and wonder what it can tell you? Do you need a deeper understanding of the core ways in which machine learning can improve your business? Do you want to be able to converse with specialists about anything from regression and classification to deep learning and recommender systems? In this course, you will get hands-on experience with machine learning from a series of practical case-studies. At the end of the first course you will have studied how to predict house prices based on house-level features, analyze sentiment from user reviews, retrieve documents of interest, recommend products, and search for images. Through hands-on practice with these use cases, you will be able to apply machine learning methods in a wide range of domains. This first course treats the machine learning method as a black box. Using this abstraction, you will focus on understanding tasks of interest, matching these tasks to machine learning tools, and assessing the quality of the output. In subsequent courses, you will delve into the components of this black box by examining models and algorithms. Together, these pieces form the machine learning pipeline, which you will use in developing intelligent applications. Learning Outcomes: By the end of this course, you will be able to: -Identify potential applications of machine learning in practice. -Describe the core differences in analyses enabled by regression, classification, and clustering. -Select the appropriate machine learning task for a potential application. -Apply regression, classification, clustering, retrieval, recommender systems, and deep learning. -Represent your data as features to serve as input to machine learning models. -Assess the model quality in terms of relevant error metrics for each task. -Utilize a dataset to fit a model to analyze new data. -Build an end-to-end application that uses machine learning at its core. -Implement these techniques in Python.

4.2 Machine Learning: Regression(机器学习: 回归问题)

这门课程关注机器学习里面的一个基本问题: 回归(Regression), 也通过案例研究(预测房价)的方式进行回归问题的学习,最终通过Python实现相关的机器学习算法。

Case Study - Predicting Housing Prices In our first case study, predicting house prices, you will create models that predict a continuous value (price) from input features (square footage, number of bedrooms and bathrooms,...). This is just one of the many places where regression can be applied. Other applications range from predicting health outcomes in medicine, stock prices in finance, and power usage in high-performance computing, to analyzing which regulators are important for gene expression. In this course, you will explore regularized linear regression models for the task of prediction and feature selection. You will be able to handle very large sets of features and select between models of various complexity. You will also analyze the impact of aspects of your data -- such as outliers -- on your selected models and predictions. To fit these models, you will implement optimization algorithms that scale to large datasets. Learning Outcomes: By the end of this course, you will be able to: -Describe the input and output of a regression model. -Compare and contrast bias and variance when modeling data. -Estimate model parameters using optimization algorithms. -Tune parameters with cross validation. -Analyze the performance of the model. -Describe the notion of sparsity and how LASSO leads to sparse solutions. -Deploy methods to select between models. -Exploit the model to form predictions. -Build a regression model to predict prices using a housing dataset. -Implement these techniques in Python.

4.3 Machine Learning: Classification(机器学习:分类问题)

这门课程关注机器学习里面的另一个基本问题: 分类(Classification), 通过两个案例研究进行学习:情感分析和贷款违约预测,最终通过Python实现相关的算法(也可以选择其他语言,但是强烈推荐Python)。

Case Studies: Analyzing Sentiment & Loan Default Prediction In our case study on analyzing sentiment, you will create models that predict a class (positive/negative sentiment) from input features (text of the reviews, user profile information,...). In our second case study for this course, loan default prediction, you will tackle financial data, and predict when a loan is likely to be risky or safe for the bank. These tasks are an examples of classification, one of the most widely used areas of machine learning, with a broad array of applications, including ad targeting, spam detection, medical diagnosis and image classification. In this course, you will create classifiers that provide state-of-the-art performance on a variety of tasks. You will become familiar with the most successful techniques, which are most widely used in practice, including logistic regression, decision trees and boosting. In addition, you will be able to design and implement the underlying algorithms that can learn these models at scale, using stochastic gradient ascent. You will implement these technique on real-world, large-scale machine learning tasks. You will also address significant tasks you will face in real-world applications of ML, including handling missing data and measuring precision and recall to evaluate a classifier. This course is hands-on, action-packed, and full of visualizations and illustrations of how these techniques will behave on real data. We've also included optional content in every module, covering advanced topics for those who want to go even deeper! Learning Objectives: By the end of this course, you will be able to: -Describe the input and output of a classification model. -Tackle both binary and multiclass classification problems. -Implement a logistic regression model for large-scale classification. -Create a non-linear model using decision trees. -Improve the performance of any model using boosting. -Scale your methods with stochastic gradient ascent. -Describe the underlying decision boundaries. -Build a classification model to predict sentiment in a product review dataset. -Analyze financial data to predict loan defaults. -Use techniques for handling missing data. -Evaluate your models using precision-recall metrics. -Implement these techniques in Python (or in the language of your choice, though Python is highly recommended).

4.4 Machine Learning: Clustering & Retrieval(机器学习:聚类和检索)

这门课程关注的是机器学习里面的另外两个基本问题:聚类和检索,同样通过案例研究进行学习:相似文档查询,一个非常具有实际应用价值的问题:

Case Studies: Finding Similar Documents A reader is interested in a specific news article and you want to find similar articles to recommend. What is the right notion of similarity? Moreover, what if there are millions of other documents? Each time you want to a retrieve a new document, do you need to search through all other documents? How do you group similar documents together? How do you discover new, emerging topics that the documents cover? In this third case study, finding similar documents, you will examine similarity-based algorithms for retrieval. In this course, you will also examine structured representations for describing the documents in the corpus, including clustering and mixed membership models, such as latent Dirichlet allocation (LDA). You will implement expectation maximization (EM) to learn the document clusterings, and see how to scale the methods using MapReduce. Learning Outcomes: By the end of this course, you will be able to: -Create a document retrieval system using k-nearest neighbors. -Identify various similarity metrics for text data. -Reduce computations in k-nearest neighbor search by using KD-trees. -Produce approximate nearest neighbors using locality sensitive hashing. -Compare and contrast supervised and unsupervised learning tasks. -Cluster documents by topic using k-means. -Describe how to parallelize k-means using MapReduce. -Examine probabilistic clustering approaches using mixtures models. -Fit a mixture of Gaussian model using expectation maximization (EM). -Perform mixed membership modeling using latent Dirichlet allocation (LDA). -Describe the steps of a Gibbs sampler and how to use its output to draw inferences. -Compare and contrast initialization techniques for non-convex optimization objectives. -Implement these techniques in Python.

5. 密歇根大学的 Applied Machine Learning in Python(在Python中应用机器学习)

Python机器学习应用课程,这门课程主要聚焦在通过Python应用机器学习,包括机器学习和统计学的区别,机器学习工具包scikit-learn的介绍,有监督学习和无监督学习,数据泛化问题(例如交叉验证和过拟合)等。这门课程同时属于"Python数据科学应用专项课程系列(Applied Data Science with Python Specialization)"。

This course will introduce the learner to applied machine learning, focusing more on the techniques and methods than on the statistics behind these methods. The course will start with a discussion of how machine learning is different than descriptive statistics, and introduce the scikit learn toolkit. The issue of dimensionality of data will be discussed, and the task of clustering data, as well as evaluating those clusters, will be tackled. Supervised approaches for creating predictive models will be described, and learners will be able to apply the scikit learn predictive modelling methods while understanding process issues related to data generalizability (e.g. cross validation, overfitting). The course will end with a look at more advanced techniques, such as building ensembles, and practical limitations of predictive models. By the end of this course, students will be able to identify the difference between a supervised (classification) and unsupervised (clustering) technique, identify which technique they need to apply for a particular dataset and need, engineer features to meet that need, and write python code to carry out an analysis. This course should be taken after Introduction to Data Science in Python and Applied Plotting, Charting & Data Representation in Python and before Applied Text Mining in Python and Applied Social Analysis in Python.

6. 俄罗斯国立高等经济学院和Yandex联合推出的 高级机器学习专项课程系列(Advanced Machine Learning Specialization)

该系列授课语言为英语,包括深度学习,Kaggle数据科学竞赛,机器学习中的贝叶斯方法,强化学习,计算机视觉,自然语言处理等7门子课程,截止目前前3门课程已开,感兴趣的同学可以关注:

This specialization gives an introduction to deep learning, reinforcement learning, natural language understanding, computer vision and Bayesian methods. Top Kaggle machine learning practitioners and CERN scientists will share their experience of solving real-world problems and help you to fill the gaps between theory and practice. Upon completion of 7 courses you will be able to apply modern machine learning methods in enterprise and understand the caveats of real-world data and settings.

以下是和机器学习直接相关的子课程,其他这里略过:

6.3 Bayesian Methods for Machine Learning(面向机器学习的贝叶斯方法)

该课程关注机器学习中的贝叶斯方法,贝叶斯方法在很多领域都很有用,例如游戏开发和毒品发现。它们给很多机器学习算法赋予了“超能力”,例如处理缺失数据,从小数据集中提取大量有用的信息等。当贝叶斯方法被应用在深度学习中时,它可以让你将模型压缩100倍,并且自动帮你调参,节省你的时间和金钱。

Bayesian methods are used in lots of fields: from game development to drug discovery. They give superpowers to many machine learning algorithms: handling missing data, extracting much more information from small datasets. Bayesian methods also allow us to estimate uncertainty in predictions, which is a really desirable feature for fields like medicine. When Bayesian methods are applied to deep learning, it turns out that they allow you to compress your models 100 folds, and automatically tune hyperparametrs, saving your time and money. In six weeks we will discuss the basics of Bayesian methods: from how to define a probabilistic model to how to make predictions from it. We will see how one can fully automate this workflow and how to speed it up using some advanced techniques. We will also see applications of Bayesian methods to deep learning and how to generate new images with it. We will see how new drugs that cure severe diseases be found with Bayesian methods.

7. 约翰霍普金斯大学的 Practical Machine Learning(机器学习实战)

这门课程从数据科学的角度来应用机器学习进修实战,课程将会介绍机器学习的基础概念譬如训练集,测试集,过拟合和错误率等,同时这门课程也会介绍机器学习的基本模型和算法,例如回归,分类,朴素贝叶斯,以及随机森林。这门课程最终会覆盖一个完整的机器学习实战周期,包括数据采集,特征生成,机器学习算法应用以及结果评估等。这门机器学习实践课程同时属于约翰霍普金斯大学的 数据科学专项课程(Data Science Specialization)系列:

One of the most common tasks performed by data scientists and data analysts are prediction and machine learning. This course will cover the basic components of building and applying prediction functions with an emphasis on practical applications. The course will provide basic grounding in concepts such as training and tests sets, overfitting, and error rates. The course will also introduce a range of model based and algorithmic machine learning methods including regression, classification trees, Naive Bayes, and random forests. The course will cover the complete process of building prediction functions including data collection, feature creation, algorithms, and evaluation.

8. 卫斯理大学 Regression Modeling in Practice(回归模型实战)

这门课程关注的是数据分析以及机器学习领域的最重要的一个概念和工具:回归(模型)分析。这门课程使用SAS或者Python,从线性回归开始学习,到了解整个回归模型,以及应用回归模型进行数据分析:

This course focuses on one of the most important tools in your data analysis arsenal: regression analysis. Using either SAS or Python, you will begin with linear regression and then learn how to adapt when two variables do not present a clear linear relationship. You will examine multiple predictors of your outcome and be able to identify confounding variables, which can tell a more compelling story about your results. You will learn the assumptions underlying regression analysis, how to interpret regression coefficients, and how to use regression diagnostic plots and other tools to evaluate the quality of your regression model. Throughout the course, you will share with others the regression models you have developed and the stories they tell you.

这门课程同时属于卫斯理大学的 数据分析与解读专项课程系列(Data Analysis and Interpretation Specialization)

9. 卫斯理大学的 Machine Learning for Data Analysis(面向数据分析的机器学习)

这门课程关注数据分析里的机器学习,机器学习的过程是一个开发、测试和应用预测算法来实现目标的过程,这门课程以 Regression Modeling in Practice(回归模型实战) 为基础,介绍机器学习中的有监督学习概念,同时从基础的分类算法到决策树以及聚类都会覆盖。通过完成这门课程,你将会学习如何应用、测试和解读机器学习算法用来解决实际问题。

Are you interested in predicting future outcomes using your data? This course helps you do just that! Machine learning is the process of developing, testing, and applying predictive algorithms to achieve this goal. Make sure to familiarize yourself with course 3 of this specialization before diving into these machine learning concepts. Building on Course 3, which introduces students to integral supervised machine learning concepts, this course will provide an overview of many additional concepts, techniques, and algorithms in machine learning, from basic classification to decision trees and clustering. By completing this course, you will learn how to apply, test, and interpret machine learning algorithms as alternative methods for addressing your research questions.

这门课程同时属于卫斯理大学的 数据分析与解读专项课程系列(Data Analysis and Interpretation Specialization)

10. 加州大学圣地亚哥分校的 Machine Learning With Big Data(大数据机器学习)

这门课程关注大数据中的机器学习技术,将会介绍相关的机器学习算法和工具。通过这门课程,你可以学到:通过机器学习过程来设计和利用数据;将机器学习技术用于探索和准备数据来建模;识别机器学习问题的类型;通过广泛可用的开源工具来使用数据构建模型;在Spark中使用大规模机器学习算法分析大数据。

Want to make sense of the volumes of data you have collected? Need to incorporate data-driven decisions into your process? This course provides an overview of machine learning techniques to explore, analyze, and leverage data. You will be introduced to tools and algorithms you can use to create machine learning models that learn from data, and to scale those models up to big data problems. At the end of the course, you will be able to: • Design an approach to leverage data using the steps in the machine learning process. • Apply machine learning techniques to explore and prepare data for modeling. • Identify the type of machine learning problem in order to apply the appropriate set of techniques. • Construct models that learn from data using widely available open source tools. • Analyze big data problems using scalable machine learning algorithms on Spark.

这门课程同时属于 加州大学圣地亚哥分校的大数据专项课程系列(Big Data Specialization)

11. 俄罗斯搜索巨头Yandex推出的 Big Data Applications: Machine Learning at Scale(大数据应用:大规模机器学习)

机器学习正在改变世界,通过这门课程,你将会学习到:识别实战中需要用机器学习算法解决的问题;通过Spark MLLib构建、调参、和应用线性模型;里面文本处理的方法;用决策树和Boost方法解决机器学习问题;构建自己的推荐系统。

Machine learning is transforming the world around us. To become successful, you’d better know what kinds of problems can be solved with machine learning, and how they can be solved. Don’t know where to start? The answer is one button away. During this course you will: - Identify practical problems which can be solved with machine learning - Build, tune and apply linear models with Spark MLLib - Understand methods of text processing - Fit decision trees and boost them with ensemble learning - Construct your own recommender system. As a practical assignment, you will - build and apply linear models for classification and regression tasks; - learn how to work with texts; - automatically construct decision trees and improve their performance with ensemble learning; - finally, you will build your own recommender system! With these skills, you will be able to tackle many practical machine learning tasks. We provide the tools, you choose the place of application to make this world of machines more intelligent.

这门课程同时属于Yandex推出的 面向数据工程师的大数据专项课程系列(Big Data for Data Engineers Specialization)

注:本文首发“课程图谱博客”:http://blog.coursegraph.com ,同步发布到这里, 本文链接地址:http://blog.coursegraph.com/coursera上机器学习课程公开课汇总推荐 http://blog.coursegraph.com/?p=696