西瓜书读书笔记整理(十二) —— 第十二章 计算学习理论(上)

第十二章 计算学习理论(上)

    • 12.1 基础知识
    • 12.2 PAC 学习
      • 12.2.1 Probabliy Approximately Correct, PAC 概率近似正确
      • 12.2.2 基本概念
      • 12.2.3 定义 12.1 PAC 辨识(PAC Identify)
      • 12.2.4 定义 12.2 PAC 可学习(PAC learnable)
      • 12.2.5 定义 12.3 PAC 学习算法(PAC Learning Algorithm)
      • 12.2.6 定义 12.4 样本复杂度(Sample Complexity)
    • 12.3 有限假设空间
      • 12.3.1 可分情形
      • 12.3.2 可分情形所需样例数目:
      • 12.3.3 不可分情形
      • 12.3.4 引理 12.1
      • 12.3.5 推论 12.1
      • 12.3.6 定理 12.1
      • 12.3.7 定义 12.5 不可知PAC可学习
    • 12.7 总结

这章看起来非常难受、纯理论篇,各种定理和公式。但实际上还有挺有意思的,希望感兴趣的小伙伴也能一起学习(这其中夹杂了很多自己的理解,如有疏漏错误,欢迎批评指正)

12.1 基础知识

12.1.1 什么是计算学习理论(computational learning theory)

计算学习理论(computational learning theory) 是一门研究如何使用计算机科学和数学方法来理解学习过程的学科。它涉及到机器学习、统计学习理论、数据挖掘等领域,旨在通过算法和模型来描述和分析学习的过程

12.1.2 什么是独立同分布(independent and identically distributed, 简称 i . i . d . i.i.d. i.i.d.)以及独立同分布样本

“独立同分布”(Independent and Identically Distributed,缩写为 i . i . d . i.i.d. i.i.d. 是统计学和概率论中的一个重要概念,用于描述一组随机变量的特性。

  • 独立(Independent): 如果一组随机变量是独立的,那么其中任意一个变量的取值不受其他变量的影响。换句话说,知道其中一个变量的取值并不能提供关于其他变量取值的信息。数学上,对于随机变量 x 1 , x 2 , . . . , x n x_1, x_2, ...,x_n x1,x2,...,xn,如果对于任意 i ≠ j i \ne j i=j,都有 P ( x i ∈ A , x j ∈ B ) = P ( x i ∈ A ) ∗ P ( x j ∈ B ) P(x_i \in A, x_j \in B) = P(x_i \in A) * P(x_j \in B) P(xiA,xjB)=P(xiA)P(xjB),其中 A A A B B B 是任意集合,那么这组随机变量是相互独立的。

  • 同分布(Identically Distributed): 如果一组随机变量具有相同的概率分布,即它们来自于同一种概率分布,那么它们是同分布的。数学上,对于随机变量 x 1 , x 2 , . . . , x n x_1, x_2, ...,x_n x1,x2,...,xn,如果它们都服从相同的概率分布,即 P ( x 1 ∈ A ) = P ( x 2 ∈ A ) = . . . = P ( x n ∈ A ) P(x_1 \in A) = P(x_2 \in A) = ... = P(x_n \in A) P(x1A)=P(x2A)=...=P(xnA) 对于任意集合 A A A 成立,那么这组随机变量是同分布的。

因此,当一组随机变量是独立同分布的时候,每个变量的取值不受其他变量的影响,并且它们都来自于相同的概率分布。独立同分布假设在统计学和机器学习中经常被使用,它简化了问题的建模过程,并使得对于整体数据集的推断更为方便。(这个与有些算法假设数据服从高斯分布类似,如贝叶斯分类器)

本章后面的内容均假设数据中样本都满足这个分布特点。

12.1.3 泛化误差以及经验误差

泛化误差(Generalization Error)经验误差(Empirical Error) 是在机器学习中用于评估模型性能的两个关键概念。

  1. 泛化误差: 泛化误差是指一个模型在新、未见过的数据上的性能表现。在训练机器学习模型时,我们通常使用一个训练数据集进行模型训练,然后使用另一个独立的测试数据集来评估模型的泛化能力。泛化误差反映了模型对于未知数据的适应能力。模型在训练数据上表现得很好并不一定能在新数据上表现得同样好,因此泛化误差是评估模型真实性能的关键指标。

  2. 经验误差: 经验误差是指模型在训练数据集上的性能表现。在训练过程中,模型通过学习训练数据中的模式和关系来调整自身的参数,以尽量减小经验误差。然而,经验误差并不能很好地反映模型在未知数据上的表现,因为模型可能过度拟合了训练数据中的噪声或特定模式,导致在新数据上表现不佳。

在机器学习中,我们希望找到一种平衡,即使在训练数据之外的数据上模型也能表现良好。这就是为什么在训练和评估过程中,除了关注经验误差之外,还要特别关注泛化误差。为了有效地控制泛化误差,通常采用一些技术,如交叉验证、正则化等,以确保模型能够在不同数据集上都有较好的表现。

12.1.4 相关数学定义表示

给定样例集 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) } D=\{(\bm{x}_1,y_1),(\bm{x}_2,y_2),...,(\bm{x}_m,y_m)\} D={(x1,y1),(x2,y2),...,(xm,ym)} x i ∈ X \bm{x}_i \in \mathcal{X} xiX,本章主要讨论二分类问题,若无特别说明, y i ∈ Y = { − 1 , + 1 } y_i\in \mathcal{Y}=\{-1, +1\} yiY={1,+1}。假设 X \mathcal{X} X 中的所有样本服从一个隐含未知的分布 D \mathcal{D} D D D D 的左右样本都是独立地从这个分布上采样而得,即独立同分布样本。

