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

news2024/11/13 7:59:49

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

    • 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.coloradmin.cn/o/1399031.html

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

相关文章

USRP相关报错解决办法

文章目录 前言一、本地环境二、相关报错信息二、解决办法1、更换电脑操作系统2、升级最新版固件 前言 在进行 USRP 开发时遇到了一些报错&#xff0c;这里做个记录解决问题的方法。 一、本地环境 电脑操作系统&#xff1a;Windows11MATLAB 版本&#xff1a;MATLAB 2021aUSRP …

JVM:Java类加载机制

Java类加载机制的全过程&#xff1a; 加载、验证、准备、初始化和卸载这五个阶段的顺序是确定的&#xff0c;类型的加载过程必须按照这种顺序按部就班地开始&#xff0c;而解析阶段则不一定&#xff1a;它在某些情况下可以在初始化阶段之后再开始&#xff0c; 这是为了支持Java…

竞赛保研 机器视觉 opencv 深度学习 驾驶人脸疲劳检测系统 -python

文章目录 0 前言1 课题背景2 Dlib人脸识别2.1 简介2.2 Dlib优点2.3 相关代码2.4 人脸数据库2.5 人脸录入加识别效果 3 疲劳检测算法3.1 眼睛检测算法3.2 打哈欠检测算法3.3 点头检测算法 4 PyQt54.1 简介4.2相关界面代码 5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#x…

CSS明显比XPATH更性感!CSS再学一点儿

在selenium应用&#xff0c;CSS比XPATH更性感 To style an element, Front end developers need to locate the element first and then apply styling rules. It looks like this: #logo{ color: white; background: black; }That CSS snippet says, apply color and backgro…

深入探索 Android 中的 Runtime

深入探索 Android 中的 Runtime 一、什么是 Runtime二、Android 中的 Runtime 类型2.1. Dalvik Runtime2.2. ART&#xff08;Android Runtime&#xff09; 三、Runtime 的作用和特点3.1. 应用程序执行环境3.2. 跨平台支持3.3. 性能优化3.4. 应用程序优化 四、与应用开发相关的重…

Unity3D学习之Unity基础——3D数学

文章目录 1. 前言2 Mathf和Math基础2.1 一般用于只计算一次的函数2.1.1 PI Π PI2.1.2 取绝对值 Abs2.1.3 向上取整 CeilToInt2.1.4 向下取整 FloorToInt2.1.5 钳制函数 Clamp2.1.6 获取最大值 Max2.1.7 获取最小值 Min2.1.8 一个数的n次幂 Pow2.1.9 四舍五入 RoundToInt2.1.10…

MySQL主从复制原理与实践:从配置到故障监控

文章目录 前言主从复制原理复制源主节点的工作从节点的工作复制流程的设计 主从复制环境搭建一、主从节点配置二、从节点开启复制步骤1、备份主节点的数据2、将数据同步到从节点3、从节点复制参数配置 三、验证复制环境 主从复制故障监控监控主从复制状态监控主从复制延迟 总结…

Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)

目录 一、安装前准备工作计算机升级linux内核时间同步Hostname设置hosts设置关闭防火墙&#xff0c;selinux关闭swap安装docker 二、安装rancher部署rancher 三、安装k8s安装k8s集群易错点&#xff0c;重新初始化 四、安装kutectl五、测试安装nginx工作负载 一、安装前准备工作…

Python中二维数据(数组、列表)索引和切片的Bug

Python中有关数据结构索引和切片引起的Bug 一维数据索引和切片一维数组一维列表 二维数据的索引和切片二维数组二维(错误)列表 一维数据索引和切片 一维数组 对于一维数据进行索引和切片操作&#xff0c;大家都比较熟悉通过下面代码进行实现 import numpy as np data np.ra…

实验七 RMAN恢复管理器

&#x1f57a;作者&#xff1a; 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux &#x1f618;欢迎关注&#xff1a;&#x1f44d;点赞&#x1f64c;收藏✍️留言 &#x1f3c7;码字不易&#xff0c;你的&#x1f44d;点赞&#x1f64c;收藏❤️关注对我真的很重要&…

