机器学习

127 阅读25分钟

在设计和分析从示例中学习的算法时,会出现几个基本问题:什么可以有效地学习?什么是天生难学的?成功学习需要多少个例子?有没有一个通用的学习模型?在本章中,我们将通过介绍可能近似正确的(PAC)学习框架,开始形式化并解决这些问题。PAC框架有助于根据实现近似解所需的样本点数量、样本复杂度、学习算法的时间和空间复杂度(取决于概念的计算表示成本)来定义可学习概念的类别。

我们首先描述了PAC框架并对其进行了说明,然后在假设集有限的情况下,给出了该框架内的一些一般学习保证,无论是在假设集包含要学习的概念的一致情况下,还是在相反的不一致情况下。


我们首先介绍几个定义和表示PAC模型所需的符号,本书的大部分内容也将使用这些定义和符号。
我们用XX表示所有可能的例子或实例的集合。X有时也称为输入空间。所有可能的标签或目标值的集合用Y表示。在本介绍性章节中,我们将把自己限制在YY被简化为两个标签的情况下,Y={0,1}Y=\{0,1\},即所谓的二元分类。后面的章节将把这些结果扩展到更一般的设置。
概念c:XYc:X→ Y是从XXYY的映射。由于Y={0,1}Y = \{0,1\},我们可以用取值为11党的XX的子集来识别cc。因此,在接下来中,我们等价的将要学习的概念称为从XX{0,1}\{0,1\}XX的子集的映射。例如,概念可以是三角形内点的集合或这些点的指示函数。在这种情况下,我们将简而言之,学习的概念是一个三角形。概念类是我们希望学习的一组概念,用C表示。例如,这可以是平面中所有三角形的集合。
我们假设样本根据某个固定但未知的分布DD独立且同分布(i.i.d.)。然后,学习问题的表述如下。
学习者考虑一组固定的可能概念HH,称为假设集,它可能与CC不一致。它收到一个样本S=x1,...,xmS=(x_1,...,x_m)绘制的i.i.d.i.i.d.根据DD以及标签(c(x1),...,c(xm))(c(x_1),...,c(x_m)),这些标签基于特定的目标概念cCc∈C来学习。
它的工作是使用被标记的样本 SS 来选择一个对于概念 cc 具有小的泛化误差的假设 hS  Hh_S ∈ H。假设 h  Hh ∈ H 的泛化误差也称为hh 的真实误差或误差,由 R(h)R(h) 表示,定义如下。

定义2.1 泛化误差

给定假设 h  Hh ∈ H、目标概念 c  Cc ∈ C 和底层分布 DDhh 的泛化误差或风险定义为

R(h)=PrxD[h(x)c(x)]=ExD[1h(x)c(x)],(2.1)R(h)=\underset {x\sim D}{Pr}[h(x)\neq c(x)]=\underset {x\sim D}{E}[1_{h(x)\neq c(x)}],(2.1)
  • 其中1ω1_ω是事件 ω 的指示函数。
    由于分布DD和目标概念cc都未知,学习者无法直接获得假设的推广错误。然而,学习者可以测量标记样本上假设的经验误差。

定义2.2 经验误差

假设hHh∈ H、 目标概念cCc∈C和样本S=x1xmS=(x_1,…,x_m)hh的经验误差或经验风险定义如下:

R^(h)=1mi=1m1h(xi)c(xi).(2.2)\widehat R(h)=\frac {1}{m}\sum_{i=1}^m1_{h(x_i)\neq c(x_i)}.(2.2)

因此,h ∈ H 的经验误差是它在样本 S  S 上的平均误差,而泛化误差是它基于分布 D  D 的预期误差。 我们将在本章和后续章节中看到这两个量的多项担保有很高的可能性,在一些一般假设下。我们已经注意到,对于固定的 h  Hh ∈ H,基于 i.i.d. 的样本S经验误差的期望等同于泛化误差。

E[R^(h)]=R(h).(2.3)E[\widehat R(h)]=R(h).(2.3)

事实上,根据期望的线性性质和样本由独立同分布采样的性质,我们可以写出

ESDm[R^(h)]=1mi=1mESDm[1h(xi)c(xi)]=1mi=1mESDm[1h(x)c(x)],\underset {S\sim D^m}{E}[\widehat R(h)]=\frac {1}{m}\sum_{i=1}^m\underset {S\sim D^m}{E}[1_{h(x_i)\neq c(x_i)}]=\frac {1}{m}\sum_{i=1}^m\underset {S\sim D^m}{E}[1_{h(x)\neq c(x)}],

对于样本SS中的任何xx。因此,

ESDm[R^(h)]=ESDm[1{h(x)c(x)}]=ExD[1{h(x)c(x)}]=R(h).\underset {S\sim D^m}{E}[\widehat R(h)]=\underset {S\sim D^m}{E}[1_{\{h(x)\neq c(x)\}}]=\underset {x\sim D}{E}[1_{\{h(x)\neq c(x)\}}]=R(h).

下面介绍了可能近似正确(PAC)的学习框架.我们用O(n)O(n)来表示任意元素xXx\in X的关于计算表示的成本的一个上限,用大小(c)(c)表示cCc\in C的计算的最大成本。例如,XX可能是Rn\R^n中的向量,对于它,基于数组的表示的成本将是O(n)O(n)

定义2.3 PAC学习

