第四讲:学习理论(Learning Theory)

1 偏差/方差的权衡(Bias/variance tradeoff )

在讲线性回归的时候,我们讨论过这样的问题:拟合数据的时候,选择线性的“ y = θ 0 + θ 1 x y = \theta_0 +\theta_1x y=θ0+θ1x”这样的“简单”模型,还是选择多项式的“ y = θ 0 + θ 1 x + . . . + θ 5 x 5 y= \theta_0 + \theta_1x+ ...+\theta_5x^5 y=θ0+θ1x+...+θ5x5”这种“复杂”模型。如下图所示:

图 1.1 “简单”模型与“复杂”模型拟合

如最右侧图所示,用一个五次多项式来进行拟合,得到的并不是一个好模型。而且,这个五次多项式对于训练集中的每一个 x x x(例如之前文中说的居住面积)都给出了非常好的预测的 y y y 值(对应的就是房屋价格),我们也不能指望这个模型能够对训练集之外的点给出靠谱的预测。换句话说,用这种高次多项式来对训练集进行学习得到的模型根本不能扩展运用到其他房屋上面去。一个推测模型(hypothesis)的泛化误差(generalization error,稍后再给出正式定义)正是那些不属于训练集的样本潜在的预期偏差(expected error on examples not necessarily in the training set)。

上面图中最左边的线性拟合和最右边的高次多项式拟合都有非常大的泛化误差。然而,这两个模型各自出的问题是很不一样的。如果 y 和 x 之间的关系不是线性的,那么即便我们有一个非常大规模的训练集,然后用来进行线性拟合,得到的线性模型都还是不能够准确捕捉到数据的结构。我们粗略地将一个模型的偏差(bias)定义为预期的泛化误差(expected generalization error),即便我们要去拟合的对象是一个非常大的甚至是无限的训练数据集。这样的话,对于上面三幅图中所展示的那个情况来看,最左边的那个线性模型就具有特别大的偏差(bias),可能是对数据欠拟合(也就是说,没有捕捉到数据所体现的结构特征)。

除了这个偏差(bias)之外,还有另外一个构成泛化误差(generalization error)的因素,也就是模型拟合过程的方差(variance)。例如在最右边的图中,使用了五次多项式进行了拟合,这样有很大的风险,很可能我们基于数据拟合出来的模型可能碰巧只适合于眼下这个小规模的有限的训练集,而并不能反映 x x x y y y 之间更广泛的关系。例如,在实际中,可能我们选择的训练集中的房屋碰巧就是一些比平均价格要稍微贵一些的房屋,也可能有另外的一些比平均值要低一点的房屋,等等。通过对训练集拟合得到的这个“不太靠谱的(spurious)”的模式,我们得到的可能也就是一个有很大泛化误差(large generalization error)的模型。这样的话,我们就说这个模型的方差很大(large variance)。

1在讲义里面,我们不准备给出对偏差(bias)和方差(variance)给出正式的定义,也就说道上面讨论这样的程度而已。当然了,这两者都有严格的正式定义,例如在线性回归里面,对于这两者的定义,有若干不同的观点,但是哪一个最权威最正确(right)呢?这个还有争议的。

通常情况下,咱们需要在偏差(bias)和方差(variance)之间进行权衡妥协。如果我们的模型过于“简单(simple)”,而且参数非常少,那这样就可能会有很大的偏差(bias),而方差(variance)可能就很小;如果我们的模型过于“复杂(complex)”,有非常多的参数,那就可能反过来又特别大的方差(variance),而偏差(bias)就会小一些。在上面三种不同拟合的样例中,用二次函数来进行拟合得到的效果,明显是胜过一次线性拟合,也强于五次多项式拟合。

2 预先准备(Preliminaries)

在这一部分的讲义中,我们要开始进入到机器学习的理论(learning theory)了。本章内容非常有趣,而且有启发性,还能帮助我们培养直觉,能够得到在不同背景下如何最佳应用学习算法的经验规则。此外,我们还会探究一些问题:首先,上文我们刚刚谈论到的偏差(bias)/方差(variance),能不能更正规地总结一下?这个问题还会引出关于模型选择的方法,这些方法可以在对一个训练集进行拟合的时候来帮助确定要用的多项式应该是几阶的。其次,在机器学习的过程中,我们真正关注的也就是泛化误差(generalization error),不过绝大部分的学习算法都是将训练集和模型结合的。那么针对训练集的表现好坏程度,为何就能告诉我们泛化误差的信息呢?例如,我们能将训练集的误差和泛化误差联系起来么?第三个,也是最后一点,是否存在某些条件,我们能否在这些条件下证明某些学习算法能够良好工作?

我们先来给出两个很简单又很有用的引理(lemma)。

引理1 (联合约束,The union bound)。设 A 1 , A 2 , . . . , A k A_1, A_2, ..., A_k A1,A2,...,Ak 是 K个不同事件(但不一定互相独立),则有:

P ( A 1 ∪ . . . ∪ A K ) ≤ P ( A 1 ) + . . . + P ( A k ) P(A_1\cup...\cup A_K)\leq P(A_1)+...+P(A_k) P(A1...AK)P(A1)+...+P(Ak)

在概率论中,联合约束通常被当做是公理(所以我们就不尝试证明了),实际上也很直观的: k 个事件同时发生的概率最多是 k 个不同的事件每个都发生的概率的总和。

