PAC极简例子

PAC极简例子

    • PAC动机
    • 例子
    • 问题分析
    • 算法A
    • 算法分析

PAC动机

给定一个分类器,它在训练集中的误差可以知道,但在未见实例中的误差(即泛化误差)却是未知的。一旦训练出分类器,则其在测试集中的表现就是“听天由命”。
但有人还是想把命运掌握在自己手中。思考这样一个事实:如果训练集够大,分类器“见多识广”,即使用kNN这种简单的模型,都可以获得很小的泛化误差。进一步地,能否从定量的角度,获得训练集大小与分类器泛化误差之间的关系?而PAC干的就是这件事情。
使用PAC,我们可以获得这类结论:为了以99%的以上的可能性,获得泛化误差不超过2%某种类型的分类器,仅需要训练样本数不少于520即可。也就是说,做1000次实验,每次用含520个样本的数据集训练分类器,再使用10000个样本进行测试,则只有不超过10次实验,单次误分类样本超过200个。这里的“可能性”对应于Probability,“近似正确”则对应于Approximately Correct。参数说明: 99 % = 1 − 1 % = 1 − δ 99\% = 1 - 1\% = 1 - \delta 99%=11%=1δ 2 % = ϵ 2\% = \epsilon 2%=ϵ

例子

如图1所示,样本属性值域:实数区间[0, 1],标签:负(三角形表示)、正(圆圈表示)两类。已知所有的负例均在正例左边,且数据服从均匀分布(即在任何点采样的概率密度相同)。求一个分类器,使得它把负、正样本分开。
图中数据从左至右为{(0.08, -), (0.23, -), (0.33, -), (0.65, +), (0.71, +), (0.86, +)},注意输入的时候是乱序的。

PAC极简例子_第1张图片

图1. 样本与算法示意图

问题分析

  1. 这是个二分类问题。

  2. 分类器模型(一维空间的超平面)即一个点(阈值)。

  3. 随着样本数量的增加,最右边的负例与最左边的正例距离越来越近,阈值的可取范围越来越窄,分类器越准确。

算法A

逐个扫描给定数据,获得负例的最大值,图1中 r ′ = 0.33 r' = 0.33 r=0.33。完毕。

算法分析

  1. 直观上看,取 r ′ = ( 0.33 + 0.65 ) / 2 = 0.49 r' = (0.33 + 0.65)/2 = 0.49 r=(0.33+0.65)/2=0.49是一个更好的选择,但是没关系,这点损失不算啥。
  2. 假设真正的分割点为 r r r, 则当测试数据落在 r ′ r' r r r r之间时,我们会错误地把负例误分类为正例。由于 r ′ r' r是贴着最大负值划的,我们不可能犯另一种错误:“把正例误分类为负例”。这使得算法更容易分析。根据均匀分布假设,分类器的泛化误差为 r − r ′ r - r' rr.
  3. r ′ ′ = r − ϵ r'' = r - \epsilon r=rϵ。则测试数据落在 [ r ′ ′ , r ] [r'', r] [r,r]的概率为 ϵ \epsilon ϵ.
  4. 如果 r ′ < r ′ ′ r' < r'' r<r,则分类器的泛化误差大于 ϵ \epsilon ϵ;否则分类器的泛化误差小于 ϵ \epsilon ϵ.
  5. 我们不知道r是多少,也不知道 r ′ ′ r'' r是多少,但这些不重要(what?),我们只需要知道 r ′ ′ − r = ϵ r'' - r = \epsilon rr=ϵ.
  6. 对于1个训练数据而言,它落入区间 [ r ′ ′ , r ] [r'', r] [r,r]的概率是epsilon,不落入该区间的概率是 ( 1 − ϵ ) (1 - \epsilon) (1ϵ).
  7. 对于 m m m个训练数据而言,它们都不落入区间 [ r ′ ′ , r ] [r'', r] [r,r]的概率是 ( 1 − ϵ ) m (1 - \epsilon)^m (1ϵ)m. 这对应于泛化误差大于 ϵ \epsilon ϵ(失败).
  8. m m m个训练数据,至少有一个落入区间 [ r ′ ′ , r ] [r'', r] [r,r]的概率是 1 − ( 1 − ϵ ) m 1- (1 - \epsilon)^m 1(1ϵ)m. 这对应于泛化误差小于 ϵ \epsilon ϵ(成功).
  9. 要求分类器成功的概率不小于 1 − δ 1 - \delta 1δ,即要求 1 − ( 1 − ϵ ) m ≥ 1 − d e l t a 1- (1 - \epsilon)^m \geq 1 - delta 1(1ϵ)m1delta ⇒ \Rightarrow ( 1 − ϵ ) m ≤ δ (1 - \epsilon)^m \leq \delta (1ϵ)mδ.
  10. 根据"众所周知"的不等式 ( 1 − ϵ ) m ≤ e − m ϵ (1 - \epsilon)^m \leq e^{-m \epsilon} (1ϵ)memϵ, 可转而要求 e − m ϵ ≤ δ e^{-m \epsilon} \leq \delta emϵδ ⇒ \Rightarrow m ≥ 1 ϵ ln ⁡ 1 δ m \geq \frac{1}{\epsilon} \ln\frac{1}{\delta} mϵ1lnδ1.
    分析完毕。

参考文献
[1]: Foundations of Machine Learning.
[2]: https://blog.csdn.net/weixin_43824178/article/details/100103967

你可能感兴趣的:(机器学习)