h h h 为从 X \mathcal{X} X Y \mathcal{Y} Y 的一个映射,其泛化误差为
E ( h ; D ) = P x ∼ D ( h ( x ) ≠ y ) , (12.1) E(h;\mathcal{D})=P_{\bm{x}\sim \mathcal{D}}(h(\bm{x})\ne y), \tag{12.1} E(h;D)=PxD(h(x)=y),(12.1)

h h h D D D 上的经验误差为

E ^ ( h ; D ) = 1 m ∑ i = 1 m I ( h ( x i ) ≠ y i ) (12.2) \widehat{E}(h;D)=\frac{1}{m}\sum_{i=1}^m\mathbb{I}(h(\bm{x_i})\ne y_i) \tag{12.2} E (h;D)=m1i=1mI(h(xi)=yi)(12.2)

12.1.5 误差参数

由于 D D D D \mathcal{D} D 的独立同分布采样,因此 h h h 的经验误差的期望等于其泛化误差。在上下文明确时,我们将 E ( h ; D ) E(h;\mathcal{D}) E(h;D) E ^ ( h ; D ) \widehat{E}(h;D) E (h;D) 分别简记为 E ( h ) E(h) E(h) E ^ ( h ) \widehat{E}(h) E (h)。令 ϵ \epsilon ϵ E ( h ) E(h) E(h) 的上限,即 E ( h ) ≤ ϵ E(h)\le \epsilon E(h)ϵ;我们通常用 ϵ \epsilon ϵ 表示预先设定的学得模型所应满足的误差要求,亦称 “误差参数”。

12.1.6 映射与样本集是否一致

若映射关系 h h h 在数据集 D D D 上的经验误差为 0,则称 h h h D D D 一致,否则称其与 D D D 不一致。对任意两个映射 h 1 , h 2 ∈ X ∼ Y h_1, h_2 \in \mathcal{X} \sim \mathcal{Y} h1,h2XY,可通过其 “不合”(disagressment)来度量它们之间的差别:

d ( h 1 , h 2 ) = P x ∼ D ( h 1 ( x ) ≠ h 2 ( x ) ) (12.3) d(h_1,h_2) = P_{\bm{x}\sim \mathcal{D}}(h_1(\bm{x})\ne h_2(\bm{x})) \tag{12.3} d(h1,h2)=PxD(h1(x)=h2(x))(12.3)

12.1.7 凸函数(Convex Function)与凹函数(Concave Function)

凸函数(Convex Function) 是一类具有很重要性质的实数域到实数域的函数。在凸函数的定义中,对于函数的图像,连接曲线上任意两点的线段都位于曲线的上方。

更具体地说,一个函数 f : R n → R f: \mathbb{R}^n \rightarrow \mathbb{R} f:RnR 被称为凸函数,如果对于任意 x , y ∈ R n x, y \in \mathbb{R}^n x,yRn 和任意 0 ≤ λ ≤ 1 0 \leq \lambda \leq 1 0λ1,都满足以下条件:

f ( λ x + ( 1 − λ ) y ) ≤ λ f ( x ) + ( 1 − λ ) f ( y ) f(\lambda x + (1-\lambda)y) \leq \lambda f(x) + (1-\lambda)f(y) f(λx+(1λ)y)λf(x)+(1λ)f(y)

这个条件可以用直观的方式理解为,曲线上连接任意两点的线段都位于曲线的上方。

一些常见的例子包括:

  1. 线性函数: f ( x ) = a x + b f(x) = ax + b f(x)=ax+b,其中 a a a 是一个实数且 b b b 是一个常数。
  2. 二次函数: f ( x ) = a x 2 + b x + c f(x) = ax^2 + bx + c f(x)=ax2+bx+c,其中 a ≥ 0 a \geq 0 a0
  3. 指数函数: f ( x ) = e a x f(x) = e^{ax} f(x)=eax,其中 a a a 是一个实数。

凸函数在数学、优化、经济学等领域都有着广泛的应用。在优化问题中,凸函数具有较好的性质,使得许多优化算法能够高效地找到全局最优解。凸函数的性质还在微积分、凸优化等数学分支中有着深刻的研究。

凹函数(Concave Function) 是一类具有特定性质的实数到实数的函数。一个函数 (f: \mathbb{R}^n \rightarrow \mathbb{R}) 被称为凹函数,如果对于任意 (x, y \in \mathbb{R}^n) 和任意 (0 \leq \lambda \leq 1),都满足以下条件:

f ( λ x + ( 1 − λ ) y ) ≥ λ f ( x ) + ( 1 − λ ) f ( y ) f(\lambda x + (1-\lambda)y) \geq \lambda f(x) + (1-\lambda)f(y) f(λx+(1λ)y)λf(x)+(1λ)f(y)

这个条件可以直观地理解为,连接曲线上任意两点的线段都位于曲线的下方。换句话说,曲线上的任意弦都位于曲线的上方。

一些常见的例子包括:

  1. 线性函数: f ( x ) = a x + b f(x) = ax + b f(x)=ax+b,其中 a a a 是一个实数且 b b b 是一个常数。
  2. 负的二次函数: f ( x ) = − a x 2 + b x + c f(x) = -ax^2 + bx + c f(x)=ax2+bx+c,其中 a > 0 a > 0 a>0
  3. 负的指数函数: f ( x ) = − e a x f(x) = -e^{ax} f(x)=eax,其中 a a a 是一个正实数。