一个概念CC被认为是PAC可学习的,如果存在算法AA和多项式函数poly....poly(.,.,.,.)使得对任何ϵ>0,δ>0\epsilon > 0,\delta > 0,对于XX上的所有分布DD和任何目标概念cCc\in C,以下适用于任何样本大小mpoly(1/ϵ,1/δ,n,size(c))m\geq poly(1/\epsilon,1/\delta,n,size(c)):

PrSDm[R(hs)ϵ]1δ.\underset {S\sim D^m}{Pr}[R(h_s)\leq \epsilon]\geq1-\delta.

如果A进一步在poly(1/ϵ,1/δ,n,size(c))poly(1/\epsilon,1/\delta,n,size(c))中运行,则CC被认为是有效的 PAC 可学习的。当这样的算法AA存在时,它被称为CCPAC 学习算法。
因此,如果算法在观察1/ϵ1/\epsilon1/δ1/\delta中的多项式后返回的假设是以高概率(至少1δ1-\delta)近似正确(误差最大为 ϵ\epsilon)的,则概率类C是PAC可学习的,这证明了PAC术语的合理性。δ>0\delta >0用于定义置信度1δ1-\delta。注意,如果算法的运行时间是1/ϵ1/\epsilon1/δ1/\delta的多项式,那么如果算法接收到完整样本,则样本大小m也必须是多项式。

PAC 定义的几个关键点值得强调。首先,PAC 框架是一个无分布模型没有对从中抽取样本的分布 DD 做出特定假设。其次,用于定义误差的训练样本和测试样本是根据相同的分布 DD 绘制的。这是在大多数情况下泛化成为可能的必要假设。

2.1.PNG
图片2.1 目标概念 RR 和可能的假设 RR'。圆圈代表训练实例。蓝色圆圈是标记为 11 的点,因为它位于矩形 RR 内。其他为红色并标记为 00
最后,PAC 框架处理概念类CC的可学习性问题而不是一个特定的概念。请注意,概念类CC是算法已知的,但当然目标概念cCc\in C是未知的。
在许多情况下,特别是当概念的计算表示没有明确讨论或者很简单时,我们可能会在 PAC 的定义中省略对nnsizecsize(c)的多项式依赖,而只关注样本复杂度。

我们现在用一个特定的学习问题来说明 PAC 学习。

示例2.1 学习轴对齐的矩形

考虑实例集是在平面中的点的情况,X=R2X=\R^2,概念集CC是位于X=R2X=\R^2中的所有轴对齐矩形的集合。因此,每个概念cc是特定轴对齐矩形内的一组点。学习问题包括使用标记的训练样本以较小的误差确定目标轴对齐的矩形。我们将证明轴对齐矩形的概念类是 PAC 可学习的。

图 2.1 说明了这个问题。 RR 表示目标轴对齐矩形,RR' 表示假设。从图中可以看出,RR'的误差区域由在矩形RR内但在矩形RR'外的区域和矩形RR'内但是在矩形RR外的区域构成。第一个区域对应于漏报,即,被RR'标记为00或负的点,实际上是正的或被标记为11的点。第二个区域对应于误报,即被RR'标记为正但实际上被标记为负的点。
为了表明概念类是 PAC 可学习的,我们描述了一个简单的 PAC 学习算法 AA。给定一个标记样本 SS,该算法包括返回最紧密的轴对齐矩形 R = RSR' = R_S,其中包含标记为 11 的点。图2.2 说明了算法返回的假设。根据定义,RSR_S 不会产生任何误报,因为它的点必须包含在目标概念 RR 中。 因此,RSR_S 的误差区域包含在 RR 中。

2.2.PNG
图片2.2 算法返回的假设R=RsR'=R_s的图示 令RCR\in C为目标概念。固定ϵ>0\epsilon>0 .令Pr[Rs]Pr[R_s]表示RsR_s定义的区域的概率,即根据 DD 随机抽取的点落在 RSR_S 内的概率。由于我们的算法产生的误差只因落入 RSR_S 内的点,我们可以假设 Pr[RS] > ϵPr[R_S] > \epsilon;否则,无论接收到何种训练样本 SSRSR_S 的误差均小于或等于 ϵ\epsilon
现在,由于 Pr[RS] > ϵPr[R_S] > \epsilon,我们可以沿着 RSR_S 的边定义四个矩形区域 r1r_1r2r_2r3r_3 和 r4r_4,每个区域的概率至少为 ϵ/4\epsilon/4。这些区域可以通过沿边的空矩形开始并增加其大小直到其分布质量至少为 ϵ/4\epsilon/4 来构建。图 2.3 说明了这些区域的定义。
观察,如果 RSR_S 满足所有这四个区域,那么,因为它是一个矩形,它将在这四个区域中的每一个中都有一个边(几何参数)。它的误差区域,即它没有覆盖的 RR 部分,因此包含在这些区域中,并且概率质量不能超过 ϵ\epsilon。相反,如果 R(RS) > ϵ\mathcal R(R_S) > \epsilon,则 RSR_S 必须至少遗漏区域 ri , i  [1, 4] r_i , i ∈ [1, 4] 之一。结果,我们可以写

