当前位置: 首页 > news >正文

机器学习第十二章-计算学习理论

目录

12.1基础知识

12.2 PAC学习

12.3有限假设空间

12.3.1可分情形

12.3.2不可分情形

12.4VC维

12.5 Rademacher复杂度


12.1基础知识

        计算学习理论研究的是关于通过"计算"来进行"学习"的理论,即关于机器学习的理论基础,其目的是分析学习任务的困难本质,为学习算法提供理论保证,并根据分析结果指导算法设计。

        给定样例集 = {(X1  , Y2) , (X2,Y2 ),..., (Xm , Ym)} ,x_{i}\epsilon X
        令h为X到Y 的一个映射,其泛化误差为:
                                E(h ; \mathcal{D})=P_{\boldsymbol{x} \sim \mathcal{D}}(h(\boldsymbol{x}) \neq y)
        h在D上的经验误差为:
                                  E(h ; \mathcal{D})=P_{\boldsymbol{x} \sim \mathcal{D}}(h(\boldsymbol{x}) \neq y)\widehat{E}(h ; D)=\frac{1}{m} \sum_{i=1}^{m} \mathbb{I}\left(h\left(\boldsymbol{x}_{i}\right) \neq y_{i}\right)
        后面部分将研究经验误差与泛化误差之间的逼近程度会用到几个常用不等式:
        1.Jensen 不等式:对任意凸函数 f(x) ,有:
                                                f(\mathbb{E}(x)) \leqslant \mathbb{E}(f(x))
        2.HoefIding 不等式 : 若 x_{1},x_{2}....x_{m}为m个独立随机变量,且满足 0<x_{i}<1 ,则对任意 \varepsilon >0 ,有:
\begin{array}{l} 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) \\ 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) \end{array}
3.McDiarmid 不等式 : 若 x_{1},x_{2}...x_{m}为m个独立随机变量,且对任意1<i<m,函数f 满足:
\begin{array}{l} 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) \\ 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) \end{array}

12.2 PAC学习

        计算学习理论中最基本的是概率近似正确 ( 简称 PAC) 学习理论 。
PAC 辨识 :对 0<\varepsilon ,\delta <1,所有 c\varepsilon C  和分布D,若存在学习算法\Im,其输出假设 h\epsilon \mathbb{R}  满足:
                                                P(E(h) \leqslant \epsilon) \geqslant 1-\delta
则称学习算法 \Im 能从假设空间中 PAC 辨识概念类 C. 
PAC 可学习 : 令m表示从分布D中独立同分布采样得到的样例数目,0<\varepsilon ,\delta <1,对所有分布D, 若存在学习算法£和多项式函数poly,使得对任何m>poly.
PAC 学习算法: 若学习算法\Im使概念类 C为PAC 可学习的,且 \Im的运行时间也多项式函数 poly ,则称概念类 C 是高效 PAC 可学习  的,称\Im为概念类C的 PAC 学习算法.
样本复杂度 : 满足 PAC 学习算法\Im所需的 m> poly 中最小的m,称为学习算法 \Im的样本复杂度.

12.3有限假设空间

12.3.1可分情形

        可分情形意味着目标概念c属于假设空间H,即 c\epsilon H。对 PAC 学习来说,只要训练集D 的规模能使学习算法\Im以概率1-\delta 找到目标假设的\varepsilon近似即可.

        我们先估计泛化误差大于 \varepsilon但在训练集上仍表现完美的假设出现的概率. 假定 h的泛化误差大于 \varepsilon,对分布 D上随机来样而得的任何样例 (x y)有:

                        P(E(h) \leqslant \epsilon) \geqslant 1-\delta\begin{aligned} P(h(\boldsymbol{x})=y) & =1-P(h(\boldsymbol{x}) \neq y) \\ & =1-E(h) \\ & <1-\epsilon \end{aligned}

        由于D包含 m个从 D 独立同分布采样而得的样例,因此,h与D  表现一 致的概率为:
                \begin{aligned} P\left(\left(h\left(\boldsymbol{x}_{1}\right)=y_{1}\right) \wedge \ldots \wedge\left(h\left(\boldsymbol{x}_{m}\right)=y_{m}\right)\right) & =(1-P(h(\boldsymbol{x}) \neq y))^{m} \\ & <(1-\epsilon)^{m} \end{aligned}