凹函数在优化问题、经济学、微积分等领域有着广泛的应用。在优化中,凹函数的性质使得许多优化算法能够高效地找到全局最优解。凹函数的性质同样在微积分和凸优化等数学分支中有着深刻的研究。需要注意的是,凹函数与凸函数是相对的概念,一个函数要么是凹的,要么是凸的。

12.1.8 Jensen 不等式

Jensen 不等式是一个基本的数学不等式,它描述了凸函数与期望值之间的关系。

f ( E ( x ) ) ⩽ E ( f ( x ) ) . (12.4) f(\mathbb{E}(x)) \leqslant \mathbb{E}(f(x)). \tag{12.4} f(E(x))E(f(x)).(12.4)

比如下面的凸函数图示, f ( x 1 + x 2 2 ) < f ( x 1 ) + f ( x 2 ) 2 f(\frac{x_1+x_2}{2}) < \frac{f(x_1)+f(x_2)}{2} f(2x1+x2)<2f(x1)+f(x2)

在这里插入图片描述

12.1.8 Hoeffding 不等式

Hoeffding 不等式 :若 x 1 , x 2 , . . . , x m x_1,x_2,...,x_m x1,x2,...,xm m m m 个独立随机变量,且满足 0 ≤ x i ≤ 1 0\le x_i \le 1 0xi1,则对任意 ϵ > 0 \epsilon > 0 ϵ>0,有

P ( 1 m ∑ i = 1 m x i − 1 m ∑ i = 1 m E ( x i ) ⩾ ϵ ) ⩽ exp ⁡ ( − 2 m ϵ 2 ) (12.5) P\left(\frac{1}{m} \sum_{i=1}^m x_i-\frac{1}{m} \sum_{i=1}^m \mathbb{E}\left(x_i\right) \geqslant \epsilon\right) \leqslant \exp \left(-2 m \epsilon^2\right) \tag{12.5} P(m1i=1mxim1i=1mE(xi)ϵ)exp(2mϵ2)(12.5)

P ( ∣ 1 m ∑ i = 1 m x i − 1 m ∑ i = 1 m E ( x i ) ∣ ⩾ ϵ ) ⩽ 2 exp ⁡ ( − 2 m ϵ 2 ) . (12.8) P\left(\left|\frac{1}{m} \sum_{i=1}^m x_i-\frac{1}{m} \sum_{i=1}^m \mathbb{E}\left(x_i\right)\right| \geqslant \epsilon\right) \leqslant 2 \exp \left(-2 m \epsilon^2\right) . \tag{12.8} P( m1i=1mxim1i=1mE(xi) ϵ)2exp(2mϵ2).(12.8)

Hoeffding 不等式 是概率论中的一种不等式,用于估计独立随机变量的平均值与其期望之间的差异。公式 12.6 中也可以表示为 P ( ∣ X ˉ − E ( X ˉ ) ∣ ≥ ϵ ) ≤ 2 e − 2 m ϵ 2 / ( b − a ) 2 P\left(\left|\bar{X} - E(\bar{X})\right| \geq \epsilon \right) \leq 2e^{-2m \epsilon ^2/(b-a)^2} P( XˉE(Xˉ) ϵ)2e2mϵ2/(ba)2

这个不等式表明,通过大数定律,随着样本数量 m m m 的增加,随机变量平均值 X ˉ \bar{X} Xˉ 与其期望 E ( X ˉ ) E(\bar{X}) E(Xˉ) 之间的差异以指数速度收敛到零。Hoeffding 不等式在概率不等式中的应用很广泛,特别是在统计学、机器学习和信息理论中,它被用来估计样本均值与总体均值之间的差异,并提供了关于样本平均值的概率界。

12.1.9 McDiarmid 不等式

假设有独立同分布的随机变量 (X_1, X_2, \ldots, X_n),它们服从相同的分布。
McDiarmid 不等式 :若 x 1 , x 2 , . . . , x m x_1,x_2,...,x_m x1,x2,...,xm m m m 个独立随机变量,且满足 1 ≤ i ≤ m 1\le i \le m 1im,考虑一个函数 f : R n → R f: \mathbb{R}^n \rightarrow \mathbb{R} f:RnR,并假设对于所有 i i i 和所有 x 1 , x 2 , … , x n x_1, x_2, \ldots, x_n x1,x2,,xn,函数 f f f 满足 Lipschitz 连续性条件,即:

sup ⁡ x 1 , … , x m , x i ′ ∣ f ( x 1 , … , x m ) − f ( x 1 , … , x i − 1 , x i ′ , x i + 1 , … , x m ) ∣ ⩽ c i \sup _{x_1, \ldots, x_m, x_i^{\prime}}\left|f\left(x_1, \ldots, x_m\right)-f\left(x_1, \ldots, x_{i-1}, x_i^{\prime}, x_{i+1}, \ldots, x_m\right)\right| \leqslant c_i x1,,xm,xisupf(x1,,xm)f(x1,,xi1,xi,xi+1,,xm)ci

其中, c i c_i ci 为大于0的常数。则对任意 ϵ > 0 \epsilon > 0 ϵ>0,有

P ( f ( x 1 , … , x m ) − E ( f ( x 1 , … , x m ) ) ⩾ ϵ ) ⩽ exp ⁡ ( − 2 ϵ 2 ∑ i c i 2 ) (12.9) P\left(f\left(x_1, \ldots, x_m\right)-\mathbb{E}\left(f\left(x_1, \ldots, x_m\right)\right) \geqslant \epsilon\right) \leqslant \exp \left(\frac{-2 \epsilon^2}{\sum_i c_i^2}\right) \tag{12.9} P(f(x1,,xm)E(f(x1,,xm))ϵ)exp(ici22ϵ2)(12.9)