PrSDm[R(Rs)>ϵ]PrSDm[i=14{Rsri=}]i=14PrSDm[{Rsri=}]4(1ϵ/4)m(由于Pr[ri]>ϵ/4)4exp(mϵ/4),\begin{aligned} \underset {S\sim D^m}{Pr}[\mathcal R (R_s)>\epsilon ]& \leq\underset {S\sim D^m}{Pr}[\cup_{i=1}^4\{R_s\cap r_i=\emptyset\}] \\ & \leq\sum_{i=1}^4\underset {S\sim D^m}{Pr}[\{R_s\cap r_i=\emptyset\}] \\ & \leq4(1-\epsilon/4)^m \quad\quad\quad\quad\quad\quad\quad\quad(由于 Pr[r_i]>\epsilon/4)\\ & \leq4exp(-m\epsilon/4), \end{aligned}

对于最后一步,我们使用了对所有 x  Rx ∈ \R 都有效的一般恒等式 1  x  ex1 − x ≤ e^{−x}。对于任何 δ > 0δ > 0,为了确保 PrSDm [R(RS) > ϵ]  δ\underset {S∼D^m}{Pr} [\mathcal R(R_S) > \epsilon] ≤ δ,我们可以强加

4exp(ϵm/4)δm4ϵlog4δ.(2.6)4exp(-\epsilon m/4)\leq δ \Leftrightarrow m\ge\frac{4}{\epsilon}log\frac{4}{δ}.(2.6)

因此,对于任何ϵ>0\epsilon>0δ>0δ>0,如果样本量 mm 大于 4ϵlog4δ\frac{4}{\epsilon}log\frac{4}{δ} ,则PrSDm [R(RS) > ϵ]1δPr_{S∼D^m} [\mathcal R(R_S) > \epsilon]\leq 1-δ。此外,在R2\R^2和轴对齐的矩形中表示点的计算成本(可由其四个角定义)是恒定的。这证明了轴对齐矩形的概念类是PAC可学习的,并且PAC学习轴对齐矩形的样本复杂度为O(1ϵlog1δ)O(\frac{1}{\epsilon}log\frac{1}{δ}).

呈现样本复杂度结果如(2.6)(我们在本书中经常会看到)的等效方法是给出泛化界限。它指出,在概率至少为 1  δ1 − δ 的情况下,R(RS)\mathcal R(R_S) 的上限取决于某个数量,这个数量取决于样本大小 mm 和 δδ 。为了获得这一点,如果足以将 δδ 设置为等于 (2.5) 中导出的上限,即 δ = 4 exp(mϵ/4)δ = 4 exp(-m\epsilon /4) 并求解 ϵ\epsilon。这导致概率至少为 1  δ1 − δ,算法的误差被限制为:

R(Rs)4mlog4δ.(2.7)\mathcal R(R_s)\leq\frac{4}{m}log\frac{4}{δ}.(2.7)

对于这个例子,可以考虑其他 PAC 学习算法。例如,一种选择是返回不包含负点的最大轴对齐矩形。刚刚针对最紧密的轴对齐矩形提出的 PAC 学习证明可以很容易地适用于其他此类算法的分析。
请注意,我们在此示例中考虑的假设集 H 与概念类 C 重合,并且其基数是无限的。尽管如此,这个问题还是承认了 PAC 学习的一个简单证明。然后我们可能会问,类似的证明是否可以很容易地应用于其他类似的概念类。这并不那么简单,因为证明中使用的特定几何参数是关键。将证明扩展到其他概念类(如非同心圆的概念类)并非易事(参见练习 2.4)。因此,我们需要更通用的证明技术和更通用的结果。接下来的两节为我们提供了在有限假设集的情况下的此类工具。

2.2 有限假设集的保证 —— 一致情况

在我们检查的轴对齐矩形的例子中,算法返回的假设 hSh_S 总是一致的,即它在训练样本 SS 上不承认错误。 在本节中,我们提出了一个通用的样本复杂度界限,或等效地,一个泛化界,对于一致的假设,在基数H|H|的情况下的假设集是有限的。由于我们考虑一致的假设,我们将假设目标概念 cc 在 HH 中。

定理2.1学习边界——有限H,一致情况

设 HH 是从 XX 到 YY 映射的有限函数集。设 AA 是一个算法,对于任何目标概念 c  Hc ∈ H 和 i.i.d.样本 SS 返回一个一致的假设 hS :R^(hS) = 0h_S :\widehat R(h_S) = 0。那么,对于任何 ϵ,δ > 0\epsilon,δ > 0,不等式 PrSDm[R(hS)  ϵ]  1δ\underset {S∼D_m}{Pr}[R(h_S) ≤ \epsilon] ≥ 1−δ 成立,如果

m1ϵ(logH+log1δ).(2.8)m\ge\frac{1}{\epsilon}\bigg(log|H|+log\frac{1}{δ}\bigg).(2.8)

该样本复杂度结果允许以下等效陈述作为泛化界:对于任何 ϵδ > 0\epsilon,δ > 0,概率至少为 1 − δ,

R(hs)1m(logH+log1δ).(2.9)R(h_s)\leq \frac{1}{m}\bigg(log|H|+log\frac{1}{δ}\bigg).(2.9)

证明 固定一个ϵ>0\epsilon>0,我们不知道算法A选择了哪个一致假设hS  Hh_S ∈ H。这个假设进一步依赖于训练样本SS。因此,我们需要给出一个一致的收敛界,即对所有一致假设的集合成立,其中更重要的是包括 hSh_S。因此,我们将限制某些 h  Hh ∈ H 一致且误差大于 ϵ\epsilon 的概率:

