译者序
当机械工业出版社华章公司的编辑找我翻译深度学习书籍时,我本能地拒绝了,因为太耗费时间了。但当得知是要翻译Charu C. Aggarwal的Neural Networks and Deep Learning:A Textbook,我立刻表示有兴趣。
Charu C. Aggarwal博士是数据挖掘领域天才式的大牛。当我作为访问学者于2010年在伊利诺伊大学芝加哥分校的Philip S. Yu教授那里访问的时候,就听说过不少Charu博士的神奇传说:3年从MIT博士毕业;在IBM T. J. Watson研究院的Philip S. Yu手下实习时,3个月写了3篇论文;写论文一般只写摘要和引言,后面找人做一下实验就可以了。Charu博士和Philip S. Yu教授有长期深入的合作,Yu教授的不少学生也和Charu有合作。很遗憾我没能和Charu直接合作,但在ASONAM2014于北京国际会议中心举行时,Charu博士做大会特邀报告,我有幸见到他,并进行了深入交流。虽然看起来像个腼腆纯粹的大男孩,但是Charu博士绝对是数据挖掘领域的顶尖学者。
Charu博士是IBM T. J. Watson 研究院的杰出研究员(Distinguished Research Staff Member,DRSM)。他在数据挖掘领域有深入研究,特别关注数据流、数据隐私、不确定数据和社交网络分析,并取得了杰出的成就:出版了18本著作,发表了350多篇会议和期刊论文,拥有80多项专利,H. index高达120。此外,他也获得了众多学术奖励,例如IEEE Computer Society的最高奖励W. Wallace McDowell Award和ACM SIGKDD Innovation Award(2019)。
本书是神经网络和深度学习的百科全书,既涉猎了深度神经网络的所有重要方向,也深入介绍了各类模型的技术技巧和最新进展。具体而言,本书第1~4章讲解了神经网络的基本概念与原理、浅层神经网络的经典应用、深度神经网络的训练方法与技巧等;第5~8章介绍了四类广泛使用的神经网络架构,包括经典的径向基函数(RBF)网络、受限玻尔兹曼机(RBM)、循环神经网络(RNN)、卷积神经网络(CNN);第9章和第10章介绍了深度学习的前沿方向与模型框架,如深度强化学习、注意力机制、生成对抗网络等。本书既是机器学习和深度学习的入门教材,也是学术研究和工程技术的重要参考资料。
自2019年10月起,我们便组织实验室的同学共同阅读学习该书的内容,并在每周的组会上进行讲解介绍。随后组织翻译工作,并于2020年上半年完成了翻译初稿。后经2~3轮的仔细校对、修改,最终于2020年年底完成了全书的翻译。有很多人对本书的翻译工作做出了贡献,他们是:庄远鑫、赵天宇、杨雨轩、吴文睿、贾天锐、江训强、王贞仪、王浩、刘佳玮、郝燕如、楚贯一、张舒阳、王晓磊、王春辰、许斯泳、刘念、刘佳玥。石川负责本书翻译的组织和审校工作,杨成具体负责本书的翻译和审校工作。在此,对所有为本书翻译工作做出了贡献的人员表示感谢!
前言
任何能通过图灵测试的人工智能都知道不应该通过这个测试。
——Ian McDonald
神经网络是通过以类似人类神经元的方式处理学习模型中的计算单元来模拟人类神经系统以完成机器学习任务。神经网络的宏伟愿景是通过构建一些模拟人类神经系统计算架构的机器来创造人工智能,由于当今最快的计算机的计算能力也无法企及人脑计算能力,所以这显然不是一项简单的任务。神经网络在20世纪五六十年代计算机出现后不久得到了迅速发展,Rosenblatt 的感知机算法被视作神经网络的基石,这引起了人们对人工智能前景的早期关注和兴奋。然而在这种早期的兴奋过后,神经网络对数据的渴求和计算过于密集的特性成为其大展宏图的障碍,它度过了一段令人失望的时期。最终,在世纪之交,海量的可用数据以及不断增长的计算能力使得神经网络重振雄风,并在人们视线中以新的名称——深度学习出现。虽然人工智能匹敌人类智能的那一天离我们还很遥远,但在图像识别、自动驾驶和博弈等特定领域,人工智能已经比肩甚至超过了人类智能。我们也很难预测人工智能将来的上限是什么。例如,二十多年前,很少有计算机视觉专家会想到会有自动化系统能够比人类更准确地执行图像分类这种直观的任务。
理论上,神经网络能够通过足够的训练数据学习任何数学函数,现在已知一些变体(如循环神经网络)是图灵完备的。图灵完备是指在给定足够的训练数据的情况下,神经网络可以拟合任何学习算法。其不足之处在于,即使是对于简单的任务,往往也需要大量的训练数据,这导致相应的训练时间也增加了(如果我们首先假设有足够的训练数据)。例如,图像识别对人类来说是一项简单的任务,但即使在高性能系统中,其训练时间也可能长达几周。此外,还有与神经网络训练的稳定性相关的实际问题,这些问题甚至在如今都还没有解决。然而,考虑到计算机的计算速度会随着时间的推移而迅速提高,而且从根本上来说,更强大的计算范式(如量子计算)也即将出现,计算问题最终可能不会像想象的那样难以解决。
虽然神经网络的生物学类比是令人惊奇的,并且引发了与科幻小说的比较,但相比之下对神经网络的数学理解则更平凡。神经网络的抽象化可以被视为一种模块化的方法,使基于输入和输出之间依赖关系的计算图上的连续优化的学习算法成为可能。平心而论,这和控制理论中的传统工作没有太大区别——事实上,控制理论中的一些用于优化的方法与神经网络中最基本的算法惊人地相似(历史上也是如此)。然而,近年来大量的可用数据以及计算能力的提升,使得能够对这些计算图进行比以前有着更深的架构的实验。由此带来的成功改变了人们对深度学习潜力的广泛认识。
本书的章节结构如下:
1 神经网络的基础知识:第1章讨论神经网络设计的基础知识。许多传统的机器学习模型可以理解为神经网络学习的特殊情况。理解传统机器学习和神经网络之间的关系是理解后者的第一步。第2章用神经网络对各种机器学习模型进行了模拟,旨在让分析者了解神经网络是如何挑战传统机器学习算法的极限的。
2 神经网络的基本原理:第3章和第4章提供对训练挑战的更详细的叙述。第5章和第6章介绍径向基函数(RBF)网络和受限玻尔兹曼机。
3 神经网络的进阶主题:深度学习最近的很多成功是各种领域的特定架构的结果,例如循环神经网络和卷积神经网络。第7章和第8章分别讨论循环神经网络和卷积神经网络。第9章和第10章讨论一些进阶主题,如深度强化学习、神经图灵机和生成对抗网络。
我们所关注的内容中包含一些“被遗忘”的架构,如径向基函数网络和Kohonen自组织映射,因为它们在许多应用中具有潜力。本书是为研究生、研究人员和从业者写的。许多练习和解决方案手册都有助于课堂教学。在可能的情况下,本书突出以应用程序为中心的视角,以便让读者对该技术有所了解。
在本书中,向量或多维数据点都通过在字母上方加一条横线来表示,如X或y。向量点积用居中的点表示,比如X·Y。矩阵用不带横线的斜体大写字母表示,比如R。在本书中,对应整个训练数据集的n×d矩阵代表n个d维数据,该矩阵用D表示。因此,D中的各个数据点是d维行向量。另外,每个分量代表一个数据点的向量通常是n维列向量,例如具有n个数据点作为类变量的n维列向量y。观测值yi与预测值y∧i的区别在于变量顶部的扬抑符。
Charu C Aggarwal
美国纽约州约克敦海茨