Linux的权限(3)

目录 文件类型 ​d目录文件 -普通文件 l链接文件 b块设备文件 p管道文件 c字符设备文件 文件权限 目录权限 umask 粘滞位 Q1umask权限默认值664/775 Q2"可执行性"权限 Q3"删除"权限 Q4怎么共享一批文件 【1】粘滞位 【2】添加交互人员到所…

SpringBoot跨域问题解决

前端访问后台接口时&#xff0c;浏览器报错&#xff0c;跨域无法访问。 报错信息如下&#xff1a; Response to preflight request doesnt pass access control check: No Access-Control-Allow-Origin header is present on the requested resource. 经过一番百度之后&#…

(2024,VMamba,交叉扫描,线性复杂度,全局感受野,动态权重)视觉状态空间模型

VMamba: Visual State Space Model 公和众和号&#xff1a;EDPJ&#xff08;进 Q 交流群&#xff1a;922230617 或加 VX&#xff1a;CV_EDPJ 进 V 交流群&#xff09; 目录 0. 摘要 3. 方法 3.1 基础概念 3.2 2D 选择性扫描 3.3 VMamba 模型 3.3.1 整体架构 3.3.2 VSS…

如何用H5+CSS+JS写一个简单的招聘网站

大家好&#xff0c;我是猿码叔叔&#xff0c;一个 Java 语言开发者。应网友要求&#xff0c;写一个简单的招聘页面。由于技术原因&#xff0c;页面相对简单&#xff0c;朋友们可以选择性的阅读&#xff0c;如果对您有帮助&#xff0c;也可直接拿去使用&#xff0c;因为接下来除…

Linux ---- 小玩具

目录 一、安装&#xff1a; 1、佛祖保佑&#xff0c;永不宕机&#xff0c;永无bug 2、小火车 3、艺术字和其它 天气预报 艺术字 4、会说话的小牦牛 5、其他趣味图片 我爱你 腻害 英雄联盟 帅 忍 龙 你是猪 福 好运连连 欢迎 加油 想你 忘不了你 我错了 你…

介绍几个免费的国内chatgpt网站

概述&#xff1a;水点文章。 第一&#xff1a;chataa网站 chataa (chat778.com) 进去之后注册一下&#xff0c;即可免费使用。 第二&#xff1a;AlchatOS网站 AIchatOS 第三&#xff1a;ChatGPT在线聊天 ChatGPT在线聊天 (zxf7460.cn) 第四&#xff1a;说我真帅&#xff0…

重构改善既有代码的设计-学习(一):封装

1、封装记录&#xff08;Encapsulate Record&#xff09; 一些记录性结构&#xff08;例如hash、map、hashmap、dictionary等&#xff09;&#xff0c;一条记录上持有什么字段往往不够直观。如果其使用范围比较宽&#xff0c;这个问题往往会造成许多困扰。所以&#xff0c;记录…

pytest + allure(windows)安装

背景 软硬件环境&#xff1a; windows11&#xff0c;已安装anaconda&#xff0c;python&#xff0c;pycharm用途&#xff1a;使用pytest allure 生成报告allure 依赖java&#xff0c;点击查看java安装教程 allure 下载与安装 从 allure下载网址下载最新版本.zip文件 放在自…

火速收藏!2024 新年微信红包封面领取全攻略

2024“龙”重登场&#xff01;今年有哪些令人期待的红包封面&#xff1f; 前方大批精美红包封面来袭&#xff0c;全新品牌氛围红包封面上线&#xff0c;支持品牌定制特色氛围元素&#xff0c;沉浸感受浓浓年味儿&#xff0c;收获满满惊喜&#xff01; 新年开好运&#xff0c;微…

7 python快速上手

数据类型&#xff08;下&#xff09; 数据类型&#xff08;下&#xff09;1.集合&#xff08;set&#xff09;1.1 定义1.2 独有功能1.3 公共功能1.4 转换1.5 其他1.5.1 集合的存储原理1.5.2 元素必须可哈希1.5.3 查找速度特别快1.5.4 对比和嵌套 强插&#xff1a;None类型2.字典…