TensorFlow 2.X项目实战
  • 推荐0
  • 收藏0
  • 浏览1.6K

TensorFlow 2.X项目实战

李金洪 (作者) 

  • 书  号:978-7-121-39706-6
  • 出版日期:2020-11-02
  • 页  数:524
  • 开  本:16(185*235)
  • 出版状态:上市销售
  • 维护人:吴宏伟
纸质版 ¥119.00
本书基于TensorFlow 2.1 版本进行编写。书中内容分为4 篇。
第1 篇包括TensorFlow 的安装、使用方法。这部分内容可以使读者快速上手TensorFlow 工具。
第2 篇包括数据集制作、特征工程等数据预处理工作,以及与数值分析相关的模型(其中包括wide_deep 模型、梯度提升树、知识图谱、带有JANET 单元的RNN 等模型)。
第3 篇从自然语言处理、计算机视觉两个应用方向介绍了基础的算法原理和主流的模型。具体包括:TextCNN 模型、带有注意力机制的模型、带有动态路由的RNN 模型、BERTology 系列模型、EfficientNet系列模型、Anchor-Free 模型、YOLO V3 模型等。
第4 篇介绍了生成式模型和零次学习两种技术,其中系统地介绍了信息熵、归一化、f-GAN、最优传输、Sinkhorn 算法,以及变分自编码、DeblurGAN、AttGAN、DIM、VSC 等模型。
本书结构清晰、案例丰富、通俗易懂、实用性强,适合对人工智能、TensorFlow 感兴趣的读者作为自学教程。另外,本书也适合社会培训学校作为培训教材,还适合计算机相关专业作为教学参考书。
基于2.X 版本
提供了高度可重用代码,公开了大量的商用代码片段
书中的实战案例可应用于真实场景
TensorFlow 是目前使用最广泛的机器学习框架,能满足广大用户的需求。如今TensorFlow已经更新到2.X 版本,具有更强的易用性。
本书特色
1. 基于2.X 版本,提供了大量的编程经验
本书中的实例全部基于TensorFlow 2.1 版本,同时也包括了许多该版本的使用技巧和经验。
2. 覆盖了TensorFlow 的大量接口
TensorFlow 是一个非常庞大的框架,内部有很多接口可以满足不同用户的需求。合理使用现有接口可以在开发过程中得到事半功倍的效果。然而,由于TensorFlow 的代码迭代速度太快,
有些接口的配套文档并不是很全。作者花了大量的时间与精力,对一些实用接口的使用方法进行摸索与整理,并将这些方法写到书中。
3. 提供了高度可重用代码,公开了大量的商用代码片段
本书实例中的代码大多来自作者的商业项目,这些代码的易用性、稳定性、可重用性都很强。读者可以将这些代码提取出来直接用在自己的项目中,加快开发进度。
4. 书中的实战案例可应用于真实场景
本书中大部分实例都是当前应用非常广泛的通用任务,包括图片分类、目标识别文本分类、图像生成、识别未知分类等多个方向。读者可以在书中介绍的模型的基础上,利用自己的业务
数据集快速实现AI 功能。
5. 从工程角度出发,覆盖工程开发全场景
本书以工程实现为目标,全面覆盖开发实际AI 项目中所涉及的知识,并全部配有实例,包括开发数据集、训练模型、特征工程、开发模型、分布式训练。其中,特征工程部分全面讲解
了TensorFlow 中的特征列接口。该接口可以使数据在特征处理阶段就以图的方式进行加工,从而保证了在训练场景下和使用场景下模型的输入统一。
6. 提供了大量前沿论文链接地址,便于读者进一步深入学习
本书使用的AI 模型,参考了一些前沿的技术论文,并做了一些结构改进。这些实例具有很高的科研价值。读者可以参考这些论文,进一步深入学习更多的前沿知识,再配合本书的实例
进行充分理解,达到融会贯通。本书也可以帮助AI 研究者进行学术研究。
7. 注重方法与经验的传授
本书在讲解知识时,更注重传授方法与经验。全书共有几十个“提示”标签,其中的内容都是含金量很高的成功经验分享与易错事项总结,有关于经验技巧的,也有关于风险规避的,
可以帮助读者在学习的路途上披荆斩棘,快速进步。
/
本书读者对象
? 人工智能爱好者
人工智能开发工程师
? 人工智能专业的高校学生
使用TensorFlow 框架的工程师
? 人工智能专业的教师
集成人工智能的开发人员
? 人工智能初学者
/
关于作者
本书的内容由李金洪主笔编写,书中的大部分代码由许青帮忙调试和整理,在此表示感谢。
许青,NLP 算法工程师,南京航空航天大学硕士毕业,取得若干计算机视觉相关专利,作
为核心开发人员参与过多个领域的AI 项目。
李金洪
2020 年6 月

