编辑推荐

深度学习实战》是一本聚焦深度学习实际应用的开发指南。作者曾是Google的软件工程师,对深度学习研究及实践有着丰富的积累。《深度学习实战》记录了作者从实际工作中总结出来的很多开发技巧,不仅涵盖与深度神经网络调试相关的通用技巧,包括排查错误、检查结果、选择激活函数、正则化和Dropout、设置训练参数等技巧,还通过实际例子介绍深度学习在文本处理、图像处理、音乐处理等方面的技巧,而且还从实际使用的角度阐述如何在生产系统中部署机器学习应用,非常适合开发实际应用的深度学习工程师阅读和参考。

内容简介

深度学习并没有那么可怕。直到最近,这项机器学习方法还要经过数年的学习才能掌握,但是有了如Keras和TensorFlow这样的框架后,没有机器学习背景的软件工程师也可以快速进入这个领域。通过《深度学习实战》中的技巧,你将学会解决深度学习在生成和分类文本、图像和音乐方面的问题。

深度学习实战》每章包括完成独立项目所需的几个技巧,如训练一个音乐推荐系统。如果你陷入了困境,作者还在第2章提供了6个技巧来帮助你。《深度学习实战》中的例子用Python语言编写,代码在GitHub上以Pythonnotebook集合的方式提供。

通过《深度学习实战》,你将学会:

■创建为真实用户服务的应用

■使用词嵌入计算文本的相似性

■基于维基百科链接建立电影推荐系统

■通过可视化的内部状态了解AI看待世界的原理

■建立一个为文本片段推荐表情符号的模型

■重用预训练的神经网络构建反向图像搜索服务

■比较GAN、自动编码器和LSTM如何生成图标

■检测音乐的风格并检索歌曲集

作者简介