P ( ∣ f ( x 1 , … , x m ) − E ( f ( x 1 , … , x m ) ) ∣ ⩾ ϵ ) ⩽ 2 exp ⁡ ( − 2 ϵ 2 ∑ i c i 2 ) (12.10) P\left(\left|f\left(x_1, \ldots, x_m\right)-\mathbb{E}\left(f\left(x_1, \ldots, x_m\right)\right)\right| \geqslant \epsilon\right) \leqslant 2 \exp \left(\frac{-2 \epsilon^2}{\sum_i c_i^2}\right) \tag{12.10} P(f(x1,,xm)E(f(x1,,xm))ϵ)2exp(ici22ϵ2)(12.10)

McDiarmid不等式是概率不等式的一种,类似于Hoeffding不等式,它用于估计独立同分布的随机变量的平均值与其期望之间的差异。McDiarmid 允许每个随机变量对应的函数值对整体的影响不同,通过引入 c i c_i ci 来刻画。这使得 McDiarmid 不等式更加灵活,适用于更广泛的情形。

12.2 PAC 学习

12.2.1 Probabliy Approximately Correct, PAC 概率近似正确

PAC,Probably Approximately Correct 概率近似正确,是机器学习和计算理论中的一个概念,用于描述学习算法的性能和可靠性。

PAC学习的核心思想是,一个学习算法在学习过程中可以在有限的时间内以高概率近似地产生一个正确的模型。

具体来说,PAC学习关注以下几个要素:

  1. 概率性(Probably): 学习算法的输出在某种程度上是概率性的,而不是绝对确定的。即使在学习过程中算法可能出现错误,但错误的概率要控制在一个很小的范围内。

  2. 近似正确性(Approximately Correct): 学习算法生成的模型可能不是完全准确的,但要在某种程度上接近真实模型。这种近似性通常是在学习的样本数据上进行评估的。

  3. 有限时间(Finite Time): 学习算法在有限的时间内完成学习过程,不会花费过多的时间。

PAC学习的目标是使学习算法具有在面对未知数据时仍然能够产生准确预测的能力。这个概念在机器学习理论中有助于理解算法的泛化能力以及如何在有限的数据和时间内进行有效学习。

12.2.2 基本概念

c c c 表示 “概念”(concept),这是从样本空间 X \mathcal{X} X 到标记空间 Y \mathcal{Y} Y 的映射,它决定示例 x \bm{x} x 的真实标记 y y y,若对任何样例( ( x , y ) (\bm{x},y) (x,y))有 c ( x ) = y c(\bm{x})=y c(x)=y 成立,则称 c c c 为目标概念;所以我们希望学得的目标概念所构成的集合称为 “概念类”(concept class),用符号 C \mathcal{C} C 表示。

在PAC学习中,"概念(concept)"指的是学习任务中要从数据中学习的目标对象或规律。这可以是任何系统性的关系、模式或规律,例如分类任务中的类别、回归任务中的函数关系等。概念是我们希望学习算法能够从样本数据中推断出来的东西。
在分类问题中,概念可能是将数据分为不同的类别,例如将电子邮件分为垃圾邮件和非垃圾邮件。在回归问题中,概念可能是描述输入和输出之间的数学关系,如预测房价的模型。
PAC学习的目标是从有限的样本数据中学习概念,并在面对未知数据时做出准确的预测。因此,学习算法的任务是从样本数据中推断出概念,使其在未见过的数据上表现良好。这涉及到在有限时间内以高概率近似正确地捕捉到真实概念的能力。

给定学习算法 L \mathfrak {L} L ,它所考虑的所有可能概念的集合称为 “假设空间(hypothesis space)”,用符号 H \mathcal{H} H 表示。由于学习算法事先并不知道概念类的真实存在,因此 H \mathcal{H} H C \mathcal{C} C 通常是不同的,学习算法会把自认为可能得目标概念集中起来构成 H \mathcal{H} H,对 h ∈ H h\in\mathcal{H} hH,由于并不能确定它是否真是目标概念,因此称为 “假设” (hypothesis)。显然,假设 h h h 也是从样本空间 X \mathcal{X} X 到标记空间 Y \mathcal{Y} Y 的映射。

若目标概念 c ∈ H c \in \mathcal{H} cH,则 H \mathcal{H} H 中存在假设能将所有示例按与真实标记一致的方式完全分开,我们称该问题对学习算法 L \mathfrak{L} L 是 “可分的(separable)”,亦称 “一致的(consistent)”;若 c ∉ H c \notin \mathcal{H} c/H,则 H \mathcal{H} H 中不存在任何假设能将所有示例完全正确分开,称该问题对学习算法 L \mathfrak{L} L 是 “不可分的(non-separable)”,亦称 “不一致的(non-consistent)”。

给定训练集 D D D,我们希望基于学习算法 L \mathfrak{L} L 学得的模型所对应的假设 h h h 尽可能接近目标概念 c c c。为什么不是希望精确地学到目标概念 c c c 呢?这是由于机器学习过程受到很多因素的制约,例如我们获得的训练集 D D D 往往仅包含有限数量的样例,因此,通常会存在一些在 D D D 上“等效” 的假设,学习算法对它们无法区别;再如,从分布 D \mathcal{D} D 采样得到 D D D 的过程有一定偶然性,可以想象,即便对同样大小的不同训练集,学得结果也可能有所不同.因此,我们是希望以比较大的把握学得比较好的模型,也就是说,以较大的概率学得误差满足预设上限的模型;这就是 “概率” “近似正确” 的含义。