12.3.2不可分情形

        引理若训练集D包含m个从分布D上独立同分布采样而得的样例,0<\varepsilon <1,则对任意 h\epsilon H,有:\begin{array}{l} P(\widehat{E}(h)-E(h) \geqslant \epsilon) \leqslant \exp \left(-2 m \epsilon^{2}\right) \\ P(E(h)-\widehat{E}(h) \geqslant \epsilon) \leqslant \exp \left(-2 m \epsilon^{2}\right) \\ P(|E(h)-\widehat{E}(h)| \geqslant \epsilon) \leqslant 2 \exp \left(-2 m \epsilon^{2}\right) \end{array}

        推论 :若训练集D 包含 m个从分布 D上独立同分布来样而得的样例, 0<\varepsilon <1 ,则对任意 h\epsilon H以至少 1-\delta 的概率成立:

                        \widehat{E}(h)-\sqrt{\frac{\ln (2 / \delta)}{2 m}} \leqslant E(h) \leqslant \widehat{E}(h)+\sqrt{\frac{\ln (2 / \delta)}{2 m}}

        定理 :若H为有限假设空间,0<\varepsilon <1 ,则对任意 h\epsilon H,有:

                        P\left(|E(h)-\widehat{E}(h)| \leqslant \sqrt{\frac{\ln |\mathcal{H}|+\ln (2 / \delta)}{2 m}}\right) \geqslant 1-\delta

12.4VC维

        现实学习任务所面临的通常是无限假设空间,欲对此种情形的可学习性进行研究,需度量假设空间的复杂度.最常见的办法是考虑假设空间的 "VC维"。
1. 增长函数
        增长函数,也称为VC维增长函数,描述了在给定假设空间下,能够被假设空间所“分割”或“覆盖”的训练样本的最大数量。具体来说,它衡量的是假设空间中能够对样本集进行不同标签分配的能力。增长函数的定义如下:对于一个假设空间  H )和一个样本集  S (大小为 m ),增长函数 (M_{H}(m) ) 表示假设空间 H 能够对样本集 S 进行的不同标签分配的最大数量。

