[FML]学习笔记三 Rademacher Complexity
该章节证明用到的不等式:Hoeffding不等式,McDiarmid不等式以及jensen不等式
Hoeffding's:
McDiarmid不等式是Hoeffding不等式的一个推广,用f(S)代替了和函数Sm,用ci代替了(bi-ai):
Jensen’s inequality:
If x is a random variable and φ is a convex function,then:
φ(E(x))<=E(φ(x))
在前面PAC Learning Model的推广中,只证明了对于有限H的情况下PAC的有效性,那么对于H的大小是无限的情况,是否能够 进行有效的学习呢?在前一章中的矩阵的例子就是一个无限H大小的例子,并且已经被证明了是PAC-learnable的。本章中我们将要为无限大小的假设集H的情况推导general learning guarentees。
既然H的大小是无限的,那么我们就不能用H的大小来表示H的complexity,在这里引入Rademacher Complexity的概念来标记H的complexity。
g是一个损失函数将(x,y)映射至L(h(x),y),G是g的集合。
Rademacher Complexity通过测量一个假设集H能够fit随机噪点的程度来表达H的complexity:
注意,б的取值是离散的{-1,1}
我们知道向量的内积可以表示两个向量的关系程度,empirical Rademacher complexity测量的就是函数集G在S上与random noise的关系程度。我们知道complexity越大的G就会有越多的gs,那么就能够更好的适应random noise。
下面基于Rademacher complexity给出第一个generalization bound:
将(3.13)得到的结论以及(3.5)带回(3.7),并且使用δ/2替代δ,就得到了(3.3)的推论。
这里有一点不太懂个,为什么changing one point in S changes Rs(G) by at most 1/m?????????
下面在具有0-1 loss function的binary classification上使用Redemacher Complexity:
也就是说,损失函数集G的经验Redemacher Complexity是假设集的经验Remacher Complexity的一半。
两边取期望可以得到对于任何一个样本集大小m>=1的binary classification,有:
证明很简单:
可以利用lemma 3.1对二项分类问题使用公式(3.3)(3.4)得到generalization bound:
注意这里的R(h)是损失函数不是Redemacher。
[FML]学习笔记三 Rademacher Complexity的更多相关文章
- Oracle学习笔记三 SQL命令
SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)
- [Firefly引擎][学习笔记三][已完结]所需模块封装
原地址:http://www.9miao.com/question-15-54671.html 学习笔记一传送门学习笔记二传送门 学习笔记三导读: 笔记三主要就是各个模块的封装了,这里贴 ...
- JSP学习笔记(三):简单的Tomcat Web服务器
注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...
- java之jvm学习笔记三(Class文件检验器)
java之jvm学习笔记三(Class文件检验器) 前面的学习我们知道了class文件被类装载器所装载,但是在装载class文件之前或之后,class文件实际上还需要被校验,这就是今天的学习主题,cl ...
- VSTO学习笔记(三) 开发Office 2010 64位COM加载项
原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...
- Java IO学习笔记三
Java IO学习笔记三 在整个IO包中,实际上就是分为字节流和字符流,但是除了这两个流之外,还存在了一组字节流-字符流的转换类. OutputStreamWriter:是Writer的子类,将输出的 ...
- NumPy学习笔记 三 股票价格
NumPy学习笔记 三 股票价格 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.&l ...
- Learning ROS for Robotics Programming Second Edition学习笔记(三) 补充 hector_slam
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(三) indigo rplidar rviz slam
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
随机推荐
- Centos common software install
1.本地安装soft yum localinstall xxx.rpm 2.kolourpaintyum install kolourpaint
- Java虚拟机--字节码指令集
1. 字节码指令集简介: Java虚拟机的指令由一个字节长度的,代表着某种特定操作含义的操作码(Opcode)以及跟随其后的零至多个代表此操作所需参数的操作数(Operands)所构成.虚拟机中许多指 ...
- 利用ARM批量自动化创建SSD多磁盘RAID0虚拟机
在实际生产环境大规模部署的时候,有时需要能批量创建多台Linux虚拟机,并且该虚拟机带多个硬盘,一些数据库环境,比如MySQL和MongoDB等,会需要超过10000de IOPS, 那么创建的虚拟机 ...
- dom4j解析xml字符串
import java.util.Iterator; import java.util.List; import org.dom4j.Document; import org.dom4j.Docume ...
- qt 拖拽 修改大小(使用了nativeEvent和winEvent)
http://www.cnblogs.com/swarmbees/p/5621543.html http://blog.sina.com.cn/s/blog_9e59cf590102w3r6.html
- NSIS操作系统环境变量
手头有个项目需要修改PATH变量 需要!include "EnvVarUpdate.nsh" 以下是NSIS脚本代码 ; Script generated by the HM NI ...
- 数据库范式(1NF 2NF 3NF BCNF)详解
数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的.结构明晰的,同时,不会发生插入(insert).删除(delete)和更新(update)操作异常.反之则是乱七八糟,不仅给 ...
- 我所理解的设计模式(C++实现)——状态模式(State Pattern)
概述: 看看我们平时用的开关,同样一个开关他有2种状态:开和关,当她处于不同的状态的时候她的行为是不一样的,比如当她是开着的时候,你按她一下,她就变成了关闭状态,她是关着的时候按她一下,她就变成了开着 ...
- Android Fragment详解(五):Fragment与Activity通讯
与activity通讯 尽管fragment的实现是独立于activity的,可以被用于多个activity,但是每个activity所包含的是同一个fragment的不同的实例. Fragment可 ...
- C/C++笔试准备(2)
问题:编辑距离,是指将一个字符串变为另一个字符串,仅可以3种操作:修改一个字符,删除一个字符,插入一个字符.the变成that:删除e,插入a,插入t.20’ 实现编辑距离算法. 解算:利用动态规划的 ...