吴恩达机器学习

  • 第一个星期
  • 1.欢迎和介绍
  • 1.1机器学习的定义和类型
  • 1.2监督学习
  • 1.3无监督学习
  • 2.模型和代价函数
  • 2.1模型的表示
  • 2.2代价函数
  • 2.3代价函数的可视化
  • 3.参数学习
  • 3.1梯度下降
  • 3.2梯度下降的直观解释
  • 3.3在线性回归中进行梯度下降
  • 3.4线性代数复习
  • 参考文献



本文是在学习吴恩达老师机器学习课程的基础上结合老师的ppt文献然后加上自身理解编写出来的,有些地方可能有遗漏或错误,欢迎大家批评指正。希望我们一起学习,一起进步!

第一个星期

1.欢迎和介绍

1.1机器学习的定义和类型

一个计算机程序被称为从经验E中学习关于某类任务T和性能度量P的经验,如果它在T中的任务(用P度量)的性能随着经验E而提高。其中(把它看做闯关游戏):

  1. E是多次任务副本的经验
  2. T是过任务副本本身
  3. P是玩家过任务副本评级

一般来讲,机器学习分为无监督学习和监督学习,虽然现在也有所谓的半监督学习,但都是在这基础上实现的。

1.2监督学习

我感觉所谓监督学习就是在输入和输出之间找一个合适的映射关系,因为监督学习有明确的正确的输入对应的输出。
监督学习又可以分为回归问题分类问题

  1. 回归问题大都是基于连续数值的预测
    比如房价的预测,给出不同房子的面积和价格数据,通过机器学习回归拟合,发现面积和价格之间的大致关系。
  2. 分类问题大都是基于二值或多值的离散类别预测
    比如肿瘤类别的预测,给出肿瘤大小和肿瘤类别数据,通过机器学习分类,发现大小和类别之间的大致关系。

1.3无监督学习

我感觉所谓无监督学习就是一个种族划分找相同的过程,不需要数据经验,把有相同特征或特质的种群划分到一起。
无监督学习又可以分为聚类非聚类问题

  1. 聚类比如收集1000000个不同的基因,然后找到一种方法,将这些基因自动分组到不同变量(如寿命、地域、社会角色等)相似或相关的组中。
  2. 非聚类又称“鸡尾酒会算法”,允许你在混乱的环境中找到体系。(例如,在鸡尾酒会上,从一系列声音中辨认出个人的声音和音乐)。

2.模型和代价函数

2.1模型的表示

  1. 数据集
    吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习表示第i个输入,用吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_02表示第i个输出,那么吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_03就成为一个训练数据对象,我们将会有一组这样的训练集用来训练吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_04的映射关系。
  2. 模型
    一般我们都用吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_05来表示

2.2代价函数

一般而言,我们定义代价函数如下:

吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_06

式子本身的意义就是计算预测值和真实值之间的差距。我们现在的目的就是让吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_07变得更小。

下面来实战一下,先上图:

吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_08


这张图片是吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_09时的情况(吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_10),我们可以看出我们假设的直线恰好穿过了数据集的三个点,此时计算吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_11,也就是说,预测和真实一致,没有误差。

然后再来一张图:

吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_12


同样的,这里吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_13,这时,直线落在了散点的下方,也就有了预测值和真实值的误差。代价为

吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_14这样,我们可以通过改变吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_15多找几组吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_16的值,绘制出如下的吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_15关于吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_16的图像。

吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_19

通过这里这张图,我们可以明确我们的目标了,就是让吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_15值向1进发,代价才会最小化。

2.3代价函数的可视化

代价函数的值是随吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_21的值的变化而变化的,而吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_21又控制着回归线的位置和形状,也就是说,代价函数和回归线之间依靠吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_21而相互连接。一般而言,在只有吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_21两个参数时,吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_07是一个类似等高图一样的图像。

我们给出一些散点,作为代价可视化来使用,当吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_26时,吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_27,对应图像和代价函数标值图如下:

吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_28


吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_29时,吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_30,对应图像和代价函数标值图如下:

吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_31


吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_32时,吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_33,对应图像和代价函数标值图如下:

吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_34


通过这三张图片,我们可以看出,当拟合效果越好时,对应代价函数图像的值越靠近等高线中心。

3.参数学习

3.1梯度下降

  1. 为什么梯度下降?
    梯度下降就是为了去寻找代价函数吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_35的最小值,从而达到最优拟合效果。
  2. 梯度下降的方法。
    这里梯度下降的方法主要用偏微分的方法,假设我们的代价函数是吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_36,我们只需要一直重复吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_37这个式子,直到代价函数吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_36满意为止。(吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_39)
  3. 梯度下降需要注意的一点。
    值得注意的是:在进行梯度下降时,要严格按照以下顺序:

    就是说,吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_40要同时更新,它们在更新时所用的值都是上一轮的未更新的值。

3.2梯度下降的直观解释

接下来,我们来看看梯度下降具体是如何工作的,我们先假设只有一个参数吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_15,当我们的吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_15处于不同的起始点时,它的下降方向可能是不一样的,如下面两张图:

吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_43


可以看出,当偏导数为正值时,吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_15是减小的,也就是向左移动。当偏导数为负值时,吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_15时增大的,也就是向右移动。另外一个问题就是步长(学习率)吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_46的取值问题,当吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_46取值过大或过小时都会影响梯度下降的正常工作。如下图:

吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_48


可以看出,当吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_46过大,在寻找最优的过程中会出现震荡现象。当吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_46过小,又会导致消耗大量的计算,时间过长。另外,梯度下降还有一个特性,就是当接近最小值时,偏微分一般会越来越小,趋近于0,这会导致迭代速率的下降,所以,在梯度下降的过程中,我们一般没有必要减小吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_46

吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_52

3.3在线性回归中进行梯度下降

note:convex function == bowl shaped function
在线性回归中,在汇集到最优结果之前,我们会一直重复这个过程(还是注意,它们是同步更新的):
吴恩达机器学习视频下载 吴恩达机器学课程讲义_机器学习_53
吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_54
在公式中,吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_55是训练集的数据量,吴恩达机器学习视频下载 吴恩达机器学课程讲义_监督学习_56是给定的训练集的具体值,它们是已知的。
具体的偏微分部分推导过程如下:

  1. (吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_57部分)
    吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_58
  2. (吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_59部分)
    吴恩达机器学习视频下载 吴恩达机器学课程讲义_吴恩达机器学习视频下载_60

这里,我们运用的是批梯度下降法,每一步的迭代都要用训练集中的每一组例子。

我们知道,在线性回归中只有全局最优,不存在所谓的局部最优,而且,代价函数所展示出的是一个convex(碗形,凸面的)的形状。我们可以用一张图来展示代价函数的优化行踪。

吴恩达机器学习视频下载 吴恩达机器学课程讲义_代价函数_61

3.4线性代数复习

这是大学课堂知识,我就不做笔记了。忘记的同学可以看看MOOC。