You are on page 1of 107

机器学习的数学基础

徐 丰
复旦大学
机器学习——曲线拟合
例:伽利略实验——回归
牛顿力学
1
 𝑦= 𝑎𝑥 2 +𝛿
2
 𝑎 = 𝑔 sin 𝜃 = 7
 𝛿~𝑁(0, 0.1)

数据:
设计模型
 多项式
 一阶、二阶、三阶…
学习——曲线拟合
 选择模型——设计(调参)
 先验知识

 估计参数——训练(最优化)
 目标函数
 优化算法
 过拟合、欠拟合

 预测插值——推理/测试
 泛化
 内插、外插
拟合(即学习、优化、训练)
 模型:𝑦 = 𝑓 𝑤, 𝑥 = 𝑤2 𝑥 2 + 𝑤1 𝑥 + 𝑤0

 数据: 𝑥𝑖 , 𝑦𝑖 , 𝑖 = 1, … , 𝑁

 目标:𝐿𝑖 𝑤 = Distance 𝑦𝑖 , 𝑓 𝑤, 𝑥𝑖
 欧氏距离:𝐿𝑖 𝑤 = 𝑦𝑖 − 𝑓 𝑤, 𝑥𝑖 2
 MSE:𝐿 𝑤 = 𝑁 −1 σ𝑖 𝐿𝑖 𝑤 = 𝑁 −1 σ𝑖 𝑦𝑖 − 𝑓 𝑤, 𝑥𝑖 2

——最大似然估计、高斯误差假设
概率论

 最优化:𝑤 ∗ = arg min 𝐿 𝑤


优化
𝜕𝐿
 = 0(→所有极值点) 最优化
𝜕𝑤
2
𝜕 𝑦𝑖 −𝑓 𝑤,𝑥𝑖 𝜕𝑓 𝑤,𝑥𝑖
 σ𝑖 = 2 σ𝑖(𝑦𝑖 − 𝑓 𝑤, 𝑥𝑖 ) =0
𝜕𝑤 𝜕𝑤
𝜕𝑓 𝑤,𝑥𝑖
 = 𝑥𝑖2 , 𝑥𝑖 , 1
𝜕𝑤
σ𝑖(𝑦𝑖 − 𝑤2 𝑥𝑖2 − 𝑤1 𝑥𝑖 − 𝑤0 )𝑥𝑖2 = 0
 ൞ σ𝑖(𝑦𝑖 − 𝑤2 𝑥𝑖2 − 𝑤1 𝑥𝑖 − 𝑤0 )𝑥𝑖 = 0
σ𝑖(𝑦𝑖 − 𝑤2 𝑥𝑖2 − 𝑤1 𝑥𝑖 − 𝑤0 ) = 0
 求解线性方程组:
σ𝑖 𝑦𝑖 𝑥𝑖2 σ𝑖 𝑥𝑖4 σ𝑖 𝑥𝑖3 σ𝑖 𝑥𝑖2 𝑤2
 σ𝑖 𝑦𝑖 𝑥𝑖 = σ𝑖 𝑥𝑖3 σ𝑖 𝑥𝑖2 σ𝑖 𝑥𝑖 ∙ 𝑤1
σ𝑖 𝑦𝑖 σ𝑖 𝑥𝑖2 σ𝑖 𝑥𝑖 1 𝑤0
矢量形式
T
 𝐿 𝑤 ∝ σ𝑖 𝑦𝑖 − 𝑓 𝑤, 𝑥𝑖 2 = 𝑦റ − 𝑓റ ∙ 𝑦റ − 𝑓റ

𝜕𝐿 𝑇 𝜕𝑓റ
 = 2 𝑦റ − 𝑓റ ∙ =0
𝜕𝑤 𝜕𝑤

 𝑓 𝑤, 𝑥 = 𝑤2 𝑥 2 + 𝑤1 𝑥 + 𝑤0 = [𝑥 2 , 𝑥, 1] ∙ 𝑤


 𝑓റ = 𝑥𝑖2 𝑥𝑖 1 ∙𝑤 =𝑿∙𝑤 矩阵代数

⋱ ⋱
𝜕𝑓റ 𝜕𝑓𝑖 𝜕𝑓𝑖 𝜕𝑓𝑖
 = 𝜕𝑤2 𝜕𝑤1 𝜕𝑤0
