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. 【C#进阶系列】09 关于参数的故事

    可选参数和命名参数 不多说,上代码,自然懂 class Program { static void Main(string[] args) { var troy = new Troy(); troy. ...

  2. 【JS复习笔记】01 基本语法

    数字: JS只有一种数字类型,相当于double.(不知道为什么,我每次打double输入法都会出现逗比了三个字) NaN是一个数值,可以用isNaN(number)检测NaN Infinity表示所 ...

  3. csharp: NHibernate and Entity Framework (EF) (object-relational mapper)

    代码生成器: 1. http://www.codesmithtools.com/ 2.https://sourceforge.net/projects/mygeneration/ 3. http:// ...

  4. 泛函编程(8)-数据结构-Tree

    上节介绍了泛函数据结构List及相关的泛函编程函数设计使用,还附带了少许多态类型(Polymorphic Type)及变形(Type Variance)的介绍.有关Polymorphism的详细介绍会 ...

  5. C程序(3)

  6. PHP学习笔记:MySQL数据库的操纵

    Update语句 Update 表名 set 字段1=值1, 字段2=值2  where  条件 练习: 把用户名带  ‘小’的人的密码设置为123456@ 语句:UPDATE crm_user SE ...

  7. ahjesus 捕获entity framework生成的sql语句

    网上这方面的资料很少,找到一个可以用的 http://code.msdn.microsoft.com/EFProviderWrappers 里面有dll可以下载,有教程,不过是E文的. 在Entity ...

  8. [小北De编程手记] : Selenium For C# 教程目录

    写<Selnium For C#>系列文章的初衷是因为有很多朋友问我应该从哪里开始学习自动化测试,于是就为大家写下了这个系列的文章,希望对你有些帮助吧.而我想表达的是Selenium(同时 ...

  9. [翻译]:SQL死锁-为什么会出现死锁

    下面这篇对理解死锁非常重要,首先死锁是如何产生的我们要清楚. We already know why blocking occurs in the system and howto detect an ...

  10. vmware mysql报kernel: EXT4-fs (dm-0): Unaligned AIO/DIO on inode 1055943 by mysqld; performance will be poor

    kernel: EXT4-fs (dm-0): Unaligned AIO/DIO on inode 1055943 by mysqld; performance will be poor