12.2.3 定义 12.1 PAC 辨识(PAC Identify)

定义 12.1 PAC 辨识(PAC Identify):令 δ \delta δ 表示置信度,对 0 < ϵ , δ < 1 0 < \epsilon, \delta < 1 0<ϵ,δ<1,所有 c ∈ C c\in\mathcal{C} cC 和分布 D \mathcal{D} D,若存在学习算法 L \mathfrak{L} L,其输出假设 h ∈ H h\in\mathcal{H} hH 满足
P ( E ( h ) ≤ ϵ ) ≥ 1 − δ , (12.9) P(E(h) \le \epsilon) \ge 1- \delta, \tag{12.9} P(E(h)ϵ)1δ,(12.9)
则称学习算法 L \mathfrak{L} L 能从假设空间 H \mathcal{H} H 中 PAC 辨识概念 C \mathcal{C} C。这样的学习算法 L \mathfrak{L} L 能以较大的概率(至少 1 − δ 1- \delta 1δ)学得目标概念 c c c 的近似(误差最多为 ϵ \epsilon ϵ)。

相关符号的定义前面已经介绍。这个定义的作用可以理解为:算法的可用性定义。如果算法 L \mathfrak{L} L 能建立这样的映射关系,满足公式中定义的条件,那么可以认为这个算法能够实现目标。(当然,我这么描述非常不严谨)

这个是关于 PAC 的第一个定义,作为算法的第一个评估参考,后面的将更加复杂。

12.2.4 定义 12.2 PAC 可学习(PAC learnable)

定义 12.2 PAC 可学习(PAC learnable):令 m m m 表示从分布 D \mathcal{D} D 中独立同分布采样得到的样例数目, 0 < ϵ , δ < 1 0<\epsilon,\delta < 1 0<ϵ,δ<1,所有分布 D \mathcal{D} D,若存在学习算法 L \mathfrak{L} L 和多项式函数 poly ( ⋅ , ⋅ , ⋅ , ⋅ ) \textbf{poly}(\cdot,\cdot,\cdot,\cdot) poly(,,,),使得对于任何 m ≥ poly ( 1 / ϵ , 1 / δ , size ( x , m ) , size ( c ) ) m\ge \textbf{poly}(1/\epsilon,1/\delta,\textbf{size}(\bm{x},m),\textbf{size}(c)) mpoly(1/ϵ,1/δ,size(x,m),size(c)) L \mathfrak{L} L 能从假设空间 H \mathcal{H} H 中PAC 识别概念 C \mathcal{C} C,则称概念类 C \mathcal{C} C 对假设空间 H \mathcal{H} H 而言是 PAC 可学习的,有时也简称概念 C \mathcal{C} C 是 PAC 可学习的。

12.2.5 定义 12.3 PAC 学习算法(PAC Learning Algorithm)

定义 12.3 PAC 学习算法(PAC Learning Algorithm):若学习算法 L \mathfrak{L} L 使概念类 C \mathcal{C} C 为 PAC 可学习的,且 L \mathcal{L} L 的运行时间也是多项式函数 poly ( 1 / ϵ , 1 / δ , size ( x , size ( c ) ) ) \textbf{poly}(1/\epsilon,1/\delta,\textbf{size}(\bm{x},\textbf{size}(c))) poly(1/ϵ,1/δ,size(x,size(c))),则称概念类 C \mathcal{C} C 是高效 PAC 可学习(efficiently PAC learnable)的,称 L \mathfrak{L} L 为概念类 C \mathcal{C} C 的 PAC 学习算法。

这里的 “高效PAC可学习” 读起来怪怪的,个人认为应该可以自由翻译为 “可高效学习”。
这里需要明确的是,运行时间为多项式函数,所以理论上来说,如果算法的复杂度过高,我们可以认为该算法不是 高效 PAC 学习算法,也就是从PAC 学习算法的分析角度而言,该算法不合格(低效)。

假定学习算法 L \mathfrak{L} L 处理每个样本的时间为常数,则 L \mathfrak{L} L 的时间复杂度等价于样本复杂度。于是,我们对算法时间复杂度的关心就转化为对样本复杂度的关心。

这里也可以理解为 “近似” 思想,如果我没有直接计算算法复杂度,那么就用另外一种方式进行衡量。

12.2.6 定义 12.4 样本复杂度(Sample Complexity)

定义 12.4 样本复杂度(Sample Complexity):满足 PAC 学习算法 L \mathfrak{L} L 所需的 m ≥ poly ( 1 / ϵ , 1 / δ , size ( x ) , size ( c ) ) m \ge \text{poly}(1/\epsilon,1/\delta,\text{size}(\bm{x}),\text{size}(c)) mpoly(1/ϵ,1/δ,size(x),size(c)) 中最小的 m m m,称为学习算法 L \mathfrak{L} L 的样本复杂度。

PAC 学习中一个关键因素是假设空间 H \mathcal{H} H 的复杂度。 H \mathcal{H} H 包含了学习算法 L \mathfrak{L} L 所有可能输出的假设,若在 PAC 学习中假设空间的概念与概念类完全相同,即 H = C \mathcal{H}=\mathcal{C} H=C,这称为 “恰PAC可学习”(properly PAC learnable);直观地看,这意味着学习算法的能力与学习任务 “恰好匹配”。

