• 第一章(引言):刘畅、许丁杰、潘雨粟和NeutronT 对本章进行了阅读,并对很多语句提出了不少修改建议。林中鹏进行了校对,他提出了很多独到的修改建议。
• 第二章(线性代数):许丁杰和骆徐圣阅读本章,并修改语句。李若愚进行了校对,提出了很多细心的建议。
• 第三章(概率与信息论):许丁杰阅读本章,并修改语句。李培炎和何翊卓进行了校对,并修改了很多中文用词,使翻译更加准确。
• 第四章(数值计算):张亚霏阅读本章,并对其他章节也有提出了一些修改建议。张源源进行了校对,并指出了原文可能存在的问题,非常仔细。
• 第五章(机器学习基础):郭浩和黄平春阅读本章,并修改语句。李东和林中鹏进行了校对。本章篇幅较长,能够有现在的翻译质量离不开这四位的贡献。
• 第六章(深度前馈网络):周卫林、林中鹏和张远航阅读本章,并提出修改意见。
• 第七章(深度学习中的正则化):周柏村进行了非常细心的校对,指出了大量问题,令翻译更加准确。
• 第八章(深度模型中的优化):房晓宇和吴翔阅读本章。黄平春进行了校对,他提出的很多建议让行文更加流畅易懂。
• 第九章(卷积网络):赵雨和潘雨粟阅读本章,并润色语句。丁志铭进行了非常仔细的校对,并指出很多翻译问题。
• 第十章(序列建模:循环和递归网络):刘畅阅读本章。赵雨提供了详细的校对建议,尹瑞清根据他的翻译版本,给我们的版本提出了很多建议。虽然仍存在一些分歧,但我们两个版本的整合,让翻译质量提升很多。
• 第十二章(应用):潘雨粟进行了校对,在他的校对之前,本章阅读起来比较困难。他提供的修改建议,不仅提高了行文流畅度,还提升了译文的准确度。
• 第十三章(线性因子模型):贺天行阅读本章,修改语句。杨志伟校对本章,润色大量语句。
• 第十四章(自编码器):李雨慧和黄平春进行了校对。李雨慧提升了语言的流畅度,黄平春纠正了不少错误,提高了准确性。
这本书对各类读者都有一定用处,但我们主要是为两类受众对象而写的。其中一类受众对象是学习机器学习的大学生(本科或研究生),包括那些已经开始职业生涯的深度学习和人工智能研究者。另一类受众对象是没有机器学习或统计背景但希望能快速地掌握这方面知识并在他们的产品或平台中使用深度学习的软件工程师。深度学习在许多软件领域都已被证明是有用的,包括计算机视觉、语音和音频处理、自然语言处理、机器人技术、生物信息学和化学、电子游戏、搜索引擎、网络广告和金融。
为了最好地服务各类读者,我们将本书组织为三个部分。第一部分介绍基本的数学工具和机器学习的概念。第二部分介绍最成熟的深度学习算法,这些技术基本上已经得到解决。第三部分讨论某些具有展望性的想法,它们被广泛地认为是深度学习未来的研究重点。
读者可以随意跳过不感兴趣或与自己背景不相关的部分。熟悉线性代数、概率和基本机器学习概念的读者可以跳过第一部分,例如,当读者只是想实现一个能工作的系统则不需要阅读超出第二部分的内容。为了帮助读者选择章节,图1.6 展示了这本书的高层组织结构的流程图。
我们假设所有读者都具备计算机科学背景。也假设读者熟悉编程,并且对计算的性能问题、复杂性理论、入门级微积分和一些图论术语有基本的了解。
远在古希腊时期,发明家就梦想着创造能自主思考的机器。神话人物皮格马利翁(Pygmalion)、代达罗斯(Daedalus) 和赫淮斯托斯(Hephaestus) 可以被看作传说中的发明家,而加拉蒂亚(Galatea)、塔洛斯(Talos) 和潘多拉(Pandora) 则可以被视为人造生命(Ovid and Martin, 2004; Sparkes, 1996; Tandy, 1997)。
当人类第一次构思可编程计算机时,就已经在思考计算机能否变得智能(尽管这距造出第一台计算机还有一百多年)(Lovelace, 1842)。如今,人工智能(artificialintelligence, AI)已经成为一个具有众多实际应用和活跃研究课题的领域,并且正在蓬勃发展。我们期望通过智能软件自动地处理常规劳动、理解语音或图像、帮助医学诊断和支持基础科学研究。
在人工智能的早期,那些对人类智力来说非常困难、但对计算机来说相对简单的问题得到迅速解决,比如,那些可以通过一系列形式化的数学规则来描述的问题。人工智能的真正挑战在于解决那些对人来说很容易执行、但很难形式化描述的任务,如识别人们所说的话或图像中的脸。对于这些问题,我们人类往往可以凭借直觉轻易地解决。
针对这些比较直观的问题,本书讨论一种解决方案。该方案可以让计算机从经验中学习,并根据层次化的概念体系来理解世界,而每个概念则通过与某些相对简单的概念之间的关系来定义。让计算机从经验获取知识,可以避免由人类来给计算机形式化地指定它需要的所有知识。层次化的概念让计算机构建较简单的概念来学习复杂概念。如果绘制出这些概念如何建立在彼此之上的图,我们将得到一张‘‘深’’(层次很多)的图。基于这个原因,我们称这种方法为AI 深度学习(deep learning)
AI 许多早期的成功发生在相对朴素且形式化的环境中,而且不要求计算机具备很多关于世界的知识。例如,IBM 的深蓝(Deep Blue)国际象棋系统在1997 年击败了世界冠军Garry Kasparov(Hsu, 2002)。显然国际象棋是一个非常简单的领域,因为它仅含有64 个位置并只能以严格限制的方式移动32 个棋子。设计一种成功的国际象棋策略是巨大的成就,但向计算机描述棋子及其允许的走法并不是挑战的困难所在。国际象棋完全可以由一个非常简短的、完全形式化的规则列表来描述,并可以容易地由程序员事先准备好。
讽刺的是,抽象和形式化的任务对人类而言是最困难的脑力任务之一,但对计算机而言却属于最容易的。计算机早就能够打败人类最好的象棋选手,但直到最近计算机才在识别对象或语音任务中达到人类平均水平。一个人的日常生活需要关于世界的巨量知识。很多这方面的知识是主观的、直观的,因此很难通过形式化的方式表达清楚。计算机需要获取同样的知识才能表现出智能。人工智能的一个关键挑战就是如何将这些非形式化的知识传达给计算机。
一些人工智能项目力求将关于世界的知识用形式化的语言进行硬编码(hard-code)。计算机可以使用逻辑推理规则来自动地理解这些形式化语言中的声明。这就是众所周知的人工智能的知识库(knowledge base)方法。然而,这些项目最终都没有取得重大的成功。其中最著名的项目是Cyc (Lenat and Guha, 1989)。Cyc包括一个推断引擎和一个使用CycL 语言描述的声明数据库。这些声明是由人类监督者输入的。这是一个笨拙的过程。人们设法设计出足够复杂的形式化规则来精确地描述世界。例如,Cyc 不能理解一个关于名为Fred 的人在早上剃须的故事(Linde, 1992)。它的推理引擎检测到故事中的不一致性:它知道人体的构成不包含电气零件,但由于Fred 正拿着一个电动剃须刀,它认为实体‘‘正在剃须的Fred” (“FredWhileShaving”) 含有电气部件。因此它产生了这样的疑问——Fred 在刮胡子的时候是否仍然是一个人。
依靠硬编码的知识体系面对的困难表明,AI 系统需要具备自己获取知识的能力,即从原始数据中提取模式的能力。这种能力被称为机器学习(machine learning)。引入机器学习使计算机能够解决涉及现实世界知识的问题,并能作出看似主观的决策。比如,一个被称为逻辑回归(logistic regression)的简单机器学习算法可以决定是否建议剖腹产(Mor-Yosef et al., 1990)。而同样是简单机器学习算法的朴素贝叶斯(naive Bayes)则可以区分垃圾电子邮件和合法电子邮件。
这些简单的机器学习算法的性能在很大程度上依赖于给定数据的表示(repre-sentation)。例如,当逻辑回归被于判断产妇是否适合剖腹产时,AI 系统不会直接检查患者。相反,医生需要告诉系统几条相关的信息,诸如是存在子宫疤痕。表示患者的每条信息被称为一个特征。逻辑回归学习病人的这些特征如何与各种结果
在整个计算机科学乃至日常生活中,对表示的依赖都是一个普遍现象。在计算机科学中,如果数据集合被精巧地结构化并被智能地索引,那么诸如搜索之类的操作的处理速度就可以成指数级地加快。人们可以很容易地在阿拉伯数字的表示下进行算术运算,但在罗马数字的表示下运算会比较耗时。因此,毫不奇怪,表示的选择会对机器学习算法的性能产生巨大的影响。图1.1 展示了一个简单的可视化例子。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !