Python深度学习(第2版)
上QQ阅读APP看书,第一时间看更新

前言

当拿起本书时,你可能已经意识到近年来深度学习在人工智能领域所取得的非凡进展。在计算机视觉领域和自然语言处理领域,之前的模型几乎无法使用,如今的高性能系统已经大规模部署在日常生活用品中。这种突飞猛进的进展几乎影响到每一个行业。我们已经将深度学习应用于解决诸多领域的一系列重要问题,这些领域包括医学成像、农业、自动驾驶、教育、灾害防治和制造业等。

然而,我相信深度学习仍然处于初期阶段。目前它只发挥了一小部分潜力。随着时间的推移,它将应用于它能帮助解决的所有问题上,这种转变将持续数十年。

要将深度学习技术用于它能解决的所有问题上,我们需要让尽可能多的人接触这项技术,其中包括非专家,即既不是研究人员也不是研究生的那些人。要让深度学习发挥全部潜力,我们需要全面普及这项技术。今天,我相信我们正处于历史性转变的风口浪尖,深度学习正在走出学术实验室和大型科技公司的研发部门,成为每个开发人员都可以利用的工具。这与 20 世纪 90 年代末 Web 开发的发展路径非常类似。现在绝大多数人可以为企业或社区搭建一个网站或 Web 应用,而在 1998 年则需要专业工程师团队。在不远的将来,只要你有想法和基本的编程技能,就能够构建从数据中进行学习的智能应用程序。

2015 年 3 月,我发布了 Keras 深度学习框架的第 1 版,当时我还没有想过人工智能的普及。当时,我已经在机器学习领域做了很多年的研究,创造 Keras 是为了帮我自己做实验。但自 2015 年以来,数十万新人进入深度学习领域,其中很多人将 Keras 当作首选工具。看到许多聪明人以意想不到的强大方式使用 Keras,我开始深切关注人工智能的可达性和普及。我开始意识到,将相关技术传播得越广,它们就会变得越有用、越有价值。可达性很快成为 Keras 开发过程中的明确目标。在短短几年内,Keras 开发者社区已经在这方面取得了惊人的成就。我们已经让数十万人掌握了深度学习,他们用相关技术解决那些直到最近仍被认为无法解决的问题。

本书旨在让尽可能多的人能够使用深度学习。Keras 一直需要一门配套课程,同时涵盖深度学习基础知识、深度学习最佳实践,以及 Keras 使用模式。在 2016 年和 2017 年,我努力创作了这样一门课程,即本书的第 1 版。英文版于 2017 年 12 月出版,并迅速成为机器学习领域的畅销书,销量超过 5 万册,还被翻译成 12 种语言。

然而,深度学习领域的发展速度很快。自本书的第 1 版出版以来,该领域出现了许多重要进展——TensorFlow 2 的发布、Transformer 架构的日益流行等。于是,在 2019 年末,我着手更新本书。一开始,我天真地认为,本书会包含大约 50% 的新内容,篇幅与第 1 版大致相同。实际上,经过两年的努力,本书的篇幅比第 1 版多了三分之一,其中约有 75% 是新内容。它不仅是新版,更像是一本全新的书。

本书的重点是用尽可能容易理解的方式来介绍深度学习背后的概念及其实现。我这样说没有贬低任何事情的意思,我坚信深度学习中没有难以理解的内容。我希望你会认为本书很有价值,同时希望它能让你开始构建智能应用程序并解决那些对你来说很重要的问题。