然而,这种让所有候选假设都来自概念类的要求看似合理,但却是很不实际,因为在现实应用中我们对概念类 C \mathcal{C} C 通常一无所知,更别说获得一个假设空间与概念类恰好相同的学习算法。显然,更重的是研究假设空间与概念类不同的情形,即 H ≠ C 4 \mathcal{H}\not=\mathcal{C}4 H=C4。一般而言, H \mathcal{H} H 越大,其包含任意目标概念的可能性越大,但从中找到某个目标概念的难度也越大。 ∣ H ∣ |\mathcal{H}| H 有限时,我们称 H \mathcal{H} H 为 “有限假设空间”,否则称为 “无限假设空间”。

12.3 有限假设空间

12.3.1 可分情形

可分情形 意味着目标概念 c c c 属于假设空间 H \mathcal{H} H,即 c ∈ H c\in \mathcal{H} cH

12.3.2 可分情形所需样例数目:

m ≥ 1 ϵ ( ln ⁡ ∣ H ∣ + ln ⁡ 1 δ ) (12.14) m\ge \frac{1}{\epsilon}(\ln |\mathcal{H}| + \ln \frac{1}{\delta}) \tag{12.14} mϵ1(lnH+lnδ1)(12.14)

输出假设 h h h 的泛化误差随样例数目的增多而收敛到 0,收敛速率为 O ( 1 m ) O(\frac{1}{m}) O(m1)

这里的推导过程请参考西瓜书原书。

12.3.3 不可分情形

对较为困难的学习问题,目标概念 c c c 往往不存在于假设空间 H \mathcal{H} H 中。假定对于任意 h ∈ H h\in \mathcal{H} hH E ^ ( h ) ≠ 0 \widehat{E}(h)\not=0 E (h)=0,也就是说, H \mathcal{H} H 中的任意一个假设都会在训练集上出现或多或少的错误。

12.3.4 引理 12.1

由 Hoeffding 不等式易知:

引理 12.1 若训练集 D D D 包含 m m m 个从分布 D \mathcal{D} D 上独立同分布采样而得的样例, 0 < ϵ < 1 0<\epsilon<1 0<ϵ<1,则对任意 h ∈ H h\in\mathcal{H} hH,有

P ( E ^ ( h ) − E ( h ) ⩾ ϵ ) ⩽ exp ⁡ ( − 2 m ϵ 2 ) (12.15) P(\widehat{E}(h)-E(h) \geqslant \epsilon) \leqslant \exp \left(-2 m \epsilon^2\right) \tag{12.15} P(E (h)E(h)ϵ)exp(2mϵ2)(12.15)

P ( E ( h ) − E ^ ( h ) ⩾ ϵ ) ⩽ exp ⁡ ( − 2 m ϵ 2 ) (12.16) P(E(h)-\widehat{E}(h) \geqslant \epsilon) \leqslant \exp \left(-2 m \epsilon^2\right) \tag{12.16} P(E(h)E (h)ϵ)exp(2mϵ2)(12.16)

P ( ∣ E ( h ) − E ^ ( h ) ∣ ⩾ ϵ ) ⩽ 2 exp ⁡ ( − 2 m ϵ 2 ) (12.17) P(|E(h)-\widehat{E}(h)| \geqslant \epsilon) \leqslant 2 \exp \left(-2 m \epsilon^2\right) \tag{12.17} P(E(h)E (h)ϵ)2exp(2mϵ2)(12.17)

这个引理约等于将数据代入公式
这个引理的作用在后面的推论中呈现。

12.3.5 推论 12.1

推论 12.1 若训练集 D D D 包含 m m m 个从分布 D \mathcal{D} D 上独立同分布采样而得的样例, 0 < ϵ < 1 0<\epsilon<1 0<ϵ<1,则对任意 h ∈ H h\in \mathcal{H} hH,式 (12.18) 以至少 1 − δ 1-\delta 1δ 的概率成立:

E ^ ( h ) − ln ⁡ ( 2 / δ ) 2 m ⩽ E ( h ) ⩽ E ^ ( h ) + ln ⁡ ( 2 / δ ) 2 m (12.18) \widehat{E}(h)-\sqrt{\frac{\ln (2 / \delta)}{2 m}} \leqslant E(h) \leqslant \widehat{E}(h)+\sqrt{\frac{\ln (2 / \delta)}{2 m}} \tag{12.18} E (h)2mln(2/δ) E(h)E (h)+2mln(2/δ) (12.18)

推论 12.1 表明,样例数目 m m m 越大时, h h h 的经验误差是其泛化误差很好的近似

引论到推论以及它们的作用。

对于有限假设空间 H \mathcal{H} H,我们由

12.3.6 定理 12.1

定理 12.1 H \mathcal{H} H 为有限假设空间, 0 < δ < 1 0<\delta<1 0<δ<1,则对任意 h ∈ H h\in \mathcal{H} hH,有

P ( ∣ E ( h ) − E ^ ( h ) ∣ ⩽ ln ⁡ ∣ H ∣ + ln ⁡ ( 2 / δ ) 2 m ) ⩾ 1 − δ (12.19) P\left(|E(h)-\widehat{E}(h)| \leqslant \sqrt{\frac{\ln |\mathcal{H}|+\ln (2 / \delta)}{2 m}}\right) \geqslant 1-\delta \tag{12.19} P(E(h)E (h)2mlnH+ln(2/δ) )1δ(12.19)

