在这个万物皆算法的新时代

写给知道算法重要

但不知道算法是什么的读者

不使用编程语言,几乎没有使用一个公式

中学生、文科生也能轻松读懂

带你深入了解算法是什么,

算法从何而来,算法如何运作

‍ 《算法简史:从美索不达米亚到人工智能时代》

作者: [英] 克里斯·布利克利

书号:978-7-5217-6543-4

定价:58元

页数:304页

出版时间:2024年10月

中信出版集团·新思文化‍

阿基米德,艾伦·图灵,理查德·汉明,“深度学习三巨头”,德米斯·哈萨比斯

重走算法发展史上大师与天才的创新之路

讲述超过20位“计算机界的诺贝尔奖”图灵奖得主及其贡献

导航软件,约会APP,讯息的传输和加解密,语音、图像识别和自然语言处理

社交网络的“流量密码”,机器学习和人工神经网络,比特币和区块链,量子计算

感受算法中蕴含的数学之美和强大力量

附赠精美折页

详细展现算法4 000年的发展历程

【内容介绍】

21世纪的今天,我们生活的方方面面无时无刻不在被算法影响和塑造。它们帮我们选择最佳的行车路线,向我们推荐我们可能购买的商品,为我们识别语音和图像,甚至给单身人士匹配婚恋对象。越发强大的算法也在不断突破极限,无论是打败围棋世界冠军柯洁,借助大语言模型与人类会话,还是在200秒内完成超级计算机1万年才能完成的计算。

然而,算法并非新近才开始影响人类社会,人类受益于算法已经有数千年的历史。在《算法简史:从美索不达米亚到人工智能时代》中,以算法发展过程中的关键人物和经典算法为主线,作者克里斯·布利克利勾勒出了一部近4 000年的算法发展简史:从镌刻在古巴比伦泥板上求2的平方根的算法,到刘徽和祖冲之父子对圆周率的精确计算;从查尔斯·巴贝奇和艾达·洛芙莱斯试图建造的机械数字通用计算机,到艾伦·图灵对算法的正式定义和他构想的图灵机;从第一台可编程的通用电子计算机ENIAC,到第一个人工智能程序“逻辑理论家”;从互联网的诞生,讯息的传输和加解密,再到亚马逊的推荐系统、谷歌搜索和社交媒体的动态排序,以及今天无处不在的人工神经网络……书中丰富的算法实例让读者充分感受到算法中蕴含的数学之美以及算法推动人类社会进步的强大力量。

全书语言通俗易懂,几乎没有使用一个公式,述及超过20位图灵奖——“计算机界的诺贝尔奖”——得主及其科学贡献,为没有专业背景但希望了解算法的读者提供了一个绝佳的窗口。

【作者介绍】

克里斯·布利克利(Chris Bleakley)

爱尔兰都柏林大学计算机科学学院教授,曾任该院院长,有近40年的算法设计经验。除学术研究和教学外,布利克利在产业界也有丰富的从业经验,曾担任多家业内公司的顾问、高级研究员和副总裁。

【目录】

引 言 1

第1章 古老的算法 11

第2章 不断扩展的圆圈 29

第3章 计算机之梦 45

第4章 天气预报 63

第5章 人工智能现身 85

第6章 大海捞针 107

第7章 互联网 135

第8章 搜索网络 165

第9章 脸书与朋友 185

第10章 全美最受欢迎的智力竞赛节目 199

第11章 模仿大脑 209

第12章 超人智能 235

第13章 未来展望 249

附 录 265

注 释 269

使用许可 275

参考文献 277

【推荐与赞誉】

《算法简史:从美索不达米亚到人工智能时代》聚焦许多读者“不知道究竟是什么”的算法,既适合缺乏专业背景的普通读者了解算法的来龙去脉,也适合专业人士回味算法研究中发人深省的历史。在一切皆可计算,算法塑造世界的新时代,阅读这本书可以获得有益的启发。

李国杰

中国工程院院士

中科曙光创始人、董事长

中国计算机学会杰出贡献奖获得者

我们今天的生活和工作已经离不开电脑,而电脑之所以能为我们提供这么大的帮助,其背后的“动力”无疑是算法,可以说电脑上完成的一切都是按照算法一步步计算的结果。然而什么是算法呢?这本书为我们打开了了解算法的大门,从算法发展史的角度,非常详尽而又通俗易懂地介绍了什么是算法,描绘出了一部近4 000年的算法发展简史。

