科技>计算机>图形图像
生成对抗网络:原理及图像处理应用  

生成对抗网络:原理及图像处理应用  "

作者:朱秀昌,唐贵进
ISBN:9787121439551
定价:¥109.0
字数:336千字
页数:280
出版时间:2022-08
开本:16开
版次:01-01
装帧:
出版社:电子工业出版社
简介

本书深入浅出地介绍了近年来AI领域中十分引人注目的新型人工神经网络——生成对抗网络(GAN)的基本原理、网络结构及其在图像处理领域中的应用;同时,分析了近年来在GAN训练、GAN质量评估及多种改进型GAN方面取得的进展;在实践方面,给出了基于Python的基本GAN编程实例。另外,本书还介绍了支撑GAN模型的基础理论和相关算法,以使读者更好地理解和掌握GAN技术。

前言

能够生成一幅“逼真”的“假图像”——生成对抗网络(GAN)的这一“神奇的功能”深深吸引了我们。说“逼真”是因为,如果单独观察GAN生成的高清图像,会以为是在某处拍摄的一张照片;说“假图像”是因为,在现实的物理世界中,找不到这幅图像对应的场景。我们能说这样的功能不神奇吗?能说这样的功能没有用吗?这和我们常年从事的图像处理研究工作大不相同。出于兴趣,从GAN问世开始,我们就不断地关注、学习、理解、比较和实验,逐步理解了GAN的“前世”和“今生”,逐步理解了GAN的“外在”和“内涵”。在这个过程中,我们有很多困惑,也遇到了很多困难。可以想象,大概会有不少读者朋友在“初识”GAN时,重蹈我们的覆辙,我们想要编写一本介绍GAN的书,使大家在学习GAN时能够少走一些弯路。这就是我们编写本书的初衷。 我们希望读者通过阅读本书,可以了解GAN技术在人工智能、计算机视觉领域中的应用,基本理解GAN技术的主要理论基础和基本工作原理,了解GAN技术在图像处理领域中的应用和近年来的主要改进,可以基于Python集成环境和TensorFlow框架编写简单的GAN演示程序,把握GAN今后的机遇。 为此,我们设定了三个方面的具体目标。首先,讲清楚GAN的“来龙去脉”,注重分析基本GAN的网络结构和工作原理,给出GAN技术面临的挑战和今后的发展趋势;其次,给出一定的基础知识铺垫,主要涉及神经网络、优化算法和图像处理等,从而减少读者学习GAN的“障碍”;最后,介绍GAN的改进及其在图像领域中的应用情况,给出2个简单的GAN编程实例。 本书内容大致可分为三个部分,第一部分为基础知识:从第1章到第5章,给出了GAN技术的概括介绍,以及理解GAN系统必需的知识支撑,包括数字图像处理基础内容、人工神经网络基础内容和常用的ANN及与GAN有关的算法;第二部分为GAN的核心内容:从第6章到第10章,介绍GAN的基础、目标函数、训练、改进和图像处理应用;第三部分为GAN的实践:第11章和第12章,分别介绍GAN的Python编程和GAN图像处理实例。 这里虽写的是“前言”,实际上写的是“后语”,是在初稿完成以后才写的。我们发现,GAN中还有不少内容尚不够清楚,理论上还有说不清的疑点,还没有到可以系统总结的最佳时期。但是,给GAN一个阶段性的小结、一个初始的梳理和一个比较全面的介绍,对促进GAN技术的发展、协助读者理解GAN原理、引发大家对GAN的兴趣还是有好处的。因此,我们编写了本书。尽管我们在数字图像处理领域工作和研究的时间较长,随着时代的进步,也逐渐涉及神经网络、人工智能、计算机视觉等领域,做过一些相关的研究工作,但在开始写作以后,仍感到力不从心。我们在知识的连贯性、系统性和深入性方面还有欠缺,仿佛在处理一副断了线、缺了珠的珍珠项链。 希望本书能够对初次接触GAN的读者有一个引导作用。 由于GAN技术尚处于“青苗”阶段,理论和实践方面仍存在问题,加之我们的水平有限,本书内容不可避免地会存在一些问题。敬请各位读者细察,不吝指教,将问题和建议反馈给我们,在此深表感谢。 编著者 2021年12月于南京

目录