= 𝑥𝑖2 𝑥𝑖 1 =𝑿
𝜕𝑤
⋱ ⋱
𝜕𝐿 T
 = 𝑦റ − 𝑿𝑤 ∙ 𝑿 = 𝑦റ 𝑇 𝑿 − 𝑤 𝑇 𝑿𝑇 𝑿 = 0
𝜕𝑤
 𝑤𝑇 = (𝑦റ 𝑇 𝑿)/(𝑿𝑇 𝑿)
机器学习的数学基础:概率论
 从概率论的角度看:
 机器学习=参数估计

 参数估计
 最大似然
 最大后验

 随机过程
 马尔科夫链
 概率图
参数估计:ML\MAP\Bayes
 给定观测量(数据) 和模型及未知参数
 Bayes rule:

 Maximum Likelihood (ML)


 Θ = arg max 𝐿(Θ) = arg max 𝑝𝑟𝑜𝑏(𝑥|Θ)
 Maximum A Posterior (MAP)
 Θ = arg max 𝑃(Θ) = arg max 𝑝𝑟𝑜𝑏(Θ|𝑥)
最大似然估计
 估计参数使得观测量为最大概率发生事件
 Θ = arg max 𝐿(Θ) = arg max 𝑝𝑟𝑜𝑏(𝑥|Θ)
 假设一组观测数据为相互独立
 Θ = arg max ς𝑖 𝑝𝑟𝑜𝑏(𝑥𝑖 |Θ)

 不失一般性,取对数似然函数

 最终有:
 ΘML = arg max σ𝑖 log 𝑝𝑟𝑜𝑏(𝑥𝑖 |Θ)
最大似然估计
 例:
 𝑦 = 𝑓 𝑤, 𝑥 + 𝛿
 𝛿~𝑁(0, 𝜎)
 给定一组观测量𝑦𝑖 , 𝑖 = 1, . . , 𝑛
 假设这组观测量为独立,则这组观测量发生的概率为
𝛿𝑖2 𝑦𝑖 −𝑓(𝑤,𝑥𝑖 ) 2
 𝐿(𝑤) = ς𝑖 𝑝(𝑦𝑖 ) ∝ ς𝑖 exp − = ς𝑖 exp −
2𝜎 2 2𝜎 2
 𝐿(𝑤)也称为似然函数、log 𝐿(𝑤) 称为对数似然函数
 最大似然估计为
 𝑤 ∗ = arg min −𝐿(𝑤) = arg min − ln 𝐿(𝑤)
𝑤 𝑤
 𝑤 ∗ = arg min σ𝑖 𝑦𝑖 − 𝑓 𝑤, 𝑥𝑖 2
𝑤
最大似然估计
最大似然估计
最大似然估计 vs 最大后验估计

• 数据:‘学生未交作业’
• 参数:可能的原因
• ‘lost it’
Alien abduction?
• ‘alien abduction’
• ‘lazy student’
• ‘grandma sick’

• 所有原因均可解释数据

• 例子
P(合理解释|未完成作业) = P(未完成作业|合理解释)P(合理解释)

lazy student grandma sick lost it alien abduction


0.9 0.1 0.01 0.0000001
最大后验估计
 最大后验概率:

数据项、最大似然 正则项、先验分布
最大后验估计
 例:
 𝑦 = 𝑓 𝑤, 𝑥 + 𝛿
 𝛿~𝑁(0, 𝜎)
 设𝑤~𝑁(𝑤0 , 𝜎𝑤 )
 后验概率:
𝑤−𝑤0 2 𝑦𝑖 −𝑓(𝑤,𝑥𝑖 ) 2
 𝑃(𝑤) = exp − 2 ς𝑖 exp −
2𝜎𝑤 2𝜎2

 最大后验估计为
∗ 𝜎2 2 2
 𝑤 = arg min 2 𝑤 − 𝑤0 + σ𝑖 𝑦𝑖 − 𝑓 𝑤, 𝑥𝑖
𝑤 𝜎𝑤

权重𝜆 正则项
正则项/先验 → 归纳偏好
曲线拟合→曲面拟合
 线性拟合:二维→高维
 高维空间超平面拟合
 𝒚=𝒘∙𝒙+𝑏
 𝒘∗ = arg min 𝒚 − 𝒘 ∙ 𝒙 + 𝑏 2 高斯噪声的最大似然
𝒘

𝑦
𝑥2

𝑥1
曲线拟合→曲面拟合
 非线性拟合:平面→曲面
 理论上,低维中的任何结构都可以转换为更高维度的
