基 础 篇
第1章 绪论 1
1.1 人工智能简介 1
1.1.1 人工智能的概念 1
1.1.2 现代人工智能的兴起 5
1.1.3 人工智能的学术流派 5
1.2 人工智能的发展历史 8
1.2.1 孕育期(1956年之前) 8
1.2.2 形成期(1956~1969年) 9
1.2.3 发展期(1970年之后) 11
1.3 人工智能技术的研究内容与应用领域 13
1.3.1 神经网络 14
1.3.2 机器学习 15
1.3.3 模式识别 15
1.3.4 自然语言理解 16
1.3.5 专家系统 17
1.3.6 博弈 17
1.3.7 智能控制 18
1.3.8 其他 18
1.4 人工智能与TensorFlow 18
1.4.1 机器学习与深度学习 18
1.4.2 TensorFlow概念 20
1.4.3 TensorFlow的应用 23
第2章 Python基础应用 25
2.1 引言 25
2.2 Python的安装 25
2.3 数据类型与数据结构 29
2.4 数字 29
2.5 变量及其命名规则 29
2.6 语句和表达式 30
2.7 字符串 31
2.8 容器 32
2.8.1 列表 32
2.8.2 元组 35
2.8.3 字典 35
2.8.4 复制 36
2.9 函数 38
2.9.1 常用内置函数及高阶函数 38
2.9.2 用户自定义函数 42
2.10 常用库 43
2.10.1 时间库 43
2.10.2 科学计算库(NumPy) 47
2.10.3 可视化绘图库(Matplotlib) 54
2.10.4 锁与线程 58
2.10.5 多线程编程 59
第3章 TensorFlow基础 62
3.1 TensorFlow的架构 62
3.2 TensorFlow的开发环境搭建 66
3.3 数据流图简介 77
3.3.1 数据流图基础 77
3.3.2 节点的依赖关系 80
3.4 TensorFlow中定义数据流图 83
3.4.1 构建一个TensorFlow数据流图 83
3.4.2 张量思维 87
3.4.3 张量的形状 90
3.4.4 TensorFlow的Op 91
3.4.5 TensorFlow的Graph对象 93
3.4.6 TensorFlow的Session 94
3.4.7 输入与占位符 97
3.4.8 Variable对象 98
3.5 通过名称作用域组织数据流图 100
3.6 构建数据流图 105
3.7 运行数据流图 108
第4章 TensorFlow运作方式 114
4.1 数据的准备和下载 114
4.2 图表构建与推理 115
4.2.1 图表构建 115
4.2.2 推理 116
4.3 损失与训练 117
4.3.1 损失 117
4.3.2 训练 117
4.4 状态检查与可视化 118
4.4.1 状态检查 118
4.4.2 状态可视化 119
4.5 评估模型 120
4.6 评估图表的构建与输出 123
4.6.1 评估图表的构建 123
4.6.2 评估图表的输出 123
实 战 篇
第5章 MNIST机器学习 125
5.1 MNIST数据集简介 125
5.2 MNIST数据下载 127
5.2.1 数据的准备 129
5.2.2 数据重构 130
5.2.3 数据集对象 130
5.3 softmax回归模型简介 131
5.4 模型的训练与评估 132
5.5 TensorFlow模型基本步骤 135
5.6 构建softmax回归模型 135
第6章 卷积神经网络 138
6.1 卷积神经网络 138
6.2 卷积神经网络的模型架构 142
6.2.1 ImageNet-2010网络结构 142
6.2.2 DeepID网络结构 143
6.3 卷积运算 144
6.3.1 输入和卷积核 145
6.3.2 降维 145
6.3.3 填充 145
6.3.4 数据格式 145
6.4 卷积常见层 146
6.4.1 卷积层 146
6.4.2 池化层 149
6.4.3 归一化 150
6.4.4 高级层 151
6.5 TensorFlow和图像 152
6.5.1 图像加载 152
6.5.2 图像格式 152
6.5.3 图像操作 152
6.5.4 颜色空间变换 153
6.6 模型训练 153
6.7 模型评估 154
6.8 多GPU的模型训练 154
第7章 字词的向量表示 155
7.1 WordEmbedding的基本概念和知识 156
7.2 Skip-Gram模型 158
7.2.1 数据集的准备 160
7.2.2 模型结构 161
7.2.3 处理噪声对比 162
7.2.4 模型训练 163
7.3 嵌套学习可视化与评估 164
7.4 优化实现 166
第8章 递归神经网络 168
8.1 递归神经网络的架构 169
8.2 PTB数据 170
8.3 模型及LSTM 170
8.3.1 LSTM的概念 172
8.3.2 LSTM的结构 173
8.3.3 LSTM的控制门 173
8.4 反向传播的截断 175
8.5 输入与损失函数 175
8.6 多个LSTM层堆叠 175
8.7 代码的编译与运行 176
第9章 Mandelbrot集合 177
9.1 库的导入 178
9.2 会话和变量初始化 179
9.3 定义并运行计算 179
第10章 偏微分方程模拟仿真 180
10.1 计算函数的定义 180
10.2 偏微分方程的定义 182
10.3 仿真 183
第11章 人脸识别 185
11.1 人脸识别概念 185
11.2 人脸识别的流程 188
11.2.1 人脸图像的采集 188
11.2.2 人脸图像的检测 189
11.2.3 人脸图像的预处理 189
11.2.4 人脸图像的特征提取 189
11.2.5 人脸图像的匹配与识别 190
11.2.6 活体鉴别 190
11.3 人脸识别种类 190
11.3.1 人脸检测 190
11.3.2 人脸关键点检测 191
11.3.3 人脸验证 194
11.4 人脸检测 194
11.4.1 LFW数据集 194
11.4.2 数据预处理与检测 195
11.5 性别和年龄识别 196
11.5.1 数据预处理 198
11.5.2 模型构建 198
11.5.3 模型训练 203
11.5.4 模型验证 204