# <a class="pcalibre pcalibre1" id="_Toc446405726">第1</a>周
### <a class="pcalibre pcalibre1" id="_Toc446405727">一、引言(Introduction)</a>
参考视频: 1 - 1 - Welcome (7 min).mkv
第一个视频主要讲了什么是机器学习,机器学习能做些什么事情。
机器学习是目前信息技术中最激动人心的方向之一。在这门课中,你将学习到这门技术的前沿,并可以自己实现学习机器学习的算法。
你或许每天都在不知不觉中使用了机器学习的算法每次,你打开谷歌、必应搜索到你需要的内容,正是因为他们有良好的学习算法。谷歌和微软实现了学习算法来排行网页每次,你用Facebook或苹果的图片分类程序他能认出你朋友的照片,这也是机器学习。每次您阅读您的电子邮件垃圾邮件筛选器,可以帮你过滤大量的垃圾邮件这也是一种学习算法。对我来说,我感到激动的原因之一是有一天做出一个和人类一样聪明的机器。实现这个想法任重而道远,许多AI研究者认为,实现这个目标最好的方法是通过让机器试着模仿人的大脑学习我会在这门课中介绍一点这方面的内容。
在这门课中,你还讲学习到关于机器学习的前沿状况。但事实上只了解算法、数学并不能解决你关心的实际的问题。所以,我们将花大量的时间做练习,从而你自己能实现每个这些算法,从而了解内部机理。
那么,为什么机器学习如此受欢迎呢?原因是,机器学习不只是用于人工智能领域。
我们创造智能的机器,有很多基础的知识。比如,我们可以让机器找到A与B之间的最短路径,但我们仍然不知道怎么让机器做更有趣的事情,如web 搜索、照片标记、反垃圾邮件。我们发现,唯一方法是让机器自己学习怎么来解决问题。所以,机器学习已经成为计算机的一个能力。
现在它涉及到各个行业和基础科学中。我从事于机器学习,但我每个星期都跟直升机飞行员、生物学家、很多计算机系统程序员交流(我在斯坦福大学的同事同时也是这样)和平均每个星期会从硅谷收到两、三个电子邮件,这些联系我的人都对将学习算法应用于他们自己的问题感兴趣。这表明机器学习涉及的问题非常广泛。有机器人、计算生物学、硅谷中大量的问题都收到机器学习的影响。
这里有一些机器学习的案例。比如说,数据库挖掘。机器学习被用于数据挖掘的原因之一是网络和自动化技术的增长,这意味着,我们有史上最大的数据集比如说,大量的硅谷公司正在收集 web 上的单击数据,也称为点击流数据,并尝试使用机器学习算法来分析数据,更好的了解用户,并为用户提供更好的服务。这在硅谷有巨大的市场。再比如,医疗记录。随着自动化的出现,我们现在有了电子医疗记录。如果我们可以把医疗记录变成医学知识,我们就可以更好地理解疾病。再如,计算生物学。还是因为自动化技术,生物学家们收集的大量基因数据序列、DNA序列和等等,机器运行算法让我们更好地了解人类基因组,大家都知道这对人类意味着什么。再比如,工程方面,在工程的所有领域,我们有越来越大、越来越大的数据集,我们试图使用学习算法,来理解这些数据。另外,在机械应用中,有些人不能直接操作。例如,我已经在无人直升机领域工作了许多年。我们不知道如何写一段程序让直升机自己飞。我们唯一能做的就是让计算机自己学习如何驾驶直升机。
手写识别:现在我们能够非常便宜地把信寄到这个美国甚至全世界的原因之一就是当你写一个像这样的信封,一种学习算法已经学会如何读你信封,它可以自动选择路径,所以我们只需要花几个美分把这封信寄到数千英里外。
事实上,如果你看过自然语言处理或计算机视觉,这些语言理解或图像理解都是属于AI领域。大部分的自然语言处理和大部分的计算机视觉,都应用了机器学习。学习算法还广泛用于自定制程序。每次你去亚马逊或Netflix或iTunes Genius,它都会给出其他电影或产品或音乐的建议,这是一种学习算法。仔细想一想,他们有百万的用户;但他们没有办法为百万用户,编写百万个不同程序。软件能给这些自定制的建议的唯一方法是通过学习你的行为,来为你定制服务。
最后学习算法被用来理解人类的学习和了解大脑。
我们将谈论如何用这些推进我们的AI 梦想。几个月前,一名学生给我一篇文章关于最顶尖的12个IT技能。拥有了这些技能HR绝对不会拒绝你。这是稍显陈旧的文章,但在这个列表最顶部就是机器学习的技能。
在斯坦福大学,招聘人员联系我,让我推荐机器学习学生毕业的人远远多于机器学习的毕业生。所以我认为需求远远没有被满足现在学习“机器学习”非常好,在这门课中,我希望能告诉你们很多机器学习的知识。
在接下来的视频中,我们将开始给更正式的定义,什么是机器学习。然后我们会开始学习机器学习的主要问题和算法你会了解一些主要的机器学习的术语,并开始了解不同的算法,用哪种算法更合适。
- 第1周
- 一、引言(Introduction)
- 1.1 欢迎
- 1.2 机器学习是什么?
- 1.3 监督学习
- 1.4 无监督学习
- 二、单变量线性回归(Linear Regression with One Variable)
- 2.1模型表示
- 2.2 代价函数
- 2.3 代价函数的直观理解I
- 2.4 代价函数的直观理解II
- 2.5 梯度下降
- 2.6 梯度下降的直观理解
- 2.7 梯度下降的线性回归
- 2.8 接下来的内容
- 三、线性代数回顾(Linear Algebra Review)
- 3.1 矩阵和向量
- 3.2 加法和标量乘法
- 3.3 矩阵向量乘法
- 3.4 矩阵乘法
- 3.5 矩阵乘法的性质
- 3.6 逆、转置
- 第2周
- 四、多变量线性回归(Linear Regression with Multiple Variables)
- 4.1 多维特征
- 4.2 多变量梯度下降
- 4.3 梯度下降法实践1-特征缩放
- 4.4 梯度下降法实践2-学习率
- 4.5 特征和多项式回归
- 4.6 正规方程
- 4.7 正规方程及不可逆性(可选)
- 五、Octave教程(Octave Tutorial)
- 5.1 基本操作
- 5.2 移动数据
- 5.3 计算数据
- 5.5 控制语句:for,while,if语句
- 5.6 向量化
- 5.7 工作和提交的编程练习
- 第3周
- 六、逻辑回归(Logistic Regression)
- 6.1 分类问题
- 6.2 假说表示
- 6.3 判定边界
- 6.4 代价函数
- 6.5 简化的成本函数和梯度下降
- 6.6 高级优化
- 6.7 多类别分类:一对多
- 七、正则化(Regularization)
- 7.1 过拟合的问题
- 7.2 代价函数
- 7.3 正则化线性回归
- 7.4 正则化的逻辑回归模型
- 第4周
- 第八、神经网络:表述(Neural Networks: Representation)
- 8.1 非线性假设
- 8.2 神经元和大脑
- 8.3模型表示1
- 8.4 模型表示2
- 8.5特征和直观理解1
- 8.6 样本和直观理解II
- 8.7多类分类
- 第5周
- 九、神经网络的学习(Neural Networks: Learning)
- 9.1 代价函数
- 9.2 反向传播算法
- 9.3 反向传播算法的直观理解
- 9.4 实现注意:展开参数
- 9.5梯度检验
- 9.6 随机初始化
- 9.7 综合起来
- 9.8 自主驾驶
- 第6周
- 十、应用机器学习的建议(Advice for Applying Machine Learning)
- 10.1 决定下一步做什么
- 10.2 评估一个假设
- 10.3 模型选择和交叉验证集
- 10.4 诊断偏差和方差
- 10.5 归一化和偏差/方差
- 10.6 学习曲线
- 10.7 决定下一步做什么
- 十一、机器学习系统的设计(Machine Learning System Design)
- 11.1 首先要做什么
- 11.2 误差分析
- 11.3 类偏斜的误差度量
- 11.4 查全率和查准率之间的权衡
- 11.5 机器学习的数据
- 第7周
- 十二、支持向量机(Support Vector Machines)
- 12.1 优化目标
- 12.2 大边界的直观理解
- 12.3 数学背后的大边界分类(可选)
- 12.4 核函数1
- 12.5 核函数2
- 12.6 使用支持向量机
- 第8周
- 十三、聚类(Clustering)
- 13.1 无监督学习:简介
- 13.2 K-均值算法
- 13.3 优化目标
- 13.4 随机初始化
- 13.5 选择聚类数
- 十四、降维(Dimensionality Reduction)
- 14.1 动机一:数据压缩
- 14.2 动机二:数据可视化
- 14.3 主成分分析问题
- 14.4 主成分分析算法
- 14.5 选择主成分的数量
- 14.6 重建的压缩表示
- 14.7 主成分分析法的应用建议
- 第9周
- 十五、异常检测(Anomaly Detection)
- 15.1 问题的动机
- 15.2 高斯分布
- 15.3 算法
- 15.4 开发和评价一个异常检测系统
- 15.5 异常检测与监督学习对比
- 15.6 选择特征
- 15.7 多元高斯分布(可选)
- 15.8 使用多元高斯分布进行异常检测(可选)
- 十六、推荐系统(Recommender Systems)
- 16.1 问题形式化
- 16.2 基于内容的推荐系统
- 16.3 协同过滤
- 16.4 协同过滤算法
- 16.5 矢量化:低秩矩阵分解
- 16.6 推行工作上的细节:均值归一化
- 第10周
- 十七、大规模机器学习(Large Scale Machine Learning)
- 17.1 大型数据集的学习
- 17.2 随机梯度下降法
- 17.3 小批量梯度下降
- 17.4 随机梯度下降收敛
- 17.5 在线学习
- 17.6映射化简和数据并行
- 十八、应用实例:图片文字识别(Application Example: Photo OCR)
- 18.1 问题描述和流程图
- 18.2 滑动窗口
- 18.3 获取大量数据和人工数据
- 18.4 上限分析:哪部分管道的接下去做
- 十九、总结(Conclusion)
- 19.1 总结和致谢