推导过程请参见西瓜书。
这里可以得到一个结论: c ∉ H c \notin \mathcal{H} c/H 时,学习算法 L \mathfrak{L} L 无法学得目标概念 c c c ϵ \epsilon ϵ 近似。但是,当假设空间 H \mathcal{H} H 给定时,其中必存在一个泛化误差最小的假设,找到此假设的近似也不失为一个较好的目标。 H \mathcal{H} H 中泛化误差最小的假设是 arg min ⁡ h ∈ H E ( h ) \argmin_{h\in\mathcal{H}}E(h) argminhHE(h),于是,以此为目标可将PAC学习推广到 c ∉ H c\notin \mathcal{H} c/H 的情况,这称为 “不可知学习”。“不可知” 可理解与 “不可分” 保持一致。

12.3.7 定义 12.5 不可知PAC可学习

定义 12.5 不可知PAC可学习(agnostic PAC learnable):令 m m m 表示从分布 D \mathcal{D} D 中独立同分布采样得到的样例数目, 0 < ϵ , δ < 1 0<\epsilon,\delta<1 0<ϵ,δ<1,对所有分布 D \mathcal{D} D,若存在学习算法 L \mathfrak{L} L 和多项式函数 poly ( ⋅ , ⋅ , ⋅ , ⋅ ) \text{poly}(\cdot,\cdot,\cdot,\cdot) poly(,,,),使得对于任何 m ≥ poly ( 1 / ϵ , 1 / δ , size ( x ) , size(c) ) m\ge \text{poly}(1/\epsilon,1/\delta,\text{size}(\bm{x}),\text{size(c)}) mpoly(1/ϵ,1/δ,size(x),size(c)) L \mathfrak{L} L 能从假设空间 H \mathcal{H} H 中输出满足式 12.20 的假设 h h h

P ( E ( h ) − min ⁡ h ′ ∈ H E ( h ′ ) ⩽ ϵ ) ⩾ 1 − δ , (12.20) P\left(E(h)-\min _{h^{\prime} \in \mathcal{H}} E\left(h^{\prime}\right) \leqslant \epsilon\right) \geqslant 1-\delta, \tag{12.20} P(E(h)hHminE(h)ϵ)1δ,(12.20)
则称假设空间 H \mathcal{H} H 是不可知 PAC 可学习的。

高效不可知PAC可学习:与PAC可学习类似,若学习算法 L \mathfrak{L} L 的运行时间也是多项式函数 poly ( 1 / ϵ , 1 / δ , size ( x ) , size(c) ) \text{poly}(1/\epsilon,1/\delta,\text{size}(\bm{x}),\text{size(c)}) poly(1/ϵ,1/δ,size(x),size(c)),则称假设空间 H \mathcal{H} H 是高效不可知PAC可学习的,学习算法 L \mathfrak{L} L 则称为假设空间 H \mathcal{H} H 的不可知 PAC 学习算法,满足上述要求的最小 m m m 称为学习算法 L \mathfrak{L} L 的样本复杂度。

12.7 总结

12 章纯理论篇,研究的是计算学习理论的主要内容。本人也能力有限,只能将大概内容进行学习。刚开始觉得难以理解,理论枯燥是很正常的。但是小伙伴们,理论学习应当更加有意义,尤其是对学习写文章的人而言。

阅读过程中如果遇到了不记得的符号,不清楚它代表的含义就回到前面看看它的定义,联系起来应该是可以理解的。

篇幅原因,本章拆分称为上下两篇。

Smileyan
2024.01.19 0:13

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/644871.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一键拥有你的GPT4

这几天我一直在帮朋友升级ChatGPT&#xff0c;现在已经可以闭眼操作了哈哈&#x1f61d;。我原本以为大家都已经用上GPT4&#xff0c;享受着它带来的巨大帮助时&#xff0c;但结果还挺让我吃惊的&#xff0c;还是有很多人仍苦于如何进行升级。所以就想着写篇教程来教会大家如何…

响应拦截器的 return Promise.reject(res.data.message)

今天在看老师讲解代码的时候,解决了我心中的一些疑惑。 在做excel文件导出的时候,没有告诉浏览器文件的格式是Blod产生了报错。 看下图: 可以看到下面的内容:如果业务成功 返回 res.data 如果业务失败,给出错误信息的提示&#xff0c;将这个错误抛出去。 因此我们在发送一个…

基于springboot+vue的网上租赁系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 研究背景…

鸿蒙开发案列一

1、开发需求 案例app一打开是“Hello world” 界面&#xff0c;开发者点击“Hello world”变成“Hello ArkUI”’ 2、源代码 Entry Component struct Hello {State person_name: string Worldbuild() {Row() {Column() {Text(Hello this.person_name).fontSize(50).fontWei…

PMP证书要怎么考,含金量怎么样?

PMP含金量更多的是“敲门砖”作用&#xff0c;公司招聘的门槛&#xff0c;现在坐项目的大部分都需要PMP/NPDP证书。 当然现在PMP管理模式也很热门&#xff0c;对企业发展很有利&#xff0c;各大企业都有引进改良应用在公司的项目上&#xff0c;之前在校友群里面大家在讨论PMP …

ESP8266模块WIFI功能Deauther及Evil-Twin实验过程

1.下载ESP8266Flasher及deauther2.1.0_1mb.bin这个固件 2.连接ESP8266模块到电脑 设备管理器可看到成功连接的ESP8266设备 3.开始刷入固件到ESP8266模块 运行ESP8266Flasher并点击Config选择固件: 配置高级选项: 点击Flash开始刷入固件,固件成功刷入如下: 按一下ESP8266模块…

操作系统导论-课后作业-ch14

1. 代码如下&#xff1a; #include <stdio.h> #include <stdlib.h>int main() {int *i NULL;free(i);return 0; }执行结果如下&#xff1a; 可见&#xff0c;没有任何报错&#xff0c;执行完成。 2. 执行结果如下&#xff1a; 3. valgrind安装使用参考&a…

