第1章 引言\t1
1.1 人工智能概述\t2
1.1.1 人工智能的分类\t2
1.1.2 人工智能的应用\t3
1.2 人工智能与传统机器学习\t5
1.2.1 人工神经网络与生物神经网络\t5
1.2.2 落地的关键因素\t6
1.3 机器学习算法领域发展综述\t8
1.3.1 计算机视觉\t9
1.3.2 自然语言处理\t10
1.3.3 语音识别\t11
1.4 小结\t13
参考文献\t13
第2章 数据理解\t16
2.1 数据的三个基本维度\t17
2.1.1 集中趋势\t17
2.1.2 离散趋势\t19
2.1.3 分布形态\t20
2.2 数据的统计推论的基本方法\t22
2.2.1 数据抽样\t22
2.2.2 参数估计\t24
2.2.3 假设检验\t26
2.3 数据分析\t31
2.3.1 基本理念\t31
2.3.2 体系结构\t32
2.3.3 传统数据分析方法与示例\t33
2.3.4 基于数据挖掘的数据分析方法与示例\t35
2.3.5 工作流程\t38
2.3.6 数据分析技巧\t40
2.3.7 数据可视化\t43
2.4 小结\t45
参考文献\t45
第3章 数据处理与特征\t47
3.1 数据的基本处理\t48
3.1.1 数据预处理\t48
3.1.2 数据清洗中的异常值判定和处理\t49
3.1.3 数据清洗中的缺失值填充\t51
3.2 数据的特征缩放和特征编码\t54
3.2.1 特征缩放\t54
3.2.2 特征编码\t57
3.3 数据降维\t58
3.3.1 基本思想与方法\t58
3.3.2 变量选择\t59
3.3.3 特征提取\t61
3.4 图像的特征分析\t68
3.4.1 图像预处理\t68
3.4.2 传统图像特征提取\t74
3.4.3 指纹识别\t77
3.5 小结\t78
参考文献\t79
第4章 机器学习基础\t81
4.1 统计学习\t82
4.1.1 统计学习概述\t82
4.1.2 一般研发流程\t83
4.2 机器学习算法分类\t85
4.2.1 体系框架\t85
4.2.2 模型的形式\t88
4.3 机器学习的学习规则\t90
4.3.1 误差修正学习\t90
4.3.2 赫布学习规则\t91
4.3.3 最小均方规则\t92
4.3.4 竞争学习规则\t93
4.3.5 其他学习规则\t94
4.4 机器学习的基础应用\t95
4.4.1 基于最小二乘法的回归分析\t95
4.4.2 基于K-Means的聚类分析\t98
4.4.3 基于朴素贝叶斯的分类分析\t101
4.5 小结\t103
参考文献\t103
第5章 模型选择和结构设计\t105
5.1 传统机器学习模型选择\t106
5.1.1 基本原则\t106
5.1.2 经典模型\t107
5.2 经典回归模型的理解和选择\t108
5.2.1 逻辑回归\t108
5.2.2 多项式回归\t109
5.2.3 各类回归模型的简单对比\t112
5.3 经典分类模型的理解和选择\t113
5.3.1 K近邻算法\t113
5.3.2 支持向量机\t114
5.3.3 多层感知器\t115
5.3.4 AdaBoost算法\t117
5.3.5 各类分类算法的简单对比\t118
5.4 经典聚类模型的理解和选择\t120
5.4.1 基于划分的聚类\t120
5.4.2 基于层次的聚类\t122
5.4.3 基于密度的聚类\t126
5.4.4 基于网格的聚类\t131
5.4.5 聚类算法的简单对比\t131
5.5 深度学习模型选择\t132
5.5.1 分类问题模型\t132
5.5.2 聚类问题模型\t138
5.5.3 回归预测模型\t139
5.5.4 各类深度学习模型的简单对比\t140
5.6 深度学习模型结构的设计方向\t141
5.6.1 基于深度的设计\t141
5.6.2 基于升维或降维的设计\t144
5.6.3 基于宽度和多尺度的设计\t145
5.7 模型结构设计中的简单技巧\t146
5.7.1 激活函数的选择\t146
5.7.2 隐藏神经元的估算\t147
5.7.3 卷积核串联使用\t148
5.7.4 利用Dropout提升性能\t149
5.8 小结\t150
参考文献\t151
第6章 目标函数设计\t154
6.1 损失函数\t155
6.1.1 一般简单损失函数\t155
6.1.2 图像分类场景经典损失函数\t156
6.1.3 目标检测中的经典损失函数\t158
6.1.4 图像分割中的经典损失函数\t159
6.1.5 对比场景中的经典损失函数\t161
6.2 风险最小化和设计原则\t165
6.2.1 期望风险、经验风险和结构风险\t165
6.2.2 目标函数的设计原则\t166
6.3 基于梯度下降法的目标函数优化\t167
6.3.1 理论基础\t167
6.3.2 常见的梯度下降法\t169
6.3.3 改进方法\t169
6.4 基于牛顿法的目标求解\t173
6.4.1 基本原理\t173
6.4.2 牛顿法的计算步骤\t174
6.5 小结\t175
参考文献\t176
第7章 模型训练过程设计\t178
7.1 数据选择\t179
7.1.1 数据集筛选\t179
7.1.2 难例挖掘\t180
7.1.3 数据增强\t181
7.2 参数初始化\t183
7.2.1 避免全零初始化\t183
7.2.2 随机初始化\t184
7.3 拟合的验证与判断\t185
7.3.1 过拟合的模型参数\t185
7.3.2 不同算法场景中的欠拟合和过拟合\t187
7.4 学习速率的选择\t188
7.4.1 学习速率的一般观测方法\t188
7.4.2 学习速率与批处理大小的关系\t189
7.5 迁移学习\t189
7.5.1 概念与基本方法\t189
7.5.2 应用示例:基于VGG-16的迁移思路\t190
7.6 分布式训练\t191
7.6.1 数据并行\t191
7.6.2 模型并行\t193
7.7 小结\t194
参考文献\t194
第8章 模型效果的评估与验证\t196
8.1 模型效果评估的一般性指标\t197
8.1.1 分类算法的效果评估\t197
8.1.2 聚类算法的效果评估\t201
8.1.3 回归算法的效果评估\t205
8.1.4 不同应用场景下的效果评估\t206
8.2 交叉验证\t208
8.2.1 基本思想\t208
8.2.2 不同的交叉验证方法\t209
8.3 模型的稳定性分析\t210
8.3.1 计算的稳定性\t210
8.3.2 数据的稳定性\t211
8.3.3 模型性能\t212
8.4 小结\t213
参考文献\t213
第9章 计算性能与模型加速\t215
9.1 计算优化\t216
9.1.1 问题与挑战\t216
9.1.2 设备与推断计算\t216
9.2 性能指标\t217
9.2.1 计算平台的重要指标:算力和带宽\t217
9.2.2 模型的两个重要指标:计算量和访存量\t218
9.3 模型压缩与裁剪\t219
9.3.1 问题背景\t219
9.3.2 基本思路和方法\t220
9.4 小结\t221
参考文献\t221
第10章 应用案例专题\t223
10.1 求解二元一次方程\t224
10.1.1 问题分析\t224
10.1.2 模型设计\t225
10.2 鸢尾花的案例分析\t226
10.2.1 数据说明\t226
10.2.2 数据理解和可视化\t227
10.2.3 数据特征的降维\t230
10.2.4 数据分类\t231
10.2.5 数据聚类\t235
10.3 形体识别\t237
10.3.1 问题定义\t237
10.3.2 应用形式\t239
10.3.3 数据准备与处理\t241
10.3.4 技术方案与模型设计\t243
10.3.5 改进思考\t245
10.4 小结\t246
参考文献\t246