杜威·奥辛格(DouweOsinga)曾供职于Google,是一位经验丰富的工程师、环球旅行者和三个初创企业的创始人。他的流行软件项目网站(https://douweosinga.com/projects)涉及包括机器学习在内的多个有趣的领域。

目录

目录

前言1

第1章 工具与技术9

1.1神经网络的类型9

1.2数据获取19

1.3数据预处理27

第2章 摆脱困境34

2.1确定我们遇到的问题34

2.2解决运行过程中的错误36

2.3检查中间结果38

2.4为最后一层选择正确的激活函数39

2.5正则化和Dropout40

2.6网络结构、批尺寸和学习率42

第3章 使用词嵌入计算文本相似性44

3.1使用预训练的词嵌入发现词的相似性45

3.2Word2vec数学特性47

3.3可视化词嵌入49

3.4在词嵌入中发现实体类51

3.5计算类内部的语义距离55

3.6在地图上可视化国家数据57

第4章 基于维基百科外部链接构建推荐系统58

4.1收集数据58

4.2训练电影嵌入62

4.3构建电影推荐系统66

4.4预测简单的电影属性67

第5章 按照示例文本的风格生成文本69

5.1获取公开领域书籍文本69

5.2生成类似莎士比亚的文本70

5.3使用RNN编写代码74

5.4控制输出温度76

5.5可视化循环神经网络的活跃程度78

第6章 问题匹配80

6.1从StackExchange网站获取数据80

6.2使用Pandas探索数据82

6.3使用Keras对文本进行特征化83

6.4构建问答模型84

6.5用Pandas训练模型86

6.6检查相似性88

第7章 推荐表情符号90

7.1构建一个简单的情感分类器90

7.2检验一个简单的分类器93

7.3使用卷积网络进行情感分析95

7.4收集Twitter数据97

7.5一个简单的表情符号预测器99

7.6Dropout和多层窗口100

7.7构建单词级模型102

7.8构建你自己的嵌入104

7.9使用循环神经网络进行分类106

7.10可视化一致性/不一致性108

7.11组合模型111

第8章 Sequence-to-Sequence映射113

8.1训练一个简单的Sequence-to-Sequence模型113

8.2从文本中提取对话115

8.3处理开放词汇表117

8.4训练seq2seq聊天机器人119

第9章 复用预训练的图像识别网络123

9.1加载预训练网络124

9.2图像预处理124

9.3推测图像内容126

9.4使用FlickrAPI收集一组带标签的图像128

9.5构建一个分辨猫狗的分类器129

9.6改进搜索结果131

9.7复训图像识别网络133

第10章 构建反向图像搜索服务137

10.1从维基百科中获取图像137

10.2向N维空间投影图像140

10.3在高维空间中寻找最近邻141

10.4探索嵌入中的局部邻域143

第11章 检测多幅图像145

11.1使用预训练的分类器检测多个图像145

11.2使用FasterRCNN进行目标检测149

11.3在自己的图像上运行FasterRCNN152

第12章 图像风格155

12.1可视化卷积神经网络激活值156

12.2尺度和缩放159

12.3可视化神经网络所见161

12.4捕捉图像风格164

12.5改进损失函数以提升图像相干性168

12.6将风格迁移至不同图像169

12.7风格内插171

第13章 用自编码器生成图像173

13.1从GoogleQuickDraw中导入绘图174

13.2为图像创建自编码器176

13.3可视化自编码器结果178

13.4从正确的分布中采样图像180

13.5可视化变分自编码器空间183

13.6条件变分编码器185

第14章 使用深度网络生成图标189

14.1获得训练用的图标190

14.2将图标转换为张量表示193

14.3使用变分自编码器生成图标194

14.4使用数据扩充提升自编码器的性能196

14.5构建生成式对抗网络198

14.6训练生成式对抗网络200

14.7显示GAN生成的图标202

14.8将图标编码成绘图指令204

14.9训练RNN绘制图标205

14.10使用RNN生成图标207

第15章 音乐与深度学习210

15.1为音乐分类器创建训练数据集211

15.2训练音乐风格检测器213

15.3对混淆情况进行可视化215

15.4为已有的音乐编制索引217

15.5设置SpotifyAPI219

15.6从Spotify中收集播放列表和歌曲221

15.7训练音乐推荐系统224

15.8使用Word2vec模型推荐歌曲225

第16章 生产化部署机器学习系统228

16.1使用scikit-learn最近邻计算嵌入229

16.2使用Postgres存储嵌入230

16.3填充和查询Postgres存储的嵌入231

16.4在Postgres中存储高维模型233

16.5使用Python编写微服务234

16.6使用微服务部署Keras模型236

16.7从Web框架中调用微服务237

16.8Tensorflowseq2seq模型238

16.9在浏览器中执行深度学习模型240

16.10使用TensorFlow服务执行Keras模型243

16.11在iOS中使用Keras模型245

前言/序言

  译者序
  深度神经网络是一种层数更多、规模更大的人工神经网络,较传统神经网络在处理能力上有大幅的提升。2006年,加拿大多伦多大学的教授杰弗里·辛顿(GeoffreyHinton)在深度信念网络方面进行了卓越的工作,开辟了深度学习这个新的技术领域。目前,深度学习技术已经成为新一代人工智能技术的研究与开发热点,得到了全球的普遍关注,每天都有相关的报道,每年有大量的论文发表,不断刷新着语音识别、图像分类、商品推荐等各应用领域智能处理水平的纪录。与此同时,深度学习模型难以解释、参数调优困难、参数规模大、训练周期长等问题也困扰着研究和开发人员。
  如何让深度学习模型设计更加简洁高效,如何处理模型参数调试中遇到的困扰和难题,如何将深度学习快速地应用到具体的业务领域,这些都是深度学习技术研究与开发者需要掌握的内容。《深度学习实战》作为一本聚焦深度学习实际应用的开发指南,很好地解决了这些问题。《深度学习实战》的作者是一位资深的软件工程师,有着丰富的软件开发和调试经验。《深度学习实战》记录了作者从实际工作中总结出来的很多开发技巧,非常适合开发实际应用的深度学习工程师阅读和参考。
  《深度学习实战》的第1章从深度学习相关的基本概念开始,介绍了典型的神经网络结构和各种层的设计特点,然后对深度学习中常见的数据集进行了介绍,最后对数据预处理和数据集的划分进行了细致的阐述。第2章是与深度神经网络调试相关的通用技巧,主要涉及如何解决遇到的问题,包括排查错误、检查结果、选择激活函数、正则化和Dropout、设置训练参数等技巧。第3~15章以实际例子,介绍了深度学习在文本处理、图像处理、音乐处理等方面的技巧,涵盖了深度学习主要应用的领域和数据类型,内容非常丰富。最后一章作者从实际使用的角度告诉读者如何在生产系统中部署机器学习应用,使得《深度学习实战》的内容更加贴近实际。
  深度学习的技术还处在不断迭代更新的阶段,每天都有新的研究进展发布,新的开发工具开源,以及新的技术挑战出现。《深度学习实战》的内容是当前深度学习设计开发技巧的总结,需要读者在实践中不断尝试,进而提升自己的技术水平,这样才会不断加深对深度学习技术的理解和把握,创造出更加优秀的算法、模型和应用。希望读者朋友在深度学习的实践中不断总结提炼,贡献出更多优秀的图书作品。
  每一次翻译工作都是一次难忘的学习之旅,我们非常珍惜这个机会。非常感谢《深度学习实战》的作者和机械工业出版社华章公司的编辑,是他们辛勤的工作为我们创造了难得的机会,让我们能够和广大读者一起走进深度学习的世界,领略新一代人工智能技术的风采。这里还要感谢公司同事和家人的大力支持,他们的鼓励给了我们不断前进的动力。《深度学习实战》翻译过程中,我们努力表达作者的真知灼见,但因水平有限,难免有词不达意的地方和疏漏之处,敬请读者朋友不吝赐教。
  
  译者
  2018年12月
  
  译者简介
  李君婷 国家电网有限公司信息通信分公司,主要从事电力信息通信运维数据统计分析、项目管理等工作,研究兴趣包括深度学习、数据科学、颠覆性创新等。
  闫龙川 国家电网有限公司信息通信分公司,主要从事电力信息通信技术研究工作,研究兴趣包括深度学习、强化学习、云计算、数据中心等。
  俞学豪 国家电网有限公司信息通信分公司,主要从事电力信息通信技术研究与管理工作,研究兴趣包括人工智能、云计算、绿色数据中心等。
  高德荃 国家电网有限公司信息通信分公司,主要从事电力信息通信技术研究工作,研究兴趣包括数据科学与人工智能、地理空间分析等。

其他推荐