• 计算学习理论中泛化误差的研究


    机器学习中的计算学习理论是研究我们训练出来的模型是如何接近于对真实模型的表达,研究的对象是泛化误差。

    先定义泛化误差

    $$E(h, D) = P_{x in D} (h(x) eq y)$$

    其中h为模型假设,D为样本x的真实分布,P为概率质量函数,y为分类的label

    相应的h的对于m个样本的训练误差为

    $$hat E(h, D) = frac{1}{m} sumlimits_{i=1}^{m} I(h(x_{i}) eq y_{i})$$

    假设样例集$D = {(x_{1}, y_{1}),(x_{2}, y_{2}),...,(x_{m}, y_{m})}$ , I 为指示函数。

    根据Hoeffding不等式,我们有

    $$P(|E(h)-hat E(h)| > gamma)leqslant 2^{-2mgamma^{2}}$$

    固定概率项$delta$,在概率$1-delta$下,对于有限假设空间的情形,总的假设数目为k,对于某一个假设$hat h$, 它的错误界有下面的结论

    $$ E( hat h) leqslant min E(h) + 2sqrt{frac{1}{2m}logfrac{2k}{delta}}$$

    这个公式的含义是,如果选择了一个更为高阶更为复杂的模型,那么它能达到的泛化偏差(bias)$minE(h)$会减小,但是泛化误差variance可能增加,因为假设的数目增加会增加右边的第二项,除非我们有足够多的样本m。这是一个tradeoff。

    把上式做一下变换,要使得$E( hat h) leqslant min E(h) + 2gamma$,需要样本的数目满足

    $$m geqslant frac{1}{2gamma^{2}} logfrac{2k}{delta}$$

    下面推广到无限假设空间

    如果一个假设空间能“分散”某个集合,比如含有d个样本的集合$D = {(x_{1}, y_{1}),(x_{2}, y_{2}),...,(x_{m}, y_{m})}$,意味着这个假设空间能够实现集合的任意一种标记形式。

    VC维的定义就是这个假设空间所能分散的最大的集合的大小。这里容易理解不正确的是,VC维是d,并不是说对任意d个样本都能分散。而是说存在大小为d的集合,可以任意标记这个集合,即被分散。比如说二维线性分类器肯定能找到3个点,不管怎么标记都能用线性分类器正确分类。但是也存在3个点二维线性分类器无能为力的,比如这三个点共线。但是二维线性分类器的VC维仍然为3。

    有下面的结论,固定概率项$delta$,在概率$1-delta$下,对于VC维为d的假设空间

    $$|E(h)-E(hat h)|leqslant O(sqrt{frac{d}{m}logfrac{m}{d}+frac{1}{m}logfrac{1}{delta}})$$

     为了使得$E( hat h) leqslant min E(h) + 2gamma$,需要样本数$m=O(d)$,样本数和VC维的阶相同,即大致成线性关系。

    最后有一个独特的VC维的例子。一个假设空间VC维并不完全取决于一个假设中参数的数目,假设所有样本在半径R内,$|x_{i}|leqslant R$,那么对于间隔是$gamma$分类器来说,它的VC维是$ceiling(frac{R^{2}}{4gamma^{2}}) + 1$,所以支撑向量机不容易出现过拟合。

  • 相关阅读:
    C语言学习笔记:14_内部函数和外部函数
    HDU 1247 Hat’s Words (字典树 && map)
    混合云技术难题
    psql
    postgresql基本语句
    postgresql C/C++ API 接口
    REST API初识及设计
    postGreSQL数据库部署及简单使用
    IO-APIC
    OpenstackHigh-level-service
  • 原文地址:https://www.cnblogs.com/learninglife/p/9311843.html
Copyright © 2020-2023  润新知