Pr[hH:R^(h)=0R(h)>ϵ]=Pr[(h1H,R^(h1)=0R(h1)>ϵ)(h2H,R^(h2)=0R(h2)>ϵ)...]hHPr[R^(h)=0R(h)>ϵ](联合约束)hHPr[R^(h)=0R(h)>ϵ](条件概率的定义)\begin{aligned} & \quad Pr[\exists h\in H:\widehat R(h)=0\land R(h)>\epsilon]\\ &=Pr[(h_1\in H,\widehat R(h_1)=0\land R(h_1)>\epsilon)\lor (h_2\in H,\widehat R(h_2)=0\land R(h_2)>\epsilon)\lor ...]\\ &\le \sum_{h\in H}Pr[\widehat R(h)=0\land R(h)>\epsilon] \quad\quad\quad\quad\quad\quad(联合约束)\\ &\le \sum_{h\in H}Pr[\widehat R(h)=0 | R(h)>\epsilon]\quad\quad\quad\quad\quad\quad\quad(条件概率的定义) \end{aligned}

现在,考虑任何假设hHh\in H,其中R(h)>ϵR(h)>\epsilon.然后,hh的概率在以i.i.d.绘制的训练样本SS上一致,即它在SS中的任何点都没有误差,可以定义界限为:

Pr[R^(h)=0R(h)>ϵ](1ϵ)m.Pr[\widehat R(h)=0|R(h)>\epsilon]\le(1-\epsilon)^m.

前面的不等式意味着

Pr[hH:R^(h)=0R(h)>ϵ]H(1ϵ)m.Pr[\exists h\in H:\widehat R(h)=0\land R(h)>\epsilon]\le |H|(1-\epsilon)^m.
  • 将右侧设置为等于 δ 并求解 ε 得出证明。

该定理表明,当假设集 HH 有限时,一致算法 AA 是 PAC 学习算法,因为(2.8)给出的样本复杂度由 1/ϵ1/\epsilon 和 1/δ1/δ 中的多项式支配。如(2.9)所示,一致假设的泛化误差的上限是以样本大小 mm 的函数而减小的项。这是一个普遍的事实:正如预期的那样,学习算法受益于更大的标记训练样本。然而,由该定理保证的 O(1/m)O(1/m) 的下降率是特别有利的。
提出一致算法的代价是使用包含目标概念的更大的假设集 HH。当然,上限(2.9)随着H|H|而增加。然而,这种依赖性只是对数的。请注意术语 log Hlog |H|,或相关术语 log2 Hlog_2 |H|与它相差一个常数因子,可以解释为表示 HH 所需的位数。因此,该定理的泛化保证由该位数的比、log2 Hlog_2 |H| 和样本大小mm控制。

示例2.2布尔文字的连接

考虑学习最多nn个布尔文字x1xnx_1,…,x_n的连接的概念类CnC_n.布尔文字是变量xix_ii[1n]i∈ [1,n],或其否定xi\overline x_i。对于n=4n=4,一个例子是合取:x1x2x4x_1∧ \overline x_2∧ x_4,其中x2\overline x_2表示布尔文字x2x_2的否定。(1,0,0,1)(1,0,0,1)是这个概念的正面例子,而(1,0,0,0)(1,0,0,0)是负面例子。

请注意,对于 n = 4n = 4,正例 (1,0,1,0)(1,0,1,0) 意味着目标概念不能包含文字 x1\overline x_1 和 x3\overline x_3,也不能包含文字 x2x2 和 x4x4。相比之下,一个反面例子没有那么丰富,因为它不知道它的 nn 位中的哪一个是不正确的。因此,一个用于寻找一致假设的简单算法基于正例,包括以下内容:对于每个正例 (b1,...,bn)(b_1,...,b_n) 和 i  [1,n]i ∈ [1,n],如果 bi = 1b_i = 1 则 xi\overline x_i 被排除作为概念类中可能的文字,如果 bi = 0b_i = 0,则排除 xix_i。因此,未排除的所有文字的合取是与目标一致的假设。图 2.4 显示了示例训练样本以及 n = 6 n = 6 情况下的一致假设。

我们有 H = Cn = 3n|H| = |Cn| = 3^n,因为每个文字都可以肯定包含,否定包含或不包含。将其插入到一致假设的样本复杂度界限中,对于任何 ϵ> 0\epsilon > 0δ>0 δ > 0 产生以下样本复杂度界限:

m1ϵ((log3)n+log1δ).(2.10)m\ge\frac{1}{\epsilon}\big((log3)n+log\frac{1}{δ}\big).(2.10)

因此,最多 nn 个布尔文字的连接类是 PAC 可学习的。请注意,计算复杂度也是多项式的,因为每个示例的训练成本为 O(n)O(n)。对于 δ = 0.02δ = 0.02ϵ = 0.1\epsilon = 0.1 和 n = 10n = 10,界限变为 m  149m ≥ 149。因此,对于至少有 149149 个样本的标记样本,界限保证 99%99\% 的准确度和至少 98%98\% 的置信度。

2.4.PNG
图片2.4 表格的前六行中的每一行都代表一个训练示例,其标签 ++ 或 - 在最后一列中指示。如果所有正例的第 ii 个条目为 00(或者 11),则最后一行在列 i  [1, 6]i ∈ [1, 6] 中包含 00(或者 11)。如果 00 和 11 都作为某个正面示例的第 ii 个条目出现,那么它包含 '' ''。因此,对于这个训练样本,文中描述的一致性算法返回的假设是 x1 x2 x5 x6 \overline x_1 ∧x_2 ∧x_5 ∧x_6