目录

=======第1 篇 准备
第1 章 学习准备 /.. 2
1.1 什么是TensorFlow 框架 /. 2
1.2 如何学习本书 /... 3
/
第2 章 快速上手TensorFlow /.. 5
2.1 配置TensorFlow 环境 /. 5
2.2 训练模型的两种方式 / 13
2.2.1 “静态图”方式 /...13
2.2.2 “动态图”方式 /...14
2.3 实例1:用静态图训练模型,使其能够从一组数据中找到y≈2x 规律 15
2.4 实例2:用动态图训练一个具有保存检查点功能的回归模型 24
/
第3 章 TensorFlow 2.X 编程基础 /.. 28
3.1 动态图的编程方式 /. 28
3.1.1 实例3:在动态图中获取参数 /...28
3.1.2 实例4:在静态图中使用动态图 /...31
3.1.3 什么是自动图 /..32
3.2 掌握估算器框架接口的应用 / 33
3.3 实例7:将估算器模型转化成静态图模型 49
3.4 实例8:用估算器框架实现分布式部署训练 54
3.5 掌握tf.keras 接口的应用 /... 58
3.6 分配运算资源与使用分布策略 .. 72
3.7 用tfdbg 调试TensorFlow 模型 ... 75
3.8 用自动混合精度加速模型训练 .. 75
/
=======第2 篇 基础
第4 章 用TensorFlow 制作自己的数据集 80
4.1 数据集的基本介绍 /. 80
4.2 实例11:将模拟数据制作成内存对象数据集 .. 82
4.3 实例12:将图片制作成内存对象数据集 .. 88
4.4 实例13:将Excel 文件制作成内存对象数据集 ... 94
4.5 实例14:将图片文件制作成TFRecord 数据集 ... 98
4.6 实例15:将内存对象制作成Dataset 数据集 .. 104
4.7 实例16:将图片文件制作成Dataset 数据集 .. 117
4.7.1 代码实现:读取样本文件的目录及标签 .. 117
4.8 实例17:在动态图中读取Dataset 数据集 .. 123
4.9 实例18:在不同场景中使用数据集 125
4.10 tf.data.Dataset 接口的更多应用 .. 129
/
第5 章 数值分析与特征工程 / 130
5.1 什么是特征工程 /... 130
5.1.1 特征工程的作用 /. 130
5.1.2 特征工程的方法 /. 131
5.1.3 离散数据特征与连续数据特征 / 131
5.1.4 连续数据与离散数据的相互转换 / 132
5.2 什么是特征列接口 /.. 132
5.2.1 实例19:用feature_column 模块处理连续值特征列 .. 132
5.2.2 实例20:将连续值特征列转换成离散值特征列 . 136
5.2.3 实例21:将离散文本特征列转换为one-hot 编码与词向量 ... 139
5.2.4 实例22:根据特征列生成交叉列 . 147
5.2.5 了解序列特征列接口 /. 148
5.2.6 实例23:使用序列特征列接口对文本数据预处理 . 149
5.3 实例24:用wide_deep 模型预测人口收入 153
5.4 实例25:梯度提升树(TFBT)接口的应用 .. 170
5.5 实例26:基于知识图谱的电影推荐系统 173
5.6 实例27:预测飞机发动机的剩余使用寿命 182
/
=======第3 篇 进阶
第6 章 自然语言处理 /... 200
6.1 BERT 模型与NLP 的发展阶段 200
6.2 实例28:用TextCNN 模型分析评论者是否满意 .. 201
6.2.1 什么是卷积神经网络 /. 201
6.2.2 模型任务与数据集介绍 /. 202
6.2.3 熟悉模型:了解TextCNN 模型 /.. 202
6.2.4 数据预处理:用preprocessing 接口制作字典 .. 203
6.2.5 代码实现:生成NLP 文本数据集 206
6.2.6 代码实现:定义TextCNN 模型 /.. 208
6.2.7 运行程序 / 210
6.3 实例29:用带有注意力机制的模型分析评论者是否满意 210
6.4 实例30:用带有动态路由的RNN 模型实现文本分类任务 . 224
6.5 NLP 中的常见任务及数据集 236
6.6 了解Transformers 库 /... 239
6.7 实例31:用管道方式完成多种NLP 任务 .. 243
6.8 Transformers 库中的自动模型类(TFAutoModel) ... 255
6.9 Transformers 库中的BERTology 系列模型 . 259
6.10 Transformers 库中的词表工具 269
6.11 BERTology 系列模型 /. 281
6.12 用迁移学习训练BERT 模型来对中文分类 ... 300
/
第7 章 机器视觉处理 /... 307
7.1 实例34:使用预训练模型识别图像 307
7.2 了解EfficientNet 系列模型 /. 311
7.3 实例36:在估算器框架中用tf.keras 接口训练ResNet 模型,识别图片中是橘子还是苹果 /.. 325
7.3.1 样本准备 / 325
7.3.2 代码实现:准备训练与测试数据集 .. 326
7.3.3 代码实现:制作模型输入函数 / 326
7.3.4 代码实现:搭建ResNet 模型 /.. 327
7.3.5 代码实现:训练分类器模型 / 328
7.3.6 运行程序:评估模型 /. 329
7.3.7 扩展:全连接网络的优化 / 330
7.3.8 在微调过程中如何选取预训练模型 .. 330
7.4 基于图片内容的处理任务 /.. 331
7.5 实例37:用YOLO V3 模型识别门牌号 . 341
/
=======第4 篇 高级
第8 章 生成式模型——能够输出内容的模型 . 364
8.1 快速了解信息熵(information entropy) 364
8.2 通用的无监督模型——自编码与对抗神经网络 . 372
8.3 实例38:用多种方法实现变分自编码神经网络 373
8.4 常用的批量归一化方法 /.. 386
8.5 实例39:构建DeblurGAN 模型,将模糊照片变清晰 .. 388
8.6 全面了解WGAN 模型 / 404
8.7 实例40:构建AttGAN 模型,对照片进行加胡子、加头帘、加眼镜、变年轻等修改/.. 411
8.8 散度在神经网络中的应用 /.. 440
8.9 实例42:用最大化互信息(DIM)模型做一个图片搜索器 453
/
第9 章 识别未知分类的方法——零次学习 . 464
9.1 了解零次学习 /... 464
9.2 零次学习中的常见难点 /.. 469
9.3 带有视觉结构约束的直推ZSL(VSC 模型) 472
9.4 详解Sinkhorn 迭代算法 /.. 481
9.5 实例43:用VSC 模型识别图片中的鸟属于什么类别 .. 490
9.5.1 模型任务与样本介绍 /. 490
9.5.2 用迁移学习的方式获得训练集分类模型 .. 492
9.5.3 用分类模型提取图片的视觉特征 / 492
9.5.4 代码实现:训练VSC 模型,将类属性特征转换成类视觉特征 . 493
9.5.5 代码实现:基于W 距离的损失函数 494
9.5.6 加载数据并进行训练 /. 495
9.5.7 代码实现:根据特征距离对图片进行分类 .. 496
9.6 提升零次学习精度的方法 /.. 497
9.6.1 分析视觉特征的质量 /. 497
9.6.2 分析直推式学习的效果 /. 499
9.6.3 分析直推模型的能力 /. 499
9.6.4 分析未知类别的聚类效果 / 500
9.6.5 清洗测试数据集 /. 502
9.6.6 利用可视化方法进行辅助分析 / 503
后记——让技术更好地商业化落地 /. 505

读者评论

下载资源