2目 录 第3章神经网络入门…43 3.6预测房价:回归问题…66 3.1神经网络剖析 …43 3.6.1波士频房价数据集 67 3.11层:深度学习的基础组件…44 3.6.2准备数据 …67 3.1.2模型:层构成的网络…45 3.6.3构建网络…68 3.1.3损失函数与优化器:配置学习 3.64利用K折验证来验证你的 过程的关键…45 方法…68 3.2 Keras简介 …46 3.6.5小结…72 3.2.1 Keras、TensorFlow、Theano和 本章小结… 73 CNTK…47 第4章机器学习基础 …74 3.2.2使用Keras开发:概述…48 4.1 机器学习的四个分支…74 3.3建立深度学习工作站…49 4.1.1监骨学习…74 3.3.I Jupyter笔记本:运行深度学习 4.1.2无监督学习…75 实验的首选方法…49 4.13自监督学习… 3.3.2运行Keras:两种选择…50 …75 4.1.4强化学习… 3.3.3在云端运行深度学习任务: …75 4.2评估机器学习模型 .76 优点和缺点…50 4.2.1训练集、验证集和测试集 3.34深度学习的最佳GPU…50 …77 4.2.2评估模型的注意事项 …80 3.4电影评论分类:二分类问题…51 3.4.】MDB数据集…51 4.3数据预处理、特征工程和特征学习…80 4.3.1神经网络的数据预处理…80 3.4.2准备数据…52 3.4.3构建网络…52 4.32特征工程…81 4.4过拟合与欠拟合… 83 3.4.4验证你的方法…56 4.4.1减小网络大小… …83 3.4.5使用调练好的网络在新数据上 4.4.2添加权重正则化 …85 生成预测结果…59 3.4.6。进一步的实验…59 4.4.3添加dropout正则化 …87 3.4.7小结 59 4.5机器学习的通用工作流程… -89 3.5新闻分类:多分类问题 …59 4.5.1定义问题,收集数据集 89 4.52选择衡量成功的指标 89 3.5.1路透社数据集…60 4.5.3确定评估方法 …90 3.5.2准备数据…61 4.5.4准备数据 …90 3.5.3构建网络…61 3.5.4验证你的方法…62 4.5.5开发比基准更好的模型…90 3.5.5在新数据上生成预测结果…65 4.5.6扩大模型规模:开发过拟合的 模型 …91 3.5.6处理标签和损失的另一种方法…65 4.5.7模型正则化与调节超参数…92 3.5.7中间层维度足够大的重要性…65 本章小结92 3.5.8进一步的实验…66 3.5.9小结-66
2 目 录 第 3 章 神经网络入门 ...............................43 3.1 神经网络剖析 .............................................43 3.1.1 层:深度学习的基础组件 .............44 3.1.2 模型:层构成的网络 .....................45 3.1.3 损失函数与优化器:配置学习 过程的关键 ....................................45 3.2 Keras 简介 ...................................................46 3.2.1 Keras、TensorFlow、Theano 和 CNTK ..............................................47 3.2.2 使用 Keras 开发:概述 .................48 3.3 建立深度学习工作站 .................................49 3.3.1 Jupyter 笔记本:运行深度学习 实验的首选方法 ............................49 3.3.2 运行 Keras:两种选择 ..................50 3.3.3 在云端运行深度学习任务: 优点和缺点 ....................................50 3.3.4 深度学习的最佳 GPU ....................50 3.4 电影评论分类:二分类问题 .....................51 3.4.1 IMDB 数据集 .................................51 3.4.2 准备数据 .........................................52 3.4.3 构建网络 .........................................52 3.4.4 验证你的方法 .................................56 3.4.5 使用训练好的网络在新数据上 生成预测结果 ................................59 3.4.6 进一步的实验 .................................59 3.4.7 小结 .................................................59 3.5 新闻分类:多分类问题 .............................59 3.5.1 路透社数据集 .................................60 3.5.2 准备数据 .........................................61 3.5.3 构建网络 .........................................61 3.5.4 验证你的方法 .................................62 3.5.5 在新数据上生成预测结果 .............65 3.5.6 处理标签和损失的另一种方法 .....65 3.5.7 中间层维度足够大的重要性 .........65 3.5.8 进一步的实验 .................................66 3.5.9 小结 .................................................66 3.6 预测房价:回归问题 .................................66 3.6.1 波士顿房价数据集 .........................67 3.6.2 准备数据 .........................................67 3.6.3 构建网络 .........................................68 3.6.4 利用 K 折验证来验证你的 方法 ................................................68 3.6.5 小结 .................................................72 本章小结 ..............................................................73 第 4 章 机器学习基础 ...............................74 4.1 机器学习的四个分支 .................................74 4.1.1 监督学习 .........................................74 4.1.2 无监督学习 .....................................75 4.1.3 自监督学习 .....................................75 4.1.4 强化学习 .........................................75 4.2 评估机器学习模型 .....................................76 4.2.1 训练集、验证集和测试集 .............77 4.2.2 评估模型的注意事项 .....................80 4.3 数据预处理、特征工程和特征学习 .........80 4.3.1 神经网络的数据预处理 .................80 4.3.2 特征工程 .........................................81 4.4 过拟合与欠拟合 .........................................83 4.4.1 减小网络大小 .................................83 4.4.2 添加权重正则化 .............................85 4.4.3 添加 dropout 正则化 ......................87 4.5 机器学习的通用工作流程 .........................89 4.5.1 定义问题,收集数据集 .................89 4.5.2 选择衡量成功的指标 .....................89 4.5.3 确定评估方法 .................................90 4.5.4 准备数据 .........................................90 4.5.5 开发比基准更好的模型 .................90 4.5.6 扩大模型规模:开发过拟合的 模型 ................................................91 4.5.7 模型正则化与调节超参数 .............92 本章小结 ..............................................................92
书籍下载qg群6089740钉钉群21734177 IT书籍http:/t.cn/RDIAj5D 录 3 第二部分深度学习实践 6.2.4小结…172 6.3循环神经网络的高级用法 …172 第5章深度学习用于计算机视觉…94 6.3.1温度预测问题…172 5.1卷积神经网络简介 …94 6.3.2准备数据…175 5.1.1卷积运算 96 6.3.3一种基于常识的、非机器学 5.1.2最大池化运算 101 习的基准方法…177 5.2在小型数据集上从头开始训练一个 6.3.4一种基本的机器学习方法…178 卷积神经网络…102 6.3.5第一个循环网络基准…180 52.1深度学习与小数据问题的 6.3.6使用循环dropout来降低过 相关性…103 拟合… …181 5.2.2下载数据…103 6.3.7循环层堆叠 …182 5.2.3构建网络…106 6.3.8使用双向RNN 184 5.2.4数据预处理… …107 6.3.9更多尝试 187 5.2.5使用数据增强 111 6.3.10小结… …187 5.3使用预训练的卷积神经网络 115 6.4用卷积神经网络处理序列…188 5.3.1特征提取 116 6.4.1理解序列数据的一维卷积…188 5.3.2微调模型 …124 6.4.2序列数据的-一雏池化…189 5.3.3小结…130 6.4.3实现一雏卷积神经网络 …189 5.4 卷积神经网络的可视化…130 6.4.4结合CNN和RNN来处理 5.4.1可视化中间激活…131 长序列…191 5.4.2可视化卷积神经网络的 6.4.5小结 …195 过滤器…136 本章总结 …195 5.4.3可视化类激活的热力图…142 第7章高级的深度学习最佳实践…196 本章小结 …146 7.1不用Sequential模型的解决方案: 第6章深度学习用于文本和序列…147 Keras函数式API… …196 6.1处理文本数据…147 7.11函数式API简介 …199 6.1.1单词和字符的one-hot编码…149 7.1.2多输入模型 200 6.1.2使用词嵌入 …151 7.1.3多输出模型 -202 6.1.3整合在一起:从原始文本到 7.1.4层组成的有向无环图 …204 词嵌入…155 7.1.5共享层权重…208 6.1.4小结-162 7.1.6将模型作为层… …208 6.2理解循环神经网络… …162 7.1.7小结… 209 62.1 Keras中的循环层…164 7.2使用Keras回调函数和TensorBoard 6.2.2理解LSTM层和GRU层…168 来检查并监控深度学习模型…210 6.2.3 Keras中一个LSTM的具体 72.1训练过程中将回调函数作用于 例子…170 模型 …210 电子书寻找看手相钉钉或微信pythontesting
1 5 3 7 10 2 6 9 4 8 11 目 录 3 第二部分 深度学习实践 第 5 章 深度学习用于计算机视觉 .............94 5.1 卷积神经网络简介 .....................................94 5.1.1 卷积运算 .........................................96 5.1.2 最大池化运算 ...............................101 5.2 在小型数据集上从头开始训练一个 卷积神经网络 ...........................................102 5.2.1 深度学习与小数据问题的 相关性 ..........................................103 5.2.2 下载数据 .......................................103 5.2.3 构建网络 .......................................106 5.2.4 数据预处理 ...................................107 5.2.5 使用数据增强 ...............................111 5.3 使用预训练的卷积神经网络 ...................115 5.3.1 特征提取 .......................................116 5.3.2 微调模型 .......................................124 5.3.3 小结 ...............................................130 5.4 卷积神经网络的可视化 ...........................130 5.4.1 可视化中间激活 ...........................131 5.4.2 可视化卷积神经网络的 过滤器 ..........................................136 5.4.3 可视化类激活的热力图 ...............142 本章小结 ............................................................146 第 6 章 深度学习用于文本和序列 ........... 147 6.1 处理文本数据 ...........................................147 6.1.1 单词和字符的 one-hot 编码 ........149 6.1.2 使用词嵌入 ...................................151 6.1.3 整合在一起:从原始文本到 词嵌入 ..........................................155 6.1.4 小结 ...............................................162 6.2 理解循环神经网络 ...................................162 6.2.1 Keras 中的循环层 ........................164 6.2.2 理解 LSTM 层和 GRU 层 ...........168 6.2.3 Keras 中一个 LSTM 的具体 例子 ..............................................170 6.2.4 小结 ...............................................172 6.3 循环神经网络的高级用法 .......................172 6.3.1 温度预测问题 ...............................172 6.3.2 准备数据 .......................................175 6.3.3 一种基于常识的、非机器学 习的基准方法 ..............................177 6.3.4 一种基本的机器学习方法 ...........178 6.3.5 第一个循环网络基准 ...................180 6.3.6 使用循环 dropout 来降低过 拟合 ..............................................181 6.3.7 循环层堆叠 ...................................182 6.3.8 使用双向 RNN .............................184 6.3.9 更多尝试 .......................................187 6.3.10 小结 .............................................187 6.4 用卷积神经网络处理序列 .......................188 6.4.1 理解序列数据的一维卷积 ...........188 6.4.2 序列数据的一维池化 ...................189 6.4.3 实现一维卷积神经网络 ...............189 6.4.4 结合 CNN 和 RNN 来处理 长序列 ..........................................191 6.4.5 小结 ...............................................195 本章总结 ............................................................195 第 7 章 高级的深度学习最佳实践 ........... 196 7.1 不用 Sequential 模型的解决方案: Keras 函数式 API .....................................196 7.1.1 函数式 API 简介 ..........................199 7.1.2 多输入模型 ...................................200 7.1.3 多输出模型 ...................................202 7.1.4 层组成的有向无环图 ...................204 7.1.5 共享层权重 ...................................208 7.1.6 将模型作为层 ...............................208 7.1.7 小结 ...............................................209 7.2 使用 Keras 回调函数和 TensorBoard 来检查并监控深度学习模型 ...................210 7.2.1 训练过程中将回调函数作用于 模型 ..............................................210 书籍下载qq群6089740 钉钉群21734177 IT书籍 http://t.cn/RDIAj5D 电子书寻找看手相 钉钉或微信pythontesting
4 目 录 7.2.2 TensorBoard简介:TensorFlow 8.5.6如何训练DCGAN…262 的可视化框架 …212 8.5.7小结… …264 7.2.3小结… …219 本章总结… …264 7.3让模型性能发挥到极致…219 7.3.1高级架构模式…219 第9章总结…265 7.3.2超参数优化…222 9.1重点内容回顾 …265 7.3.3模型集成… …223 9.1.1人工智能的各种方法 …265 7.3.4小结 224 9.1.2深度学习在机器学习领战 本章总结 225 中的特殊之处…266 9.1.3如何看待深度学习…266 第8章生成式深度学习… …226 9.1.4关键的推动技术 …267 8.1使用LSTM生成文本 …227 9.1.5机器学习的通用工作流程…268 8.1.1生成式循环网络简史…227 9.1.6关键网络架构…268 8.1.2如何生成序列数据…228 9.1.7可能性空间 …272 8.1.3采样策略的重要性… …229 9.2深度学习的局限性… …273 8.1.4实现字符级的LSTM文本 9.2.1将机器学习模型拟人化的 生成 …230 风险 …273 8.1.5小结… …234 9.2.2局部泛化与极端泛化 …275 8.2 DeepDream… …235 9.23小结 …276 8.2.1用Keras实现DeepDream…236 9.3深度学习的未来…277 8.2.2小结…241 9.3.1模型即程序 …277 8.3神经风格迁移 …241 9.32超越反向传播和可微层…278 8.3.1内容损失…242 9.3.3自动化机器学习……279 8.3.2风格损失 …243 9.3.4终身学习与模块化子程序复用…279 8.3.3用Keras实现神经风格迁移…243 9.3.5长期愿景…281 8.3.4小结 …249 9.4了解一个快速发展领域的最新进展…281 8.4用变分自编码器生成图像 …249 9.4.1使用Kaggle练习解决现实 8.4.1从图像的潜在空间中采样…249 世界的问题… …281 8.4.2图像编辑的概念向量…250 9.4.2在arXiv阅读最新进展…282 8.4.3变分自编码器…251 9.4.3探索Kers生态系统…282 8.4.4小结…256 9.5 结束语…282 8.5生成式对抗网络简介 …257 8.5.1GAN的简要实现流程…258 附录A在Ubuntu上安装Keras及其 8.5.2大量技巧259 依赖… .283 8.5.3生成器…260 8.5.4判别器… 附录B在EC2GPU实例上运行 …261 8.5.5对抗网络 .261 Jupyter笔记本…287
4 目 录 7.2.2 TensorBoard 简介:TensorFlow 的可视化框架 ..............................212 7.2.3 小结 ...............................................219 7.3 让模型性能发挥到极致 ...........................219 7.3.1 高级架构模式 ...............................219 7.3.2 超参数优化 ...................................222 7.3.3 模型集成 .......................................223 7.3.4 小结 ...............................................224 本章总结 ............................................................225 第 8 章 生成式深度学习 .......................... 226 8.1 使用 LSTM 生成文本 ..............................227 8.1.1 生成式循环网络简史 ...................227 8.1.2 如何生成序列数据 .......................228 8.1.3 采样策略的重要性 .......................229 8.1.4 实现字符级的 LSTM 文本 生成 ..............................................230 8.1.5 小结 ...............................................234 8.2 DeepDream ................................................235 8.2.1 用 Keras 实现 DeepDream ...........236 8.2.2 小结 ...............................................241 8.3 神经风格迁移 ...........................................241 8.3.1 内容损失 .......................................242 8.3.2 风格损失 .......................................243 8.3.3 用 Keras 实现神经风格迁移 .......243 8.3.4 小结 ...............................................249 8.4 用变分自编码器生成图像 .......................249 8.4.1 从图像的潜在空间中采样 ...........249 8.4.2 图像编辑的概念向量 ...................250 8.4.3 变分自编码器 ...............................251 8.4.4 小结 ...............................................256 8.5 生成式对抗网络简介 ...............................257 8.5.1 GAN 的简要实现流程 .................258 8.5.2 大量技巧 .......................................259 8.5.3 生成器 ...........................................260 8.5.4 判别器 ...........................................261 8.5.5 对抗网络 .......................................261 8.5.6 如何训练 DCGAN .......................262 8.5.7 小结 ...............................................264 本章总结 ............................................................264 第 9 章 总结 ............................................ 265 9.1 重点内容回顾 ...........................................265 9.1.1 人工智能的各种方法 ...................265 9.1.2 深度学习在机器学习领域 中的特殊之处 ..............................266 9.1.3 如何看待深度学习 .......................266 9.1.4 关键的推动技术 ...........................267 9.1.5 机器学习的通用工作流程 ...........268 9.1.6 关键网络架构 ...............................268 9.1.7 可能性空间 ...................................272 9.2 深度学习的局限性 ...................................273 9.2.1 将机器学习模型拟人化的 风险 ..............................................273 9.2.2 局部泛化与极端泛化 ...................275 9.2.3 小结 ...............................................276 9.3 深度学习的未来 .......................................277 9.3.1 模型即程序 ...................................277 9.3.2 超越反向传播和可微层 ...............278 9.3.3 自动化机器学习 ...........................279 9.3.4 终身学习与模块化子程序复用 ....279 9.3.5 长期愿景 .......................................281 9.4 了解一个快速发展领域的最新进展 .......281 9.4.1 使用 Kaggle 练习解决现实 世界的问题 ..................................281 9.4.2 在 arXiv 阅读最新进展 ...............282 9.4.3 探索 Keras 生态系统 ...................282 9.5 结束语 .......................................................282 附录 A 在 Ubuntu 上安装 Keras 及其 依赖 ............................................ 283 附录 B 在 EC2 GPU 实例上运行 Jupyter 笔记本 ............................ 287
书籍下载qq群6089740钉钉群21734177 IT书籍http://t.cn/RDIAj5D Part 第一部分 深度学习基础 本书第1~4章将让你对下列内容有基本的了解:什么是深度学习,它能取得哪些成就,以 及它的工作原理是怎样的。你还会熟悉使用深度学习来解决数据问题的标准工作流程。如果对 深度学习不是特别了解的话,你应该先读完第一部分,再阅读第二部分中的实际应用。 电子书寻找看手相钉钉或微信pythontesting
Part 1 第一部分 深度学习基础 本书第 1~4 章将让你对下列内容有基本的了解:什么是深度学习,它能取得哪些成就,以 及它的工作原理是怎样的。你还会熟悉使用深度学习来解决数据问题的标准工作流程。如果对 深度学习不是特别了解的话,你应该先读完第一部分,再阅读第二部分中的实际应用。 书籍下载qq群6089740 钉钉群21734177 IT书籍 http://t.cn/RDIAj5D 电子书寻找看手相 钉钉或微信pythontesting
第1章 什么是深度学习 本章包括以下内容: ▣基本概念的定义 口机器学习发展的时间线 口深度学习日益流行的关键因素及其未来潜力 在过去的几年里,人工智能(AI)一直是媒体大肆炒作的热点话题。机器学习、深度学习 和人工智能都出现在不计其数的文章中,而这些文章通常都发表于非技术出版物。我们的未来 被描绘成拥有智能聊天机器人、自动驾驶汽车和虚拟助手,这一未来有时被渲染成可怕的景象, 有时则被描绘为乌托邦,人类的工作将十分稀少,大部分经济活动都由机器人或人工智能体 (AI agent)来完成。对于未来或当前的机器学习从业者来说,重要的是能够从噪声中识别出信号, 从而在过度炒作的新闻稿中发现改变世界的重大进展。我们的未来充满风险,而你可以在其中 发挥积极的作用:读完本书后,你将会成为人工智能体的开发者之一。那么我们首先来回答下 列问题:到目前为止,深度学习已经取得了哪些进展?深度学习有多重要?接下来我们要做什 么?媒体炒作是否可信? 本章将介绍关于人工智能、机器学习以及深度学习的必要背景。 1.1人工智能、机器学习与深度学习 首先,在提到人工智能时,我们需要明确定义所讨论的内容。什么是人工智能、机器学习 与深度学习(见图1-1)?这三者之间有什么关系? 人工智能 机器学习 深度学习 图11人工智能、机器学习与深度学习
1 第1章 什么是深度学习 本章包括以下内容: 基本概念的定义 机器学习发展的时间线 深度学习日益流行的关键因素及其未来潜力 在过去的几年里,人工智能(AI)一直是媒体大肆炒作的热点话题。机器学习、深度学习 和人工智能都出现在不计其数的文章中,而这些文章通常都发表于非技术出版物。我们的未来 被描绘成拥有智能聊天机器人、自动驾驶汽车和虚拟助手,这一未来有时被渲染成可怕的景象, 有时则被描绘为乌托邦,人类的工作将十分稀少,大部分经济活动都由机器人或人工智能体 (AI agent)来完成。对于未来或当前的机器学习从业者来说,重要的是能够从噪声中识别出信号, 从而在过度炒作的新闻稿中发现改变世界的重大进展。我们的未来充满风险,而你可以在其中 发挥积极的作用:读完本书后,你将会成为人工智能体的开发者之一。那么我们首先来回答下 列问题:到目前为止,深度学习已经取得了哪些进展?深度学习有多重要?接下来我们要做什 么?媒体炒作是否可信? 本章将介绍关于人工智能、机器学习以及深度学习的必要背景。 1.1 人工智能、机器学习与深度学习 首先,在提到人工智能时,我们需要明确定义所讨论的内容。什么是人工智能、机器学习 与深度学习(见图 1-1)?这三者之间有什么关系? ీ߾ට ऐഗბသ ศ܈ბသ 图 1-1 人工智能、机器学习与深度学习