示例 2.3 通用概念类

考虑具有 nn 个分量的所有布尔向量的集合 X = {0, 1}nX = \{0, 1\}^n,并让 UnU_n 是由 XX 的所有子集形成的概念类。这个概念课是 PAC 可学习的吗?为了保证一致的假设,假设类必须包括概念类,因此 H  Un = 2(2n)|H| ≥ |U_n| = 2^{(2^n)}。定理 2.1 给出了以下样本复杂度界限:

m1ϵ((log2)2n+log1δ).(2.11)m\ge\frac{1}{\epsilon}\big((log2)2^n+log\frac{1}{δ}\big).(2.11)

这里,所需的训练样本数量是 nn 的指数,这是 XX 中点的表示的成本。因此,PAC 学习不能由定理保证。事实上,不难证明这个通用概念类不是 PAC 可学习的。

示例 2.4 k项DNF公式

析取范式(DNF)公式是几个项的析取的公式,每个项都是布尔文字的合取。kk项DNF是由kk项的析取定义的DNF公式,每个项最多由nn个布尔文字组成。因此,对于k2k=2n3n=3,k项DNF的示例为(x1x2x3)(x1x3)(x_1∧ \overline x_2∧ x_3)∨ (\overline x_1∧ x_3)
kk项DNF公式的CC类是PAC可学习的吗?类的基数是3nk3^{nk}的基数,因为每个项是至多nn个变量的合取,并且有3n3^n个这样的合取,如前面所见。假设集HH必须包含CC才能实现一致性,因此H3nk| H |≥ 3^{nk}。定理2.1给出了以下样本复杂性界:

m1ϵ((log3)nk+log1δ),(2.12)m\ge\frac{1}{\epsilon}\big((log3)nk+log\frac{1}{δ}\big),(2.12)

这是多项式。然而,可以证明学习k项DNF的问题在RPRP中,RPRP是允许随机多项式时间决策解决方案的复杂问题类别。因此,除非RP=NPRP=NP,否则该问题在计算上是难以解决的,通常认为情况并非如此。因此,虽然学习k项DNF公式所需的样本大小只是多项式,但除非RP=NPRP=NP,否则此类PAC的有效学习是不可能的。

示例2.5 k-CNF公式

合取范式(CNF)公式是析取的合取。k-CNF公式是T1...TjT_1∧ ... ∧T_j 形式的表达式,具有任意长度的jNj∈ N,并且每个项都是至多k个布尔属性的析取。学习k-CNF公式的问题可以简化为学习布尔文字的连接的问题,如前所述,这是一个PAC可学习的概念类。为此,只需将每个项TiT_i与新变量关联即可。然后,这可以通过以下双射完成:

ai(xi)...ai(xn)Yai(xi),...,ai(xn),(2.13)a_i(x_i)∨...∨a_i(x_n)\rightarrow Y_{a_i(x_i),...,a_i(x_n)},(2.13)

式中,aixja_i(x_j)表示在TiT_i项中对xix_i的赋值。这种对布尔文字连接的PAC学习的简化可能会影响原始分布,但这不是问题,因为在PAC框架中,没有对分布进行任何假设。因此,布尔文字连接的PAC可学习性意味着k-CNF公式的PAC可学习性。
然而,这是一个令人惊讶的结果,因为任何k项DNF公式都可以写成k-CNF公式。实际上,使用结合性,可以通过以下方式将k项DNF重写为k-CNF公式:

i=1kai(xi)...ai(xn)=i1,...,ik=1na1(xi1)...ak(xik).\bigvee ^k_{i=1}a_i(x_i)\wedge...\wedge a_i(x_n)=\bigwedge ^n_{i_1,...,i_{k}=1}a_1(x_{i_1})\vee...\vee a_k(x_{i_k}).

为了在特定情况下说明这种重写,请观察,例如

(u1u2u3)(v1v2v3)=i,j=13(uivj)(u_1\wedge u_2\wedge u_3)\vee (v_1\wedge v_2\wedge v_3)=\bigvee ^3_{i,j=1}(u_i\vee v_j)

但是,正如我们之前看到的,k 项 DNF 公式不是有效的 PAC 可学习的!什么可以解释这种明显的不一致?观察到通过刚刚描述的转换将 k 项 DNF 写为 k-CNF 公式所需的新变量的数量在 k 中呈指数, O(nk)O(nk) 。差异来自概念表示的大小。 k 项 DNF 公式可以是指数级更紧凑的表示,如果需要该大小的时间复杂度多项式,则有效的 PAC 学习是难以处理的。因此,这个明显的悖论涉及 PAC 学习的关键方面,包括概念表示的成本和假设集的选择。

2.3 有限假设集的保证——不一致情形

在最一般的情况下,H 中可能没有与标记训练样本一致的假设。这实际上是实践中的典型案例,其中学习问题可能有些困难,或者概念类比学习算法使用的假设集更复杂。然而,在训练样本上具有少量错误的不一致假设可能是有用的,并且正如我们将看到的,可以从某些假设下的有利保证中受益。本节为这种不一致的情况和有限的假设集提供了学习保证。 为了在这种更一般的环境中获得学习保证,我们将使用 Hoeffding 不等式(定理 D.1)或以下推论,它涉及单个假设的泛化误差和经验误差。

