书籍下载qq群6089740钉钉群21734177 IT书籍http:/t.cn/RDIAj5D 1.2深度学习之前:机器学习简史13 (2)尽量让超平面与每个类别最近的数据点之间的距离最大化,从而计算出良好决策边界(分 割超平面),这一步叫作间隔最大化(maximizing the margin)。这样决策边界可以很好 地推广到训练数据集之外的新样本。 将数据映射到高维表示从而使分类问题简化,这一技巧可能听起来很不错,但在实践中通 常是难以计算的。这时就需要用到核技巧(kernel trick,核方法正是因这一核心思想而得名)。 其基本思想是:要想在新的表示空间中找到良好的决策超平面,你不需要在新空间中直接计算 点的坐标,只需要在新空间中计算点对之间的距离,而利用核函数(kernel function)可以高效 地完成这种计算。核函数是一个在计算上能够实现的操作,将原始空间中的任意两点映射为这 两点在目标表示空间中的距离,完全避免了对新表示进行直接计算。核函数通常是人为选择的, 而不是从数据中学到的一对于SVM来说,只有分割超平面是通过学习得到的。 SVM刚刚出现时,在简单的分类问题上表现出了最好的性能。当时只有少数机器学习方法 得到大量的理论支持,并且适合用于严肃的数学分析,因而非常易于理解和解释,SVM就是其 中之一。由于SVM具有这些有用的性质,很长一段时间里它在实践中非常流行。 但是,SVM很难扩展到大型数据集,并且在图像分类等感知问题上的效果也不好。SVM 是一种比较浅层的方法,因此要想将其应用于感知问题,首先需要手动提取出有用的表示(这 叫作特征工程),这一步骤很难,而且不稳定。 1.2.4决策树、随机森林与梯度提升机 决策树(decision tree)是类似于流程图的结构,可以对输入数据点进行分类或根据给定输 入来预测输出值(见图1-11)。决策树的可视化和解释都很简单。在21世纪前十年,从数据中 学习得到的决策树开始引起研究人员的广泛关注。到了2010年,决策树经常比核方法更受欢迎。 输人数据 问题 问题 问题 类别 类别 类别 类别 图1-11决策树:需要学习的参数是关于数据的问题。举个例子,问题可能是: “数据中第2个系数是否大于3.5?” 特别是随机森林(random forest)算法,它引入了一种健壮且实用的决策树学习方法,即 首先构建许多决策树,然后将它们的输出集成在一起。随机森林适用于各种各样的问题一 对于任何浅层的机器学习任务来说,它几乎总是第二好的算法。广受欢迎的机器学习竞赛网站 Kaggle在2010年上线后,随机森林迅速成为平台上人们的最爱,直到2014年才被梯度提升机 所取代。与随机森林类似,梯度提升机(gradient boosting machine)也是将弱预测模型(通常 电子书寻找看手相钉钉或微信pythontesting
1.2 深度学习之前:机器学习简史 13 1 5 3 7 2 6 4 8 9 (2) 尽量让超平面与每个类别最近的数据点之间的距离最大化,从而计算出良好决策边界(分 割超平面),这一步叫作间隔最大化(maximizing the margin)。这样决策边界可以很好 地推广到训练数据集之外的新样本。 将数据映射到高维表示从而使分类问题简化,这一技巧可能听起来很不错,但在实践中通 常是难以计算的。这时就需要用到核技巧(kernel trick,核方法正是因这一核心思想而得名)。 其基本思想是:要想在新的表示空间中找到良好的决策超平面,你不需要在新空间中直接计算 点的坐标,只需要在新空间中计算点对之间的距离,而利用核函数(kernel function)可以高效 地完成这种计算。核函数是一个在计算上能够实现的操作,将原始空间中的任意两点映射为这 两点在目标表示空间中的距离,完全避免了对新表示进行直接计算。核函数通常是人为选择的, 而不是从数据中学到的——对于 SVM 来说,只有分割超平面是通过学习得到的。 SVM 刚刚出现时,在简单的分类问题上表现出了最好的性能。当时只有少数机器学习方法 得到大量的理论支持,并且适合用于严肃的数学分析,因而非常易于理解和解释,SVM 就是其 中之一。由于 SVM 具有这些有用的性质,很长一段时间里它在实践中非常流行。 但是,SVM 很难扩展到大型数据集,并且在图像分类等感知问题上的效果也不好。SVM 是一种比较浅层的方法,因此要想将其应用于感知问题,首先需要手动提取出有用的表示(这 叫作特征工程),这一步骤很难,而且不稳定。 1.2.4 决策树、随机森林与梯度提升机 决策树(decision tree)是类似于流程图的结构,可以对输入数据点进行分类或根据给定输 入来预测输出值(见图 1-11)。决策树的可视化和解释都很简单。在 21 世纪前十年,从数据中 学习得到的决策树开始引起研究人员的广泛关注。到了 2010 年,决策树经常比核方法更受欢迎。 ࿚༶ ૌ՚ ૌ՚ ࿚༶ ຕ ࿚༶ ૌ՚ ૌ՚ 图 1-11 决策树:需要学习的参数是关于数据的问题。举个例子,问题可能是: “数据中第 2 个系数是否大于 3.5 ?” 特别是随机森林(random forest)算法,它引入了一种健壮且实用的决策树学习方法,即 首先构建许多决策树,然后将它们的输出集成在一起。随机森林适用于各种各样的问题—— 对于任何浅层的机器学习任务来说,它几乎总是第二好的算法。广受欢迎的机器学习竞赛网站 Kaggle 在 2010 年上线后,随机森林迅速成为平台上人们的最爱,直到 2014 年才被梯度提升机 所取代。与随机森林类似,梯度提升机(gradient boosting machine)也是将弱预测模型(通常 书籍下载qq群6089740 钉钉群21734177 IT书籍 http://t.cn/RDIAj5D 电子书寻找看手相 钉钉或微信pythontesting
14 第1章什么是深度学习 是决策树)集成的机器学习技术。它使用了梯度提升方法,通过迭代地训练新模型来专门解决 之前模型的弱点,从而改进任何机器学习模型的效果。将梯度提升技术应用于决策树时,得到 的模型与随机森林具有相似的性质,但在绝大多数情况下效果都比随机森林要好。它可能是目 前处理非感知数据最好的算法之一(如果非要加个“之一”的话)。和深度学习一样,它也是 Kaggle竞赛中最常用的技术之一。 1.2.5回到神经网络 虽然神经网络几乎被整个科学界完全忽略,但仍有一些人在继续研究神经网络,并在2010 年左右开始取得重大突破。这些人包括:多伦多大学Geoffrey Hinton的小组、蒙特利尔大学的 Yoshua Bengio、纽约大学的Yann LeCun和瑞士的DSIA。 20II年,来自IDSIA的Dan Ciresan开始利用GPU训练的深度神经网络赢得学术性的图像 分类竞赛,这是现代深度学习第一次在实践中获得成功。但真正的转折性时刻出现在2012年, 当年Hinton小组参加了每年一次的大规模图像分类挑战赛ImageNet。ImageNet挑战赛在当时 以困难著称,参赛者需要对140万张高分辨率彩色图像进行训练,然后将其划分到1000个不同 的类别中。2011年,获胜的模型基于经典的计算机视觉方法,其top-5精度①只有74.3%。到了 20I2年,由Alex Krizhevsky带领并由Geoffrey Hinton提供建议的小组,实现了83.6%的top-5 精度一这是一项重大突破。此后,这项竞赛每年都由深度卷积神经网络所主导。到了2015年, 获胜者的精度达到了96.4%,此时ImageNet的分类任务被认为是一个已经完全解决的问题。 自2012年以来,深度卷积神经网络(convnet)已成为所有计算机视觉任务的首选算法。更 一般地说,它在所有感知任务上都有效。在2015年和2016年的主要计算机视觉会议上,几乎 所有演讲都与convnet有关。与此同时,深度学习也在许多其他类型的问题上得到应用,比如自 然语言处理。它已经在大量应用中完全取代了SVM与决策树。举个例子,欧洲核子研究中心 (CERN)多年来一直使用基于决策树的方法来分析来自大型强子对撞机(LHC)ATLAS探测器 的粒子数据,但CERN最终转向基于Keras的深度神经网络,因为它的性能更好,而且在大型 数据集上易于训练。 1.2.6深度学习有何不同 深度学习发展得如此迅速,主要原因在于它在很多问题上都表现出更好的性能。但这并不 是唯一的原因。深度学习还让解决问题变得更加简单,因为它将特征工程完全自动化,而这曾 经是机器学习工作流程中最关键的一步。 先前的机器学习技术(浅层学习)仅包含将输入数据变换到一两个连续的表示空间,通常 使用简单的变换,比如高维非线性投影(SVM)或决策树。但这些技术通常无法得到复杂问题 所需要的精确表示。因此,人们必须竭尽全力让初始输入数据更适合用这些方法处理,也必须 手动为数据设计好的表示层。这叫作特征工程。与此相反,深度学习完全将这个步骤自动化: ①to即-5精度是指给定一张图像,如果模型预测的前5个标签中包含正确标签,即为预测正确。一译者注
14 第 1 章 什么是深度学习 是决策树)集成的机器学习技术。它使用了梯度提升方法,通过迭代地训练新模型来专门解决 之前模型的弱点,从而改进任何机器学习模型的效果。将梯度提升技术应用于决策树时,得到 的模型与随机森林具有相似的性质,但在绝大多数情况下效果都比随机森林要好。它可能是目 前处理非感知数据最好的算法之一(如果非要加个“之一”的话)。和深度学习一样,它也是 Kaggle 竞赛中最常用的技术之一。 1.2.5 回到神经网络 虽然神经网络几乎被整个科学界完全忽略,但仍有一些人在继续研究神经网络,并在 2010 年左右开始取得重大突破。这些人包括:多伦多大学 Geoffrey Hinton 的小组、蒙特利尔大学的 Yoshua Bengio、纽约大学的 Yann LeCun 和瑞士的 IDSIA。 2011 年,来自 IDSIA 的 Dan Ciresan 开始利用 GPU 训练的深度神经网络赢得学术性的图像 分类竞赛,这是现代深度学习第一次在实践中获得成功。但真正的转折性时刻出现在 2012 年, 当年 Hinton 小组参加了每年一次的大规模图像分类挑战赛 ImageNet。ImageNet 挑战赛在当时 以困难著称,参赛者需要对 140 万张高分辨率彩色图像进行训练,然后将其划分到 1000 个不同 的类别中。2011 年,获胜的模型基于经典的计算机视觉方法,其 top-5 精度 a 只有 74.3%。到了 2012 年,由 Alex Krizhevsky 带领并由 Geoffrey Hinton 提供建议的小组,实现了 83.6% 的 top-5 精度——这是一项重大突破。此后,这项竞赛每年都由深度卷积神经网络所主导。到了 2015 年, 获胜者的精度达到了 96.4%,此时 ImageNet 的分类任务被认为是一个已经完全解决的问题。 自 2012 年以来,深度卷积神经网络(convnet)已成为所有计算机视觉任务的首选算法。更 一般地说,它在所有感知任务上都有效。在 2015 年和 2016 年的主要计算机视觉会议上,几乎 所有演讲都与 convnet 有关。与此同时,深度学习也在许多其他类型的问题上得到应用,比如自 然语言处理。它已经在大量应用中完全取代了 SVM 与决策树。举个例子,欧洲核子研究中心 (CERN)多年来一直使用基于决策树的方法来分析来自大型强子对撞机(LHC)ATLAS 探测器 的粒子数据,但 CERN 最终转向基于 Keras 的深度神经网络,因为它的性能更好,而且在大型 数据集上易于训练。 1.2.6 深度学习有何不同 深度学习发展得如此迅速,主要原因在于它在很多问题上都表现出更好的性能。但这并不 是唯一的原因。深度学习还让解决问题变得更加简单,因为它将特征工程完全自动化,而这曾 经是机器学习工作流程中最关键的一步。 先前的机器学习技术(浅层学习)仅包含将输入数据变换到一两个连续的表示空间,通常 使用简单的变换,比如高维非线性投影(SVM)或决策树。但这些技术通常无法得到复杂问题 所需要的精确表示。因此,人们必须竭尽全力让初始输入数据更适合用这些方法处理,也必须 手动为数据设计好的表示层。这叫作特征工程。与此相反,深度学习完全将这个步骤自动化: a top-5 精度是指给定一张图像,如果模型预测的前 5 个标签中包含正确标签,即为预测正确。——译者注
书籍下载qq群6089740钉钉群21734177 IT书籍http:/t.cn/RDIAj5D 1.3为什么是深度学习,为什么是现在 15 利用深度学习,你可以一次性学习所有特征,而无须自己手动设计。这极大地简化了机器学习 工作流程,通常将复杂的多阶段流程替换为一个简单的、端到端的深度学习模型。 你可能会问,如果问题的关键在于有多个连续表示层,那么能否重复应用浅层方法,以实 现和深度学习类似的效果?在实践中,如果连续应用浅层学习方法,其收益会随着层数增加迅 速降低,因为三层模型中最优的第一表示层并不是单层或双层模型中最优的第一表示层。深度 学习的变革性在于,模型可以在同一时间共同学习所有表示层,而不是依次连续学习(这被称 为贪婪学习)。通过共同的特征学习,一旦模型修改某个内部特征,所有依赖于该特征的其他特 征都会相应地自动调节适应,无须人为干预。一切都由单一反馈信号来监督:模型中的每一处 变化都是为了最终目标服务。这种方法比贪婪地叠加浅层模型更加强大,因为它可以通过将复杂、 抽象的表示拆解为很多个中间空间(层)来学习这些表示,每个中间空间仅仅是前一个空间的 简单变换。 深度学习从数据中进行学习时有两个基本特征:第一,通过渐进的、逐层的方式形成越来 越复杂的表示;第二,对中间这些渐进的表示共同进行学习,每一层的变化都需要同时考虑上 下两层的需要。总之,这两个特征使得深度学习比先前的机器学习方法更加成功。 1.2.7机器学习现状 要想了解机器学习算法和工具的现状,一个好方法是看一下Kaggle上的机器学习竞赛。 Kaggle上的竞争非常激烈(有些比赛有数千名参赛者,并提供数百万美元的奖金),而且涵盖 了各种类型的机器学习问题,所以它提供了一种现实方法来评判哪种方法有效、哪种方法无效。 那么哪种算法能够可靠地赢得竞赛呢?顶级参赛者都使用哪些工具? 在2016年和20I7年,Kaggle上主要有两大方法:梯度提升机和深度学习。具体而言,梯 度提升机用于处理结构化数据的问题,而深度学习则用于图像分类等感知问题。使用前一种方 法的人几乎都使用优秀的XGBoost库,它同时支持数据科学最流行的两种语言:Python和R。 使用深度学习的Kaggle参赛者则大多使用Keras库,因为它易于使用,非常灵活,并且支持 Pythone 要想在如今的应用机器学习中取得成功,你应该熟悉这两种技术:梯度提升机,用于浅层 学习问题;深度学习,用于感知问题。用术语来说,你需要熟悉XGBoost和Keras,它们是目 前主宰Kaggle竞赛的两个库。有了本书,你已经向这个目标迈出了一大步。 1.3为什么是深度学习,为什么是现在 深度学习用于计算机视觉的两个关键思想,即卷积神经网络和反向传播,在1989年就已经 为人们所知。长短期记忆(LSTM,long short--term memory)算法是深度学习处理时间序列的 基础,它在1997年就被开发出来了,而且此后几乎没有发生变化。那么为什么深度学习在 2012年之后才开始取得成功?这二十年间发生了什么变化? 总的来说,三种技术力量在推动着机器学习的进步: 电子书寻找看手相钉钉或微信pythontesting
1.3 为什么是深度学习,为什么是现在 15 1 5 3 7 2 6 4 8 9 利用深度学习,你可以一次性学习所有特征,而无须自己手动设计。这极大地简化了机器学习 工作流程,通常将复杂的多阶段流程替换为一个简单的、端到端的深度学习模型。 你可能会问,如果问题的关键在于有多个连续表示层,那么能否重复应用浅层方法,以实 现和深度学习类似的效果?在实践中,如果连续应用浅层学习方法,其收益会随着层数增加迅 速降低,因为三层模型中最优的第一表示层并不是单层或双层模型中最优的第一表示层。深度 学习的变革性在于,模型可以在同一时间共同学习所有表示层,而不是依次连续学习(这被称 为贪婪学习)。通过共同的特征学习,一旦模型修改某个内部特征,所有依赖于该特征的其他特 征都会相应地自动调节适应,无须人为干预。一切都由单一反馈信号来监督:模型中的每一处 变化都是为了最终目标服务。这种方法比贪婪地叠加浅层模型更加强大,因为它可以通过将复杂、 抽象的表示拆解为很多个中间空间(层)来学习这些表示,每个中间空间仅仅是前一个空间的 简单变换。 深度学习从数据中进行学习时有两个基本特征:第一,通过渐进的、逐层的方式形成越来 越复杂的表示;第二,对中间这些渐进的表示共同进行学习,每一层的变化都需要同时考虑上 下两层的需要。总之,这两个特征使得深度学习比先前的机器学习方法更加成功。 1.2.7 机器学习现状 要想了解机器学习算法和工具的现状,一个好方法是看一下 Kaggle 上的机器学习竞赛。 Kaggle 上的竞争非常激烈(有些比赛有数千名参赛者,并提供数百万美元的奖金),而且涵盖 了各种类型的机器学习问题,所以它提供了一种现实方法来评判哪种方法有效、哪种方法无效。 那么哪种算法能够可靠地赢得竞赛呢?顶级参赛者都使用哪些工具? 在 2016 年和 2017 年,Kaggle 上主要有两大方法:梯度提升机和深度学习。具体而言,梯 度提升机用于处理结构化数据的问题,而深度学习则用于图像分类等感知问题。使用前一种方 法的人几乎都使用优秀的 XGBoost 库,它同时支持数据科学最流行的两种语言:Python 和 R。 使用深度学习的 Kaggle 参赛者则大多使用 Keras 库,因为它易于使用,非常灵活,并且支持 Python。 要想在如今的应用机器学习中取得成功,你应该熟悉这两种技术:梯度提升机,用于浅层 学习问题;深度学习,用于感知问题。用术语来说,你需要熟悉 XGBoost 和 Keras,它们是目 前主宰 Kaggle 竞赛的两个库。有了本书,你已经向这个目标迈出了一大步。 1.3 为什么是深度学习,为什么是现在 深度学习用于计算机视觉的两个关键思想,即卷积神经网络和反向传播,在 1989 年就已经 为人们所知。长短期记忆(LSTM,long short-term memory)算法是深度学习处理时间序列的 基础,它在 1997 年就被开发出来了,而且此后几乎没有发生变化。那么为什么深度学习在 2012 年之后才开始取得成功?这二十年间发生了什么变化? 总的来说,三种技术力量在推动着机器学习的进步: 书籍下载qq群6089740 钉钉群21734177 IT书籍 http://t.cn/RDIAj5D 电子书寻找看手相 钉钉或微信pythontesting
16 第1章什么是深度学习 口硬件 口数据集和基准 ▣算法上的改进 由于这一领域是靠实验结果而不是理论指导的,所以只有当合适的数据和硬件可用于尝试 新想法时(或者将旧想法的规模扩大,事实往往也是如此),才可能出现算法上的改进。机器学 习不是数学或物理学,靠一支笔和一张纸就能实现重大进展。它是一门工程科学。 在20世纪90年代和21世纪前十年,真正的瓶颈在于数据和硬件。但在这段时间内发生了 下面这些事情:互联网高速发展,并且针对游戏市场的需求开发出了高性能图形芯片。 1.3.1硬件 从1990年到2010年,非定制CPU的速度提高了约5000倍。因此,现在可以在笔记本电 脑上运行小型深度学习模型,但在25年前是无法实现的。 但是,对于计算机视觉或语音识别所使用的典型深度学习模型,所需要的计算能力要比笔 记本电脑的计算能力高几个数量级。在20世纪前十年里,NVIDIA和AMD等公司投资数十亿 美元来开发快速的大规模并行芯片(图形处理器,GPU),以便为越来越逼真的视频游戏提供图 形显示支持。这些芯片是廉价的、单一用途的超级计算机,用于在屏幕上实时谊染复杂的3D场景。 这些投资为科学界带来了好处。2007年,NVIDIA推出了CUDA,作为其GPU系列的编程接口。 少量GPU开始在各种高度并行化的应用中替代大量CPU集群,并且最早应用于物理建模。深 度神经网络主要由许多小矩阵乘法组成,它也是高度并行化的。2011年前后,一些研究人员开 始编写神经网络的CUDA实现,而Dan CiresanD和Alex Krizhevsky”属于第一批人。 这样,游戏市场资助了用于下一代人工智能应用的超级计算。有时候,大事件都是从游戏 开始的。今天,NVIDIA TITAN X(一款游戏GPU,在2015年底售价10O0美元)可以实现单 精度6.6T℉LOPS的峰值,即每秒进行6.6万亿次f1oat32运算。这比一台现代笔记本电脑的 速度要快约350倍。使用一块TITAN X显卡,只需几天就可以训练出几年前赢得LSVRC竞赛 的ImageNet模型。与此同时,大公司还在包含数百个GPU的集群上训练深度学习模型,这种 类型的GPU是专门针对深度学习的需求开发的,比如NVIDIA Tesla K80。如果没有现代GPU, 这种集群的超级计算能力是不可能实现的。 此外,深度学习行业已经开始超越GPU,开始投资于日益专业化的高效芯片来进行深度学 习。2016年,Google在其年度I/O大会上展示了张量处理器(TPU)项目,它是一种新的芯片 设计,其开发目的完全是为了运行深度神经网络。据报道,它的速度比最好的GPU还要快10倍 而且能效更高。 ①参见“Flexible,high performance convolutional neural networks for image classification",f刊载于Proceedings of the 22nd International Joint Conference on Artificial Intelligence,2011 ②参见“ImageNet classification with deep convolutional neural networks'”,f刊饿于Advances in Neural Information Processing sems,2012年第25辑
16 第 1 章 什么是深度学习 硬件 数据集和基准 算法上的改进 由于这一领域是靠实验结果而不是理论指导的,所以只有当合适的数据和硬件可用于尝试 新想法时(或者将旧想法的规模扩大,事实往往也是如此),才可能出现算法上的改进。机器学 习不是数学或物理学,靠一支笔和一张纸就能实现重大进展。它是一门工程科学。 在 20 世纪 90 年代和 21 世纪前十年,真正的瓶颈在于数据和硬件。但在这段时间内发生了 下面这些事情:互联网高速发展,并且针对游戏市场的需求开发出了高性能图形芯片。 1.3.1 硬件 从 1990 年到 2010 年,非定制 CPU 的速度提高了约 5000 倍。因此,现在可以在笔记本电 脑上运行小型深度学习模型,但在 25 年前是无法实现的。 但是,对于计算机视觉或语音识别所使用的典型深度学习模型,所需要的计算能力要比笔 记本电脑的计算能力高几个数量级。在 20 世纪前十年里,NVIDIA 和 AMD 等公司投资数十亿 美元来开发快速的大规模并行芯片(图形处理器,GPU),以便为越来越逼真的视频游戏提供图 形显示支持。这些芯片是廉价的、单一用途的超级计算机,用于在屏幕上实时渲染复杂的3D场景。 这些投资为科学界带来了好处。2007 年,NVIDIA 推出了 CUDA,作为其 GPU 系列的编程接口。 少量 GPU 开始在各种高度并行化的应用中替代大量 CPU 集群,并且最早应用于物理建模。深 度神经网络主要由许多小矩阵乘法组成,它也是高度并行化的。2011 年前后,一些研究人员开 始编写神经网络的 CUDA 实现,而 Dan Ciresana 和 Alex Krizhevskyb 属于第一批人。 这样,游戏市场资助了用于下一代人工智能应用的超级计算。有时候,大事件都是从游戏 开始的。今天,NVIDIA TITAN X(一款游戏 GPU,在 2015 年底售价 1000 美元)可以实现单 精度 6.6 TFLOPS 的峰值,即每秒进行 6.6 万亿次 float32 运算。这比一台现代笔记本电脑的 速度要快约 350 倍。使用一块 TITAN X 显卡,只需几天就可以训练出几年前赢得 ILSVRC 竞赛 的 ImageNet 模型。与此同时,大公司还在包含数百个 GPU 的集群上训练深度学习模型,这种 类型的 GPU 是专门针对深度学习的需求开发的,比如 NVIDIA Tesla K80。如果没有现代 GPU, 这种集群的超级计算能力是不可能实现的。 此外,深度学习行业已经开始超越 GPU,开始投资于日益专业化的高效芯片来进行深度学 习。2016 年,Google 在其年度 I/O 大会上展示了张量处理器(TPU)项目,它是一种新的芯片 设计,其开发目的完全是为了运行深度神经网络。据报道,它的速度比最好的 GPU 还要快 10 倍, 而且能效更高。 a 参见“Flexible, high performance convolutional neural networks for image classification”,刊载于 Proceedings of the 22nd International Joint Conference on Artificial Intelligence,2011 年。 b 参见“ImageNet classification with deep convolutional neural networks”,刊载于 Advances in Neural Information Processing Systems,2012 年第 25 辑
书籍下载qg群6089740钉钉群21734177 IT书籍http:/t.cn/RDIAj5D 1.3为什么是深度学习,为什么是现在 17 1.3.2 数据 人工智能有时被称为新的工业革命。如果深度学习是这场革命的蒸汽机,那么数据就是煤炭, 即驱动智能机器的原材料,没有煤炭一切皆不可能。就数据而言,除了过去20年里存储硬件的 指数级增长(遵循摩尔定律),最大的变革来自于互联网的兴起,它使得收集与分发用于机器学 习的超大型数据集变得可行。如今,大公司使用的图像数据集、视频数据集和自然语言数据集, 如果没有互联网的话根本无法收集。例如,Fckr网站上用户生成的图像标签一直是计算机视觉 的数据宝库。YouTube视频也是一座宝库。维基百科则是自然语言处理的关键数据集。 如果有一个数据集是深度学习兴起的催化剂的话,那么一定是ImageNet数据集。它包含 140万张图像,这些图像已经被人工划分为1000个图像类别(每张图像对应1个类别)。但 ImageNet的特殊之处不仅在于其数量之大,还在于与它相关的年度竞赛①。 正如Kaggle自2010年以来所展示的那样,公开竞赛是激励研究人员和工程师挑战极限的 极好方法。研究人员通过竞争来挑战共同基准,这极大地促进了近期深度学习的兴起。 1.3.3算法 除了硬件和数据之外,直到20世纪前十年的末期,我们仍没有可靠的方法来训练非常深 的神经网络。因此,神经网络仍然很浅,仅使用一两个表示层,无法超越更为精确的浅层方法, 比如SVM和随机森林。关键问题在于通过多层叠加的梯度传播。随着层数的增加,用于训练神 经网络的反馈信号会逐渐消失。 这一情况在2009一2010年左右发生了变化,当时出现了几个很简单但很重要的算法改进, 可以实现更好的梯度传播。 口更好的神经层激活函数(activation function)。 ▣更好的权重初始化方案(weight-.initialization scheme),一开始使用逐层预训练的方法, 不过这种方法很快就被放弃了。 ▣更好的优化方案(optimization scheme),比如RMSProp和Adam。 只有这些改进可以训练10层以上的模型时,深度学习才开始大放异彩。 最后,在2014年、2015年和2016年,人们发现了更先进的有助于梯度传播的方法,比如 批标准化、残差连接和深度可分离卷积。今天,我们可以从头开始训练上千层的模型。 1.3.4新的投资热潮 随着深度学习于2012一2013年在计算机视觉领域成为新的最优算法,并最终在所有感知任 务上都成为最优算法,业界领导者开始注意到它。接下来就是逐步升温的业界投资热潮,远远 超出了人工智能历史上曾经出现过的任何投资。 2011年,就在深度学习大放异彩之前,在人工智能方面的风险投资总额大约为1900万美元, ①ImageNet大规模视觉识别挑战赛(ILSVRC)a 电子书寻找看手相钉钉或微信pythontesting
1.3 为什么是深度学习,为什么是现在 17 1 5 3 7 2 6 4 8 9 1.3.2 数据 人工智能有时被称为新的工业革命。如果深度学习是这场革命的蒸汽机,那么数据就是煤炭, 即驱动智能机器的原材料,没有煤炭一切皆不可能。就数据而言,除了过去 20 年里存储硬件的 指数级增长(遵循摩尔定律),最大的变革来自于互联网的兴起,它使得收集与分发用于机器学 习的超大型数据集变得可行。如今,大公司使用的图像数据集、视频数据集和自然语言数据集, 如果没有互联网的话根本无法收集。例如,Flickr 网站上用户生成的图像标签一直是计算机视觉 的数据宝库。YouTube 视频也是一座宝库。维基百科则是自然语言处理的关键数据集。 如果有一个数据集是深度学习兴起的催化剂的话,那么一定是 ImageNet 数据集。它包含 140 万张图像,这些图像已经被人工划分为 1000 个图像类别(每张图像对应 1 个类别)。但 ImageNet 的特殊之处不仅在于其数量之大,还在于与它相关的年度竞赛 a。 正如 Kaggle 自 2010 年以来所展示的那样,公开竞赛是激励研究人员和工程师挑战极限的 极好方法。研究人员通过竞争来挑战共同基准,这极大地促进了近期深度学习的兴起。 1.3.3 算法 除了硬件和数据之外,直到 20 世纪前十年的末期,我们仍没有可靠的方法来训练非常深 的神经网络。因此,神经网络仍然很浅,仅使用一两个表示层,无法超越更为精确的浅层方法, 比如 SVM 和随机森林。关键问题在于通过多层叠加的梯度传播。随着层数的增加,用于训练神 经网络的反馈信号会逐渐消失。 这一情况在 2009—2010 年左右发生了变化,当时出现了几个很简单但很重要的算法改进, 可以实现更好的梯度传播。 更好的神经层激活函数(activation function)。 更好的权重初始化方案(weight-initialization scheme),一开始使用逐层预训练的方法, 不过这种方法很快就被放弃了。 更好的优化方案(optimization scheme),比如 RMSProp 和 Adam。 只有这些改进可以训练 10 层以上的模型时,深度学习才开始大放异彩。 最后,在 2014 年、2015 年和 2016 年,人们发现了更先进的有助于梯度传播的方法,比如 批标准化、残差连接和深度可分离卷积。今天,我们可以从头开始训练上千层的模型。 1.3.4 新的投资热潮 随着深度学习于 2012—2013 年在计算机视觉领域成为新的最优算法,并最终在所有感知任 务上都成为最优算法,业界领导者开始注意到它。接下来就是逐步升温的业界投资热潮,远远 超出了人工智能历史上曾经出现过的任何投资。 2011 年,就在深度学习大放异彩之前,在人工智能方面的风险投资总额大约为 1900 万美元, a ImageNet 大规模视觉识别挑战赛(ILSVRC)。 书籍下载qq群6089740 钉钉群21734177 IT书籍 http://t.cn/RDIAj5D 电子书寻找看手相 钉钉或微信pythontesting