2. 打分
        打分是一个与增长函数紧密相关的概念。它描述了一个假设空间能否对某个样本集进行所有可能的标签分配。具体来说:一个假设空间 (H )能打分一个样本集 S (大小为  m,如果 H  中的假设可以对 S 中的每一种可能的标签分配进行匹配。

 

3. 打散
        打散(或称为分裂)是一个与打分相关的概念,描述了假设空间能否在所有可能的标签分配下对样本集进行准确的分类。具体来说:假设空间  H 能打散一个样本集S (大小为 m )如果H能对 S 中的每一种标签分配进行正确的分类。换句话说,如果假设空间 H 能生成所有可能的标签分配。

 

4. VC维
        VC维是衡量一个假设空间复杂度的指标,它反映了假设空间能够打散的最大样本集的大小。具体来说:VC维是一个假设空间  H 可以打散的最大样本集的大小。即,如果假设空间  H 能打散大小为 d 的样本集,但不能打散大小为 d+1 的样本集,那么 H 的VC维就是 d。

增长函数 衡量假设空间对样本集进行的标签分配的能力。
打分 描述假设空间是否能够覆盖所有可能的标签分配。
打散 具体指假设空间对样本集进行所有可能标签分配的能力。
VC维 是衡量假设空间复杂度的关键指标,反映了最大打散能力。

12.5 Rademacher复杂度

        Rademacher 复杂度 是另一种刻画假设空间复 杂度的途径,与 vc 维不同的是,它在一定程度上考虑了数据分布.

给定训练集 ={(X1 , Y2), (X2,Y2),..., (Xm , Ym)} 假设h 的经验误差为:

                                                        \begin{aligned} \widehat{E}(h) & =\frac{1}{m} \sum_{i=1}^{m} \mathbb{I}\left(h\left(\boldsymbol{x}_{i}\right) \neq y_{i}\right) \\ & =\frac{1}{m} \sum_{i=1}^{m} \frac{1-y_{i} h\left(\boldsymbol{x}_{i}\right)}{2} \\ & =\frac{1}{2}-\frac{1}{2 m} \sum_{i=1}^{m} y_{i} h\left(\boldsymbol{x}_{i}\right) \end{aligned}

经验误差最小的假设是:
                                        \underset{h \in \mathcal{H}}{\arg \max } \frac{1}{m} \sum_{i=1}^{m} y_{i} h\left(\boldsymbol{x}_{i}\right)
\sigma _{i}是Rademacher 随机变量.
函数空间 F 关于 Z 的经验 Rademacher 复杂度:
                                        \widehat{R}_{Z}(\mathcal{F})=\mathbb{E}_{\boldsymbol{\sigma}}\left[\sup _{f \in \mathcal{F}} \frac{1}{m} \sum_{i=1}^{m} \sigma_{i} f\left(\boldsymbol{z}_{i}\right)\right]
函数空间 F 关于Z  上分布D的  Rademacher 复杂度:
                                        R_{m}(\mathcal{F})=\mathbb{E}_{Z \subseteq \mathcal{Z}:|Z|=m}\left[\widehat{R}_{Z}(\mathcal{F})\right]

        

        
     
      

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 计算机网络速成(二)
  • Elasticsearch高阶查询
  • 【C++】String类:标准库介绍
  • HarmonyOS Next原生应用开发-从TS到ArkTS的适配规则(十六)
  • 使用Nexus3为containerd和docker配置镜像代理
  • 前端怎么用 EventSource并配置请求头及加参数(流式数据)
  • Hyperf 安装,使用,
  • 单一责任原则
  • CentOS7上安装RabbitMQ
  • 正则表达式入门:Python ‘ re ‘ 模块详解
  • C++内存泄漏--**关于“异常0xc0000005 读取的位置 0xDDDDDDDD时发生冲突”
  • Flask详细教程
  • <STC32G12K128入门第十步>USB HID键盘
  • 5年前端面试之路
  • 【LeetCode Cookbook(C++ 描述)】一刷二叉树综合(下)
  • [译]如何构建服务器端web组件,为何要构建?
  • 【Leetcode】104. 二叉树的最大深度
  • ES学习笔记(12)--Symbol
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • Javascript设计模式学习之Observer(观察者)模式
  • mongodb--安装和初步使用教程
  • MySQL几个简单SQL的优化
  • Spring Boot快速入门(一):Hello Spring Boot
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • 复杂数据处理
  • 力扣(LeetCode)56
  • 如何设计一个微型分布式架构?
  • 如何使用 JavaScript 解析 URL
  • 设计模式(12)迭代器模式(讲解+应用)
  • 应用生命周期终极 DevOps 工具包
  • 用jQuery怎么做到前后端分离
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • # Maven错误Error executing Maven
  • # 利刃出鞘_Tomcat 核心原理解析(七)
  • #QT 笔记一
  • #宝哥教你#查看jquery绑定的事件函数
  • #中国IT界的第一本漂流日记 传递IT正能量# 【分享得“IT漂友”勋章】
  • (PADS学习)第二章:原理图绘制 第一部分
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (三)docker:Dockerfile构建容器运行jar包
  • (一)插入排序
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转)甲方乙方——赵民谈找工作
  • (转载)虚函数剖析
  • .NET C# 配置 Options
  • .Net各种迷惑命名解释
  • [@Controller]4 详解@ModelAttribute
  • [20180312]进程管理其中的SQL Server进程占用内存远远大于SQL server内部统计出来的内存...
  • [AutoSar]BSW_Memory_Stack_004 创建一个简单NV block并调试
  • [AWS]CodeCommit的创建与使用
  • [C/C++入门][ifelse]20、闰年判断