斯坦福大学机器学习训练营 (Andrew Ng)

课程资料

  1. 课程主页
  2. 课程笔记
  3. 课程视频
  4. 环境配置Anaconda
  5. 作业介绍
  6. 比赛环境推荐使用Linux或者Mac系统,以下环境搭建方法皆适用:
    Docker环境配置
    本地环境配置

重要一些的资源:

  1. 深度学习经典论文
  2. 深度学习斯坦福教程
  3. 廖雪峰python3教程
  4. github教程
  5. 莫烦机器学习教程
  6. 深度学习经典论文
  7. 机器学习代码修行100天
  8. 吴恩达机器学习新书:machine learning yearning
  9. 本人博客(机器学习基础算法专题)
  10. 本人博客(深度学习专题)
  11. 自上而下的学习路线: 软件工程师的机器学习

1. 前言

这门课的宗旨就是:**“手把手推导机器学习理论,行对行练习徒手代码过程” **

吴恩达在斯坦福的机器学习课,是很多人最初入门机器学习的课,10年有余,目前仍然是最经典的机器学习课程之一。当时因为这门课太火爆,吴恩达不得不弄了个超大的网络课程来授课,结果一不小心从斯坦福火遍全球,而后来的事情大家都知道了。吴恩达这些年,从谷歌大脑项目到创立Coursera再到百度首席科学家再再到最新开设了深度学习deeplearning.ai,辗转多年依然对CS229不离不弃。

个人认为:吴恩达的机器学习课程在机器学习入门的贡献相当于牛顿、莱布尼茨对于微积分的贡献。区别在于,吴恩达影响了10年,牛顿影响了200年。(个人观点)

本课程提供了一个广泛的介绍机器学习、数据挖掘、统计模式识别的课程。主题包括:

(一)监督学习(参数/非参数算法,支持向量机,核函数,神经网络)。

(二)无监督学习(聚类,降维,推荐系统,深入学习推荐)。

(三)在机器学习的最佳实践(偏差/方差理论;在机器学习和人工智能创新过程)。本课程还将使用大量的案例研究,您还将学习如何运用学习算法构建智能机器人(感知,控制),文本的理解(Web搜索,反垃圾邮件),计算机视觉,医疗信息,音频,数据挖掘,和其他领域。

本课程相对以前的机器学习视频cs229(2008),这个视频更加清晰,而且每课都有课件,推荐学习。

2.数学知识复习

1.线性代数
2.概率论
3.凸函数优化
4.随机梯度下降算法

中文资料:

3.编程工具

斯坦福资料:

4. 中文书籍推荐:

  • 《机器学习》周志华
  • 《统计学习方法》李航
  • 《机器学习课》邹博

5. 学习安排

本课程需要11周共18节课, 每周具体时间划分为4个部分:

  • 1部分安排周一到周二
  • 2部分安排在周四到周五
  • 3部分安排在周日
  • 4部分作业是本周任何时候空余时间
  • 周日晚上提交作业运行截图
  • 周三、周六休息^_^

6.作业提交指南:

训练营的作业自检系统已经正式上线啦!只需将作业发送到训练营公共邮箱即可,知识星球以打卡为主,不用提交作业。以下为注意事项:
<0> 课程资料:链接 密码: <1> 训练营代码公共邮箱:cs229@163.com
<2> 查询自己成绩:
<3> 将每周作业压缩成zip文件,文件名为“学号+作业编号”,例如:”CS229-010037-01.zip”
<4> 注意不要改变作业中的《方法名》《类名》不然会检测失败!!

7.学习安排

week 1

学习组队
比赛观摩

作业 Week1::
制定自己的学习计划

week 2

第一节: 引言(Introduction)
课件:lecture1
笔记:lecture1-note1
视频:
1.1欢迎:Welcome to Machine Learning
1.2机器学习是什么?:Welcome
1.3监督学习:What is Machine Learning
1.4无监督学习:Supervised Learning

第二节: 单变量线性回归(Linear Regression with One Variable)
课件:lecture2
笔记:lecture2-note2
视频:
2.1模型表示:Unsupervised Learning
2.2代价函数:Model Representation
2.3代价函数的直观理解I:Cost Function
2.4代价函数的直观理解II:Cost Function – Intuition I
2.5梯度下降:Cost Function – Intuition II
2.6梯度下降的直观理解:Gradient Descent
2.7梯度下降的线性回归:Gradient Descent Intuition
2.8接下来的内容:GradientDescentForLinearRegression

作业 Week2::
1.环境配置
2.开学习博客和github


week 3

第三节: 线性代数回顾(Linear Algebra Review)
课件:lecture3
笔记:lecture3-note3
视频:
3.1矩阵和向量:Matrices and Vectors
3.2加法和标量乘法:Addition and Scalar Multiplication
3.3矩阵向量乘法:Matrix Vector Multiplication
3.4矩阵乘法:Matrix Matrix Multiplication
3.5矩阵乘法的性质:Matrix Multiplication Properties
3.6逆、转置:Inverse and Transpose

第四节: 多变量线性回归(Linear Regression with Multiple Variables)
课件:lecture4
笔记:lecture4-note4
视频:
4.1多维特征:Multiple Features
4.2多变量梯度下降:Gradient Descent for Multiple Variables
4.3梯度下降法实践1-特征缩放:Gradient Descent in Practice I – Feature Scaling
4.4梯度下降法实践2-学习率:Gradient Descent in Practice II – Learning Rate
4.5特征和多项式回归:Features and Polynomial Regression
4.6正规方程:Normal Equation
4.7正规方程及不可逆性(选修):Normal Equation Noninvertibility (Optional)
作业 Week3:作业链接
1.线性回归 Linear Regression
2.多远线性回归 Linear Regression with multiple variables


Week 4

第五节:Octave教程(Octave Tutorial 选修)(有Python基础可以忽略)
课件:lecture5
笔记:lecture5-note5
视频:
5.1基本操作:Working on and Submitting Programming Exercises
5.2移动数据:Basic Operations
5.3计算数据:Moving Data Around
5.4绘图数据:Computing on Data
5.5控制语句:for,while,if语句:Plotting Data
5.6向量化88:Control Statements
5.7工作和提交的编程练习:Vectorization

第六节:逻辑回归(Logistic Regression)
课件:lecture6
笔记:lecture6-note6
视频:
6.1分类问题:Classification
6.2假说表示:Hypothesis Representation
6.3判定边界:Decision Boundary
6.4代价函数:Cost Function
6.5简化的成本函数和梯度下降:Simplified Cost Function and Gradient Descent
6.6高级优化:Advanced Optimization
6.7多类别分类:一对多:Multiclass Classification_ One-vs-all

作业 Week4:作业链接

  1. 逻辑回归 Logistic Regression
  2. 带有正则项的逻辑回归 Logistic Regression with Regularization

Week 5

第七节:正则化(Regularization)
课件:lecture7
笔记:lecture7-note7
视频:
7.1过拟合的问题:The Problem of Overfitting
7.2代价函数:Cost Function
7.3正则化线性回归:Regularized Linear Regression
7.4正则化的逻辑回归模型:Regularized Logistic Regression

第八节:神经网络:表述(Neural Networks: Representation)
课件:lecture8
笔记:lecture8-note8
视频:
8.1非线性假设:Non-linear Hypotheses
8.2神经元和大脑:Neurons and the Brain
8.3模型表示1:Model Representation I
8.4模型表示2:Model Representation II
8.5样本和直观理解1:Examples and Intuitions I
8.6样本和直观理解II:Examples and Intuitions II
8.7多类分类:Multiclass Classification
作业 Week5:作业链接

  1. 多元分类 Multiclass Classification
  2. 神经网络预测函数 Neural Networks Prediction fuction

Week 6

第九节1:神经网络的学习(Neural Networks: Learning1)
课件:lecture9
笔记:lecture9-note9
视频:
9.1代价函数:Cost Function
9.2反向传播算法:Backpropagation Algorithm
9.3反向传播算法的直观理解:Backpropagation Intuition

第九节2:神经网络的学习(Neural Networks: Learning2)
课件:lecture9
笔记:lecture9-note9
视频:
9.4实现注意:展开参数:Implementation Note_ Unrolling Parameters
9.5梯度检验:Gradient Checking
9.6随机初始化:Random Initialization
9.7综合起来:Putting It Together
9.8自主驾驶:Autonomous Driving

作业 Week6:作业链接

  1. 神经网络实现 Neural Networks Learning

Week 7

第十节:应用机器学习的建议(Advice for Applying Machine Learning)
课件:lecture10
笔记:lecture10-note10
视频:
10.1决定下一步做什么:Deciding What to Try Next
10.2评估一个假设:Evaluating a Hypothesis
10.3模型选择和交叉验证集:Model Selection and Train_Validation_Test Sets
10.4诊断偏差和方差:Diagnosing Bias vs. Variance
10.5正则化和偏差/方差:Regularization and Bias_Variance
10.6学习曲线:Learning Curves
10.7决定下一步做什么:Deciding What to Do Next Revisited
第十一节: 机器学习系统的设计(Machine Learning System Design)
课件:lecture11
笔记:lecture11-note11
视频:
11.1首先要做什么:Prioritizing What to Work On
11.2误差分析:Error Analysis
11.3类偏斜的误差度量:Error Metrics for Skewed Classes
11.4查准率和查全率之间的权衡:Trading Off Precision and Recall
11.5机器学习的数据:Data For Machine Learning
作业 Week7:作业链接

  1. 正则线性回归 Regularized Linear Regression
  2. 偏移和方差 Bias vs. Variance

