第1章 Python基础编程入门 1
1.1 Python的历史 1
1.1.1 Python版本的演进 1
1.1.2 Python的工程应用情况 2
1.2 Python的基本数据类型 2
1.3 Python数据处理工具之Pandas 6
1.3.1 数据读取和存储 7
1.3.2 数据查看和选取 8
1.3.3 数据处理 11
1.4 Python图像处理工具之PIL 14
1.4.1 PIL简介 14
1.4.2 PIL接口详解 14
1.4.3 PIL图像处理实践 18
第2章 TensorFlow 2.0快速入门 21
2.1 TensorFlow 2.0简介 21
2.2 TensorFlow 2.0环境搭建 22
2.2.1 CPU环境搭建 22
2.2.2 基于Docker的GPU环境搭建 23
2.3 TensorFlow 2.0基础知识 25
2.3.1 TensorFlow 2.0 Eager模式简介 25
2.3.2 TensorFlow 2.0 AutoGraph简介 26
2.3.3 TensorFlow 2.0低阶API基础编程 26
2.4 TensorFlow 2.0高阶API(tf.keras) 32
2.4.1 tf.keras高阶API概览 32
2.4.2 tf.keras高阶API编程 34
第3章 基于CNN的图像识别应用编程实践 36
3.1 CNN相关基础理论 36
3.1.1 卷积神经网络概述 36
3.1.2 卷积神经网络结构 36
3.1.3 卷积神经网络三大核心概念 38
3.2 TensorFlow 2.0 API详解 38
3.2.1 tf.keras.Sequential 39
3.2.2 tf.keras.layers.Conv2D 41
3.2.3 tf.keras.layers.MaxPool2D 42
3.2.4 tf.keras.layers.Flatten与tf.keras.layer.Dense 42
3.2.5 tf.keras.layers.Dropout 43
3.2.6 tf.keras.optimizers.Adam 43
3.3 项目工程结构设计 44
3.4 项目实现代码详解 44
3.4.1 工具类实现 45
3.4.2 cnnModel实现 46
3.4.3 执行器实现 48
3.4.4 Web应用实现 52
第4章 基于Seq2Seq的中文聊天机器人编程实践 55
4.1 NLP基础理论知识 55
4.1.1 语言模型 55
4.1.2 循环神经网络 57
4.1.3 Seq2Seq模型 59
4.2 TensorFlow 2.0 API详解 61
4.2.1 tf.keras.preprocessing.text.Tokenizer 61
4.2.2 tf.keras.preprocessing.sequence.pad_sequences 62
4.2.3 tf.data.Dataset.from_tensor_slices 63
4.2.4 tf.keras.layers.Embedding 63
4.2.5 tf.keras.layers.GRU 63
4.2.6 tf.keras.layers.Dense 65
4.2.7 tf.expand_dims 65
4.2.8 tf.keras.optimizers.Adam 65
4.2.9 tf.keras.losses.SparseCategoricalCrossentropy 66
4.2.10 tf.math.logical_not 66
4.2.11 tf.concat 66
4.2.12 tf.bitcast 67
4.3 项目工程结构设计 67
4.4 项目实现代码详解 68
4.4.1 工具类实现 68
4.4.2 data_util实现 69
4.4.3 seq2seqModel实现 71
4.4.4 执行器实现 77
4.4.5 Web应用实现 83
第5章 基于CycleGAN的图像风格迁移应用编程实践 85
5.1 GAN基础理论 85
5.1.1 GAN的基本思想 85
5.1.2 GAN的基本工作机制 86
5.1.3 GAN的常见变种及应用场景 86
5.2 CycleGAN的算法原理 88
5.3 TensorFlow 2.0 API详解 88
5.3.1 tf.keras.Sequential 88
5.3.2 tf.keras.Input 91
5.3.3 tf.keras.layers.BatchNormalization 91
5.3.4 tf.keras.layers.Dropout 92
5.3.5 tf.keras.layers.Concatenate 93
5.3.6 tf.keras.layers.LeakyReLU 93
5.3.7 tf.keras.layers.UpSampling2D 93
5.3.8 tf.keras.layers.Conv2D 93
5.3.9 tf.optimizers.Adam 94
5.4 项目工程结构设计 95
5.5 项目实现代码详解 96
5.5.1 工具类实现 96
5.5.2 CycleganModel实现 100
5.5.3 执行器实现 105
5.5.4 Web应用实现 109
第6章 基于Transformer的文本情感分析编程实践 111
6.1 Transformer相关理论知识 111
6.1.1 Transformer基本结构 111
6.1.2 注意力机制 112
6.1.3 位置编码 116
6.2 TensorFlow 2.0 API详解 117
6.2.1 tf.keras.preprocessing.text.Tokenizer 117
6.2.2 tf.keras.preprocessing.sequence.pad_sequences 118
6.2.3 tf.data.Dataset.from_tensor_slices 118
6.2.4 tf.keras.layers.Embedding 118
6.2.5 tf.keras.layers.Dense 119
6.2.6 tf.keras.optimizers.Adam 119
6.2.7 tf.optimizers.schedules.LearningRateSchedule 120
6.2.8 tf.keras.layers.Conv1D 120
6.2.9 tf.nn.moments 121
6.3 项目工程结构设计 121
6.4 项目实现代码详解 122
6.4.1 工具类实现 122
6.4.2 data_util实现 124
6.4.3 textClassiferMode实现 128
6.4.4 执行器实现 138
6.4.5 Web应用实现 142
第7章 基于TensorFlow Serving的模型部署实践 144
7.1 TensorFlow Serving框架简介 144
7.1.1 Servable 145
7.1.2 Source 145
7.1.3 Loader 145
7.1.4 Manager 145
7.2 TensorFlow Serving环境搭建 146
7.2.1 基于Docker搭建TensorFlow Serving环境 146
7.2.2 基于Ubuntu 16.04搭建TensorFlow Serving环境 146
7.3 API详解 147
7.3.1 tf.keras.models.load_model 147
7.3.2 tf.keras.experimental.export_saved_model 147
7.3.3 tf.keras.backend.set_learning_phase 148
7.4 项目工程结构设计 148
7.5 项目实现代码详解 149
7.5.1 工具类实现 149
7.5.2 模型文件导出模块实现 150
7.5.3 模型文件部署模块实现 150
7.5.4 Web应用模块实现 152