描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787121342547
- 借助TensorFlow、Keras和PyTorch等库,提供图像生成、图像转换等ALGC任务的解决方案;
- 运用小批量、特征匹配和边界均衡等技术,轻松搭建、训练、部署和调优GAN、ChatGTP、BERT等模型;
- 借助规模化数据集和实例,指导搭建无监督学习的智能应用。
本书为ChatGPT领域技术的专用图书之一。
本书介绍深度学习领域一个十分活跃的分支——生成对抗网络(GAN)。书中覆盖了深度学习的基础、对抗网络背后的原理以及构建方式等内容。同时本书还介绍了多个真实世界中使用对抗网络构建智能应用的案例并提供了具体的代码以及部署方法,旨在帮助读者在真正的生产环境中使用生成对抗网络。本书适合数据科学家、算法工程师、数据挖掘工程师以及其他机器学习领域相关的从业人员,以帮助他们在工作中应用生成对抗模型;也适合机器学习和深度学习的爱好者、初学者来了解深度学习领域的新魔力。
前言 XII
1.1 深度学习的演化 1
1.1.1 sigmoid激发 3
1.1.2 修正线性单元(ReLU) 3
1.1.3 指数线性单元(ELU) 4
1.1.4 随机梯度下降(SGD) 5
1.1.5 学习速率调优 6
1.1.6 正则化 7
1.1.7 权重分享以及池化 8
1.1.8 局部感受野 10
1.1.9 卷积网络(ConvNet) 11
1.2 逆卷积/转置卷积 13
1.2.1 递归神经网络和LSTM 13
1.2.2 深度神经网络 14
1.2.3 判别模型和生成模型的对比 16
1.3 总结 16
2.1 利用深度神经网络自动化人类任务 17
2.1.1 GAN的目的 18
2.1.2 现实世界的一个比喻 19
2.1.3 GAN的组成 20
2.2 GAN的实现 22
2.2.1 GAN的应用 25
2.2.2 在Keras上利用DCGAN实现图像生成 26
2.2.3 利用TensorFlow实现SSGAN 29
2.3 GAN模型的挑战 38
2.3.1 启动及初始化的问题 38
2.3.2 模型坍塌 38
2.3.3 计数方面的问题 39
2.3.4 角度方面的问题 39
2.3.5 全局结构方面的问题 40
2.4 提升GAN训练效果的方法 41
2.4.1 特征匹配 41
2.4.2 小批量 42
2.4.3 历史平均 42
2.4.4 单侧标签平滑 42
2.4.5 输入规范化 42
2.4.6 批规范化 42
2.4.7 利用ReLU和MaxPool避免稀疏梯度 43
2.4.8 优化器和噪声 43
2.4.9 不要仅根据统计信息平衡损失 43
2.5 总结 43
3.1 弥补监督学习和无监督学习之间的空隙 45
3.2 条件GAN介绍 46
3.2.1 利用CGAN生成时尚衣柜 47
3.2.2 利用边界均衡固化GAN训练 51
3.3 BEGAN的训练过程 52
3.3.1 BEGAN的架构 52
3.3.2 利用TensorFlow实现BEGAN 53
3.4 利用CycleGAN实现图像风格的转换 57
3.4.1 CycleGAN的模型公式 58
3.4.2 利用TensorFlow将苹果变成橘子 58
3.4.3 利用CycleGAN将马变为斑马 61
3.5 总结 63
4.1 StackGAN介绍 65
4.1.1 条件强化 66
4.1.2 StackGAN的架构细节 68
4.1.3 利用TensorFlow从文本生成图像 69
4.2 利用DiscoGAN探索跨域的关系 72
4.2.1 DiscoGAN架构以及模型公式 73
4.2.2 DiscoGAN的实现 75
4.3 利用PyTorch从边框生成手提包 78
4.4 利用PyTorch进行性别转换 80
4.5 DiscoGAN和CycleGAN的对比 82
4.6 总结 82
5.1 迁移学习介绍 84
5.1.1 迁移学习的目的 84
5.1.2 多种利用预训练模型的方法 85
5.1.3 利用Keras对车、猫、狗和花进行分类 86
5.2 利用Apache Spark进行大规模深度学习 90
5.2.1 利用Spark深度学习模块运行预训练模型 91
5.2.2 利用BigDL运行大规模手写数字识别 94
5.2.3 利用SRGAN生成高清晰度图像 98
5.2.4 SRGAN的架构 99
5.3 利用DeepDream生成梦幻的艺术图像 105
5.4 在TensorFlow上利用VAE生成手写数字 107
5.5 VAE在真实世界的比喻 108
5.6 GAN和VAE两个生成模型的比较 111
5.7 总结 111
6.1 利用DCGAN构建一个图像矫正系统 113
6.1.1 构建图像矫正系统的步骤 115
6.1.2 在生产环境部署模型的挑战 117
6.2 利用容器的微服务架构 118
6.2.1 单体架构的缺陷 118
6.2.2 微服务架构的优点 118
6.2.3 使用容器的优点 119
6.3 部署深度模型的多种方法 120
6.3.1 方法1——离线建模和基于微服务的容器化部署 120
6.3.2 方法2——离线建模和无服务器部署 121
6.3.3 方法3——在线学习 121
6.3.4 方法4——利用托管机器学习服务 121
6.4 在Docker上运行基于Keras的深度模型 121
6.5 在GKE上部署深度模型 124
6.6 利用AWS Lambda和Polly进行无服务器的图像识别并生成音频 127
6.6.1 修改Lambda环境下代码和包的步骤 137
6.6.2 利用云托管服务进行人脸识别 138
6.7 总结 145
译者序
机器学习领域的发展日新月异,并已经深入我们的日常生活。语音识别、图像识别、机器翻译这些技术都在改变着我们的生活方式,而这些都和深度学习紧密相关。尽管机器拥有的能力越来越令人震撼,然而作为人类的我们依然可以安慰自己说,机器拥有的只是计算能力,只有我们人类才拥有创造性的智能。
诚然目前应用广泛的机器学习方式还是监督学习,需要人类预先对数据进行标记,需要人类先验的经验总结,机器才能更好地工作。由于人类并不能完全将自己的经验符号化、数字化,因此,即使机器可以处理更大量的数据,也无法完全拥有人类的智能。而至于音乐、绘画、文学等艺术创作更被认为是人类的专属,机器永远望尘莫及,机器离真正的智能还有很大的距离。
而生成对抗网络(GAN)的出现,让事情发生了变化,生成对抗网络采用无监督学习的方式,自动从源数据中进行学习,在不需要人工对数据集进行标记的情况下就可以产生令人惊叹的效果。从维基百科的词条学习专业知识,然后写出一个令普通人可以理解的科普文章,模仿知名画家的作品并学习他们的风格进行再创作,这种看似只有人类这样拥有智能和创造性的物种才会做的事情,机器学习现在真的可以做到了!
而这本书的作者Kuntal Ganguly就将在本书中向你介绍这个神奇的技术。生成对抗网络也是如今深度学习里为前沿也是为令人着迷的领域之一。本书从生成模型的基础讲起,逐步介绍了各种生成对抗网络的变体和使用场景。除了深度学习相关的理论,书中还有大量基于现实世界的使用案例和代码,给读者提供了充足的实践方法。相信通过本书你可以快速地领略到生成对抗网络的魅力及其无限的可能性,并将其应用到你的实际工作之中。
非常荣幸获得电子工业出版社张春雨先生的邀请来负责本书的中文翻译。在翻译的过程中我深感自己的中英文能力十分有限,加之自己在机器学习领域也还是个新手,故译文仍有不足之处,十分期待大家的指正。
刘梦馨
2018年5月19日
评论
还没有评论。