- 机械工业出版社
- 9787893864094
- 1-1
- 545918
- 2024-04
- 电子与信息大类
- 高职
内容简介
本书按照“强基础、重应用”的原则进行编写,在内容的安排上采用“理论+实践”的方式,由浅入深,选取的项目可以让学生很快上手。本书主要包括8个项目,分别为搭建TensorFlow开发环境,手写数字识别:TensorFlow初探,房价预测:前馈神经网络,服装图像识别:Keras搭建与训练模型,图像识别:卷积神经网络,AI诗人:循环神经网络,预测汽车油耗效率:TensorFlow.js应用开发,花卉识别:TensorFlowLite。本书既可以作为高等职业院校、应用型本科院校的计算机类、电子信息类、通信类及自动化类等专业的教材,也可以作为各种技能认证考试的参考用书,还可以作为相关技术人员的参考用书。
目录
前言
项目1搭建TensorFlow开发环境1
项目描述1
思维导图1
项目目标1
1.1人工智能、机器学习与深度学习2
1.1.1人工智能2
1.1.2机器学习2
1.1.3深度学习4
1.2深度学习简介5
1.2.1深度学习发展简史5
1.2.2深度学习的工作原理7
1.2.3深度学习的应用9
1.3
任务1:认识深度学习框架13
1.3.1TensorFlow13
1.3.2Keras14
1.3.3PyTorch14
1.3.4Caffe15
1.3.5MXNet15
1.3.6PaddlePaddle16
1.4
任务2:搭建深度学习开发环境17
1.4.1安装Anaconda17
1.4.2使用Conda管理环境20
1.4.3安装TensorFlow21
1.4.4常用编辑器22
拓展
项目24
项目2手写数字识别:TensorFlow初探26
项目描述26
思维导图26
项目目标26
2.1TensorFlow架构27
2.1.1TensorFlow架构图27
2.1.2TensorFlow1.x和2.0之间的差异28
2.1.3TensorFlow数据流图29
2.1.4TensorFlow运行机制31
2.2
任务1:张量的基本操作32
2.2.1张量的阶、形状、数据类型32
2.2.2现实世界中的数据张量35
2.2.3MNIST数据集39
2.2.4索引与切片43
2.2.5维度变换47
2.2.6广播机制51
2.3
任务2:张量的进阶操作54
2.3.1合并与分割54
2.3.2大值、小值、均值、和58
2.3.3张量比较60
2.3.4张量排序63
2.3.5张量中提取数值64
拓展
项目65
项目3房价预测:前馈神经网络67
项目描述67
思维导图67
项目目标67
3.1
任务1:实现一元线性回归模型68
3.1.1准备数据69
3.1.2构建模型69
3.1.3迭代训练70
3.1.4保存和读取模型71
3.2认识神经网络72
3.2.1神经元72
3.2.2激活函数74
3.3
任务2:房价预测78
3.3.1准备数据集79
3.3.2构建模型81
3.3.3训练模型83
3.4前馈神经网络87
3.4.1前馈神经网络拓扑结构87
3.4.2损失函数89
3.4.3反向传播算法92
3.4.4梯度下降算法95
拓展
项目100
项目4服装图像识别:Keras搭建与训练模型102
项目描述102
思维导图102
项目目标102
4.1认识tf.keras103
4.1.1Keras与tf.keras103
4.1.2层(Layer)104
4.1.3模型(Model)106
4.2
任务1:服装图像识别108
4.2.1构建模型108
4.2.2训练模型111
4.2.3评估模型115
4.3
任务2:保存与加载模型116
4.3.1SavedModel方式保存模型117
4.3.2H5格式保存模型118
4.3.3检查点(Checkpoint)格式保存模型119
4.4
任务3:tf.data优化训练数据120
4.4.1训练数据输入模型的方法120
4.4.2tf.dataAPI121
4.4.3tf.data.Dataset122
4.5
任务4:花卉识别125
4.5.1下载图片125
4.5.2构建花卉数据集127
4.5.3构建与训练模型129
4.5.4保存与加载模型130
拓展
项目131
项目5图像识别:卷积神经网络132
项目描述132
思维导图132
项目目标132
5.1认识卷积神经网络133
5.1.1卷积神经网络发展历史133
5.1.2全连接神经网络的问题134
5.2卷积神经网络基本结构135
5.2.1卷积运算135
5.2.2填充136
5.2.3步长137
5.2.4多输入通道和多输出通道138
5.2.5池化层139
5.3TensorFlow对卷积神经网络的支持140
5.3.1卷积函数141
5.3.2池化函数144
5.4
任务1:识别CIFAR-10图像145
5.4.1卷积网络的整体结构145
5.4.2CIFAR-10数据集146
5.4.3构造卷积神经网络模型148
5.4.4编译、训练并评估模型149
5.5
任务2:搭建经典卷积网络150
5.5.1图像识别的难题151
5.5.2AlexNet152
5.5.3VGG系列154
5.5.4ResNet156
5.6
任务3:ResNet实现图像识别158
5.6.1ResNet模型结构158
5.6.2BasicBlock类159
5.6.3搭建ResNet网络模型160
5.6.4加载数据集并训练模型162
拓展
项目163
项目6AI诗人:循环神经网络164
项目描述164
思维导图164
项目目标164
6.1认识循环神经网络165
6.1.1循环神经网络发展历史165
6.1.2循环神经网络的应用166
6.1.3循环神经网络的作用166
6.2
任务1:电影评论分类167
6.2.1IMDb数据集167
6.2.2使用全连接神经网络169
6.2.3循环神经网络典型结构170
6.2.4SimpleRNNCell使用方法171
6.2.5RNN分类IMDb数据集173
6.2.6RNN梯度消失176
6.3
任务2:AI诗人176
6.3.1长短期记忆(LSTM)176
6.3.2文本生成:AI诗人178
拓展
项目184
项目7预测汽车油耗效率:TensorFlow.js应用开发186
项目描述186
思维导图186
项目目标186
7.1认识TensorFlow.js187
7.1.1TensorFlow.js的优点187
7.1.2TensorFlow.js的核心概念188
7.1.3TensorFlow.js环境配置190
7.2
任务1:预测汽车油耗效率193
7.2.1创建主页并加载数据194
7.2.2定义模型结构196
7.2.3数据预处理196
7.2.4训练与测试模型197
7.3
任务2:手写数字识别200
7.3.1从GitHub获取源码并运行200
7.3.2创建相关文件201
7.3.3定义模型结构203
7.3.4训练模型206
7.3.5使用模型进行评估与预测208
拓展
项目210
项目8花卉识别:TensorFlowLite211
项目描述211
思维导图211
项目目标211
8.1认识TensorFlowLite212
8.1.1TensorFlowLite发展历史212
8.1.2TensorFlowLite的应用213
8.2TensorFlowLite体系结构213
8.2.1TensorFlowLite整体架构213
8.2.2TensorFlowLite转换器214
8.2.3FlatBuffers格式215
8.2.4TensorFlowLite解释执行器215
8.3
任务1:TensorFlowLite开发工作流程216
8.3.1选择模型216
8.3.2模型转换218
8.3.3模型推理219
8.3.4优化模型220
8.4
任务2:TensorFlowLite实现花卉识别220
8.4.1选择模型221
8.4.2Android部署226
拓展
项目233
参考文献234
项目1搭建TensorFlow开发环境1
项目描述1
思维导图1
项目目标1
1.1人工智能、机器学习与深度学习2
1.1.1人工智能2
1.1.2机器学习2
1.1.3深度学习4
1.2深度学习简介5
1.2.1深度学习发展简史5
1.2.2深度学习的工作原理7
1.2.3深度学习的应用9
1.3
任务1:认识深度学习框架13
1.3.1TensorFlow13
1.3.2Keras14
1.3.3PyTorch14
1.3.4Caffe15
1.3.5MXNet15
1.3.6PaddlePaddle16
1.4
任务2:搭建深度学习开发环境17
1.4.1安装Anaconda17
1.4.2使用Conda管理环境20
1.4.3安装TensorFlow21
1.4.4常用编辑器22
拓展
项目24
项目2手写数字识别:TensorFlow初探26
项目描述26
思维导图26
项目目标26
2.1TensorFlow架构27
2.1.1TensorFlow架构图27
2.1.2TensorFlow1.x和2.0之间的差异28
2.1.3TensorFlow数据流图29
2.1.4TensorFlow运行机制31
2.2
任务1:张量的基本操作32
2.2.1张量的阶、形状、数据类型32
2.2.2现实世界中的数据张量35
2.2.3MNIST数据集39
2.2.4索引与切片43
2.2.5维度变换47
2.2.6广播机制51
2.3
任务2:张量的进阶操作54
2.3.1合并与分割54
2.3.2大值、小值、均值、和58
2.3.3张量比较60
2.3.4张量排序63
2.3.5张量中提取数值64
拓展
项目65
项目3房价预测:前馈神经网络67
项目描述67
思维导图67
项目目标67
3.1
任务1:实现一元线性回归模型68
3.1.1准备数据69
3.1.2构建模型69
3.1.3迭代训练70
3.1.4保存和读取模型71
3.2认识神经网络72
3.2.1神经元72
3.2.2激活函数74
3.3
任务2:房价预测78
3.3.1准备数据集79
3.3.2构建模型81
3.3.3训练模型83
3.4前馈神经网络87
3.4.1前馈神经网络拓扑结构87
3.4.2损失函数89
3.4.3反向传播算法92
3.4.4梯度下降算法95
拓展
项目100
项目4服装图像识别:Keras搭建与训练模型102
项目描述102
思维导图102
项目目标102
4.1认识tf.keras103
4.1.1Keras与tf.keras103
4.1.2层(Layer)104
4.1.3模型(Model)106
4.2
任务1:服装图像识别108
4.2.1构建模型108
4.2.2训练模型111
4.2.3评估模型115
4.3
任务2:保存与加载模型116
4.3.1SavedModel方式保存模型117
4.3.2H5格式保存模型118
4.3.3检查点(Checkpoint)格式保存模型119
4.4
任务3:tf.data优化训练数据120
4.4.1训练数据输入模型的方法120
4.4.2tf.dataAPI121
4.4.3tf.data.Dataset122
4.5
任务4:花卉识别125
4.5.1下载图片125
4.5.2构建花卉数据集127
4.5.3构建与训练模型129
4.5.4保存与加载模型130
拓展
项目131
项目5图像识别:卷积神经网络132
项目描述132
思维导图132
项目目标132
5.1认识卷积神经网络133
5.1.1卷积神经网络发展历史133
5.1.2全连接神经网络的问题134
5.2卷积神经网络基本结构135
5.2.1卷积运算135
5.2.2填充136
5.2.3步长137
5.2.4多输入通道和多输出通道138
5.2.5池化层139
5.3TensorFlow对卷积神经网络的支持140
5.3.1卷积函数141
5.3.2池化函数144
5.4
任务1:识别CIFAR-10图像145
5.4.1卷积网络的整体结构145
5.4.2CIFAR-10数据集146
5.4.3构造卷积神经网络模型148
5.4.4编译、训练并评估模型149
5.5
任务2:搭建经典卷积网络150
5.5.1图像识别的难题151
5.5.2AlexNet152
5.5.3VGG系列154
5.5.4ResNet156
5.6
任务3:ResNet实现图像识别158
5.6.1ResNet模型结构158
5.6.2BasicBlock类159
5.6.3搭建ResNet网络模型160
5.6.4加载数据集并训练模型162
拓展
项目163
项目6AI诗人:循环神经网络164
项目描述164
思维导图164
项目目标164
6.1认识循环神经网络165
6.1.1循环神经网络发展历史165
6.1.2循环神经网络的应用166
6.1.3循环神经网络的作用166
6.2
任务1:电影评论分类167
6.2.1IMDb数据集167
6.2.2使用全连接神经网络169
6.2.3循环神经网络典型结构170
6.2.4SimpleRNNCell使用方法171
6.2.5RNN分类IMDb数据集173
6.2.6RNN梯度消失176
6.3
任务2:AI诗人176
6.3.1长短期记忆(LSTM)176
6.3.2文本生成:AI诗人178
拓展
项目184
项目7预测汽车油耗效率:TensorFlow.js应用开发186
项目描述186
思维导图186
项目目标186
7.1认识TensorFlow.js187
7.1.1TensorFlow.js的优点187
7.1.2TensorFlow.js的核心概念188
7.1.3TensorFlow.js环境配置190
7.2
任务1:预测汽车油耗效率193
7.2.1创建主页并加载数据194
7.2.2定义模型结构196
7.2.3数据预处理196
7.2.4训练与测试模型197
7.3
任务2:手写数字识别200
7.3.1从GitHub获取源码并运行200
7.3.2创建相关文件201
7.3.3定义模型结构203
7.3.4训练模型206
7.3.5使用模型进行评估与预测208
拓展
项目210
项目8花卉识别:TensorFlowLite211
项目描述211
思维导图211
项目目标211
8.1认识TensorFlowLite212
8.1.1TensorFlowLite发展历史212
8.1.2TensorFlowLite的应用213
8.2TensorFlowLite体系结构213
8.2.1TensorFlowLite整体架构213
8.2.2TensorFlowLite转换器214
8.2.3FlatBuffers格式215
8.2.4TensorFlowLite解释执行器215
8.3
任务1:TensorFlowLite开发工作流程216
8.3.1选择模型216
8.3.2模型转换218
8.3.3模型推理219
8.3.4优化模型220
8.4
任务2:TensorFlowLite实现花卉识别220
8.4.1选择模型221
8.4.2Android部署226
拓展
项目233
参考文献234