线性结构。 𝒙 = 𝑥12 , 𝑥22 , 𝑥1 𝑥2 , 𝑥1 , 𝑥2 , 1
 即输入数据的原始空间映射到特征空间
机器学习的数学基础:矩阵代数
 矩阵代数
 将数据与中间变量表达成矢量、矩阵、张量形式
 将运算表示成张量运算

 矩阵分解
 特征分解
 奇异值分解

 矢量/矩阵微积分
(https://en.wikipedia.org/wiki/Matrix_calculus)
矢量空间
 范数(norm)

 L2范数
𝑥−𝑏 2
𝑝Gaussian ~ exp −
2𝜎 2
 L1范数
𝑥−𝑏
𝑝Exponential ~ exp −
𝜃
矢量空间
 测度(Metric)

 内积/点乘
 < 𝑥, 𝑦 >= 𝑥 𝑇 ∙ 𝑦 = σ𝑖 𝑥𝑖 𝑦𝑖
 外积
 𝑥 ⊗ 𝑦 = 𝑥 ∙ 𝑦𝑇
 叉乘
 𝑥×𝑦 =𝑧
矩阵代数
 特征分解

 奇异值分解
矢量微积分
𝒚 = 𝑓(𝒙)
𝑑𝑦
 导数(单量)𝑑𝑥 = 𝑓′(𝑥)
𝜕𝑦 𝜕𝑓(𝒙)
 偏导(多变量)𝜕𝑥 =
1 𝜕𝑥1
𝜕𝑓 𝒙 𝜕𝑓 𝒙 𝜕𝑓
 梯度(矢量)𝛻𝒙 𝑓 = 𝜕𝑥1
, 𝜕𝑥 , … = 𝜕𝒙 →坡度
2
𝜕𝑓
 Jacobian(矢量函数)𝑱 = 𝛻𝒙 𝒇, 𝐽 𝑖, 𝑗 = 𝜕𝑥 𝑖
𝑗
𝜕2 𝑓
 Hessian(二阶导数)𝑯 = 𝛻𝑥2 𝑓, 𝐻 𝑖, 𝑗 = →曲率
𝜕𝑥𝑖 𝜕𝑥𝑗
标量求导回顾

𝑦 𝑎 𝑥𝑛 exp(𝑥) log(𝑥) sin(𝑥) 导数是切线的斜率


𝑑𝑦 1
0 𝑛𝑥 𝑛−1 exp(𝑥) cos(𝑥) 𝑑 2
𝑑𝑥 𝑥 𝑥 = 2𝑥
𝑑𝑥

𝑥=1
𝑦 𝑢+𝑣 𝑦 = 𝑓(𝑢), 𝑢 = 𝑔(𝑥) 切线的斜率为2
𝑢𝑣

𝑑𝑦 𝑑𝑢 𝑑𝑣 𝑑𝑢 𝑑𝑣 𝑑𝑦 𝑑𝑢
+ 𝑣+ 𝑢
𝑑𝑥 𝑑𝑥 𝑑𝑥 𝑑𝑥 𝑑𝑥 𝑑𝑢 𝑑𝑥
梯度

• 矢量求导推广
标量 矢量

𝑥 𝐱

𝜕𝑦 𝜕𝑦
标量 𝑦
𝜕𝑥 𝜕𝐱

矢量
𝜕𝐲 𝜕𝐲
𝐲
𝜕𝑥 𝜕𝐱
例子

𝑦 𝑎 𝑎𝑢 sum(𝐱) ∥ 𝐱 ∥2

𝜕𝑦 𝜕𝑢
𝟎𝑇 𝑎 𝟏𝑇 2𝐱 𝑇
𝜕𝐱 𝜕𝐱

𝑦 𝑢+𝑣 𝑢𝑣 ⟨𝐮, 𝐯⟩

𝜕𝑦 𝜕𝑢 𝜕𝑣 𝜕𝑢 𝜕𝑣 𝜕𝐯 𝜕𝐮
+ 𝑣+ 𝑢 𝐮𝑇 +𝐯 𝑇
𝜕𝐱 𝜕𝐱 𝜕𝐱 𝜕𝐱 𝜕𝐱 𝜕𝐱 𝜕𝐱
例子

𝜕𝐲
𝐲 𝐚 𝐱 𝐀𝐱 𝐱𝑇 𝐀 𝐱∈ ℝ𝑛 , 𝐲 ∈ ℝ𝑚 , ∈ ℝ𝑚×𝑛
𝜕𝐱
𝑎, 𝐚 和 𝐀 不是关于𝐱的函数
𝜕𝐲
𝟎 𝐈 𝐀 𝐀𝑇
𝜕𝐱 𝟎 和 𝐈 为矩阵

𝐲 𝑎𝐮 𝐀𝐮 𝐮+𝐯

𝜕𝐲 𝜕𝐮 𝜕𝐮 𝜕𝐮 𝜕𝐯
𝑎 𝐀 +
𝜕𝐱 𝜕𝐱 𝜕𝐱 𝜕𝐱 𝜕𝐱
推广到矩阵
标量 矢量 矩阵

𝐱 (𝑛, 1) 𝐗 (𝑛, 𝑘)
𝑥 (1, )

𝜕𝑦 𝜕𝑦 𝜕𝑦
标量 (1, ) (1, 𝑛)
𝜕𝐗
(𝑘, 𝑛)
𝑦 (1, ) 𝜕𝑥 𝜕𝐱

矢量 𝜕𝐲 𝜕𝐲
𝐲 (𝑚, 1) (𝑚, 1) (𝑚, 𝑛) 𝜕𝐲 (𝑚, 𝑘, 𝑛)
𝜕𝑥 𝜕𝐱
𝜕𝐗

矩阵 𝜕𝐘 𝜕𝐘 (𝑚, 𝑙, 𝑛) 𝜕𝐘
𝐘 (𝑚, 𝑙) (𝑚, 𝑙) (𝑚, 𝑙, 𝑘, 𝑛)
𝜕𝑥 𝜕𝐱 𝜕𝐗
链式法则的矢量形式
 𝑦 = 𝑓 𝑥 ,𝑥 = 𝑔 𝑡
𝜕𝑦 𝜕𝑦 𝜕𝑥
 = = 𝑓 ′ 𝑔(𝑡) 𝑔′ (𝑡)
𝜕𝑡 𝜕𝑥 𝜕𝑡

 当𝒙 = [𝑥𝑖 ]是矢量:
𝜕𝑦 𝜕𝑦 𝜕𝑥𝑖 𝜕𝑦 𝜕𝑥𝑖 𝑇 𝜕𝑦 𝜕𝒙
 = σ𝑖 = …, ,… …, ,… = ∙
𝜕𝑡 𝜕𝑥𝑖 𝜕𝑡 𝜕𝑥𝑖 𝜕𝑡 𝜕𝒙 1×𝑁 𝜕𝑡 𝑁×1

 当𝒕 = [𝑡𝑗 ]也是矢量:
𝜕𝑦 𝜕𝑦 𝜕𝒙
 = ∙
𝜕𝒕 1×𝑀 𝜕𝒙 1×𝑁 𝜕𝒕 𝑁×𝑀

 当𝒚 = [𝑦𝑘 ]也是矢量:
𝜕𝒚 𝜕𝒚 𝜕𝒙
 = ∙
𝜕𝒕 𝐾×𝑀 𝜕𝒙 𝐾×𝑁 𝜕𝒕 𝑁×𝑀
例1

假设

计算
例1

假设

计算

分解
例2

假设

计算
例2

假设

计算

分解
高效计算梯度
如果f太复杂 → 计算图的形式
𝑥𝑖2 𝑤2
𝑤1 𝑓𝑖
𝑥𝑖
+ D 𝐿𝑖

𝑤0 计算图
1

𝑦𝑖
矢量形式 → Tensor Flow
𝑓
𝑥 * + D 𝐿

𝑤
𝑦
计算图

假设 𝑧 = ⟨𝐱, 𝐰⟩ − 𝑦 2

• 分解成最基本的方程
𝑧 = 𝑏2

• 构造有向无环图来表示运算 𝑏 =𝑎−𝑦

𝑎 = ⟨𝐱, 𝐰⟩
𝑦

𝐰 𝐱
机器学习的数学基础:计算图理论
 用图的形式表达复杂的多层次运算
 节点:变量(标量、矢量、矩阵、张量)
 边:运算

𝑦
 计算图可以通过反向传播求梯度

𝑢𝑛
𝜕𝑦 𝜕𝑦 𝜕𝑢𝑛 𝜕𝑢2 𝜕𝑢1
= …
𝜕𝑥 𝜕𝑢𝑛 𝜕𝑢𝑛−1 𝜕𝑢1 𝜕𝑥

𝜕𝑦 𝜕𝑦 𝜕𝑢𝑛 𝜕𝑢2 𝜕𝑢1 𝑢𝑛−1


= …
𝜕𝑥 𝜕𝑢𝑛 𝜕𝑢𝑛−1 𝜕𝑢1 𝜕𝑥

𝑥
机器学习的数学基础:最优化
 最优化
 无约束优化

 算法
 一阶:梯度下降
 步长
 动量
 随机梯度下降
 二阶:牛顿法
 启发式

 带约束优化
 拉格朗日乘子法
 凸优化
最优化

一元三次方程的三个根
最优化

Extreme: 𝛻𝑓 = 0

Maxima: 𝛻 2 𝑓 Negative Definite Minima: 𝛻 2 𝑓 Postive Definite


一阶法:梯度下降

𝒙𝑖+1 = 𝒙𝑖 − 𝜂(𝛻𝑓(𝒙𝑖 ))

步长 Step-size
步长

更稳健、效率低 更高效、不稳健
最佳步长
 目标函数在当前位置𝑤0 处作二阶近似,则
𝜕𝐸 𝜕𝐸 𝜕2 𝐸
 = 𝑎(𝑤 − 𝑤0 ) + 𝑏, 有 𝑤0 = 𝑏, 𝑤0 = 𝑎
𝜕𝑤 𝜕𝑤 𝜕𝑤 2
𝜕𝐸
 令 = 𝑎 𝑤 − 𝑤0 + 𝑏 = 0
𝜕𝑤
−1
∗ 𝑏 𝜕2 𝐸 𝜕𝐸
 即𝑤 = 𝑤0 − = 𝑤0 − ∙
𝑎 𝜕𝑤 2 𝜕𝑤
 最佳步长:
−1
𝜕2 𝐸
 𝜂𝑜𝑝𝑡 =
𝜕𝑤 2
二阶法:牛顿法
𝒙𝑖+1 = 𝒙𝑖 − 𝛻𝑓 𝒙𝑖 ∙ 𝑯−1
𝜕2𝑓 2 1
𝐻 𝑖, 𝑗 = =
𝜕𝑥𝑖 𝜕𝑥𝑗 1 20

• 二阶梯度复杂度高
• 对于高阶问题无效
一般最优化:梯度下降
𝜕𝐿
 如果解析解不好求, = 0方程无法直接求解
𝜕𝑤
𝜕𝐿
 可用梯度下降,找局部最小值:𝑤 ⟸ 𝑤 −𝜂
𝜕𝑤

• 全局性
• 收敛性
• 高效性
随机梯度下降
 对梯度进行快速随机采样
 既高效、又稳健 𝒙𝑖+1 = 𝒙𝑖 − 𝜂(𝛻𝑓 𝒙𝑖 + 𝛿)
动量Momentum
 引入动量、翻越山谷,避免陷入局部解
𝒙𝑖+1 = 𝒙𝑖 − 𝜂 𝛻𝑓 𝒙𝑖 + 𝛼(𝒙𝑖 − 𝒙𝑖−1 )
𝑖
𝑖−𝑖 ′
= 𝒙𝑖 − 𝜂 ෍ 𝛼 𝛻𝑓 𝒙𝑖 ′
𝑖 ′ =1
启发式最优化
 遗传算法
 蚁群算法
 模拟退火
 单纯形法
 …
机器学习基础
徐 丰
复旦大学
人工智能/机器学习
的发展
1949:Hebb学习规则
1950:图灵测试
1952:跳棋程序-Machine Learning
1957:感知机-Perceptron
1969:Robot C机器人
1970s:神经网络低潮
1981:多层感知机MLP及BP算法
1990s:AdaBoost、决策树、SVM
1997:长短时记忆网络(LSTM)
1998:卷积网络(CNN)
2006:Hinton深度置信网络
2012:AlexNet
2016:AlphaGo
1949: Hebbian Rule

Fire Together, Wire Together


1950: Imitation Game

Alan Turing
1956: Artificial Intelligence
认知科学两大学派
 经典主义(符号主义)
 大脑像计算机由孤立的符号来计算
 符号
 计算
 逻辑

 连接主义
 大脑就是神经网络,学习来自权重可塑性
 网络
 连接
 权重
What is AI?
Views of AI fall into four categories:

Thinking humanlyThinking rationally


Acting humanly Acting rationally

The textbook advocates "acting rationally"


Imitation Game
Turing Test
 Natural language
processing
 Knowledge
representation
 Automated
reasoning
 Machine learning

 Computer vision
 Robotics
交叉学科
认知论
 Dualism vs. Materialism
 Rationalism vs. Empiricism
数学
 Logic
 Computation
 Probability
经济学
 Decision Theory
 Game Theory
神经科学
 Neuron, Neural Networks
心理、计算机、控制…
Supervised
Learning DL
Unsupervised

AI ML Learning
Reinforcement
Learning

General
Intelligence
从西瓜说起…
 周老师买西瓜的故事
天气预测

挑西瓜

• 辨认人
• 分析事
机器学习
 从经验中归纳规律,用来理解、预测、改变世界
机器学习发展历程

推理期 知识期 学习期

60 70 80 90 00

符号主义学习:决策树和基于逻辑的学习

连接主义学习:基于神经网络

统计学习:支持向量机和核方法
连接主义学习:深度学习
机器学习(Machine Learning)
 A computer program is said to learn from experience
E with respect to task T and performance measure P,
if its performance at task T, as measured by P,
improves with experience E. – [Mitchell 1997]
 e.g. regression
经验
Experience (Learning) 目标
Performance
(Training Data)
ML
Algorithm

Data (Testing) Task 模型

数据
机器学习 vs. 非学习
 根据经验学习执行一项任务,达到要求性能

 学习:一种根据经验(数据)自动学习的通用算法
 算法与数据无关,算法存在可调节性(参数)
 必须先有训练数据、然后进行学习(调节)、最后可以工作

 非学习:设计确定性的专用算法来实现该任务
 算法可能与数据有关,算法固定—不随数据改变
 人根据自身人的知识或经验手工设计,本质是人在学习
 算法设计完成后不需要先有训练数据即可工作
挑西瓜——分类
天气预测——回归
多源三维观测数据
(温度、湿度、风
速、降雨等)反演
预测台风的路径

历史观测数 (Learning) 历史台风路


据 径
ML
Algorith
m
实时观测数 预测台风路
据 (Testing) 径
辨认人——分类

(Learning)
历史视频 人工标记
ML
Algorith
m
实时视频 实时识别
(Testing)
认识现象,分析事情
 认识理解现象(无监督学习)

 分析推理事件(逻辑推理)

 交互、干预(强化学习)
机器学习类型
 监督学习 Supervised learning
 带标签、标记信息
 分类:晴天、下雨
 回归:明天的温度
 无监督学习 Unsupervised learning
 无标签,学习有效的表征
 聚类、降维
 强化学习 Reinforcement learning
 智能体与环境交互学习
 向认知智能发展
 无时间维(iid样本):聚类→表征→理解→生成→关联
 有时间维(交互):预测→推理→反事实→干预
机器学习要素:数据
 多源:图像、文本、语音…
 异构:数字、栅格化、图…
 数据科学
 数据的表征:
 符合数据的差异性

 例:人力资源数据库

[Deisenroth et al, 2019]


机器学习要素:模型
 函数
 𝑦 = 𝑓(𝑤, 𝑥)

 概率分布:引入不确定性的描述

[Deisenroth et al, 2019]


基本术语
• 监督学习(supervised learning):根据标记分类
• 无监督学习(unsupervised learning):根据特征聚类

• 假设(hypothesis)
• 真相(ground-truth)
• 学习器(learner)

• 分类, 回归
• 二分类, 多分类
• 数据集; 训练, 测试 • 正类, 反类
• 示例(instance), 样例(example)
• 样本(sample)
• 属性(attribute), 特征(feature); 属性值 • 未见样本(unseen instance)
• 特征空间, 样本空间, 输入空间 • 未知“分布”
• 特征向量(feature vector) • 独立同分布(i.i.d.)
• 标记空间, 输出空间 • 泛化(generalization)
独立同分布 i.i.d.
特征 标记

样本
训练数据

测试数据

train, test train test

 训练数据集与测试数据集应是互斥
 泛化(Generalization):
 训练数据集→测试数据集
 与数据集分布有关,与学习算法有关
假设空间
 归纳学习(induction):从经验中归纳的规律
 假设(hypothesis)
 从经验中学习到的规律
 希望尽可能逼近真实的规律
 假设空间
 选定模型后所有可能的拟合结果
 版本空间
 所有满足经验(训练样本)的模型拟合结果
归纳偏好
 学习过程中对某种类型假设的偏好称作归纳偏好

A or B??
归纳偏好
 归纳偏好可看作学习算法自身在一个可能很庞大的假
设空间中对假设进行选择的倾向性或“价值观”.

 “奥卡姆剃刀”是一种常用的、自然科学研究中最基
本的原则,即“若有多个假设与观察一致,选最简单
的那个”.

 具体的现实问题中,学习算法本身所做的假设是否成
立,也即算法的归纳偏好是否与问题本身匹配,大多
数时候直接决定了算法能否取得好的性能.
No Free Lunch
一个算法 如果在某些问题上比另一个算法 好,必然存在另一些问
题, 比 好,也即没有免费的午餐定理。

简单起见,假设样本空间 和假设空间 离散,令 代表算法


基于训练数据X产生假设h的概率,再令f代表要学的目标函数, 在训练
集之外所有样本上的总误差为

为指示函数,若 为真取值1,否则取值0
No Free Lunch
考虑二分类问题,目标函数可以为任何函数 ,函数空
间为 ,对所有可能f 按均匀分布对误差求和,有:

总误差与学习算法无关!

实际问题中,并非所有问题出现的可能性都相同
脱离具体问题,空谈“什么学习算法更好”毫无意义
模型选择

泛化能力强! 能很好地适用于 unseen instance


例如,错误率低、精度高

然而,我们手上没有 unseen instance,……


泛化误差 vs. 经验误差
 误差:样本真实输出与预测输出之间的差异
 训练(经验)误差:训练集上
 测试误差:测试集
 泛化误差:除训练集外所有样本
 并不是训练误差越小越好,因为会出现过拟合

C C

A: Just right! B: Overfitting C: Underfitting


模型选择:评估方法
 现实任务中往往会对学习器的泛化性能、时间开销、
存储开销、可解释性等方面的因素进行评估并做出选

通常将包含个 样本的数据集
拆分成训练集 和测试集

 我们假设测试集是从样本真实分布中独立采样获得,
将测试集上的“测试误差”作为泛化误差的近似,所
以测试集要和训练集中的样本尽量互斥:
 留出法( hold-out )
 交叉验证法 (cross validation)
 自助法(bootstrap)
留出法
拥有的数据集

训练集 测试集

注意:
➢ 保持数据分布一致性 (例如: 分层采样)
➢ 多次重复划分 (例如: 100次随机划分)
➢ 测试集不能太大、不能太小 (如:1/5~1/3)
交叉验证法
 将数据集分层采样划分为k个大小相似的互斥子集,每
次用k-1个子集的并集作为训练集,余下的子集作为测
试集,最终返回k个测试结果的均值,k最常用的取值
是10.
 k折交叉验证若随机重复划分p次,最终的评估结果是
这p次k折交叉验证结果的均值
自助法

以自助采样法为基础,对数据集 有放回采样 次得到训练


集 ,用 做测试集。

⚫ 实际模型与预期模型都使用 个训练样本
⚫ 约有1/3的样本没在训练集中出现
⚫ 自助法在数据集较小、难以有效划分训练/测试集时很有用;由
于改变了数据集分布可能引入估计偏差,在数据量足够时,留
出法和交叉验证法更常用。
模型选择/超参数:归纳偏好/过拟合/欠拟合
 算法的参数:一般由人工设定,亦称“超参数”

 模型的参数:一般由学习确定

 如何确定超参数?(调参)
 调参过程相似:先产生若干模型,然后基于某种评估方法
进行选择
 采用验证集

训练集 vs. 测试集 vs. 验证集 (validation set)

算法参数选定后,可用“训练集+验证集”重新训练最终模型
模型拟合/参数估计:性能度量、优化目标
 性能度量是衡量模型泛化能力的评价标准,反映了任
务需求;使用不同的性能度量往往会导致不同的评判
结果
在预测任务中,给定样例集
评估学习器的性能 也即把预测结果 和真实标记比较.

回归任务最常用的性能度量是“均方误差”:

对于分类任务,错误率和精度是最常用的两种性能度量:
⚫ 错误率(Error):分错样本占样本总数的比例
⚫ 精度(Accuracy):分对样本占样本总数的比率
性能度量
 多分类:混淆矩阵(Confusion Matrix)
性能度量
 目标检测/识别、信息检索

查准率:precision 查全率:recall
P-R曲线
 根据学习器的预测结果按正例可能性大小(输出概率
连续值)对样例进行排序,并逐个把样本作为正例进
行预测,则可以得到查准率-查全率曲线,简称“P-R
曲线”

平衡点是曲线上“查准率
=查全率”时的取值,可
用来用于度量P-R曲线有
交叉的分类器性能高低
F1指数
比P-R曲线平衡点更用常用的是F1度量:

比F1更一般的形式 ,

: 标准F1
: 偏重查全率(逃犯信息检索)
:偏重查准率(商品推荐系统)
其他任务的推广
 多分类问题:
 分解为N个二分类问题(第i类 vs. 其他类)
 每个二分类问题得到一个指标P、R、F1,计算其平均值
 或根据类别比例加权平均

 检测问题:
 定义IoU(真值框 vs. 预测框)的阈值为检测成功的条件
 可以映射到二分类问题:检测成功的框为TP,虚警为FP、漏检为
FN,而TN=0,

 检测识别问题:
 等价于多类的检测问题
 每一类按检测问题计算指标,然后求多类平均
ROC曲线
 类似P-R曲线,根据学习器的预测结果对样例排序,并
逐个作为正例进行预测,以“假正例率”为横轴,
“真正例率”为纵轴可得到ROC曲线,全称“受试者工
作特征”.
 根据ROC曲线下面积大小进行比较,也即AUC值.
假设ROC曲线由
的点按序连接而形成 ,则:
则AUC可估算为:

AUC衡量了样本预测的排序质量。
模型选择:比较检验
 模型性能对比
 测试性能并不等于泛化性能
 测试性能随着测试集的变化而变化
 很多机器学习算法本身有一定的随机性
 假设检验为学习器性能比较提供了重要依据,基于其
结果我们可以推断出若在测试集上观察到学习器A比B
好,则A的泛化性能是否在统计意义上优于B,以及这
个结论的把握有多大。
 二项检验
 t检验
 McNemar检验、Friedman检验、Nemenyi后续检验等
偏差与方差
 通过实验可以估计学习算法的泛化性能,而“偏差-方
差分解”可以用来帮助解释泛化性能。
 偏差-方差分解对学习算法期望的泛化误差进行拆解。
对回归任务,泛化误差可通过“偏差-方差分解”拆解为:

期望输出与真实
输出的差别

同样大小的训练集
的变动,所导致的
性能变化 训练样本的标记与
真实标记有区别

表达了当前任务上任何学习算法
所能达到的期望泛化误差下界
偏差与方差
 偏差
 学习算法期望预测与真实结果的偏离程度;
 即刻画了学习算法本身的拟合能力;
 方差
 度量了同样大小训练集的变动所导致的学习性能的变化;
 即刻画了数据扰动所造成的影响;
 噪声
 表达了在当前任务上任何学习算法所能达到的期望泛化误
差的下界;
 即刻画了学习问题本身的难度。
泛化性能是由学习算法的能力、数据的充分性以及学习任
务本身的难度共同决定
偏差与方差困境
 在训练不足时,学习器拟合能力
不强,训练数据的扰动不足以使
学习器的拟合能力产生显著变化,
此时偏差主导泛化错误率;
 随着训练程度加深,学习器拟合
能力逐渐增强,方差逐渐主导泛
化错误率;
 训练充足后,学习器的拟合能力
非常强,训练数据的轻微扰动都
会导致学习器的显著变化,若训
练数据自身非全局特性被学到则
会发生过拟合。
参考资料
 周志华《机器学习》
 Deisenroth et al: Mathematics for Machine Learning
 Goodfellow: Deep Learning, MIT Press
 Nielsen: neuralnetworksanddeeplearning.com
 Zhang et al: Dive into Deep Learning, & resources @ d2l.ai
 Epelbaum: Deep learing technical introduction, arxiv
 Ng: CS229 of Stanford
 Zeiler: PhD Thesis, New York University
 Silver: Deep reinforcement learning tutorial
 SRI International: Machine Learning Overview
 UIUC Liu slides
 Kowalczyk – SVM-tutorial (svm-tutorial.com)
 Vishal Maini: Machine Learning for Humans (https://medium.com/machine-
learning-for-humans)
 Vahid Kazemi: Effective Tensorflow
(https://github.com/vahidk/EffectiveTensorflow?utm_source=mybridge&utm_mediu
m=blog&utm_campaign=read_more)
 Smola & Li: http://d2l.ai/ & https://courses.d2l.ai/berkeley-stat-
157/index.html
Thank You
Q&A

fengxu@fudan.edu.cn
http://homepage.fudan.edu.cn/fengxu/

You might also like