推论2.1

固定 ϵ > 0\epsilon > 0 并让 SS 表示一个 i.i.d.大小为 mm 的样本。然后,对于任何假设 hX  {0,1}h:X → \{0,1\},以下不等式成立:

PrSDm[R^(h)R(h)ϵ]exp(2mϵ2)(2.14)PrSDm[R^(h)R(h)ϵ]exp(2mϵ2).(2.15)\begin{aligned} \underset {S\sim D^m}{Pr}[\widehat R(h)-R(h)\ge\epsilon]&\le exp(-2m\epsilon ^2)(2.14)\\ \underset {S\sim D^m}{Pr}[\widehat R(h)-R(h)\le -\epsilon]&\le exp(-2m\epsilon ^2).(2.15)\\ \end{aligned}

根据并集界限,这意味着以下两侧不等式:

PrSDm[R^(h)R(h)ϵ]2exp(2mϵ2).(2.16)\underset {S\sim D^m}{Pr}[\widehat R(h)-R(h)\ge\epsilon]\le 2exp(-2m\epsilon ^2).(2.16)

证明 结果紧跟定理D.1。 将 (2.16) 的右侧设置为等于 δδ 并求解 ϵ\epsilon 立即为单个假设产生以下界限。

推论 2.2 泛化界——单一假设

固定一个假设 hX  {0,1}h:X → \{0,1\}。然后,对于任何 δ > 0δ > 0,以下不等式成立的概率至少为 1  δ 1 − δ

R(h)R^(h)+log2δ2m.(2.17)R(h)\le \widehat R(h)+\sqrt{\frac{log\frac{2}{δ}}{2m}}.(2.17)

下面的例子在一个简单的例子中说明了这个推论。

示例2.6 抛硬币

想象一下,抛一枚有偏向的硬币,正面朝上的概率为 pp,让我们的假设成为总是猜测正面的那个。那么真实错误率是 R(h) = pR(h) = p 和经验错误率 R^(h)=p^\widehat R(h)=\widehat p,其中 p^\widehat p 是基于 i.i.d 抽取的训练样本的正面正面概率。因此,推论 2.2 以至少 1  δ1 − δ 的概率保证。

pp^log2δ2m.(2.18)|p-\widehat p|\le\sqrt{\frac{log\frac{2}{δ}}{2m}}.(2.18)

因此,如果我们选择 δ = 0.02 δ = 0.02 并使用大小为 500500 的样本,概率至少为 98%98\%,则 p^\widehat p 保证以下近似质量:

pp^log(10)10000.048.(2.19)|p-\widehat p|\le\sqrt{\frac{log(10)}{1000}}\approx 0.048.(2.19)

当在样本SS上进行训练时,我们是否能轻易地应用推论2.2来限制学习算法返回的假设hsh_s的泛化误差?不,因为 hsh_s 不是一个固定的假设,而是取决于所抽取的训练样本的随机变量。还要注意,与固定假设的情况不同,对于固定假设,经验误差的期望值是泛化误差(等式2.3),泛化误差RhSR(h_S)是一个随机变量,通常不同于期望值E[R^(hS)]E[\widehat R(h_S)],后者是一个常数。因此,正如在一致情况下的证明一样,我们需要导出一致收敛界,这是一个对所有假设hHh∈ H成立都具有很高概率的界。

定理2.2 学习界-有限H,不一致情形

HH 为有限假设集。然后,对于任何 δ>0δ>0 ,概率至少为 1δ1−δ 、 以下不等式成立:

hH,R(h)R^(r)+logH+log2δ2m.(2.20)\forall h\in H,R(h)\le \widehat R(r)+\sqrt {\frac{log|H|+log\frac{2}{δ}}{2m}}.(2.20)

证明h1hhh_1,…,h_{|h|}HH 的元素。使用联合边界并将推论2.2应用于每个假设得出:

Pr[hHR^(h)R(h)>ϵ]=Pr[(R^(h1)R(h1)>ϵ)...(R^(hH)R(hH)>ϵ)]hHPr[R^(h)R(h)>ϵ]2Hexp(2mϵ2).\begin{aligned} &Pr\Big[h\in H|\widehat R(h)-R(h)|>\epsilon \Big]\\ &=Pr\Big[(|\widehat R(h_1)-R(h_1)|>\epsilon)\vee...\vee (|\widehat R(h_{|H|})-R(h_{|H|})|>\epsilon)\Big]\\ &\le\sum_{h\in H}Pr[|\widehat R(h)-R(h)|>\epsilon]\\ &\le 2|H|exp(-2m\epsilon^2). \end{aligned}
  • 将右侧设置为等于δδ即完成验证
    因此,对于有限假设集 HH
R(h)R^(h)+O(log2Hm).R(h)\le\widehat R(h)+O\bigg(\sqrt\frac{log_2|H|}{m}\bigg).

如前所述,log2Hlog_2 | H |可以解释为表示 HH 所需的位数。这里可以做一些类似于在一致情况下对泛化边界所做的评论:更大的样本大小 mm 保证更好的泛化,并且边界随着 H|H| 增加而增加,但只是对数增加。但是,这里的界限是 log2 Hm\frac{log2 |H|}{m} 的一个不太有利的函数;它随该项的平方根而变化。这不是一个很小的代价:对于固定的 H|H|,要获得与一致情况相同的保证,需要二次更大的标记样本。