马少平

清华大学计算机科学与技术系教授

本书以时间为序,从算法的雏形讲起,逐步深入,全面展现了算法从古至今的发展历程。它不仅梳理了算法发展的脉络,还总结了计算机科学史上的重要里程碑式事件和成果,以及这些成果背后那些行业大咖的贡献和故事。作者以平实的语言将复杂的算法概念阐述得清晰易懂,使这本书成为一本适合初学者入门的算法书籍。

周晓锋

中国科学院沈阳自动化研究所研究员

显然,任何教授、学习或使用算法的人都会从本书讲述的算法发展史中获益良多。

美国数学协会

布利克利假定读者不具备任何数学和计算机科学背景,在每个专业术语首次出现时都会做清晰的解释……对于任何想了解算法在历史上如何发展和实现的人,这都是一本令人愉悦的读物。

《美国数学学会通讯》

点击封面,即可购买

【书摘】

从木匠到诺贝尔物理学奖:杰弗里·辛顿的深度学习之路

辛顿(图11.7)1947年出生于战后的英格兰温布尔登。 他认为自己在学校时数学不是特别好。 尽管如此,他还是被剑桥大学录取,在那里攻读物理与生理学专业。 由于对专业不太满意,他转而学习哲学。 最后,他选择了心理学。 回首过往,辛顿说他想要了解人类思维是如何运作的。 他的结论是,哲学家和心理学家都没有答案。 此后他又转向了计算机科学。

毕业后,他先做了一年的木匠,然后去爱丁堡大学攻读博士学位。在导师不情愿的默许下,辛顿坚持进行ANN的研究。在完成博士学位后,辛顿作为一个新手学者走上了一条四处流动的道路。在进入多伦多大学担任教授职位之前,他曾在萨塞克斯大学、加利福尼亚大学圣迭戈分校、卡内基梅隆大学和伦敦大学学院工作过。

2004年,辛顿向加拿大高等研究院(Canadian Institute For Advanced Research,CIFAR)提交了一份为神经计算研究项目申请资助的提案。CIFAR以资助基础研究闻名,但此次申请获批的希望仍旧不大。蒙特利尔大学的约书亚·本吉奥(Yoshua Bengio)教授后来评论道:

那是最糟糕的时间点。其他人都在忙着做不同的事情。杰夫不知道怎么说服了他们。

这笔数额不大的经费被用于组织一系列只有受邀才能参加的聚会,受邀 人中有一些世界上顶尖的ANN研究者。本吉奥又讲道:

在广义的机器学习领域,我们有点像一群边缘人:我们的论文无法发表。聚会为我们提供了一个交换意见的地方。

这 项拨款后来被证明是一次结构性变革的开端。

2006年,辛顿和多伦多大学的西蒙·奥辛德洛(Simon Osindero)以 及新加坡国立大学的郑宇怀发表了一篇革命性的论文。该论文标志着现在被称为深度学习(deep learning)的开端。文章描述了由3个全连接的隐藏层组成的网络。这个网络有太多的参数,用反向传播算法的方式进行训练会非常缓慢。为了解决这个问题,辛顿和他的团队设计了一种新的方法来加速训练。

通常,反向传播算法以随机参数值开始训练。但在这项新研究中,团队在反向传播之前插入了一个预训练阶段。这个新增阶段的目的是快速找到一组好的参数,以支持反向传播算法的启动。

反向传播算法是监督(supervised)训练的一个例子。这意味着训练要为网络提供输入和输出相匹配的示例。在这个新的初步阶段中,辛顿和其他共同作者建议采用无监督(unsupervised)训练。无监督训练只使用输入示例。

在无监督的预训练中,示例输入被提供给网络。通过算法调整网络参数,使ANN学会探测输入中的重要模式。不需要让网络知道这些模式与什么类相关—它学习的只是区分这些模式。对于手写文字识别,这些模式可能是线条的长度和方向,或者曲线的位置和长度。为了实现这一点,训练算法每次只更新一层的参数,从输入层开始。换句话说,该算法从输入向前构建出网络参数。该方法的计算复杂度明显低于反向传播算法。

一旦预训练完成,网络就能够在输入数据集中区分出最显著的模式。之后,用预训练得到的参数开始进行正常的监督训练。由于反向传播算法有了很好的起点,因此它用更少的迭代就能完成训练。

