Skip to content

feijuan/Stanford-Machine-Learning-camp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

斯坦福大学机器学习训练营(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.作业提交指南:

训练营的作业自检系统已经正式上线啦!只需将作业发送到训练营公共邮箱即可,知识星球以打卡为主,不用提交作业。以下为注意事项:
<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


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 94.4%
  • Python 5.6%