TURING 图灵程商设计丛书 HANNING 全彩印刷 Deep Learning with Python Python 深度学习 [美]弗朗索瓦·肖莱著 张亮译 Keras.之父、Google人工智能研究员 Francois Chollet执笔,深度学习领域力作 通俗易懂,帮助读者建立关于机器学习和深度 学习核心思想的直觉 -44446444--4--04--44 它中工信出版架团 人民邮电出版社 POSTS TELECOM PRESS
书籍下载qg群6089740钉钉群21734177 IT书籍http:/t.cn/RDIAj5D 关于本书 本书是为那些想要从零开始探索深度学习的人或想要拓展对深度学习的理解的人而写的。 无论是在职的机器学习工程师、软件开发者还是大学生,都会在本书中找到有价值的内容。 本书是对深度学习的实践探索,避免使用数学符号,尽量用代码片段来解释定量概念,帮 你建立关于机器学习和深度学习核心思想的直觉。 书中包含30多个代码示例,有详细的注释、实用的建议和简单的解释。知道这些你就可以 开始用深度学习来解决具体问题了。 全书代码示例都使用Python深度学习框架Keras,并用TensorFlow作为后端引擎。Keras 是最受欢迎且发展最快的深度学习框架之一,被广泛推荐为上手深度学习的最佳工具。 读完本书后,你将会充分理解什么是深度学习、什么时候该用深度学习,以及它的局限性。 你将学到解决机器学习问题的标准工作流程,还会知道如何解决常见问题。你将能够使用Kers 来解决从计算机视觉到自然语言处理等许多现实世界的问题,包括图像识别、时间序列预测、 情感分析、图像和文字生成等。 谁应该阅读这本书 本书的目标读者是那些具有Python编程经验,并且想要开始上手机器学习和深度学习的人。 但本书对以下这些读者也都很有价值。 口如果你是熟悉机器学习的数据科学家,你将通过本书全面掌握深度学习及其实践。深度 学习是机器学习中发展最快、最重要的子领域。 ▣如果你是想要上手Keras框架的深度学习专家,你会发现本书是市面上最棒的Keras速 成教程。 口如果你是研究深度学习的研究生,你会发现本书是对你所受教育的实践补充,有助于你 培养关于深度神经网络的直觉,还可以让你熟悉重要的最佳实践。 有技术背景的人,即使不经常编程,也会发现本书介绍的深度学习基本概念和高级概念非 常有用。 使用Keras需要具有一定的Python编程水平。另外,熟悉Numpy库也会有所帮助,但并不 是必需的。你不需要具有机器学习或深度学习方面的经验,本书包含从头学习所需的必要基础 知识。你也不需要具有高等数学背景,掌握高中水平的数学知识应该足以看懂本书内容。 电子书寻找看手相钉钉或微信pythontesting
关于本书 本书是为那些想要从零开始探索深度学习的人或想要拓展对深度学习的理解的人而写的。 无论是在职的机器学习工程师、软件开发者还是大学生,都会在本书中找到有价值的内容。 本书是对深度学习的实践探索,避免使用数学符号,尽量用代码片段来解释定量概念,帮 你建立关于机器学习和深度学习核心思想的直觉。 书中包含 30 多个代码示例,有详细的注释、实用的建议和简单的解释。知道这些你就可以 开始用深度学习来解决具体问题了。 全书代码示例都使用 Python 深度学习框架 Keras,并用 TensorFlow 作为后端引擎。Keras 是最受欢迎且发展最快的深度学习框架之一,被广泛推荐为上手深度学习的最佳工具。 读完本书后,你将会充分理解什么是深度学习、什么时候该用深度学习,以及它的局限性。 你将学到解决机器学习问题的标准工作流程,还会知道如何解决常见问题。你将能够使用 Keras 来解决从计算机视觉到自然语言处理等许多现实世界的问题,包括图像识别、时间序列预测、 情感分析、图像和文字生成等。 谁应该阅读这本书 本书的目标读者是那些具有 Python 编程经验,并且想要开始上手机器学习和深度学习的人。 但本书对以下这些读者也都很有价值。 如果你是熟悉机器学习的数据科学家,你将通过本书全面掌握深度学习及其实践。深度 学习是机器学习中发展最快、最重要的子领域。 如果你是想要上手 Keras 框架的深度学习专家,你会发现本书是市面上最棒的 Keras 速 成教程。 如果你是研究深度学习的研究生,你会发现本书是对你所受教育的实践补充,有助于你 培养关于深度神经网络的直觉,还可以让你熟悉重要的最佳实践。 有技术背景的人,即使不经常编程,也会发现本书介绍的深度学习基本概念和高级概念非 常有用。 使用 Keras 需要具有一定的 Python 编程水平。另外,熟悉 Numpy 库也会有所帮助,但并不 是必需的。你不需要具有机器学习或深度学习方面的经验,本书包含从头学习所需的必要基础 知识。你也不需要具有高等数学背景,掌握高中水平的数学知识应该足以看懂本书内容。 书籍下载qq群6089740 钉钉群21734177 IT书籍 http://t.cn/RDIAj5D 电子书寻找看手相 钉钉或微信pythontesting
2 关于本书 学习路线图 本书分为两部分。如果你之前没有关于机器学习的经验,我强烈建议你先读完第一部分, 然后再阅读第二部分。我们会从简单示例讲起,然后再依次介绍越来越先进的技术。 第一部分是对深度学习的介绍,给出了一些背景和定义,还解释了上手机器学习和神经网 络需要掌握的所有概念。 口第1章介绍人工智能、机器学习和深度学习的重要背景知识。 口第2章介绍从事深度学习必须了解的基本概念:张量、张量运算、梯度下降和反向传播。 这一章还给出了本书第一个可用的神经网络示例。 口第3章包括上手神经网络所需要了解的全部内容:Keras简介,它是我们的首选深度学 习框架:建立自己的工作站的指南:三个基本代码示例以及详细解释。读完这一章,你 将能够训练简单的神经网络来处理分类任务和回归任务,你还将充分了解训练过程背后 发生的事情。 口第4章介绍标准的机器学习工作流程。你还会了解常见的陷阱及其解决方案。 第二部分将深入介绍深度学习在计算机视觉和自然语言处理中的实际应用。这一部分给出 了许多示例,对于在现实世界的实践中遇到的深度学习问题,你可以用这些示例作为解决问题 的模板。 口第5章介绍了一系列实用的计算机视觉示例,重点放在图像分类。 口第6章介绍了处理序列数据(比如文本和时间序列)的实用技术。 口第7章介绍了构建最先进深度学习模型的高级技术。 口第8章介绍了生成式模型,即能够创造图像和文本的深度学习模型,它有时会产生令人 惊讶的艺术效果。 口第9章将帮你巩固在本书学到的知识,还会探讨深度学习的局限性及其未来的可能性。 软件/硬件需求 本书所有代码示例都使用Kers深度学习框架,它是开源的,可以免费下载。你需要一台 安装了UNX的计算机,也可以使用Windows,但我不推荐后者。附录A将引导你完成整个安 装过程。 我还推荐你在计算机上安装最新的NVIDIA GPU,比如一块TITAN X。这不是必需的,但 它会让你运行代码示例的速度快上几倍,让你有更好的体验。3.3节给出了建立深度学习工作站 的更多信息。 如果你没有已安装最新NVIDIA GPU的本地工作站,那么可以使用云环境,特别推荐谷歌 云实例(比如带有NVIDIA Tesla K80扩展的nl-standard-8实例)或亚马逊网络服务(AWS)的 GPU实例(比如p2.xlarge实例)。附录B详细介绍了一套通过Jupyter笔记本运行AWS实例的 云工作流程,你可以通过浏览器访问
2 关于本书 学习路线图 本书分为两部分。如果你之前没有关于机器学习的经验,我强烈建议你先读完第一部分, 然后再阅读第二部分。我们会从简单示例讲起,然后再依次介绍越来越先进的技术。 第一部分是对深度学习的介绍,给出了一些背景和定义,还解释了上手机器学习和神经网 络需要掌握的所有概念。 第 1 章介绍人工智能、机器学习和深度学习的重要背景知识。 第 2 章介绍从事深度学习必须了解的基本概念:张量、张量运算、梯度下降和反向传播。 这一章还给出了本书第一个可用的神经网络示例。 第 3 章包括上手神经网络所需要了解的全部内容:Keras 简介,它是我们的首选深度学 习框架;建立自己的工作站的指南;三个基本代码示例以及详细解释。读完这一章,你 将能够训练简单的神经网络来处理分类任务和回归任务,你还将充分了解训练过程背后 发生的事情。 第 4 章介绍标准的机器学习工作流程。你还会了解常见的陷阱及其解决方案。 第二部分将深入介绍深度学习在计算机视觉和自然语言处理中的实际应用。这一部分给出 了许多示例,对于在现实世界的实践中遇到的深度学习问题,你可以用这些示例作为解决问题 的模板。 第 5 章介绍了一系列实用的计算机视觉示例,重点放在图像分类。 第 6 章介绍了处理序列数据(比如文本和时间序列)的实用技术。 第 7 章介绍了构建最先进深度学习模型的高级技术。 第 8 章介绍了生成式模型,即能够创造图像和文本的深度学习模型,它有时会产生令人 惊讶的艺术效果。 第 9 章将帮你巩固在本书学到的知识,还会探讨深度学习的局限性及其未来的可能性。 软件 / 硬件需求 本书所有代码示例都使用 Keras 深度学习框架,它是开源的,可以免费下载。你需要一台 安装了 UNIX 的计算机,也可以使用 Windows,但我不推荐后者。附录 A 将引导你完成整个安 装过程。 我还推荐你在计算机上安装最新的 NVIDIA GPU,比如一块 TITAN X。这不是必需的,但 它会让你运行代码示例的速度快上几倍,让你有更好的体验。3.3 节给出了建立深度学习工作站 的更多信息。 如果你没有已安装最新 NVIDIA GPU 的本地工作站,那么可以使用云环境,特别推荐谷歌 云实例(比如带有 NVIDIA Tesla K80 扩展的 n1-standard-8 实例)或亚马逊网络服务(AWS)的 GPU 实例(比如 p2.xlarge 实例)。附录 B 详细介绍了一套通过 Jupyter 笔记本运行 AWS 实例的 云工作流程,你可以通过浏览器访问
书籍下载qg群6089740钉钉群21734177 IT书籍http:/t.cn/RDIAj5D 关于本书3 源代码 本书所有代码示例都可以从配套网站(https:/www.manning.com/books/.deep-learning-with python)和GitHub网站(htps://github.com//fchollet/deep-learning-with-python-notebooks)上以Jupyter 笔记本的形式下载。 本书论坛 购买本书英文版①的读者还可以免费访问由Manning出版社运营的私有网络论坛,你可以 在那里就本书发表评论、询问技术问题,获得来自作者和其他用户的帮助。论坛地址为tps:∥ forums.manning.com/forums/deep-learning-with-python.。你还可以访问htps:/forums.manning.com/ forums/about了解关于Manning论坛和行为规则的更多信息。 Manning承诺为读者提供一个平台,让读者之间、读者和作者之间可以进行有意义的对话。 但这并不保证作者的参与程度,因其对论坛的贡献完全是自愿的(而且无报酬)。我们建议你试 着问作者一些有挑战性的问题,这样他才会感兴趣!只要本书仍在销售中,你就可以在Manning 网站上访问论坛和存档的讨论记录。 电子书 扫描如下二维码,即可购买本书电子版。 ①中文版读者可登录图灵社区本书页面提交评论和勘误,并下载源代码:htp:www.ituring.com.cn/book/2599。 —一编者注 电子书寻找看手相钉钉或微信pythontesting
1 5 3 7 10 2 6 9 4 8 11 关于本书 3 源代码 本书所有代码示例都可以从配套网站(https://www.manning.com/books/deep-learning-withpython)和 GitHub 网站(https://github.com/fchollet/deep-learning-with-python-notebooks)上以 Jupyter 笔记本的形式下载。 本书论坛 购买本书英文版 a 的读者还可以免费访问由 Manning 出版社运营的私有网络论坛,你可以 在那里就本书发表评论、询问技术问题,获得来自作者和其他用户的帮助。论坛地址为 https:// forums.manning.com/forums/deep-learning-with-python。你还可以访问 https://forums.manning.com/ forums/about 了解关于 Manning 论坛和行为规则的更多信息。 Manning 承诺为读者提供一个平台,让读者之间、读者和作者之间可以进行有意义的对话。 但这并不保证作者的参与程度,因其对论坛的贡献完全是自愿的(而且无报酬)。我们建议你试 着问作者一些有挑战性的问题,这样他才会感兴趣!只要本书仍在销售中,你就可以在 Manning 网站上访问论坛和存档的讨论记录。 电子书 扫描如下二维码,即可购买本书电子版。 a 中文版读者可登录图灵社区本书页面提交评论和勘误,并下载源代码:http://www.ituring.com.cn/book/2599。 ——编者注 书籍下载qq群6089740 钉钉群21734177 IT书籍 http://t.cn/RDIAj5D 电子书寻找看手相 钉钉或微信pythontesting
书籍下载qg群6089740钉钉群21734177 IT书籍http:/t.cn/RDIAj5D 目 录 第一部分 深度学习基础 第2章神经网络的数学基础…20 2.1初识神经网络 …20 第1章什么是深度学习… …2 2.2神经网络的数据表示……23 L1人工智能、机器学习与深度学习…2 2.2.1标量(0D张量…23 1.1.1人工智能…3 2.2.2向量(1D张量…24 1.1.2机器学习…3 22.3矩阵(2D张量 …24 1.1.3从数据中学习表示…4 2.2.43D张量与更高维张量 …24 1.1.4深度学习之“深度” 6 2.2.5关键属性 25 1.1.5用三张图理解深度学习的工作 2.2.6在Numpy中操作张量 26 原理 …7 2.2.7数据批量的概念…27 1.1.6深度学习已经取得的进展…9 2.2.8现实世界中的数据张量…27 1.1.7不要相信短期炒作…9 22.9向量数据… …27 1.1.8人工智能的未来…10 2.2.10时间序列数据或序列数据…28 12深度学习之前:机器学习简史 …1l 2.2.11图像数据…28 1.2.1概率建模…11 2.2.12视频数据 29 1.2.2早期神经网络…11 2.3 神经网络的“齿轮”:张量运算 …29 12.3核方法…12 2.3.1逐元素运算…30 12.4决策树、随机森林与梯度 2.3.2广播…3引 提升机 2.3.3张量点积… 32 …13 2.34张量变形 34 1.2.5回到神经网络… 14 1.2.6深度学习有何不同…14 2.3.5张量运算的几何解释…34 2.3.6深度学习的几何解释 35 1.2.7机器学习现状…15 2.4神经网络的“引擎”:基于梯度的 13为什么是深度学习,为什么是现在…15 优化…36 13.1硬件…16 2.4.1什么是导数…37 1.3.2数据…17 2.4.2张量运算的导数:梯度……38 1.3.3算法…17 2.4.3随机梯度下降…38 13.4新的投资热潮……17 2.4.4链式求导:反向传播算法…41 13.5深度学习的大众化…18 2.5回顾第一个例子…41 13.6这种趋势会持续吗 18 本章小结… …42 电子书寻找看手相钉钉或微信pythontesting
目 录 第一部分 深度学习基础 第 1 章 什么是深度学习 ............................. 2 1.1 人工智能、机器学习与深度学习 ...............2 1.1.1 人工智能 ...........................................3 1.1.2 机器学习 ...........................................3 1.1.3 从数据中学习表示 ...........................4 1.1.4 深度学习之“深度” .........................6 1.1.5 用三张图理解深度学习的工作 原理 ..................................................7 1.1.6 深度学习已经取得的进展 ...............9 1.1.7 不要相信短期炒作 ...........................9 1.1.8 人工智能的未来 .............................10 1.2 深度学习之前:机器学习简史 .................11 1.2.1 概率建模 .........................................11 1.2.2 早期神经网络 .................................11 1.2.3 核方法 .............................................12 1.2.4 决策树、随机森林与梯度 提升机 ............................................13 1.2.5 回到神经网络 .................................14 1.2.6 深度学习有何不同 .........................14 1.2.7 机器学习现状 .................................15 1.3 为什么是深度学习,为什么是现在 .........15 1.3.1 硬件 .................................................16 1.3.2 数据 .................................................17 1.3.3 算法 .................................................17 1.3.4 新的投资热潮 .................................17 1.3.5 深度学习的大众化 .........................18 1.3.6 这种趋势会持续吗 .........................18 第 2 章 神经网络的数学基础 .....................20 2.1 初识神经网络 .............................................20 2.2 神经网络的数据表示 .................................23 2.2.1 标量(0D 张量) .............................23 2.2.2 向量(1D 张量) .............................24 2.2.3 矩阵(2D 张量) .............................24 2.2.4 3D 张量与更高维张量 ...................24 2.2.5 关键属性 .........................................25 2.2.6 在 Numpy 中操作张量 ...................26 2.2.7 数据批量的概念 .............................27 2.2.8 现实世界中的数据张量 .................27 2.2.9 向量数据 .........................................27 2.2.10 时间序列数据或序列数据 ...........28 2.2.11 图像数据 .......................................28 2.2.12 视频数据 .......................................29 2.3 神经网络的“齿轮”:张量运算 ..............29 2.3.1 逐元素运算 .....................................30 2.3.2 广播 .................................................31 2.3.3 张量点积 .........................................32 2.3.4 张量变形 .........................................34 2.3.5 张量运算的几何解释 .....................34 2.3.6 深度学习的几何解释 .....................35 2.4 神经网络的“引擎”:基于梯度的 优化 .............................................................36 2.4.1 什么是导数 .....................................37 2.4.2 张量运算的导数:梯度 .................38 2.4.3 随机梯度下降 .................................38 2.4.4 链式求导:反向传播算法 .............41 2.5 回顾第一个例子 .........................................41 本章小结 ..............................................................42 书籍下载qq群6089740 钉钉群21734177 IT书籍 http://t.cn/RDIAj5D 电子书寻找看手相 钉钉或微信pythontesting