跟随贝尔实验室的脚步,辛顿的团队选择了以攻克手写数字识别问题为目标。这一次,有一个更大的数据集可供使用。该项目使用了由杨立昆、谷歌实验室的科琳娜·科尔特斯(Corinna Cortes)和微软研究院的克里斯托弗·伯吉斯(Christopher Burges)构建的MNIST数据集。MNIST收录了7万个手写数字,这些数字是从美国人口普查报告和高中考试答卷中获取的。

最终得到的ANN达到了89.75%的准确率,这个成绩不如杨立昆的卷积神经网络。然而,这不是重点。他们已经证明,通过预训练,可以训练出一个深度的、全连接的网络。获得更深入和更有效的网络,这是行得通的。

在接下来的10年中,深度学习发展势头良好。3种进步的融合使研究人员能够建立更大、更深层次的网络。更智能的算法减少了计算复杂度,更快的计算机缩短了运行时间,更大的数据集允许对更多的参数进行优化。

2010年,瑞士的一组研究人员进行了一项实验,希望看看增加神经网络的深度是否真的能提高其准确性。在资深神经网络专家于尔根•施米德胡贝(Jürgen Schmidhuber)的领导下,该团队训练了一个6层神经网络来识别手写数字。他们训练的神经网络含有多达5 710个神经元。和辛顿的团队一样,他们使用的是MNIST手写数字数据集。然而,即使是MNIST,也不足以满足施米德胡贝团队的目标。他们通过扭曲MNIST中的照片,人为地生成了额外的数字图像。

得到的ANN达到了99.65%的准确率。这不仅是一项世界纪录,其表现也已经达到了人类的水平。

突然,所有人都意识到,ANN太小了,无法实现任何实际用途。深度网络才是前进的方向。一场人工智能革命近在眼前。

海啸

深度学习的海啸分3波袭来:首先是语音识别,然后是图像识别,再之后是自然语言处理。半个世纪的模式识别研究在短短3年内被淘汰出局。

60年来,科技界一直在努力将口语表达准确地转化为文本。最好的算法依赖傅里叶变换(见第2章)来提取谐波的振幅。然后利用隐马尔可夫模型(Hidden Markov Model,HMM),根据观察到的谐波情况和声音序列在真实语音中已知的出现概率来判断发出的音素。

在辛顿实验室的实习生纳夫迪普·贾特利(Navdeep Jaitly)的帮助下,谷歌去除了他们语音生成识别系统的一半,用深度神经网络取而代之。他们得出的ANN-HMM混合体语音识别系统包含一个4层的ANN。该团队使用来自谷歌语音搜索的5 870小时的语音录音来训练ANN,并添加了来自视频网站YouTube的1 400小时的对话音频。新的ANN-HMM混合体比谷歌先前使用的基于HMM的语音识别系统性能高出4.7%。在自动语音识别的领域,这算是一个巨大的进步。完成了在谷歌的任务后,杰出的实习生贾特利返回多伦多大学去完成他的博士学位。

在接下来的5年里,谷歌逐步扩展和改进了他们基于ANN的语音识别系统。截至2017年,谷歌的语音识别系统达到了95%的准确率,这是前所未有的水平。

2012年,辛顿的团队报告了一种深度神经网络,旨在从静态图像中识别出真实世界的物体。这些物体是常见的东西,如猫、狗、人、面孔、汽车和植物。这个问题远不像识别数字那么简单。数字是由线条组成的,但识别物体需要分析其形状、颜色、纹理和边缘。除此之外,要识别的物体类的数量也大大超过了微不足道的10个印度—阿拉伯数字。

这个网络被以首席设计师亚历克斯·克里泽夫斯基(Alex Krizhevsky)的名字命名为“亚历克斯网”(AlexNet),包含65万个神经元和6 000万个参数。它整合了5个卷积层和其后的3个全连接层。此外,这项工作还引入了一种简单但却有效得惊人的技术。在训练过程中,随机选择少量神经元并使其沉默。换句话说,它们被禁止放电。这项技术被命名为丢弃(Drop-out),它迫使神经网络将决策负载分散到更多的神经元上。这使网络面对输入的变化更加稳健。

