PAC学习框架是机器学习的基础。它主要用来回答以下几个问题:

  1. 什么问题是可以高效学习的?
  2. 什么问题本质上就难以学习?
  3. 需要多少实例才能完成学习?
  4. 是否存在一个通用的学习模型?

PAC=probably approximately correct,很可能接近正确的

---------------------

什么问题能得到“可能接近正确”的结果呢?原文说的比较抽象,我把他翻译下:

说一个问题是PAC可学习的,需要定义m个sample组成S空间,其中每个sample服从D分布,并且互相独立;

如果存在一个算法A,在m(sample个数)有限的情况下,找到假设h;

使得对于任意两个数x,y,概率P(h对S中sample预测错误次数大于x) < y;

xy对应 中两个奇怪的符号!注意上面说的是小于,截图中说的是相反事件的大于。其实是一回事。

那么该问题是PAC可学习的。

----

举个例子,在二维平面上去学习一个矩阵:

目标是找到R,R内部的点是蓝色的,外部的点是红色的。

为了证明上面的问题是PAC可学习的,我们需要找到一个算法A,并且证明只需要m个实例,就可以是的概率等式成立。

首先确定算法:

这个算法很简单,就是所有蓝色的点的最小矩形R。那么这个R能不能满足上面的概率等式呢?假设给定x和y。如果错误个数大于x的概率小于y,需要什么条件呢?

不好回答,因此我们需要做一个转换:

我们先沿着R的4条边,向内部扩展,画出4个小矩形:r1,2,3,4。每个r的概率x/4。

如果R’的错误个数大于x,那么R’必然与r1,2,3,4中的至少一个有交集。(否则错误个数必定小于x)

因此有不等式:

由于并集的概率小于各自概率的和:

由于S中的每个sample的独立分布的,并且落在r1中的概率为x/4,所以

由于我们要求错误个数大于x的概率小于y,所以可以定义如下的不等式。

推导出m的下限。

这就说明只需要有限个实例就能满足上面的概率不等式。

------------------------------------------------

这就说明了,上面这个平面图形中学习矩形的问题是PAC可学习的。

PAC学习框架的更多相关文章

  1. [深度学习大讲堂]从NNVM看2016年深度学习框架发展趋势

    本文为微信公众号[深度学习大讲堂]特约稿,转载请注明出处 虚拟框架杀入 从发现问题到解决问题 半年前的这时候,暑假,我在SIAT MMLAB实习. 看着同事一会儿跑Torch,一会儿跑MXNet,一会 ...

  2. [转]Caffe 深度学习框架上手教程

    Caffe 深度学习框架上手教程 机器学习Caffe caffe 原文地址:http://suanfazu.com/t/caffe/281   blink 15年1月 6   Caffe448是一个清 ...

  3. Caffe 深度学习框架介绍

    转自:http://suanfazu.com/t/caffe/281 Caffe是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的贾扬清,目前在Google工作. Caffe是 ...

  4. 推荐GitHub上10 个开源深度学习框架

    推荐GitHub上10 个开源深度学习框架   日前,Google 开源了 TensorFlow(GitHub),此举在深度学习领域影响巨大,因为 Google 在人工智能领域的研发成绩斐然,有着雄厚 ...

  5. 贾扬清分享_深度学习框架caffe

    Caffe是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的 贾扬清,目前在Google工作.本文是根据机器学习研究会组织的online分享的交流内容,简单的整理了一下. 目录 ...

  6. 深度学习框架Caffe的编译安装

    深度学习框架caffe特点,富有表达性.快速.模块化.下面介绍caffe如何在Ubuntu上编译安装. 1. 前提条件 安装依赖的软件包: CUDA 用来使用GPU模式计算. 建议使用 7.0 以上最 ...

  7. 深度学习框架-caffe安装-环境[Mac OSX 10.12]

    深度学习框架-caffe安装 [Mac OSX 10.12] [参考资源] 1.英文原文:(使用GPU) [http://hoondy.com/2015/04/03/how-to-install-ca ...

  8. 深度学习框架-caffe安装-Mac OSX 10.12

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 ...

  9. 一个可扩展的深度学习框架的Python实现(仿keras接口)

    一个可扩展的深度学习框架的Python实现(仿keras接口) 动机 keras是一种非常优秀的深度学习框架,其具有较好的易用性,可扩展性.keras的接口设计非常优雅,使用起来非常方便.在这里,我将 ...

随机推荐

  1. 3. Node.js REPL(交互式解释器)

    1. 双击安装完成的Node.js 或者在 cmd 中 执行"node"  可以启动node 的终端. 2. 在node终端中可以输入一些javascript语法, 例如: > ...

  2. knockout的依赖属性dependentObservable和observable的监控的使用

    1.Knockout是在下面三个核心功能是建立起来的:监控属性(Observables)和依赖跟踪(Dependency tracking) 声明式绑定(Declarative bindings) 模 ...

  3. 重新想象 Windows 8 Store Apps (67) - 后台任务: 推送通知

    [源码下载] 重新想象 Windows 8 Store Apps (67) - 后台任务: 推送通知 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 后台任务 推送通 ...

  4. 小白学Linux--虚拟机下安装Ubuntu16

    最近接收到任务,说是下半年可能要搞全文检索.听到后顿时炸锅了,一方面是对新技术的兴奋(当然主要还是这技术比较值钱),另一方面,我TM连Linux都不会玩,怎么搞全文检索.怀揣着对开源世界的无线向往(恐 ...

  5. oop典型应用:实体类

    1.什么是实体类 简单地说就是描述一个业务实体的“类”,业务实体直观一点理解就是整个就是整个软件系统业务所涉及的对象. eg:MySchool系统中的班级,学生,年级等都是业务实体,“雷电”游戏中的飞 ...

  6. .NET Core的“dotnet restore”、“dotnet build”和“dotnet run”命令都是用来干什么的?

    dotnet restore 源代码:https://github.com/dotnet/cli/tree/rel/1.0.0/src/dotnet/commands/dotnet-restore 入 ...

  7. jQuery对复选框(checkbox)的全选,全不选,反选等的操作

    效果截图: HTML代码: <body><ul id="list"> <li><label><input type=" ...

  8. js的基本数据类型有哪些?

    js的基本数据类型有哪些? ECMAScript中有5中简单数据类型(也称为基本数据类型): Undefined.Null.Boolean.Number和String.还有1中复杂的数据类型----O ...

  9. 推荐几个优秀的java爬虫项目

    java爬虫项目   大型的: Nutch apache/nutch · GitHub 适合做搜索引擎,分布式爬虫是其中一个功能. Heritrix internetarchive/heritrix3 ...

  10. SparseArray<E>详解

    SparseArray<E> 是官方推荐的用来替代 HashMap<Integer, E> 的一个工具类,相比来说有着更好的性能(其核心是折半查找函数(binarySearch ...