引理2 (Hoeffding 不等式) 。设 Z 1 , . . . , Z m Z_1,...,Z_m Z1,...,Zm m m m 个独立的并且共同遵循伯努利分布(Bernoulli( ϕ \phi ϕ) distribution)的随机变量(independent and identically distributed (iid) random variables)。例如: P ( Z i = 1 ) = ϕ P(Z_i =1)=\phi P(Zi=1)=ϕ P ( Z i = 0 ) = 1 − ϕ P(Z_i =0)= 1 - \phi P(Zi=0)=1ϕ. 设 ϕ ^ = ( 1 m ) ∑ i = 1 m Z i \hat\phi=(\frac1m)\sum^m_{i=1}Z_i ϕ^=(m1)i=1mZi 是这些随机变量的平均值,然后设任意的 γ ≥ 0 \gamma \geq 0 γ0 为某一固定值(fixed),则有:

P ( ∣ ϕ − ϕ ^ ∣ > γ ) ≤ 2 exp ⁡ ( − 2 γ 2 m ) P(|\phi-\hat\phi|>\gamma)\leq 2\exp (-2\gamma^2m) P(ϕϕ^>γ)2exp(2γ2m)

上面这个引理(在机器学习理论里面也称为 切尔诺夫约束,Chernoff bound)表明,如果我们我们从一个伯努利分布的随机变量中选取平均值 ϕ ^ \hat\phi ϕ^ 来作为对 ϕ \phi ϕ 的估计值,那么只要 m 足够大,我们偏移真实值很远的概率就比较小。另外一种表述方式是:如果你有一个有偏差的硬币(biased coin),抛起来落下人头朝上的概率是 ϕ \phi ϕ,如果你抛了 m m m 次,然后计算人头朝上的比例,若 m m m 非常大,那么这个比例的值,就是一个对 ϕ \phi ϕ 的一个概率很高的很好的估计。

基于上面这两个引理,我们就可以去证明在机器学习理论中一些很深刻和重要的结论了。

为了简化表述,我们先集中关注一下二分法分类,其中的标签简化为 y ∈ {0, 1}。然后我们即将讲到的所有内容也都会推广到其它问题中,例如回归问题以及多类别的分类问题等等。

假设我们有一个给定的训练集 S = { ( x ( i ) , y ( i ) ) ; i = 1 , . . . , m } S = \{(x_{(i)},y_{(i)});i = 1,...,m\} S={ (x(i),y(i));i=1,...,m},其样本规模为 m m m,集合中的训练样本 ( x ( i ) , y ( i ) ) (x_{(i)},y_{(i)}) (x(i),y(i)) 是可以符合某概率分布 D 来的独立且同分布的随机变量。设一个假设(hypothesis)为 h h h,我们则用如下的方法定义训练误差(也成为学习理论中的经验风险 empirical risk 或者经验误差 empirical error):

ε ^ ( h ) = 1 m ∑ i = 1 m 1 { h ( x ( i ) ) ≠ y ( i ) } \hat\varepsilon(h) =\frac1m\sum^m_{i=1}1\{h(x^{(i)})\neq y^{(i)}\} ε^(h)=m1i=1m1{ h(x(i))̸=y(i)}

这个值只是假设模型 h h h 分类错误样本占据训练样本总数的分数。如果我们要特定指针对某个训练样本集合 S 的经验误差 ε ^ ( h ) \hat\varepsilon(h) ε^(h),可以写作 ε ^ S ( h ) \hat\varepsilon_S(h) ε^S(h)。然后我们就可以定义泛化误差(generalization error)为:

ε ( h ) = P x , y ∼ D h ( x ) ≠ y \varepsilon(h) =P_{x,y}\sim D{h(x)\neq y} ε(h)=Px,yDh(x)̸=y

经验误差 ε ^ ( h ) \hat\varepsilon(h) ε^(h) 的这个定义实际上也就相当于,基于分布 D 给出的一个新的样本 (x, y) ,假设模型 h h h 对该样本分类错误的概率。

要注意,这里我们有一个预先假设,也就是训练集的数据与要用来检验假设用的数据都服从同一个分布 D(这一假设存在于对泛化误差的定义中)。这个假设通常也被认为是 PAC 假设之一。 2 ^2 2

2 PAC 是一个缩写,原型为“probably approximately correct”,这是一个框架和一系列假设的集合,在机器学习理论中的很多结构都是基于这些假设而证明得到的。这个系列假设中最重要的两个,就是训练集与测试集服从同一分布,以及训练样本的独立性

考虑线性分类的情况,假设 h θ ( x ) = 1 { θ T x ≥ 0 } h_\theta (x) = 1\{\theta^T x \geq 0\} hθ(x)=1{ θTx0}。拟合参数 θ \theta θ 的合理方法是什么呢?一个思路就是可以使训练误差(training error)最小化,然后选择取最小值的时候的 θ \theta θ

θ ^ = arg ⁡ min ⁡ θ ε ^ ( h θ ) \hat\theta =\arg\min_{\theta}\hat\varepsilon(h_\theta) θ^=argθminε^(hθ)

我们把上面这个过程称之为经验风险最小化(empirical risk minimization,缩写为 ERM),而这种情况下通过学习算法得到的假设结果就是 h ^ = h θ ^ \hat h = h_{\hat\theta} h^=hθ^</

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值