注意,界限表明在减少经验误差和控制假设集的大小之间寻求权衡:较大的假设集会受到第二项的惩罚,但可能有助于减少经验误差,即第一项。但是,对于类似的经验误差,它建议使用较小的假设集。这可以看作是以奥卡姆的神学家威廉命名的所谓奥卡姆剃刀原理的一个例子:多元性不应该在没有必要的情况下被假定,也可以重新表述为,最简单的解释是最好的。在这种情况下,它可以表示为:在所有其他条件相同的情况下,假设集越简单(越小)越好。

2.4 概论

在这一节中,我们将考虑与学习场景相关的几个重要问题,为了简单起见,我们省略了前面章节的讨论。

2.4.1 确定性情景与随机情景

在监督学习的最一般场景中,分布DD定义在X×YX×Y上,训练数据是一个根据DD以i.i.d.标记的样本SS:

S=((x1,y1)...(xm,ym)).S=((x_1,y_1),... ,(x_m,y_m)).

学习问题是找到一个泛化误差很小的假设 hHh∈ H

R(h)=Pr(x,y)D[h(x)y]=E(x,y)D[1h(x)y].R(h)=\underset {(x,y)\sim D}{Pr}[h(x)\neq y]=\underset {(x,y)\sim D}{E}[1_{h(x)\neq y}].

这种更一般的情况称为随机情况。在此设置中,输出标签是输入的概率函数。随机场景捕获了许多实际问题,其中输入点的标签不是唯一的。例如,如果我们试图根据一个人的身高和体重形成的输入对来预测性别,那么标签通常不会是唯一的。对于大多数配对,男性和女性都是可能的性别。对于每个固定对,都有一个标签为男性的概率分布。
PAC学习框架对这种设置的自然扩展被称为不可知的PAC学习。

定义2.4不可知PAC学习

设 HH 是一个假设集。 AA 是一个不可知的 PAC 学习算法,如果存在多项式函数 poly(,,,)poly(·,·,·,·) 使得对于任何 ϵ > 0\epsilon > 0 和 δ > 0δ > 0,对于 X × YX × Y 上的所有分布 DD,以下适用于任何样本大小 m  poly(1/ϵ, 1/δ, n, size(c))m ≥ poly(1/\epsilon, 1/δ, n, size(c))

PrSDm[R(hs)minhHR(h)ϵ]1δ.(2.21)\underset {S\sim D^m}{Pr}[R(h_s)-\underset {h\in H}{min}R(h)\le \epsilon]\ge1-δ.(2.21)

如果 A 进一步在 poly(1/ε, 1/δ, n, size(c)) 中运行,那么它被认为是一种高效的不可知 PAC 学习算法。

当一个点的标签可以由某个可测量的函数 f : X  Yf : X → Y(概率为 1)唯一确定时,则称该场景是确定性的。在这种情况下,考虑输入空间上的分布 DD 就足够了。训练样本是通过根据 DD 绘制 (x1, . . , xm)(x1, . . , xm) 获得的,并且通过 ff 获得标签: yi = f(xi)y_i = f(x_i) 对于所有 i  [1,m]i ∈ [1,m]。许多学习问题都可以在这种确定性场景中表述出来。
在前面的部分以及本书中介绍的大部分材料中,为了简单起见,我们将介绍限制在确定性场景中。然而,对于所有这些材料,对随机场景的扩展对读者来说应该是直截了当的。

2.4.2贝叶斯误差和噪声

在确定性情况下,根据定义,存在一个无泛化误差的目标函数f:R(h)=0。在随机情况下,任何假设都存在最小的非零误差

定义2.5贝叶斯误差

给定X×YX×Y上的分布DD,贝叶斯误差RR^∗定义为可测函数h:XYh:X→ Y所获得误差的下确界:

R=infhh可测量的R(h).(2.22)R^*=\underset {\underset{h 可测量的}{h}}{inf}R(h).(2.22)

R(h) = RR(h) = R^∗ 的假设 h 称为贝叶斯假设或贝叶斯分类器
根据定义,在确定性情况下,我们有 R = 0R^∗ = 0,但在随机情况下,R0R^*\neq 0 显然,贝叶斯分类器 hBayesh_{Bayes} 可以根据条件概率定义为:

xX,hBayes(x)=argmaxPry{0,1}[y][x].(2.23)\forall x\in X, h_{Bayes}(x)=\underset {y\in \{0,1\}}{argmaxPr}[y][x].(2.23)

hBayesh_{Bayes} 在 x  Xx ∈ X 上的平均误差是 minPr[0x], Pr[1x]min{Pr[0|x], Pr[1|x]},这是最小可能的误差。这导致噪声的以下定义。

定义2.6 噪声

给定 X × YX × Y 上的分布 DD,点 x  Xx ∈ X 处的噪声定义为

noise(x)=min{Pr[1x],Pr[0x]}.(2.24)noise(x)=min\{Pr[1|x],Pr[0|x]\}.(2.24)

平均噪声或与 DD 相关的噪声是 E[noise(x)]E[noise(x)]
因此,平均噪声正是贝叶斯误差:noise = E[noise(x)] = Rnoise = E[noise(x)] = R^*。噪音是学习任务的特征,表示其难度。一个点 x  Xx ∈ X,其噪声(x)(x)接近 1/21/2,有时被称为噪声,当然对准确预测来说是一个挑战。