第1章 绪论 1 1.1 从图像处理到数字视觉 2 1.1.1 数字图像技术 3 1.1.2 数字视觉技术 5 1.1.3 数字视觉的应用 7 1.2 神经网络由浅入深 10 1.2.1 神经网络的发展 10 1.2.2 深度神经网络 11 1.2.3 深度学习的进展 12 1.3 从概率生成到对抗生成 13 1.3.1 概率生成模型 14 1.3.2 概率分布比较 16 1.3.3 对抗生成模型 16 1.4 GAN的应用 18 1.4.1 在图像领域中的应用 18 1.4.2 在其他领域中的应用 20 第2章 数字图像处理 22 2.1 数字图像基础 22 2.1.1 图像的数学表示 22 2.1.2 图像的数字化 23 2.1.3 数字图像的表示 26 2.1.4 图像的分辨率 28 2.2 传统数字图像处理 30 2.2.1 图像采集和压缩 30 2.2.2 图像去噪和滤波 31 2.2.3 图像增强和复原 32 2.2.4 图像分割 33 2.2.5 图像特征提取和目标检测 34 2.2.6 图像变换和超分辨率重建 35 2.3 ANN图像处理 36 2.3.1 图像分类 36 2.3.2 目标检测与跟踪 37 2.3.3 语义分割和实例分割 39 2.3.4 图像生成 40 2.4 常用的图像数据集 43 第3章 人工神经网络 49 3.1 ANN简介 49 3.1.1 从生物到人工神经元 50 3.1.2 从感知机到神经网络 51 3.1.3 从浅层到深度 54 3.1.4 ANN的特点和应用 55 3.2 常见的ANN类型 57 3.2.1 RBF网络 57 3.2.2 ART网络 58 3.2.3 SOM网络 59 3.2.4 波尔兹曼机 59 3.2.5 级联相关网络 61 3.3 ANN的关键技术 62 3.3.1 网络类型 62 3.3.2 网络训练 62 3.3.3 激活函数 64 3.3.4 验证和泛化 65 3.4 BP算法 66 3.4.1 数据的正向传播 67 3.4.2 误差的反向传播 68 3.4.3 BP算法流程 70 3.4.4 BP算法的几个问题 70 3.5 ANN的学习方式 71 3.5.1 有监督学习 71 3.5.2 无监督学习 72 3.5.3 半监督学习 72 3.5.4 强化学习 73 第4章 GAN中常用的ANN 74 4.1 卷积神经网络 74 4.1.1 CNN的结构 75 4.1.2 CNN的核心技术 76 4.1.3 CNN的训练和改进 79 4.1.4 CNN一例 80 4.1.5 图像卷积 81 4.2 循环神经网络 84 4.2.1 RNN的结构 85 4.2.2 RNN与CNN的比较 85 4.3 变分自编码器 86 4.3.1 自编码器 86 4.3.2 VAE概述 87 4.4 深度残差网络 91 4.4.1 深度网络的困境 91 4.4.2 残差块结构 92 4.4.3 残差块的作用 92 4.4.4 ResNet的误差反传 93 第5章 相关算法 96 5.1 和图像处理有关的算法 96 5.1.1 分类算法 96 5.1.2 聚类算法 104 5.1.3 降维算法 106 5.1.4 迁移学习 113 5.1.5 马尔可夫链和HMM 115 5.2 和函数优化有关的算法 120 5.2.1 最小二乘法 120 5.2.2 梯度下降法 121 5.2.3 EM算法 125 第6章 GAN基础 129 6.1 GAN概要 130 6.1.1 GAN的数据生成 130 6.1.2 GAN的网络结构 133 6.1.3 GAN的优势和不足 137 6.2 数据分布及其转换 139 6.2.1 图像数据的高维分布 139 6.2.2 隐变量和隐空间 141 6.2.3 分布函数的转换 143 6.3 生成模型与判别模型 145 6.3.1 生成模型 145 6.3.2 判别模型 149 6.3.3 生成模型和判别模型的关系 150 6.4 GAN的工作过程 152 6.4.1 纳什均衡 153 6.4.2 对抗训练 154 6.4.3 训练流程 157 第7章 GAN的目标函数 160 7.1 数据的信息熵 161 7.1.1 随机变量 161 7.1.2 信息量和信息熵 164 7.1.3 交叉熵 166 7.2 数据分布的差异:散度 168 7.2.1 KL散度 168 7.2.2 JS散度 169 7.2.3 f散度 169 7.3 GAN目标函数及其优化 171 7.3.1 目标函数 171 7.3.2 判别器优化 178 7.3.3 生成器优化 180 第8章 GAN的训练 182 8.1 GAN训练中常见的问题 183 8.1.1 收敛不稳定问题 183 8.1.2 梯度消失问题 184 8.1.3 模式崩溃问题 189 8.2 提升GAN训练的稳定性 192 8.2.1 选择恰当的网络模型 192 8.2.2 选择恰当的目标函数 194 8.2.3 选择恰当的优化算法 196 8.3 GAN训练中的常用技巧 198 8.3.1 数据规范化 198 8.3.2 学习率衰减 199 8.3.3 丢弃技术 200 8.3.4 批量规范化 203 8.3.5 激活函数的选择 203 第9章 GAN的改进 206 9.1 GAN的改进之路 207 9.2 C GAN和info GAN 207 9.2.1 C GAN 207 9.2.2 info GAN 209 9.3 DC GAN 211 9.4 W GAN 213 9.5 Big GAN 214 第10章 GAN的图像处理应用 217 10.1 图像生成 218 10.1.1 图像生成的三种方式 218 10.1.2 几种特殊的图像生成 221 10.2 图像超分辨率重建 221 10.3 图像修复 222 10.4 图像翻译 224 10.4.1 图像至图像的翻译 224 10.4.2 文本至图像的翻译 225 10.5 图像风格迁移 226 10.6 视频预测 227 第11章 GAN的Python编程 228 11.1 Python编程语言 228 11.1.1 Python简介 228 11.1.2 Python的特点 230 11.1.3 Python的应用 232 11.2 常见的Python集成开发环境 233 11.3 深度学习框架 235 11.3.1 主流的深度学习框架 235 11.3.2 主流学习框架的比较 237 11.4 TensorFlow中的GAN编程 238 11.4.1 张量和张量流 239 11.4.2 Python的TensorFlow库 242 11.4.3 TensorFlow的常用模块 243 第12章 GAN图像处理实例 245 12.1 1维GAN编程 245 12.1.1 1维GAN小程序 246 12.1.2 数据对齐 248 12.1.3 训练中的几个问题 249 12.2 MNIST手写数字的生成 249 12.2.1 GAN模型的训练程序 250 12.2.2 GAN模型的生成程序 254 12.2.3 训练程序的图解 256 12.2.4 生成程序的图解 257

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个