We want:

根据Hoeffding:

但是M是无穷大的,是否可以找到一个有穷大的m_H去替代无穷大的M?
思考:M从何而来。

Hset里有M个h,对于每个Data,只要存在一个h会造成Bad,即Ein和Eout差很远,则称该Data是一个Bad sample,因此是用or的关系。这里的upper bound之所以是可以加起来的,是因为假设了Bad sample发生在不同的h上,即h1(D1)是Bad的,h2(D1)就不会Bad。但是这种假设是不对的。例如:对于两个很接近的h,他们对于同一个Data,会产生几乎接近的Ein。

所以不能通过直接把概率相加起来的办法作为Bad产生的概率上限。
考虑:可否将线,也就是h分组。结论是可以的。
方法:对于N个x,从x_1到x_N,即使h是无限个的,但是通过这些h,把这N个x分出来的结果是有限个的,例如对于N等于2,x1和x2被分的所有可能就只有4种。00,01,10,11。

定义:一个Hset是由很多个用来区分x的h组成的,表达如下:

现在定义二分(dichotomy):

Hset和dichotomy set的区别

定义dichotomy set的大小

这是依赖于输入的N。为了去除这种依赖,定义成长函数growth function:

怎样计算m_H(N)呢?
1D情况1:positive ray在threshold左边为-1右边+1

m_H(N) = N+1。因为有N+1个地方可以放分割线。
情况2:在interval内为+1,其他为-1


右边的1那一项表示没有点在interval内,即全部是-1
2D情况:在convex set内为+1,外面为-1。假设输入的N个x在一个大圆上,那么H里的所有h都可以实现不同的dichotomy。

shattered:特别的N个点,可以做出2^N个dichotomy。
总结:

定义:break point
第一个做不出2^k个dichotomy的点的个数(e.g:2d:k=4) convex set没有break point

以下的情况是h没有办法产生的dichotomy

Infinite size of Hypothesis set and growth function的更多相关文章

  1. [Vue warn]: You may have an infinite update loop in a component render function

    [Vue warn]: You may have an infinite update loop in a component render function 这个问题很奇怪,之前从来没有遇到过.如果 ...

  2. [under the hood]Reduce EXE and DLL Size with LIBCTINY.LIB

    Matt Pietrek Download the code for this article: Hood0101.exe (45KB) W ay back in my October 1996 co ...

  3. First-class function

    https://en.wikipedia.org/wiki/First-class_function In computer science, a programming language is sa ...

  4. OpenCV Error: Assertion failed (src.size == dst.size && src.channels() == dst.channels()) in cvConvertScale

    发现问题:在做kinect采集的深度图去噪的时候遇到了cvConvertScale格式转换的问题. OpenCV Error: Assertion failed (src.size == dst.si ...

  5. 机器学习基石 5 Training versus Testing

    机器学习基石 5 Training versus Testing Recap and Preview 回顾一下机器学习的流程图: 机器学习可以理解为寻找到 \(g\),使得 \(g \approx f ...

  6. Microsoft SQL Server Trace Flags

    Complete list of Microsoft SQL Server trace flags (585 trace flags) REMEMBER: Be extremely careful w ...

  7. Foundations of Machine Learning: The PAC Learning Framework(1)

    写在最前:本系列主要是在阅读 Mehryar Mohri 等的最新书籍<Foundations of Machine Learning>以及 Schapire 和 Freund 的 < ...

  8. Exercises for IN1900

    Exercises for IN1900October 14, 2019PrefaceThis document contains a number of programming exercises ...

  9. TCP拥塞控制算法 优缺点 适用环境 性能分析

    [摘要]对多种TCP拥塞控制算法进行简要说明,指出它们的优缺点.以及它们的适用环境. [关键字]TCP拥塞控制算法 优点    缺点   适用环境公平性 公平性 公平性是在发生拥塞时各源端(或同一源端 ...

随机推荐

  1. outline详解

    outline这个属性平时用的不太多,最近被问及专门研究一下这个属性的作用. CSS2加进来的outline属性,中文翻译过来是外轮廓. 神马是轮廓? 轮廓,指边缘:物体的外周或图形的外框. 那这样的 ...

  2. Linux 下的jdk安装

    Linux 下安装JDK1.8 https://www.cnblogs.com/xuliangxing/p/7066913.html http://www.oracle.com/technetwork ...

  3. Python基础笔记系列七:字符串定义和访问

    本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 字符串定义和访问 1.字符串基础 a.字符串可以用单引号.双引号.三引号( ...

  4. java.net.SocketException: Connection reset 问题分析

    1. socket编程时容易碰到如下异常: java.net.SocketException: Connection reset by peer: socket write error at java ...

  5. BOM(Browser Object Model) 浏览器对象模型

    JavaScript 实现是由 3 个部分组成:核心(ECMAScript),文档对象模型(DOM),浏览器对象模型(BOM) BOM(Browser Object Model) 浏览器对象模型BOM ...

  6. c# 计算中文字节数与JAVA不符的解决方法

    c# 中方法 string str = "中华人民共和国"; int strLen = System.Text.Encoding.Default.GetByteCount(str) ...

  7. Kotlin------数据类型和语法

    今天简单的来介绍Kotlin的基本语法.编程语言大多相通的,会基础学起来都很快,理论都一样,实现的代码语言不一样而已. 数值类型 Kotlin 处理数值的方法和 java 很相似,但不是完全一样.比如 ...

  8. Python连接SQLite数据库代码

    import sqlite3 # create database conn = sqlite3.connect('test.db') #不存在就创建后再打开 print ("Opened d ...

  9. MySQL设置某一字段默认为0,但是插入数据化却显示为null

    1.MySQL字段默认的含义:在插入时不指定该字段的值:2.以mybatis举例,如果是插入实体,那么为空的字段就会插入空:3.如果不想mybatis等持久化工具插入空,可以尝试insertSelec ...

  10. 【收藏】SQL多行变一列

    CREATE TABLE DEPT (DeptNo INT IDENTITY(1, 1)NOT NULL ,  Country VARCHAR(50) ,  Location VARCHAR(50) ...