Week 8

第十二节:支持向量机(Support Vector Machines)
课件:lecture12
笔记:lecture12-note12
视频:
12.1优化目标:Optimization Objective
12.2大边界的直观理解:Large Margin Intuition
12.3数学背后的大边界分类(选修):Mathematics Behind Large Margin Classification (Optional)
12.4核函数1:Kernels I
12.5核函数2:Kernels II
12.6使用支持向量机:Using An SVM

第十三节:聚类(Clustering)
课件:lecture13
笔记:lecture13-note13
视频:
13.1无监督学习:简介:Unsupervised Learning_ Introduction
13.2K-均值算法:K-Means Algorithm
13.3优化目标:Optimization Objective
13.4随机初始化:Random Initialization
13.5选择聚类数:Choosing the Number of Clusters
作业 Week8:作业链接

  1. SVM实现
  2. 垃圾邮件分类 Spam email Classifier

Week 9

第十四节:降维(Dimensionality Reduction)
课件:lecture14
笔记:lecture14-note14
视频:
14.1动机一:数据压缩:Motivation I_ Data Compression
14.2动机二:数据可视化:Motivation II_ Visualization
14.3主成分分析问题:Principal Component Analysis Problem Formulation
14.4主成分分析算法:Principal Component Analysis Algorithm
14.5选择主成分的数量:Choosing the Number of Principal Components
14.6重建的压缩表示:Reconstruction from Compressed Representation
14.7主成分分析法的应用建议:Advice for Applying PCA

第十五节:异常检测(Anomaly Detection)
课件:lecture15
笔记:lecture15-note15
视频:
15.1问题的动机:Problem Motivation
15.2高斯分布:Gaussian Distribution
15.3算法:Algorithm
15.4开发和评价一个异常检测系统:Developing and Evaluating an Anomaly Detection System
15.5异常检测与监督学习对比:Anomaly Detection vs. Supervised Learning
15.6选择特征:Choosing What Features to Use
15.7多元高斯分布(选修):Multivariate Gaussian Distribution (Optional)
15.8使用多元高斯分布进行异常检测(选修):Anomaly Detection using the Multivariate Gaussian Distribution (Optiona
作业 Week9:作业链接

  1. K-means 聚类算法 Clustering
  2. PCA 主成分析 Principal Component Analysis

Week 10

第十六节:推荐系统(Recommender Systems)
课件:lecture16
笔记:lecture16-note16
视频:
16.1问题形式化:Problem Formulation
16.2基于内容的推荐系统:Content Based Recommendations
16.3协同过滤:Collaborative Filtering
16.4协同过滤算法:Collaborative Filtering Algorithm
16.5向量化:低秩矩阵分解:Vectorization_ Low Rank Matrix Factorization
16.6推行工作上的细节:均值归一化:Implementational Detail_ Mean Normalization

第十七节:大规模机器学习(Large Scale Machine Learning)
课件:lecture17
笔记:lecture17-note17)
视频:
17.1大型数据集的学习:Learning With Large Datasets
17.2随机梯度下降法:Stochastic Gradient Descent
17.3小批量梯度下降:Mini-Batch Gradient Descent
17.4随机梯度下降收敛:Stochastic Gradient Descent Convergence
17.5在线学习:Online Learning
17.6映射化简和数据并行:Map Reduce and Data Parallelism

作业 Week10:作业链接

  1. 异常检测 Anomaly Detection

Week 11

第十八节1: 应用实例:图片文字识别(Application Example: Photo OCR)
课件:lecture18
笔记:lecture18-note18
视频:
18.1问题描述和流程图:Problem Description and Pipeline
18.2滑动窗口:Sliding Windows
第十八节2: 应用实例:图片文字识别(Application Example: Photo OCR)
课件:lecture18
笔记:lecture1-note18)
视频:
18.3获取大量数据和人工数据:Getting Lots of Data and Artificial Data
18.4上限分析:哪部分管道的接下去做:Ceiling Analysis_ What Part of the Pipeline to Work on Next

作业 Week11:作业链接
2.推荐系统实现 Recommender Systems
**课程比赛:比赛介绍: **


Week 12

第十九节:总结(Conclusion)
视频:
19.1总结和致谢:Summary and Thank You
**课程比赛:比赛: **
Kaggle 比赛: 泰坦尼克 Titanic