深度学习读书笔记
第一章 引言
深度学习
计算机从经验中学习,并根据层次化的概念体系来理解世界,而每个概念则通过与某些相对简单的概念之间的关系来定义。
层次化的概念让计算机构建较简单的概念来学习复杂概念。
如果绘制出这些概念如何建立在彼此之上的图,我们将得到一张 "深"(层次很多)的图。
深度学习的难点
一个人的日常生活需要关于世界的巨量知识。很多这方面的知识是主观的、直观的,因此很难通过形式化的方
式表达清楚。
人工智能的一个关键挑 战就是如何将这些非形式化的知识传达给计算机。
世界普遍存在联系
表示
表示的选择会对机器学习的算法性能产生重大的影响
特征的选取
判断男女——对声道大小的估计
判断车子——车轮是否存在(很难选取 错误
表示学习(representation learning)
发现很好的特征集
例子
自编码器(autoencoder)
目标
分离出能解释观察数据的变差因素(factors of variation)
变差因素
通常是不能直接被观测到的量
当分析语音记录时,变差因素:说话者的年龄、性别、他们 的口音和他们正在说的词语;
当分析汽车的图像时,变差因素:汽车的位置、它 的颜色、太阳的角度和亮度。
难点
多个变差因素同时影响着每一个能观测到的数据
深度学习(deep learning)通过其他较简单的表示来表达复杂表示,解决了表 示学习中的核心问题。
深度学习让计算机通过较简单概念构建复杂的概念。
深度学习
深度学习将所需的复杂映射分解为一系列嵌套的简单映射
- 第一层可以轻易地通过比较相邻像素的亮度来识别边缘。
- 第二隐藏层可以搜索可识别为角和扩展轮廓的边集合。
- 第三隐藏层可以找到轮廓和角的特定集合来检测特定对象的整个部分。
- 最后,根据图像描述中包含的对象部分,可以识别图像中存在的对象。
深度学习模型的典型例子是前馈深度网络或多层感知机(multilayer perceptron, MLP)
多层感知机:是一个将一组输入值映射到输出值的数学函数。该函数由许多较简单的函数复合而成。
不同数学函数的每一次应用都 为输入提供了新的表示。
内在
促使计算机学习一个多步骤的计算机程序
储备知识
梯度:函数在某一点最大的斜率,是一个向量(有大小有方向)——局部下降最快的方向是梯度的反方向
如
一阶泰勒线性展开:
$$f(\theta ) \approx f({\theta _0}) + \eta v*\nabla f(\theta )$$
$$f(\theta ) - f({\theta _0}) \approx \eta v*\nabla f(\theta ) < 0$$
由于为标量,所以:
$$v*\nabla f(\theta ) < 0$$ 当单位向量的方向与梯度方向相反,就是梯度下降最快的方向。
可以直接得到$$v = \frac{{\nabla f(\theta )}}{{||\nabla f(\theta )||}}$$
因此 $$\theta = {\theta _0} - \eta \frac{{\nabla f(\theta )}}{{||\nabla f(\theta )||}}$$
算法
- 随机梯度下降(stochastic gradient descent)*
除非有能力迅速扩展的新技术,否则至少要到 21 世纪 50 年代,人工神经网络将才能具备与人脑相同数量级的神经元。
应用
- 计算机视觉
- 语音识别
- 行人检测和图像分割
- 神经图灵机 (Graves et al., 2014) :它能学习读取存储单元和向存储单元写入任意内容。这样的神经网络可以从期望行为的样本中学习简单的程序。例如,从杂乱和排好序的样本中学习对一系列数进行排序。这种自我编程技术正处于起步阶段,但原则上未来可以适用于几乎所有的任务。
- 强化学习(reinforcement learning):在强化学习中,一个自主的智能体必须在没有人类操作者指导的情况下,通过试错来学习执行任务。DeepMind 表明,基于深度学习的强化学习系统能够学会玩Atari 视频游戏,并在多种任务中可与人类匹敌 (Mnih et al., 2015)
总结:深度学习是一种特定类型的机器学习,具有强大的能力和灵活性,它将大千世界表示为嵌套的层次概念体系(由较简单概念间的联系定义复杂概念、从一般抽象概括到高级抽象表示)。