2.4.3估计与近似误差

假设 h\inH 和贝叶斯错误之间的差额可以分解为:

R(h)R=(R(h)R(h))估计+R(h)R近似值,(2.25R(h)-R^*=\underbrace{(R(h)-R(h^*))}_{估计}+\underbrace{R(h^*)-R^*}_{近似值},(2.25)

其中hh^∗是H中错误最小的假说, 或一流的假说。

第二个术语称为近似误差,因为它测量了使用 H 来接近 Bayes 错误的程度。它是假设集H的属性,衡量其丰富性。近似误差无法访问,因为一般不了解基础分布 D。即使有各种噪声假设,估计近似误差也是很困难的。

第一个术语是估计误差,它取决于所选的假设。它衡量假说h的质量与一流的假说。不可知论 PAC 学习的定义也基于估计误差。算法 A 的估计误差,即假设hSh_S在对示例S进行训练后返回的估计误差,有时可以以概括误差为界。

例如,让hSERMh^{ERM}_S表示经验风险最小化算法返回的假设,即返回假说HSERMH^{ERM}_S的算法,其经验误差最小。然后,定理2.2或任何其他受suphHsup_{h∈H}定理所定的泛化约束R(h)R^(h)|R(h)-\hat{R}(h)|,可用于绑定经验风险最小化算法的估计误差。事实上,重写估计错误,使R^(hSERM)\hat{R}(h^{ERM}_S)出现,并使用R^(hSERM)R^(h)\hat{R}(h^{ERM}_S)\leq \hat{R}(h^∗),根据算法的定义,我们可以写

R(hSERM)R(h)=R(hSERM)R^(hSERM)+R^(hSERM)R(h)R(hSERM)R^(hSERM)+R^(h)R(h)2suphHR(h)R^(h)(2.26)\begin{aligned} R(h^{ERM}_S)-R(h^*) & =R(h^{ERM}_S)-\hat{R}(h^{ERM}_S)+\hat{R}(h^{ERM}_S)-R(h^*)\\ &\leq R(h^{ERM}_S)-\hat{R}(h^{ERM}_S)+\hat{R}(h^*)-R(h^*)\\ &\leq 2 \underset{h\in H}{sup}\mid R(h)-\hat{R}(h)\mid (2.26) \end{aligned}

3当H是一个有限的假设集合,hh^*一定存在,另外,在本假设中,hh^*可以被infhHR(h)inf_{h\in H} R(h)替代。

2.5.png 图片2.5 结构风险最小化的例证。三个错误的图示为容量测量函数。显然,随着假设集的规模或容量增加,培训误差会减少,而复杂术语会增加。SRM 选择假设,将概括误差的绑定降至最低,这是经验误差的总和,复杂性术语以红色显示。

(2.26) 的右侧受部分定理2.2的约束,并随着假设集的大小而增加,而R(hh^*)则随着H\mid H\mid而减少。

2.4.4 型号选择

在这里,我们根据前几个部分的理论结果,讨论一些广泛的模型选择和算法思想。我们假设 i.i.d. 标记的大小为m的训练样本S,并表示假设h由R^S(h)\hat{R}_S(h)的错误,以明确表明其对S的依赖性。

虽然定理2.2的保证只适用于有限的假设集,但它已经为算法的设计提供了一些有用的见解,正如我们将在接下来的几章中看到的,在无限假设集的情况下,类似的保证也适用。H\mid H\mid和样本大小 m这些结果邀请我们考虑两个术语:经验错误和复杂性术语.

有鉴于此,ERM 算法仅旨在最大限度地减少培训样本上的错误

hSERM=argminhHR^S(h),(2.27)h^{ERM}_S=\underset{h\in H}{argmin}\hat{R}_S(h),(2.27)

可能不成功, 因为它忽略了复杂性术语。事实上ERM算法的性能在实践中通常非常差。此外,在许多情况下,确定 ERM 解决方案在计算上是难以解决的。例如,在训练样本上找到错误最小的线性假说是 NP-hard(作为空间维度的函数)。

另一种称为结构风险最小化 (SRM) 的方法包括考虑具有增大尺寸的无限序列的假设集

H0H1Hn(2.28)H_0\subset H_1\subset \cdots\subset H_n\cdots(2.28)

并为每个HnH_n查找 ERM 解决方案 hnERMh^{ERM}_n。所选假设是hnERMh^{ERM}_n 解决方案中的一个,其经验误差的总和最小,复杂术语复杂性(Hnm)(H_n, m)取决于HnH_n的大小(或更笼统的容量,即衡量 H 的丰富程度的另一个指标)和样本大小m:

hSERM=argminhHnnNR^S(h)+complecity(Hn,m).(2.29)h^{ERM}_S=\underset{\underset{n\in \N}{h\in H_n}}{argmin}\hat{R}_S(h)+complecity(H_n,m).(2.29)

图 2.5 说明了 SRM方法。虽然 SRM 受益于强大的理论保证,但它通常计算成本非常昂贵,因为它需要确定多个 ERM 问题的解决方案。请注意,如果某些 n 的最低经验误差为零,则 ERM 问题的数量不是无限的:目标函数只能大于nnn^{'}\geq n