该团队在2012年用这个网络参加了图像网大规模视觉识别挑战赛(ImageNet Large Scale Visual Recognition Challenge)。比赛的数据集包括大约120万张训练图像和1 000个物体类。克里泽夫斯基、伊利娅·苏特斯科娃(Ilya Sutskever)和辛顿的深度卷积网络大获全胜。亚历克斯网前5项识别结果的总准确率达到了84.7%。也就是说,真正的物体类落在这个ANN的前5大选择中的情况占比超过84%。该网络的错误率几乎是排名第二的系统的一半。

与此同时,在多伦多以东仅500千米的圣劳伦斯河河畔,蒙特利尔大学的一个团队正在研究如何将深度神经网络应用于文本处理。该团队由约书亚·本吉奥(图11.8)领导。

本吉奥生于1964年,来自法国巴黎,是神经网络复兴的领军人物之一。他在位于蒙特利尔的麦吉尔大学学习电子工程和计算机科学,获得工学学士、理学硕士和博士学位。本吉奥在青少年时期是科幻小说迷,在读研究生时期对神经网络研究充满热情。他如饥似渴地阅读有关这个主题的所有早期论文。作为一个自称书呆子的人,他开始建立自己的ANN。在AT&T贝尔实验室和MIT做过博士后之后,本吉奥于1993年加入了蒙特利尔大学。本吉奥的团队训练ANN来预测文本中单词序列出现的概率。

2014年,谷歌选择了本吉奥的工作,将其用于解决把文档从一种语言翻译成另一种语言的难题。那时,谷歌翻译网络服务已经运行了8 年。该系统依靠传统的方法将句子分割并将短语从一种语言映射到另一种语言。总的来说,这个系统的翻译不是特别好。翻译出来的句子大多可读,但并不流畅。

谷歌采取了不同寻常的一步,将两个神经网络背靠背连接起来。在该方案中,编码器(第一个网络)的输出被作为解码器(第二个网络)的输出提供给解码器。谷歌的想法是,编码器可以将英文文本转换为抽象的数字向量。解码器可以把这个过程逆转过来,把抽象的数字向量转换成法语。研究人员没有规定中间的数字向量是什么。他们只是依靠训练程序来寻找合适的表征数字。

经过两年的努力,谷歌完成了一个8层编码器和一个配套的8层解码器的开发。该网络是用一个包含3 600万对人工翻译句子的语料库进行训练的。新系统优于之前的谷歌翻译系统,翻译错误减少了60%,令人惊叹。该系统在谷歌网站上线后,双语用户报告说,翻译质量有了立竿见影式的显著提高。

一次又一次的成功催生了深度学习的热潮。很多公司预见到了由深度学习驱动的大量新应用—自动驾驶汽车、智能相机、下一代推荐系统、增强的网页搜索、精确的蛋白质结构预测、加速药物设计和很多其他方面的应用。谷歌、脸书、IBM、苹果、亚马逊、雅虎、推特、奥多比(Adobe)和百度都在抢夺深度学习方面的人才。据很多传言称,神经网络界名人的起薪高达七位数。杨立昆被任命为脸书AI研究总监。吴恩达(Andrew Ng)加入百度担任首席科学家。在65岁那年,杰弗里·辛顿成为谷歌的暑期实习生!

2015年,在这场淘金热中,杨立昆、辛顿和本吉奥在《自然》杂志上发表了一篇调研行业发展的论文。在文章发表之前,深度神经网络已经席卷了整个人工智能领域,方方面面都发生了翻天覆地的改变。

杨立昆、辛顿和本吉奥于2018年获得了图灵奖,他们分享了谷歌赞助的100万美元奖金。

随着深度学习的巨大成功,一些人推测人类智能水平的人工通用智能(见第5章)已经不远了。但杨立昆提出了异议:

我们是否能够使用新方法创造出人类水平的智能,嗯,解决这个问题可能有50座山要爬,包括我们还看不到的那些山。我们目前只爬了第一座,也许是第二座。

到目前为止,我们所拥有的只是复杂的模式识别引擎。然而,我们可以推测穿过这些大山的路径。目前,最好的猜测是我们需要一个ANN的网络。想要有显著的改进,可能还需要对ANN进行根本性的重新开发。现今的ANN只是对生物神经网络的一种大致的近似。也许我们需要一个更现实的模型。魔鬼很可能藏在细节中。

对于计算机科学界以外的人来说,深度神经网络的力量第一次显现是在2016年。那一年,一个人工智能登上了世界新闻媒体的头条。尽管这是在一个狭窄领域的努力,但这也许是人工智能第一次获得了超越人类的能力。

点击封面,即可购买