保姆级教程: GPTs接入广告到提现成功全过程真实记录

因为相信&#xff0c;所以看见 &#x1f31f; 1月19日&#xff0c;在AI社群首次了解到GPTs能通过接入广告获得收益。虽然对收益的多少和提现的可行性有所疑问&#xff0c;但我还是立刻在我的GPTs上尝试了这一功能。这一探索的旅程&#xff0c;如同跨入了一个未知的新世界。我的…

【江科大】STM32:旋转编码器接口

Encoder Interface 编码器接口 编码器接口可接收增量&#xff08;正交&#xff09;编码器的信号根据编码器旋转产生的正交信号脉冲&#xff0c;自动控制CNT自增或自减从而指示编码器的位置、旋转方向和旋转速度 &#xff08;PWM就是通计时器计次达到测频率的目的&#xff0c;而…

电脑文件mfc140.dll丢失的解决方法指导,怎么快速修复mfc140.dll

mfc140.dll 文件的缺失是个普遍的问题&#xff0c;在日常使用中可能会时不时遇到。本文主要目的是详细介绍一旦遇到 mfc140.dll 文件缺失&#xff0c;应该如何进行下载和安装的步骤。不再赘言&#xff0c;下面就一起深入了解mfc140.dll丢失的解决方法指导。 一. mfc140.dll的作…

【Java程序员面试专栏 专业技能篇】MySQL核心面试指引(三):性能优化策略

关于MySQL部分的核心知识进行一网打尽,包括三部分:基础知识考察、核心机制策略、性能优化策略,通过一篇文章串联面试重点,并且帮助加强日常基础知识的理解,全局思维导图如下所示 本篇Blog为第三部分:性能优化策略,子节点表示追问或同级提问 读写分离 分布式数据库的…

git 对象压缩及垃圾对象清理

git 对象压缩及垃圾对象清理 这篇文章让我们来看看 git 的对象压缩机制&#xff0c;前面的几篇文章我们提到&#xff0c;在执行 git add 命令会会把文件先通过 zlib 压缩后放入到「暂存区」&#xff0c;我们先看看这个步骤&#xff1a; 我们这个实例中有一个 1.28m 的 index.…

短视频账号矩阵系统+无人直播系统源码技术开发

短视频账号矩阵系统无人直播系统源码技术开发涉及到多个领域&#xff0c;包括但不限于前端开发、后端开发、数据库设计、网络通信等。 以下是一些基本技术的步骤和注意事项&#xff1a; 1.技术需求分析设计&#xff1a;首先&#xff0c;需要明确开发短视频账号矩阵系统和无人直…

Springboot+vue的科研工作量管理系统的设计与实现(有报告),Javaee项目,springboot vue前后端分离项目

演示视频&#xff1a; Springbootvue的科研工作量管理系统的设计与实现&#xff08;有报告&#xff09;&#xff0c;Javaee项目&#xff0c;springboot vue前后端分离项目 项目介绍&#xff1a; 本文设计了一个基于Springbootvue的前后端分离的科研工作量管理系统的设计与实现…

python_ACM模式《剑指offer刷题》链表1

题目&#xff1a; 面试tips&#xff1a; 询问面试官是否可以改变链表结构 思路&#xff1a; 1. 翻转链表&#xff0c;再遍历链表打印。 2. 想要实现先遍历后输出&#xff0c;即先进后出&#xff0c;因此可借助栈结构。 3. 可用隐式的栈结构&#xff0c;递归来实现。 代码…

从复杂数据到直观洞察:山海鲸助你一臂之力

作为山海鲸可视化的开发者&#xff0c;我们深知在数据可视化领域的挑战与机遇。山海鲸可视化软件正是我们为应对这些挑战而打造的一款强大工具&#xff0c;旨在为用户提供更高效、更直观的数据呈现方式&#xff0c;本文单纯从数据可视化角度带大家了解一下我们这款软件的优势。…

Nginx问题分析

问题再现 分析问题&#xff1a; 就是通过http://182.44.16.68:8077/web-ui/static/js/chunk-libs.82635094.js 地址访问&#xff0c;找不到对应的js文件 首先确认文件在服务器的位置 发现这个目录下确实有这个js文件&#xff0c;那问题就在于http://182.44.16.68:8077/web-ui…

rabbitmq基础-java-4、Direct交换机

1、简介 在Fanout模式中&#xff0c;一条消息&#xff0c;会被所有订阅的队列都消费。但是&#xff0c;在某些场景下&#xff0c;我们希望不同的消息被不同的队列消费。这时就要用到Direct类型的Exchange。 2、特点 在Direct模型下&#xff1a; 队列与交换机的绑定&#xff0c;…

Linux网络 ---- PXE高效批量网络装机

目录 一、系统装机 1、系统装机方式 2、系统装机的三种引导方式 3、系统安装过程 二、PXE原理和概念 1、PXE概述 2、搭建PXE网络体系所需条件 3、PXE批量部署的优点 4、PXE通常涉及以下几个组件&#xff1a; 5、PXE实现过程详细 三、搭建过程 1、搭建过程服务详解 …

C++ | 函数重载是什么意思?【面试题】C++支持函数重载的原理是什么?详细讲解

函数重载 一个词有多种含义&#xff0c;可以通过上下文来判断该词的真实含义&#xff0c;即该词被重载了。 “同一个函数名&#xff0c;由于参数个数不同、类型结构不同&#xff0c;在c能够同时使用” 函数重载概念及分类 函数重载&#xff1a;是函数的一种特殊情况&#x…