描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787111688457丛书名: 智能系统与技术丛书
编辑推荐
为了构建稳健的深度学习系统,需要理解神经网络的工作原理以及如何训练CNN模型等知识。通过本书,你可以探索新开发的深度学习模型及其在各个领域的使用方法,以及基于应用领域的实现。 本书首先介绍构建模块和神经网络背后的数学知识,然后介绍CNN及其在计算机视觉领域的先进应用,以及在对象检测和图像分割中应用流行的CNN架构。还将介绍变分自编码器和GAN,以及如何使用神经网络来提取单词的复杂向量表示。在继续讨论各种类型的循环网络(如LSTM和GRU)之前,会介绍如何在没有RNN的情况下使用注意力机制处理序列数据。然后,介绍如何使用图神经网络处理结构化数据,以及如何使用元学习采用较少的训练样本来训练神经网络。后,了解如何将深度学习应用于自动驾驶汽车。 阅读本书,你将掌握关键的深度学习概念和深度学习模型在现实世界中的不同应用。你将学到:? ·先进的神经网络架构。? ·神经网络背后的理论和数学知识。? ·训练DNN并将其应用于现代深度学习问题。? ·使用CNN进行对象检测和图像分割。? ·实现GAN和变分自编码器来生成新图像。? ·使用seq2seq模型解决NLP任务,如机器翻译。? ·了解DL技术,如元学习和图神经网络。
内容简介
本书集合了基于应用领域的高级深度学习的模型、方法和实现。本书分为四部分。第1部分介绍了深度学习的构建和神经网络背后的数学知识。第二部分讨论深度学习在计算机视觉领域的应用。第三部分阐述了自然语言和序列处理。讲解了使用神经网络提取复杂的单词向量表示。讨论了各种类型的循环网络,如长短期记忆网络和门控循环单元网络。第四部分介绍一些虽然还没有被广泛采用但有前途的深度学习技术,包括如何在自动驾驶上应用深度学习。学完本书,读者将掌握与深度学习相关的关键概念,学会如何使用TensorFlow和PyTorch实现相应的AI解决方案。
目 录
译者序
前言
作者简介
审校者简介
部分核心概念
第1章神经网络的具体细节2
1.1神经网络的数学基础2
1.1.1线性代数2
1.1.2概率介绍6
1.1.3微分学16
1.2神经网络的简单介绍18
1.2.1神经元18
1.2.2层的运算19
1.2.3神经网络21
1.2.4激活函数22
1.2.5通用逼近定理25
1.3训练神经网络27
1.3.1梯度下降27
1.3.2代价函数28
1.3.3反向传播30
1.3.4权重初始化32
1.3.5SGD改进33
1.4总结35
第二部分计算机视觉
第2章理解卷积网络38
2.1理解CNN38
2.1.1卷积类型43
2.1.2提高CNN的效率46
2.1.3可视化CNN51
2.1.4CNN正则化54
2.2迁移学习介绍56
2.2.1使用PyTorch实现迁移学习57
2.2.2使用TensorFlow 2.0实现迁移学习62
2.3总结66
第3章高级卷积网络67
3.1AlexNet介绍67
3.2VGG介绍68
3.3理解残差网络70
3.4理解Inception网络78
3.4.1Inception v179
3.4.2Inception v2和v380
3.4.3Inception v4和InceptionResNet81
3.5Xception介绍82
3.6MobileNet介绍83
3.7DenseNet介绍85
3.8神经架构搜索的工作原理87
3.9胶囊网络介绍91
3.9.1卷积网络的局限性91
3.9.2胶囊92
3.9.3胶囊网络的结构94
3.10总结95
第4章对象检测与图像分割96
4.1对象检测介绍96
4.1.1对象检测的方法96
4.1.2使用YOLO v3进行对象检测98
4.1.3使用Faster RCNN进行对象检测104
4.2图像分割介绍110
4.2.1使用UNet进行语义分割110
4.2.2使用Mask RCNN进行实例分割112
4.3总结115
第5章生成模型116
5.1生成模型的直觉和证明116
5.2VAE介绍117
5.3GAN介绍124
5.3.1训练GAN125
5.3.2实现GAN128
5.3.3训练GAN的缺陷129
5.4GAN的类型129
5.4.1DCGAN130
5.4.2CGAN135
5.4.3WGAN137
5.4.4使用CycleGAN实现图像到图像的转换142
5.5艺术风格迁移介绍150
5.6总结151
第三部分自然语言和序列处理
第6章语言建模154
6.1理解ngram154
6.2神经语言模型介绍156
6.2.1神经概率语言模型157
6.2.2word2vec158
6.2.3GloVe模型161
6.3实现语言模型164
6.3.1训练嵌入模型164
6.3.2可视化嵌入向量166
6.4总结169
第7章理解RNN170
7.1RNN介绍170
7.2长短期记忆介绍180
7.3门控循环单元介绍187
7.4实现文本分类189
7.5总结193
第8章seq2seq模型和注意力机制194
8.1seq2seq模型介绍194
8.2使用注意力的seq2seq196
8.2.1Bahdanau Attention196
8.2.2Luong Attention199
8.2.3一般注意力200
8.2.4使用注意力实现seq2seq201
8.3理解transformer207
8.3.1transformer注意力207
8.3.2transformer模型210
8.3.3实现transformer212
8.4transformer语言模型219
8.4.1基于transformer的双向编码器表示219
8.4.2transformerXL224
8.4.3XLNet227
8.4.4使用transformer语言模型生成文本230
8.5总结231
第四部分展望未来
第9章新兴的神经网络设计234
9.1GNN介绍234
9.1.1循环GNN236
9.1.2卷积图神经网络238
9.1.3图自编码器244
9.1.4神经图学习246
9.2记忆增强神经网络介绍251
9.2.1神经图灵机251
9.2.2MANN*256
9.3总结257
第10章元学习258
10.1元学习介绍258
10.1.1零样本学习259
10.1.2单样本学习260
10.1.3元训练和元测试261
10.2基于度量的元学习262
10.2.1为单样本学习匹配网络263
10.2.2孪生网络264
10.2.3原型网络267
10.3基于优化的元学习269
10.4总结274
第11章自动驾驶汽车的深度学习275
11.1自动驾驶汽车介绍275
11.1.1自动驾驶汽车研究简史275
11.1.2自动化的级别277
11.2自动驾驶汽车系统的组件278
11.2.1环境感知280
11.2.2路径规划282
11.33D数据处理介绍282
11.4模仿驾驶策略285
11.5ChauffeurNet驾驶策略294
11.5.1输入/输出表示294
11.5.2模型架构296
11.5.3训练297
11.6总结300
前言
作者简介
审校者简介
部分核心概念
第1章神经网络的具体细节2
1.1神经网络的数学基础2
1.1.1线性代数2
1.1.2概率介绍6
1.1.3微分学16
1.2神经网络的简单介绍18
1.2.1神经元18
1.2.2层的运算19
1.2.3神经网络21
1.2.4激活函数22
1.2.5通用逼近定理25
1.3训练神经网络27
1.3.1梯度下降27
1.3.2代价函数28
1.3.3反向传播30
1.3.4权重初始化32
1.3.5SGD改进33
1.4总结35
第二部分计算机视觉
第2章理解卷积网络38
2.1理解CNN38
2.1.1卷积类型43
2.1.2提高CNN的效率46
2.1.3可视化CNN51
2.1.4CNN正则化54
2.2迁移学习介绍56
2.2.1使用PyTorch实现迁移学习57
2.2.2使用TensorFlow 2.0实现迁移学习62
2.3总结66
第3章高级卷积网络67
3.1AlexNet介绍67
3.2VGG介绍68
3.3理解残差网络70
3.4理解Inception网络78
3.4.1Inception v179
3.4.2Inception v2和v380
3.4.3Inception v4和InceptionResNet81
3.5Xception介绍82
3.6MobileNet介绍83
3.7DenseNet介绍85
3.8神经架构搜索的工作原理87
3.9胶囊网络介绍91
3.9.1卷积网络的局限性91
3.9.2胶囊92
3.9.3胶囊网络的结构94
3.10总结95
第4章对象检测与图像分割96
4.1对象检测介绍96
4.1.1对象检测的方法96
4.1.2使用YOLO v3进行对象检测98
4.1.3使用Faster RCNN进行对象检测104
4.2图像分割介绍110
4.2.1使用UNet进行语义分割110
4.2.2使用Mask RCNN进行实例分割112
4.3总结115
第5章生成模型116
5.1生成模型的直觉和证明116
5.2VAE介绍117
5.3GAN介绍124
5.3.1训练GAN125
5.3.2实现GAN128
5.3.3训练GAN的缺陷129
5.4GAN的类型129
5.4.1DCGAN130
5.4.2CGAN135
5.4.3WGAN137
5.4.4使用CycleGAN实现图像到图像的转换142
5.5艺术风格迁移介绍150
5.6总结151
第三部分自然语言和序列处理
第6章语言建模154
6.1理解ngram154
6.2神经语言模型介绍156
6.2.1神经概率语言模型157
6.2.2word2vec158
6.2.3GloVe模型161
6.3实现语言模型164
6.3.1训练嵌入模型164
6.3.2可视化嵌入向量166
6.4总结169
第7章理解RNN170
7.1RNN介绍170
7.2长短期记忆介绍180
7.3门控循环单元介绍187
7.4实现文本分类189
7.5总结193
第8章seq2seq模型和注意力机制194
8.1seq2seq模型介绍194
8.2使用注意力的seq2seq196
8.2.1Bahdanau Attention196
8.2.2Luong Attention199
8.2.3一般注意力200
8.2.4使用注意力实现seq2seq201
8.3理解transformer207
8.3.1transformer注意力207
8.3.2transformer模型210
8.3.3实现transformer212
8.4transformer语言模型219
8.4.1基于transformer的双向编码器表示219
8.4.2transformerXL224
8.4.3XLNet227
8.4.4使用transformer语言模型生成文本230
8.5总结231
第四部分展望未来
第9章新兴的神经网络设计234
9.1GNN介绍234
9.1.1循环GNN236
9.1.2卷积图神经网络238
9.1.3图自编码器244
9.1.4神经图学习246
9.2记忆增强神经网络介绍251
9.2.1神经图灵机251
9.2.2MANN*256
9.3总结257
第10章元学习258
10.1元学习介绍258
10.1.1零样本学习259
10.1.2单样本学习260
10.1.3元训练和元测试261
10.2基于度量的元学习262
10.2.1为单样本学习匹配网络263
10.2.2孪生网络264
10.2.3原型网络267
10.3基于优化的元学习269
10.4总结274
第11章自动驾驶汽车的深度学习275
11.1自动驾驶汽车介绍275
11.1.1自动驾驶汽车研究简史275
11.1.2自动化的级别277
11.2自动驾驶汽车系统的组件278
11.2.1环境感知280
11.2.2路径规划282
11.33D数据处理介绍282
11.4模仿驾驶策略285
11.5ChauffeurNet驾驶策略294
11.5.1输入/输出表示294
11.5.2模型架构296
11.5.3训练297
11.6总结300
前 言
本书涵盖了基于应用领域的新的深度学习模型、方法和实现。全书共四部分:
● 部分(第1章)介绍深度学习的构建和神经网络(NN)背后的数学知识。
● 第二部分(第2~4章)阐述卷积神经网络(CNN)及其在计算机视觉(CV)中的高级应用。你将学习在对象检测和图像分割应用中流行的CNN架构。之后,还将学习变分自编码器和生成对抗网络。
● 第三部分(第6~8章)阐述自然语言和序列处理。讲解如何使用神经网络提取复杂的单词向量表示。讨论各种类型的循环网络,如长短期记忆(LSTM)网络和门控循环单元(GRU)网络。之后,介绍如何在没有循环网络的情况下使用注意力机制处理序列数据。
● 第四部分(第9~11章)介绍如何使用图神经网络来处理结构化数据。讲解元学习,帮助读者用较少的训练样本来训练神经网络。后,介绍如何将深度学习应用于自动驾驶。
阅读本书,读者将掌握与深度学习相关的关键概念,以及监控和管理深度学习模型的方法。
本书读者
本书适合数据科学家、深度学习工程师、研究人员阅读,也适合想要掌握深度学习,并想建立自己的创新和独特的深度学习项目的AI开发者阅读。本书也将吸引希望通过使用真实的例子来精通高级用例和深度学习领域的方法的人。阅读本书需要读者了解深度学习和Python的基础知识。
本书涵盖的内容
第1章简要介绍什么是深度学习,然后讨论神经网络的数学基础。本章将讨论神经网络的数学模型。更具体地说,我们将关注向量、矩阵和微分,还将深入讨论一些梯度下降变化方法,如动量、Adam和Adadelta。除此之外,还将讨论如何处理不平衡数据集。
第2章提供CNN的简短描述。我们将讨论CNN及其在CV中的应用。
第3章讨论一些先进的、广泛使用的神经网络架构,包括VGG、ResNet、MobileNet、GoogleNet、Inception、Xception和DenseNet。我们还将使用PyTorch实现ResNet和Xception/MobileNet。
第4章讨论两个重要的视觉任务:对象检测和图像分割。我们将提供实现过程。
第5章讨论生成模型。特别是我们将讨论生成对抗网络和神经类型的转移,之后将实现特定的风格转换。
第6章介绍单词和字符级语言模型。我们还将讨论单词向量(word2vec、Glove和fastText),并使用Gensim实现它们。我们还将在自然语言工具包(Natural Language ToolKit,NLTK)的文本处理技术的帮助下,介绍为机器学习应用程序(如主题建模和情感建模)准备文本数据的高级技术和复杂过程。
第7章讨论基本的循环网络、LSTM和GRU单元。我们将为所有的网络提供详细的解释和纯Python实现。
第8章讨论序列模型和注意力机制,包括双向LSTM以及一个名为transformer的新架构(该架构具有编码器和解码器)。
第9章讨论图神经网络和具有记忆的神经网络,如神经图灵机(NTM)、可微神经计算机和MANN。
第10章讨论元学习——教算法如何学习的算法。我们还将尝试改进深度学习算法,使其能够使用更少的训练样本来学习更多的信息。
第11章探索深度学习在自动驾驶汽车上的应用。我们将讨论如何使用深度网络来帮助车辆了解其周围的环境。
如何充分利用本书
为了充分利用本书,需要熟悉Python并掌握一些机器学习的知识。本书包括对神经网络的主要类型的简要介绍,即使你已经熟悉神经网络的基础知识,这些介绍也会对你有所帮助。
下载示例代码及彩色图像
本书的示例代码及所有截图和样图,可以从http://wwwpacktpubcom通过个人账号下载,也可以访问华章图书官网http://wwwhzbookcom,通过注册并登录个人账号下载。
本书的代码包也托管在GitHub的https://githubcom/PacktPublishing/AdvancedDeepLearningwithPython上。如果代码有更新,它将在现有的GitHub存储库上更新。
我们还提供了一个PDF文件,其中有本书使用的屏幕截图和图表的彩色图像。你可以在http://wwwpacktpubcom/sites/default/files/downloads/9781789956177_ColorImagespdf下载。
排版约定
本书中使用了许多排版约定。
CodeInText:表示文本中的代码、数据库表名、文件夹名、文件名、文件扩展名、路径名、用户输入和Twitter句柄。下面是一个示例:“通过包含generator、discriminator和combined网络来构建完整的GAN模型。”
书中代码块的风格如下:
● 部分(第1章)介绍深度学习的构建和神经网络(NN)背后的数学知识。
● 第二部分(第2~4章)阐述卷积神经网络(CNN)及其在计算机视觉(CV)中的高级应用。你将学习在对象检测和图像分割应用中流行的CNN架构。之后,还将学习变分自编码器和生成对抗网络。
● 第三部分(第6~8章)阐述自然语言和序列处理。讲解如何使用神经网络提取复杂的单词向量表示。讨论各种类型的循环网络,如长短期记忆(LSTM)网络和门控循环单元(GRU)网络。之后,介绍如何在没有循环网络的情况下使用注意力机制处理序列数据。
● 第四部分(第9~11章)介绍如何使用图神经网络来处理结构化数据。讲解元学习,帮助读者用较少的训练样本来训练神经网络。后,介绍如何将深度学习应用于自动驾驶。
阅读本书,读者将掌握与深度学习相关的关键概念,以及监控和管理深度学习模型的方法。
本书读者
本书适合数据科学家、深度学习工程师、研究人员阅读,也适合想要掌握深度学习,并想建立自己的创新和独特的深度学习项目的AI开发者阅读。本书也将吸引希望通过使用真实的例子来精通高级用例和深度学习领域的方法的人。阅读本书需要读者了解深度学习和Python的基础知识。
本书涵盖的内容
第1章简要介绍什么是深度学习,然后讨论神经网络的数学基础。本章将讨论神经网络的数学模型。更具体地说,我们将关注向量、矩阵和微分,还将深入讨论一些梯度下降变化方法,如动量、Adam和Adadelta。除此之外,还将讨论如何处理不平衡数据集。
第2章提供CNN的简短描述。我们将讨论CNN及其在CV中的应用。
第3章讨论一些先进的、广泛使用的神经网络架构,包括VGG、ResNet、MobileNet、GoogleNet、Inception、Xception和DenseNet。我们还将使用PyTorch实现ResNet和Xception/MobileNet。
第4章讨论两个重要的视觉任务:对象检测和图像分割。我们将提供实现过程。
第5章讨论生成模型。特别是我们将讨论生成对抗网络和神经类型的转移,之后将实现特定的风格转换。
第6章介绍单词和字符级语言模型。我们还将讨论单词向量(word2vec、Glove和fastText),并使用Gensim实现它们。我们还将在自然语言工具包(Natural Language ToolKit,NLTK)的文本处理技术的帮助下,介绍为机器学习应用程序(如主题建模和情感建模)准备文本数据的高级技术和复杂过程。
第7章讨论基本的循环网络、LSTM和GRU单元。我们将为所有的网络提供详细的解释和纯Python实现。
第8章讨论序列模型和注意力机制,包括双向LSTM以及一个名为transformer的新架构(该架构具有编码器和解码器)。
第9章讨论图神经网络和具有记忆的神经网络,如神经图灵机(NTM)、可微神经计算机和MANN。
第10章讨论元学习——教算法如何学习的算法。我们还将尝试改进深度学习算法,使其能够使用更少的训练样本来学习更多的信息。
第11章探索深度学习在自动驾驶汽车上的应用。我们将讨论如何使用深度网络来帮助车辆了解其周围的环境。
如何充分利用本书
为了充分利用本书,需要熟悉Python并掌握一些机器学习的知识。本书包括对神经网络的主要类型的简要介绍,即使你已经熟悉神经网络的基础知识,这些介绍也会对你有所帮助。
下载示例代码及彩色图像
本书的示例代码及所有截图和样图,可以从http://wwwpacktpubcom通过个人账号下载,也可以访问华章图书官网http://wwwhzbookcom,通过注册并登录个人账号下载。
本书的代码包也托管在GitHub的https://githubcom/PacktPublishing/AdvancedDeepLearningwithPython上。如果代码有更新,它将在现有的GitHub存储库上更新。
我们还提供了一个PDF文件,其中有本书使用的屏幕截图和图表的彩色图像。你可以在http://wwwpacktpubcom/sites/default/files/downloads/9781789956177_ColorImagespdf下载。
排版约定
本书中使用了许多排版约定。
CodeInText:表示文本中的代码、数据库表名、文件夹名、文件名、文件扩展名、路径名、用户输入和Twitter句柄。下面是一个示例:“通过包含generator、discriminator和combined网络来构建完整的GAN模型。”
书中代码块的风格如下:
粗体:表示新术语、重要的词,或你在屏幕上看到的词。例如:“一个实验的所有可能结果(事件)的集合称为样本空间”。
表示警告或重要说明。
表示提示和技巧。
评论
还没有评论。