描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787111763222
编辑推荐
理解机器学习所需的基本数学工具包括线性代数、解析几何、矩阵分解、向量微积分、优化、概率和统计。传统上,这些主题是在不同的课程中介绍的,这使得数据科学或计算机科学专业的学生或者专业人士很难有效地学习数学基础。本书弥补了纯数学书籍和机器学习书籍存在的单一性问题,介绍了理解机器学习的数学概念,并使用这些概念推导出了四种核心机器学习方法:线性回归、主成分分析、高斯混合模型和支持向量机。对于学生和其他具有数学背景的人来说,这些推导可以作为理解机器学习的一个起点。对于首次学习数学的人来说,这些方法有助于建立应用数学概念的直觉和实践经验。本书每一章都包括一些例子,大部分章还配有习题,以便读者检验和巩固所学知识。
内容简介
本书弥补了纯数学书籍和机器学习书籍存在的单一性问题,介绍了理解机器学习所需的数学概念,例如线性代数、解析几何、矩阵分解、向量微积分、优化、概率和统计,并使用这些概念推导出了四种核心机器学习方法:线性回归、主成分分析、高斯混合模型和支持向量机。本书每一章都包括一些例子,大部分章还配有习题,以方便读者测试对所学知识的理解程度。本书适合数据科学专业和计算机科学专业的学生,以及算法工程师与机器学习领域相关从业者阅读。
目 录
译者序
前言
符号表
缩略语和首字母缩略词表
第一部分 数学基础
第 1 章 引言与动机 2
1.1 寻找直观的词语 2
1.2 阅读本书的两种方法 3
习题和反馈 6
第 2 章 线性代数 7
2.1 线性方程组 9
2.2 矩阵12
2.2.1 矩阵加法与乘法 12
2.2.2 逆和转置 15
2.2.3 标量乘法 16
2.2.4 线性方程组的简洁表示 17
2.3 解线性方程组 17
2.3.1 特解和通解 18
2.3.2 初等变换 19
2.3.3 -1 技巧 23
2.3.4 求解线性方程组的算法 25
2.4 向量空间 26
2.4.1 群 26
2.4.2 向量空间 27
2.4.3 向量子空间 29
2.5 线性无关 30
2.6 基与秩 34
2.6.1 生成集与基 34
2.6.2 秩 36
2.7 线性映射 37
2.7.1 线性映射的矩阵表示 39
2.7.2 基变换 42
2.7.3 象与核 47
2.8 仿射空间 49
2.8.1 仿射子空间 49
2.8.2 仿射映射 51
2.9 延伸阅读 51
习题 52
第 3 章 解析几何 60
3.1 范数61
3.2 内积62
3.2.1 点积 62
3.2.2 一般内积 62
3.2.3 对称正定矩阵 63
3.3 长度和距离 64
3.4 角度和正交性 66
3.5 标准正交基 68
3.6 正交补 69
3.7 函数内积 70
3.8 正交投影 71
3.8.1 一维子空间 (线) 的投影 72
3.8.2 投影到一般子空间上 75
3.8.3 Gram – Schmidt 正交化 78
3.8.4 在仿射子空间上的投影 79
3.9 旋转80
3.9.1 在 R2 上旋转 81
3.9.2 在 R3 上旋转 82
3.9.3 在 Rn 上旋转 83
3.9.4 旋转的性质 83
3.10 延伸阅读 84
习题 84
第 4 章 矩阵分解 87
4.1 行列式和迹 88
4.2 特征值和特征向量 94
4.3 Cholesky 分解 101
4.4 特征分解和对角化 103
4.5 奇异值分解 106
4.5.1 SVD 的几何直观 107
4.5.2 SVD 的构造 110
4.5.3 特征分解与奇异值分解 114
4.6 矩阵近似 116
4.7 矩阵发展史 120
4.8 延伸阅读 122
习题 123
第 5 章 向量微积分 126
5.1 一元函数的微分 128
5.1.1 泰勒级数 129
5.1.2 求导法则 132
5.2 偏微分和梯度 133
5.2.1 偏微分的基本法则 134
5.2.2 链式法则 135
5.3 向量值函数的梯度 136
5.4 矩阵梯度 142
5.5 梯度计算中的常用等式 145
5.6 反向传播与自动微分 146
5.6.1 深度网络中的梯度 146
5.6.2 自动微分 148
5.7 高阶导数 151
5.8 线性化和多元泰勒级数 152
5.9 延伸阅读 157
习题 157
第 6 章 概率和分布 160
6.1 概率空间的构造 161
6.1.1 哲学问题 161
6.1.2 概率与随机变量 162
6.1.3 统计 164
6.2 离散概率和连续概率 165
6.2.1 离散概率 165
6.2.2 连续概率 166
6.2.3 离散分布和连续分布
的对比 168
6.3 加法法则、乘法法则和
贝叶斯定理.169
6.4 概要统计量和独立性 172
6.4.1 均值与方差 172
6.4.2 经验均值与协方差 176
6.4.3 方差的三种表达 177
6.4.4 随机变量的求和与变换 178
6.4.5 统计独立性 179
6.4.6 随机变量的内积 180
6.5 高斯分布 181
6.5.1 高斯分布的边缘分布和
条件分布是高斯分布 183
6.5.2 高斯密度的乘积 185
6.5.3 求和与线性变换 185
6.5.4 多元高斯分布抽样 188
6.6 共轭与指数族 188
6.6.1 共轭 191
6.6.2 充分统计量 193
6.6.3 指数族 193
6.7 变量替换/逆变换 196
6.7.1 分布函数技巧 197
6.7.2 变量替换 199
6.8 延伸阅读 202
习题 203
第 7 章 连续优化 206
7.1 使用梯度下降的优化 208
7.1.1 步长 210
7.1.2 动量梯度下降法 211
7.1.3 随机梯度下降 211
7.2 约束优化和拉格朗日乘子 213
7.3 凸优化 216
7.3.1 线性规划 219
7.3.2 二次规划 221
7.3.3 Legendre-Fenchel
变换和凸共轭 222
7.4 延伸阅读 225
习题 226
第二部分 机器学习的核心问题
第 8 章 模型结合数据 230
8.1 数据、模型与学习 230
8.1.1 用向量表示数据 231
8.1.2 模型的函数表示 233
8.1.3 模型的概率分布表示 234
8.1.4 学习即寻找参数 235
8.2 经验风险最小化 236
8.2.1 函数的假设类别 236
8.2.2 训练数据的损失函数 237
8.2.3 正则化以减少过拟合 238
8.2.4 用交叉验证评估
泛化性能 240
8.2.5 延伸阅读 241
8.3 参数估计 241
8.3.1 最大似然估计 241
8.3.2 最大后验估计 244
8.3.3 模型拟合 245
8.3.4 延伸阅读 246
8.4 概率建模与推理 247
8.4.1 概率模型 247
8.4.2 贝叶斯推理 248
8.4.3 隐变量模型 249
8.4.4 延伸阅读 251
8.5 有向图模型 251
8.5.1 图语义 252
8.5.2 条件独立和 d 分离 254
8.5.3 延伸阅读 255
8.6 模型选择 255
8.6.1 嵌套交叉验证 256
8.6.2 贝叶斯模型选择 257
8.6.3 模型比较的贝叶斯因子 259
8.6.4 延伸阅读 260
第 9 章 线性回归 261
9.1 界定问题 262
9.2 参数估计 264
9.2.1 最大似然估计 264
9.2.2 线性回归中的过拟合 269
9.2.3 最大后验估计 271
9.2.4 作为正则化的 MAP 估计 273
9.3 贝叶斯线性回归 274
9.3.1 模型 275
9.3.2 先验预测 275
9.3.3 后验分布 277
9.3.4 后验预测 279
9.3.5 边缘似然的计算 281
9.4 最大似然作为正交投影 283
9.5 延伸阅读 285
第 10 章 用主成分分析进行降维 287
10.1 提出问题 288
10.2 最大化方差.290
10.2.1 具有最大方差的方向 291
10.2.2 具有最大方差的
M 维子空间 292
10.3 投影视角 295
10.3.1 背景和目标 295
10.3.2 寻找最优坐标 297
10.3.3 寻找主子空间的基 299
10.4 特征向量计算和
低秩逼近 302
10.4.1 PCA 使用低秩
矩阵近似 303
10.4.2 实践方面 303
10.5 高维中的主成分分析 304
10.6 主成分分析实践中的
关键步骤 305
10.7 隐变量视角 308
10.7.1 生成过程和概率模型 309
10.7.2 似然函数和联合分布 310
10.7.3 后验分布 311
10.8 延伸阅读 312
第 11 章 高斯混合模型的
密度估计 316
11.1 高斯混合模型 317
11.2 通过最大似然进行
参数学习 318
11.2.1 响应度 320
11.2.2 更新均值 321
11.2.3 更新协方差 323
11.2.4 更新混合权重 326
11.3 EM 算法 328
11.4 隐变量视角 331
11.4.1 生成过程与概率模型 331
11.4.2 似然 333
11.4.3 后验分布 334
11.4.4 扩展到完整数据集 334
11.4.5 再探 EM 算法 335
11.5 延伸阅读 336
第 12 章 用支持向量机进行分类 338
12.1 分离超平面 340
12.2 原始支持向量机 341
12.2.1 间隔的概念 342
12.2.2 间隔的传统推导 344
12.2.3 为什么可以设定间隔
的长度为 1 345
12.2.4 软间隔 SVM:
几何观点 347
12.2.5 软间隔 SVM: 损失
函数观点 348
12.3 对偶支持向量机 350
12.3.1 由拉格朗日乘子
导出凸对偶 351
12.3.2 对偶 SVM: 凸包观点353
12.4 核355
12.5 数值解 357
12.6 延伸阅读 359
参考文献 361
前言
符号表
缩略语和首字母缩略词表
第一部分 数学基础
第 1 章 引言与动机 2
1.1 寻找直观的词语 2
1.2 阅读本书的两种方法 3
习题和反馈 6
第 2 章 线性代数 7
2.1 线性方程组 9
2.2 矩阵12
2.2.1 矩阵加法与乘法 12
2.2.2 逆和转置 15
2.2.3 标量乘法 16
2.2.4 线性方程组的简洁表示 17
2.3 解线性方程组 17
2.3.1 特解和通解 18
2.3.2 初等变换 19
2.3.3 -1 技巧 23
2.3.4 求解线性方程组的算法 25
2.4 向量空间 26
2.4.1 群 26
2.4.2 向量空间 27
2.4.3 向量子空间 29
2.5 线性无关 30
2.6 基与秩 34
2.6.1 生成集与基 34
2.6.2 秩 36
2.7 线性映射 37
2.7.1 线性映射的矩阵表示 39
2.7.2 基变换 42
2.7.3 象与核 47
2.8 仿射空间 49
2.8.1 仿射子空间 49
2.8.2 仿射映射 51
2.9 延伸阅读 51
习题 52
第 3 章 解析几何 60
3.1 范数61
3.2 内积62
3.2.1 点积 62
3.2.2 一般内积 62
3.2.3 对称正定矩阵 63
3.3 长度和距离 64
3.4 角度和正交性 66
3.5 标准正交基 68
3.6 正交补 69
3.7 函数内积 70
3.8 正交投影 71
3.8.1 一维子空间 (线) 的投影 72
3.8.2 投影到一般子空间上 75
3.8.3 Gram – Schmidt 正交化 78
3.8.4 在仿射子空间上的投影 79
3.9 旋转80
3.9.1 在 R2 上旋转 81
3.9.2 在 R3 上旋转 82
3.9.3 在 Rn 上旋转 83
3.9.4 旋转的性质 83
3.10 延伸阅读 84
习题 84
第 4 章 矩阵分解 87
4.1 行列式和迹 88
4.2 特征值和特征向量 94
4.3 Cholesky 分解 101
4.4 特征分解和对角化 103
4.5 奇异值分解 106
4.5.1 SVD 的几何直观 107
4.5.2 SVD 的构造 110
4.5.3 特征分解与奇异值分解 114
4.6 矩阵近似 116
4.7 矩阵发展史 120
4.8 延伸阅读 122
习题 123
第 5 章 向量微积分 126
5.1 一元函数的微分 128
5.1.1 泰勒级数 129
5.1.2 求导法则 132
5.2 偏微分和梯度 133
5.2.1 偏微分的基本法则 134
5.2.2 链式法则 135
5.3 向量值函数的梯度 136
5.4 矩阵梯度 142
5.5 梯度计算中的常用等式 145
5.6 反向传播与自动微分 146
5.6.1 深度网络中的梯度 146
5.6.2 自动微分 148
5.7 高阶导数 151
5.8 线性化和多元泰勒级数 152
5.9 延伸阅读 157
习题 157
第 6 章 概率和分布 160
6.1 概率空间的构造 161
6.1.1 哲学问题 161
6.1.2 概率与随机变量 162
6.1.3 统计 164
6.2 离散概率和连续概率 165
6.2.1 离散概率 165
6.2.2 连续概率 166
6.2.3 离散分布和连续分布
的对比 168
6.3 加法法则、乘法法则和
贝叶斯定理.169
6.4 概要统计量和独立性 172
6.4.1 均值与方差 172
6.4.2 经验均值与协方差 176
6.4.3 方差的三种表达 177
6.4.4 随机变量的求和与变换 178
6.4.5 统计独立性 179
6.4.6 随机变量的内积 180
6.5 高斯分布 181
6.5.1 高斯分布的边缘分布和
条件分布是高斯分布 183
6.5.2 高斯密度的乘积 185
6.5.3 求和与线性变换 185
6.5.4 多元高斯分布抽样 188
6.6 共轭与指数族 188
6.6.1 共轭 191
6.6.2 充分统计量 193
6.6.3 指数族 193
6.7 变量替换/逆变换 196
6.7.1 分布函数技巧 197
6.7.2 变量替换 199
6.8 延伸阅读 202
习题 203
第 7 章 连续优化 206
7.1 使用梯度下降的优化 208
7.1.1 步长 210
7.1.2 动量梯度下降法 211
7.1.3 随机梯度下降 211
7.2 约束优化和拉格朗日乘子 213
7.3 凸优化 216
7.3.1 线性规划 219
7.3.2 二次规划 221
7.3.3 Legendre-Fenchel
变换和凸共轭 222
7.4 延伸阅读 225
习题 226
第二部分 机器学习的核心问题
第 8 章 模型结合数据 230
8.1 数据、模型与学习 230
8.1.1 用向量表示数据 231
8.1.2 模型的函数表示 233
8.1.3 模型的概率分布表示 234
8.1.4 学习即寻找参数 235
8.2 经验风险最小化 236
8.2.1 函数的假设类别 236
8.2.2 训练数据的损失函数 237
8.2.3 正则化以减少过拟合 238
8.2.4 用交叉验证评估
泛化性能 240
8.2.5 延伸阅读 241
8.3 参数估计 241
8.3.1 最大似然估计 241
8.3.2 最大后验估计 244
8.3.3 模型拟合 245
8.3.4 延伸阅读 246
8.4 概率建模与推理 247
8.4.1 概率模型 247
8.4.2 贝叶斯推理 248
8.4.3 隐变量模型 249
8.4.4 延伸阅读 251
8.5 有向图模型 251
8.5.1 图语义 252
8.5.2 条件独立和 d 分离 254
8.5.3 延伸阅读 255
8.6 模型选择 255
8.6.1 嵌套交叉验证 256
8.6.2 贝叶斯模型选择 257
8.6.3 模型比较的贝叶斯因子 259
8.6.4 延伸阅读 260
第 9 章 线性回归 261
9.1 界定问题 262
9.2 参数估计 264
9.2.1 最大似然估计 264
9.2.2 线性回归中的过拟合 269
9.2.3 最大后验估计 271
9.2.4 作为正则化的 MAP 估计 273
9.3 贝叶斯线性回归 274
9.3.1 模型 275
9.3.2 先验预测 275
9.3.3 后验分布 277
9.3.4 后验预测 279
9.3.5 边缘似然的计算 281
9.4 最大似然作为正交投影 283
9.5 延伸阅读 285
第 10 章 用主成分分析进行降维 287
10.1 提出问题 288
10.2 最大化方差.290
10.2.1 具有最大方差的方向 291
10.2.2 具有最大方差的
M 维子空间 292
10.3 投影视角 295
10.3.1 背景和目标 295
10.3.2 寻找最优坐标 297
10.3.3 寻找主子空间的基 299
10.4 特征向量计算和
低秩逼近 302
10.4.1 PCA 使用低秩
矩阵近似 303
10.4.2 实践方面 303
10.5 高维中的主成分分析 304
10.6 主成分分析实践中的
关键步骤 305
10.7 隐变量视角 308
10.7.1 生成过程和概率模型 309
10.7.2 似然函数和联合分布 310
10.7.3 后验分布 311
10.8 延伸阅读 312
第 11 章 高斯混合模型的
密度估计 316
11.1 高斯混合模型 317
11.2 通过最大似然进行
参数学习 318
11.2.1 响应度 320
11.2.2 更新均值 321
11.2.3 更新协方差 323
11.2.4 更新混合权重 326
11.3 EM 算法 328
11.4 隐变量视角 331
11.4.1 生成过程与概率模型 331
11.4.2 似然 333
11.4.3 后验分布 334
11.4.4 扩展到完整数据集 334
11.4.5 再探 EM 算法 335
11.5 延伸阅读 336
第 12 章 用支持向量机进行分类 338
12.1 分离超平面 340
12.2 原始支持向量机 341
12.2.1 间隔的概念 342
12.2.2 间隔的传统推导 344
12.2.3 为什么可以设定间隔
的长度为 1 345
12.2.4 软间隔 SVM:
几何观点 347
12.2.5 软间隔 SVM: 损失
函数观点 348
12.3 对偶支持向量机 350
12.3.1 由拉格朗日乘子
导出凸对偶 351
12.3.2 对偶 SVM: 凸包观点353
12.4 核355
12.5 数值解 357
12.6 延伸阅读 359
参考文献 361
前 言
前言
机器学习是将人类知识与推理精炼成一种适合构建机器和工程自动化系统的形式的最
新尝试. 机器学习变得越来越普遍, 软件包更加易用, 从业者通常无须了解底层抽象的技
术细节. 然而风险也随之而来, 从业者会不再关注决策算法的设计, 因此也限制了机器学习
算法.
那些有志于研究成功的机器学习算法背后的奥妙的从业者现在面临着一些复杂难懂的
预备知识:
编程语言和数据分析工具
大规模计算及其相关框架
数学和统计学以及机器学习是如何建立在它们的基础上的
在大学里, 机器学习入门课程往往会在课程的早期介绍部分预备知识. 出于历史原因,
机器学习课程通常是在计算机科学系讲授的, 学生通常学习过前两项知识, 但对数学和统计
不是很了解.
目前的机器学习教材主要专注于机器学习算法和方法, 并且假定读者充分了解其中的
数学和统计学知识. 因此, 这些书一般在开始部分或者附录仅仅用一到两章介绍数学基础.
我们发现那些想要钻研机器学习方法基础的人需要掌握阅读一本机器学习教材所需的数学
知识. 在大学里执教过本科生和研究生课程后, 我们发现对于大部分人来说, 高中数学和一
本机器学习教材中需要的数学知识之间有着巨大的差距.
本书前半部分将集中讲述机器学习概念中的数学基础,以便缩小甚至弥合这种知识上
的差距._x000c_
VI
为什么需要另外一本书讲机器学习
机器学习是用数学语言来表达貌似直观而难以形式化的概念. 一旦一个概念被合理地
形式化后, 我们可以深入了解我们所要解决的任务. 全世界数学学习者的一个普遍抱怨是,
学习数学时所涉及的主题似乎与实际问题没有什么关联. 我们认为机器学习应该是人们学
习数学的一个明显而直接的动机.
本书的目的是成为一个庞大的数学文献指南, 帮助读者了解现代机器学习的基础. 我们
通过直接指出数学概念在基本机器学习问题中的应用来引出数学概念. 为了保持本书的简
短, 许多细节和更深入的概念会被省略. 有了基本概念和它们如何用于机器学习的大背景的
介绍, 读者可以找到大量的资源进行进一步的学习, 我们在相应章节的末尾提供了这些资源.
对于有数学背景的读者, 本书提供了一个简短但准确的机器学习概述. 与其他侧重于机器学
习方法和模型的书 (MacKay, 2003; Bishop, 2006; Alpaydin, 2010; Barber, 2012; Murphy,
2012; Shalev-Shwartz and Ben-David, 2014; Rogers and Girolami, 2016) 或机器学习编程
方面的书 (Müller and Guido, 2016; Raschka and Mirjalili, 2017; Chollet and Allaire, 2018)
不同, 我们仅仅提供四个代表性的机器学习算法示例. 相反, 我们专注于模型背后的数学概
念. 我们希望读者能够对机器学习中的基本问题有更深入的了解, 并将使用机器学习过程中
产生的实际问题与数学模型的选取原则联系起来.
我们不打算写一本经典的机器学习书, 而是想提供适用于四个主要机器学习问题的数
学背景, 以使读者能更轻松地阅读其他机器学习教材.
目标读者
随着机器学习的应用在社会中变得越来越普遍, 我们相信每个人都应该对其基本原理
有所了解. 本书以数学学术风格编写, 这使我们能够准确了解机器学习背后的概念. 我们鼓
励那些不熟悉这种简洁风的读者坚持并牢记每个主题的目标. 我们在整本书中都添加了评
注, 希望它可以在整体上提供有用指导.
该书假定读者已掌握中学数学和物理学中通常涵盖的数学知识. 例如, 读者应该学过导
数和积分, 以及二维或三维向量. 我们从这里开始推广这些概念. 因此, 本书的目标读者包
括大学生、业余爱好者和参加机器学习在线课程的人.
与音乐类似, 人们与机器学习之间存在三种交互类型:_x000c_
VII
聪颖的聆听者 通过提供开源软件、在线教程和基于云的工具, 机器学习更加亲民, 用
户不必担心流程的细节. 用户可以集中精力使用现成的工具从数据中提炼想法. 这使得不懂
技术的领域专家也可以受益于机器学习. 这同听音乐一样, 用户能够选择并区分不同类型的
机器学习, 并从中受益. 经验丰富的用户就像音乐评论家一样, 会询问有关机器学习在社会
应用中的重要议题, 例如, 道德、公平和个人隐私. 我们希望本书为思考机器学习系统的认
证和风险管理奠定基础, 并帮助大家利用其领域专业知识来构建更好的机器学习系统.
老练的艺术家 熟练的机器学习专家可以将不同的工具和库插入分析流水线中. 一般
认为研究机器学习的是数据科学家或工程师, 他们了解机器学习接口及其用例, 并能够根据
数据完成出色的预测. 这类似于演奏音乐的演奏家, 技艺高超的从业者可以将现有的乐器带
入生活并为听众带来乐趣. 使用此处介绍的数学作为入门知识, 从业人员将能够了解他们喜
欢的方法的优点和局限性, 并且可以扩展和概括现有的机器学习算法. 我们希望本书为推动
机器学习方法更严格和原则化的发展提供动力.
新进的作曲家 随着机器学习被应用于新领域, 机器学习开发人员需要开发新方法并
扩展现有算法. 他们通常是需要了解机器学习的数学基础并揭示不同任务之间关系的研究
人员. 这类似于音乐的作曲家, 他们在音乐理论的规则和结构内创作出新颖而令人赞叹的作
品. 我们希望本书为那些想成为机器学习作曲家的人提供其他技术书籍的高级概述. 社会上
非常需要能够提出和探索新颖的方法来应对从数据中学习所面临的许多挑战的新研究人员.
致谢
我们非常感谢那些看过本书初稿的人,他们忍受了糟糕的概念阐述. 我们试图实现他们
那些我们不强烈反对的想法. 我们要特别感谢 Christfried Webers 仔细阅读了本书的许多部分, 以及他对结构和表达方式的详细建议. 许多朋友和同事也很友好地为每一章的不同版本
贡献了他们的时间和精力. 我们很幸运地从在线社区的慷慨中受益, 他们通过 github.com
提供了改进建议, 这帮助我们极大地改进了本书.
以下人员通过 https://github.com 或通过个人交流提供了发现的错误, 提出了解释
并建议了相关文献, 按名字字母顺序排列._x000c_
VIII
Abdul-Ganiy Usman
Adam Gaier
Adele Jackson
Aditya Menon
Alasdair Tran
Aleksandar Krnjaic
Alexander Makrigiorgos
Alfredo Canziani
Ali Shafti
Amr Khalifa
Andrew Tanggara
Angus Gruen
Antal A. Buss
Antoine Toisoul Le Cann
Areg Sarvazyan
Artem Artemev
Artyom Stepanov
Bill Kromydas
Bob Williamson
Boon Ping Lim
Chao Qu
Cheng Li
Chris Sherlock
Christopher Gray
Daniel McNamara
Daniel Wood
Darren Siegel
David Johnston
Dawei Chen
Ellen Broad
Fengkuangtian Zhu
Fiona Condon
Georgios Theodorou
He Xin
Irene Raissa Kameni
Jakub Nabaglo
James Hensman
Jamie Liu
Jean Kaddour
Jean-Paul Ebejer
Jerry Qiang
Jitesh Sindhare
John Lloyd
Jonas Ngnawe
Jon Martin
Justin Hsi
Kai Arulkumaran
Kamil Dreczkowski
Lily Wang
Lionel Tondji Ngoupeyou
Lydia Knüfing
Mahmoud Aslan
Mark Hartenstein
Mark van der Wilk
Markus Hegland
Martin Hewing
Matthew Alger
Matthew Lee
Maximus McCann
Mengyan Zhang_x000c_
IX
Michael Bennett
Michael Pedersen
Minjeong Shin
Mohammad Malekzadeh
Naveen Kumar
Nico Montali
Oscar Armas
Patrick Henriksen
Patrick Wieschollek
Pattarawat Chormai
Paul Kelly
Petros Christodoulou
Piotr Januszewski
Pranav Subramani
Quyu Kong
Ragib Zaman
Rui Zhang
Ryan-Rhys Griffiths
Salomon Kabongo
Samuel Ogunmola
Sandeep Mavadia
Sarvesh Nikumbh
Sebastian Raschka
Senanayak Sesh Kumar Karri
Seung-Heon Baek
Shahbaz Chaudhary
Shakir Mohamed
Shawn Berry
Sheikh Abdul Raheem Ali
Sheng Xue
Sridhar Thiagarajan
Syed Nouman Hasany
Szymon Brych
Thomas Bühler
Timur Sharapov
Tom Melamed
Vincent Adam
Vincent Dutordoir
Vu Minh
Wasim Aftab
Wen Zhi
Wojciech Stokowiec
Xiaonan Chong
Xiaowei Zhang
Yazhou Hao
Yicheng Luo
Young Lee
Yu Lu
Yun Cheng
Yuxiao Huang
Zac Cranko
Zijian Cao
Zoe Nolan
以下人员通过 GitHub 做出了贡献 (其真实姓名未在 GitHub 档案中列出):_x000c_
X
SamDataMad
bumptiousmonkey
idoamihai
deepakiim
insad
HorizonP
cs-maillist
kudo23
empet
victorBigand
17SKYE
jessjing1995
我们也非常感谢 Parameswaran Raman 和剑桥大学出版社组织的许多匿名审阅者, 他
们阅读了早期版本的一个或多个章节, 并提出了建设性的建议, 使本书得到很大的改进. 特
别要感谢为我们提供 LATEX 支持的 Dinesh Singh Negi. 关于 LATEX 的问题, 他给予了我们
详细而及时的建议. 最后, 我们非常感谢编辑 Lauren Cowles, 他一直耐心地指导我们完成
本书的编写.
机器学习是将人类知识与推理精炼成一种适合构建机器和工程自动化系统的形式的最
新尝试. 机器学习变得越来越普遍, 软件包更加易用, 从业者通常无须了解底层抽象的技
术细节. 然而风险也随之而来, 从业者会不再关注决策算法的设计, 因此也限制了机器学习
算法.
那些有志于研究成功的机器学习算法背后的奥妙的从业者现在面临着一些复杂难懂的
预备知识:
编程语言和数据分析工具
大规模计算及其相关框架
数学和统计学以及机器学习是如何建立在它们的基础上的
在大学里, 机器学习入门课程往往会在课程的早期介绍部分预备知识. 出于历史原因,
机器学习课程通常是在计算机科学系讲授的, 学生通常学习过前两项知识, 但对数学和统计
不是很了解.
目前的机器学习教材主要专注于机器学习算法和方法, 并且假定读者充分了解其中的
数学和统计学知识. 因此, 这些书一般在开始部分或者附录仅仅用一到两章介绍数学基础.
我们发现那些想要钻研机器学习方法基础的人需要掌握阅读一本机器学习教材所需的数学
知识. 在大学里执教过本科生和研究生课程后, 我们发现对于大部分人来说, 高中数学和一
本机器学习教材中需要的数学知识之间有着巨大的差距.
本书前半部分将集中讲述机器学习概念中的数学基础,以便缩小甚至弥合这种知识上
的差距._x000c_
VI
为什么需要另外一本书讲机器学习
机器学习是用数学语言来表达貌似直观而难以形式化的概念. 一旦一个概念被合理地
形式化后, 我们可以深入了解我们所要解决的任务. 全世界数学学习者的一个普遍抱怨是,
学习数学时所涉及的主题似乎与实际问题没有什么关联. 我们认为机器学习应该是人们学
习数学的一个明显而直接的动机.
本书的目的是成为一个庞大的数学文献指南, 帮助读者了解现代机器学习的基础. 我们
通过直接指出数学概念在基本机器学习问题中的应用来引出数学概念. 为了保持本书的简
短, 许多细节和更深入的概念会被省略. 有了基本概念和它们如何用于机器学习的大背景的
介绍, 读者可以找到大量的资源进行进一步的学习, 我们在相应章节的末尾提供了这些资源.
对于有数学背景的读者, 本书提供了一个简短但准确的机器学习概述. 与其他侧重于机器学
习方法和模型的书 (MacKay, 2003; Bishop, 2006; Alpaydin, 2010; Barber, 2012; Murphy,
2012; Shalev-Shwartz and Ben-David, 2014; Rogers and Girolami, 2016) 或机器学习编程
方面的书 (Müller and Guido, 2016; Raschka and Mirjalili, 2017; Chollet and Allaire, 2018)
不同, 我们仅仅提供四个代表性的机器学习算法示例. 相反, 我们专注于模型背后的数学概
念. 我们希望读者能够对机器学习中的基本问题有更深入的了解, 并将使用机器学习过程中
产生的实际问题与数学模型的选取原则联系起来.
我们不打算写一本经典的机器学习书, 而是想提供适用于四个主要机器学习问题的数
学背景, 以使读者能更轻松地阅读其他机器学习教材.
目标读者
随着机器学习的应用在社会中变得越来越普遍, 我们相信每个人都应该对其基本原理
有所了解. 本书以数学学术风格编写, 这使我们能够准确了解机器学习背后的概念. 我们鼓
励那些不熟悉这种简洁风的读者坚持并牢记每个主题的目标. 我们在整本书中都添加了评
注, 希望它可以在整体上提供有用指导.
该书假定读者已掌握中学数学和物理学中通常涵盖的数学知识. 例如, 读者应该学过导
数和积分, 以及二维或三维向量. 我们从这里开始推广这些概念. 因此, 本书的目标读者包
括大学生、业余爱好者和参加机器学习在线课程的人.
与音乐类似, 人们与机器学习之间存在三种交互类型:_x000c_
VII
聪颖的聆听者 通过提供开源软件、在线教程和基于云的工具, 机器学习更加亲民, 用
户不必担心流程的细节. 用户可以集中精力使用现成的工具从数据中提炼想法. 这使得不懂
技术的领域专家也可以受益于机器学习. 这同听音乐一样, 用户能够选择并区分不同类型的
机器学习, 并从中受益. 经验丰富的用户就像音乐评论家一样, 会询问有关机器学习在社会
应用中的重要议题, 例如, 道德、公平和个人隐私. 我们希望本书为思考机器学习系统的认
证和风险管理奠定基础, 并帮助大家利用其领域专业知识来构建更好的机器学习系统.
老练的艺术家 熟练的机器学习专家可以将不同的工具和库插入分析流水线中. 一般
认为研究机器学习的是数据科学家或工程师, 他们了解机器学习接口及其用例, 并能够根据
数据完成出色的预测. 这类似于演奏音乐的演奏家, 技艺高超的从业者可以将现有的乐器带
入生活并为听众带来乐趣. 使用此处介绍的数学作为入门知识, 从业人员将能够了解他们喜
欢的方法的优点和局限性, 并且可以扩展和概括现有的机器学习算法. 我们希望本书为推动
机器学习方法更严格和原则化的发展提供动力.
新进的作曲家 随着机器学习被应用于新领域, 机器学习开发人员需要开发新方法并
扩展现有算法. 他们通常是需要了解机器学习的数学基础并揭示不同任务之间关系的研究
人员. 这类似于音乐的作曲家, 他们在音乐理论的规则和结构内创作出新颖而令人赞叹的作
品. 我们希望本书为那些想成为机器学习作曲家的人提供其他技术书籍的高级概述. 社会上
非常需要能够提出和探索新颖的方法来应对从数据中学习所面临的许多挑战的新研究人员.
致谢
我们非常感谢那些看过本书初稿的人,他们忍受了糟糕的概念阐述. 我们试图实现他们
那些我们不强烈反对的想法. 我们要特别感谢 Christfried Webers 仔细阅读了本书的许多部分, 以及他对结构和表达方式的详细建议. 许多朋友和同事也很友好地为每一章的不同版本
贡献了他们的时间和精力. 我们很幸运地从在线社区的慷慨中受益, 他们通过 github.com
提供了改进建议, 这帮助我们极大地改进了本书.
以下人员通过 https://github.com 或通过个人交流提供了发现的错误, 提出了解释
并建议了相关文献, 按名字字母顺序排列._x000c_
VIII
Abdul-Ganiy Usman
Adam Gaier
Adele Jackson
Aditya Menon
Alasdair Tran
Aleksandar Krnjaic
Alexander Makrigiorgos
Alfredo Canziani
Ali Shafti
Amr Khalifa
Andrew Tanggara
Angus Gruen
Antal A. Buss
Antoine Toisoul Le Cann
Areg Sarvazyan
Artem Artemev
Artyom Stepanov
Bill Kromydas
Bob Williamson
Boon Ping Lim
Chao Qu
Cheng Li
Chris Sherlock
Christopher Gray
Daniel McNamara
Daniel Wood
Darren Siegel
David Johnston
Dawei Chen
Ellen Broad
Fengkuangtian Zhu
Fiona Condon
Georgios Theodorou
He Xin
Irene Raissa Kameni
Jakub Nabaglo
James Hensman
Jamie Liu
Jean Kaddour
Jean-Paul Ebejer
Jerry Qiang
Jitesh Sindhare
John Lloyd
Jonas Ngnawe
Jon Martin
Justin Hsi
Kai Arulkumaran
Kamil Dreczkowski
Lily Wang
Lionel Tondji Ngoupeyou
Lydia Knüfing
Mahmoud Aslan
Mark Hartenstein
Mark van der Wilk
Markus Hegland
Martin Hewing
Matthew Alger
Matthew Lee
Maximus McCann
Mengyan Zhang_x000c_
IX
Michael Bennett
Michael Pedersen
Minjeong Shin
Mohammad Malekzadeh
Naveen Kumar
Nico Montali
Oscar Armas
Patrick Henriksen
Patrick Wieschollek
Pattarawat Chormai
Paul Kelly
Petros Christodoulou
Piotr Januszewski
Pranav Subramani
Quyu Kong
Ragib Zaman
Rui Zhang
Ryan-Rhys Griffiths
Salomon Kabongo
Samuel Ogunmola
Sandeep Mavadia
Sarvesh Nikumbh
Sebastian Raschka
Senanayak Sesh Kumar Karri
Seung-Heon Baek
Shahbaz Chaudhary
Shakir Mohamed
Shawn Berry
Sheikh Abdul Raheem Ali
Sheng Xue
Sridhar Thiagarajan
Syed Nouman Hasany
Szymon Brych
Thomas Bühler
Timur Sharapov
Tom Melamed
Vincent Adam
Vincent Dutordoir
Vu Minh
Wasim Aftab
Wen Zhi
Wojciech Stokowiec
Xiaonan Chong
Xiaowei Zhang
Yazhou Hao
Yicheng Luo
Young Lee
Yu Lu
Yun Cheng
Yuxiao Huang
Zac Cranko
Zijian Cao
Zoe Nolan
以下人员通过 GitHub 做出了贡献 (其真实姓名未在 GitHub 档案中列出):_x000c_
X
SamDataMad
bumptiousmonkey
idoamihai
deepakiim
insad
HorizonP
cs-maillist
kudo23
empet
victorBigand
17SKYE
jessjing1995
我们也非常感谢 Parameswaran Raman 和剑桥大学出版社组织的许多匿名审阅者, 他
们阅读了早期版本的一个或多个章节, 并提出了建设性的建议, 使本书得到很大的改进. 特
别要感谢为我们提供 LATEX 支持的 Dinesh Singh Negi. 关于 LATEX 的问题, 他给予了我们
详细而及时的建议. 最后, 我们非常感谢编辑 Lauren Cowles, 他一直耐心地指导我们完成
本书的编写.
评论
还没有评论。