第四章.­ ­ Feasibility of Learning

news2024/11/6 9:35:19

第四章.­ ­ Feasibility of Learning

本章主要介绍机器学习的可行性,讨论问题是否可以使用机器学习来解决。

4.1 Learning is Impossible

1.示例描述

1).九宫格样本类型的预测描述:

·图中有6个样本,分成两个类别(+1和-1),通过已知样本来预测新样本的类别?
在这里插入图片描述
· 新样本类别的预测方法:
①.若根据九宫格的对称性,我们会把它归类为﹢1。
②.若根据九宫格左上角是否为黑色,我们会把它归类为﹣1。

·结论:
根据不同的特性进行分类可以得到不同的分类结果,这些结果貌似都是正确的。

2).数学化二分类示例

·输入特征x是三维数据,训练样本D有5个,测试样本有3个,假设有8个hypothesis,这8个hypothesis在D上,其中5个训练样本的分类是完全正确的(g≈f成立),另外3个测试样本,在不同hypothesis上的表现有好有坏(g≈f不一定成立)。
在这里插入图片描述
·结论
①.这个例子告诉我们,我们想要在D以外的数据更接近目标函数似乎是做不到的,只能保证对D有很好的分类结果。机器学习的这种特性被称为没有免费午餐(No Free Lunch),简称NFL。
②.NFL定理表明没有一个机器学习算法可以在任何领域总是产生最精准的学习器.
③.不管采用何种学习算法,至少存在一个目标函数,能够使得随机猜测算法是最好的算法,平常所说的一个算法比另一个算法效果更好,只是针对特定条件而言。

4.2 Probability to the Rescue

在4.1中可知:对训练集D以外的样本,机器学习的模型很难对所有测试集都做出正确预判或分类,那是否可以使用一些工具或者方法对未知的目标函数做一些推论,让我们的机器学习模型适用性更加广泛呢?

1.示例

·描述:

如果有一个装有很多橙色球和绿色球的罐子,我们能不能推断橙色球的比例u?

·方法:

根据统计学方法:从罐子中随机取出N个球,作为样本,计算这N个球中橙色球的比例v,那么就可以估计出罐子中橙色球的比例约等于v。
在这里插入图片描述

·数学推导:v和u是否接近

1).已知u是罐子里橙色球的比例,v是抽取N个样本中橙色球的比例,当N足够大的时候,v接近于u,这就是Hoeffding’s inequality:请添加图片描述
2).Hoeffding不等式说明当N很大的时候,v和u相差不会很大,它们之间的的差值被限定在ε之内,我们把结论v=u称为probably approximately correct(PAC)。
请添加图片描述

4.3 Connection to Learning

1.示例描述

·如何将罐子的示例对应到机器学习的概念上
1).机器学习中hypothesis与目标函数相等的可能性类比于罐子中橙色球的概率问题;
2).罐子中的每颗小球类比于机器学习样本空间中的x;
3).绿色弹珠类比于h(x)与f相等;橙色弹珠类比于h(x)与f不相等
4).从罐子中抽取的N个小球类比于机器学习中的训练样本D,且这两种抽样的样本与总体样本之间是独立分布的。

·结论:
如果样本N足够大,且是独立分布的,那么从样本中h(x) ≠ g(x)的概率就能推导出在抽样样本外的所有样本中h(x) ≠ g(x)的概率是多少请添加图片描述

2.推论

1).将抽样中橙色小球的概率理解为样本数据集D上h(x)错误概率,以此推算出在所有数据上h(x)的错误概率,这是机器学习的工作本质,也是我们可以通过小批量的数据来推测整体数据的原因。
在这里插入图片描述
2).这里我们引入两个值Ein(h)和Eout(h)。Ein(h)表示在抽样样本中h(x)与yn不相等的概率;Eout(h)表示在所有样本中h(x)与yn不相等的概率;请添加图片描述
3).Hoeffding’s inequality可以表示为:
在这里插入图片描述
①.该不等式表明:Ein(h)= Eout(h)也是PAC的,如果Ein(h)≈ Eout(h),Ein(h)很小,那么就能推断出 Eout(h)很小,也就是说在该数据分布P下,h与f非常接近,机器学习的模型比较准确。

②.一般地,如果h是固定的,N很大的情况, Ein(h)≈ Eout(h),但并不意味着g≈f。因为h是固定的,不能保证 Ein(h)足够小,即使 Ein(h)≈ Eout(h),也可能使Eout(h)偏大。所以,一般会通过演算法A来选择最好的h,使 Ein(h)足够小,从而保证Eout(h)很小。固定的h,使用新数据进行测试,验证其错误率是多少。
在这里插入图片描述

4.4 Connection to Real Learning

1.有多个hypothesis的情况

假设有M个罐子(即有M个hypothesis),若其中某个罐子抽样到的小球全是绿色,那是不是应该选择这个罐子呢?

1).示例描述

假设有150个人抛硬币,那么其中至少有一个人连续抛5次硬币都是正面的概率:
在这里插入图片描述

2).结论

这个概率是很大的,但是也不能说明该硬币单次正面朝上的概率很大,其实都是0.5,一样的道理,抽到全是绿色小球的时候也不能说明这个罐子里都是绿色的球,当罐子数目很多或者抛硬币的人数很多的时候,都会引发这种情况,称为Bad Sample。(Bad Sample就是Ein和Eout 差别很大,即选择过多带来的负面影响,选择过多会恶化不好的情形。)

3).根据许多次抽样得到的不同数据集D,Hoeffding’s inequality保证了大多数的D都是比较好的情况(即对于某个h,保证Ein≈Eout),但是也有可能出现Bad Data,即Ein和Eout差别很大的数据集D,这是小概率时间。
在这里插入图片描述
4).也就是说:不同的数据集Dn,对于不同的hypothesis,也可能称为Bad Data,只要Dn在某个hypothesis上是Bad Data,那么Dn就是Bad Data。只有当Dn在所有的hypothesis上都是Good Data,那Dn才不是Bad Data,可以自由选择演算法A进行建模,那么,根据Hoeffding’s inequality,Bad Data的上界可以表示为连级(union bound)的形式:
在这里插入图片描述
参数说明:
①.M:hypothesis的个数
②.N:样本D的数量

5).连级(union bound)表明,当M有限,且N足够大的时候,Bad Data出现的概率会很小,既能保证D对于所有的h都有Ein≈Eout,满足PCA,演算法A的选择不受限制,那么满足这种union bound情况,我们就可以和之前一样,选取一个合理的演算法(PLA/pocket),选择使Ein最小的hm作为矩g,一样能保证g≈f,有不错的泛化能力。

6).如果hypothesis的个数M是有限的,N足够大,那么通过演算法A,任意选择一个矩g,都有Ein≈Eout成立;同时,如果找到一个矩g,使Ein≈0,PAC就能保证Eout≈0。至此,就证明了机器学习是可行的。
在这里插入图片描述

4.5 总结

本章主要介绍了机器学习的可行性,首先引入了NFL定理,说明机器学习无法找到一个矩g能够完全和目标函数f一样,然后介绍了可以采用一些统计上的假设,例如Hoeffding不等式,建立Ein和Eout的联系,证明对于某个h,当N足够大的时候,Ein和Eout是PAC的。对于h个数很多的情况,只要有h个数M是有限的,且N足够大,就能保证Ein≈Eout,证明机器学习是可行的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/686896.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

pytorch搭建VGG网络

pytorch搭建VGG网络 CNN 感受野VGG-16搭建VGG网络model.pytrain.pypredict.py VGG 网络的创新点:通过堆叠多个小卷积核来替代大尺度卷积核,可以减少训练参数,同时能保证相同的感受野。 例如,可以通过堆叠两个 33 的卷积核替代 5x5…

SpringSecurity6.0+Redis+JWT基于token认证功能开发(可用于实际生产项目,保证API安全)

基于token认证功能开发 引子:最近做项目时遇到了一个特殊的需求,需要写共享接口把本系统的一些业务数据共享给各地市的自建系统,为了体现公司的专业性以及考虑到程序的扩展性(通过各地市的行政区划代码做限制)&#xf…

Java框架之spring AOP 和 IOC

写在前面 本文一起看下spring aop 和 IOC相关的内容。 1:spring bean核心原理 1.1:spring bean的生命周期 spring bean生命周期,参考下图: 我们来一步步的看下。 1 其中1构造函数就是执行类的构造函数完成对象的创建&#x…

第八十四天学习记录:Linux基础:初识Linux

流行的Linux发行版: 任何人都可以封装Linux,目前市面上有非常多的Linux发行版,常用的知名的如下: VMware WorkStations安装 安装完成后,要通过下图方式查看网络适配器是否正常配置: 配置成功&#xff1a…

软件需求分析文档怎么写?

什么是软件需求规范文档 (SRS)? 软件需求规范 (SRS) 文档列出了未来项目的需求、期望、设计和标准。其中包括规定项目目标的高级业务需求、最终用户要求和需求以及产品在技术方面的功能。简而言之,SRS 提供…

Vue-Element-Admin项目学习笔记(8)配置表单校验规则

前情回顾: vue-element-admin项目学习笔记(1)安装、配置、启动项目 vue-element-admin项目学习笔记(2)main.js 文件分析 vue-element-admin项目学习笔记(3)路由分析一:静态路由 vue-element-adm…

软考:中级软件设计师:校验码,汉明码纠错,信息位L和校验位r的关系

软考:中级软件设计师:校验码,汉明码纠错 提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联网大厂的笔试面试,都是…

Linux通过crontab定时执行脚本任务

Linux通过crontab定时执行脚本任务 前言1. 创建写入脚本2. 设置执行权限3. 添加定时任务定时任务语法格式每分钟写入一条信息到指定文件 4. 查看日志文件5. 定时执行脚本的作用和用途 前言 在Linux中可以使用crontab来定时执行脚本。crontab是一个用于管理定时任务的工具&…

我这样回答多线程并发,面试官直接惊叹!

目录 前言: 1.单线程执行 2、多线程执行 3.守护线程 4.阻塞线程 前言: 多线程并发是一种处理任务的方式,它可以在同一时间内执行多个任务。多线程并发通常应用于需要同时处理多个任务或同时运行多个程序的情况下。 1.单线程执行 Pyth…

便携式水污染检测设备可以分析多少项污水指标

便携式水污染检测设备可以分析多少项污水指标(以下只是一部分) 水质检测仪可检测范围 1、饮用水检测:生活用水(自来水)、(瓶、桶装)矿泉水、天然矿泉水等; 2、工业用水检测&#xf…

人机融合智能的现状与展望

本篇文章是博主在人工智能等领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对人工智能等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅解。文章分类在学习摘录和笔记专…

【开源库剖析】Shadow v2.3.0 源码解析

作者:Stan_Z 一、框架介绍 Shadow是19年腾讯开源的自研Android插件化框架,经过线上亿级用户量检验。 Shadow不仅开源分享了插件技术的关键代码,还完整的分享了上线部署所需要的所有设计。 优点: 1)复用独立安装app源…

Python可视化库之Matplotlib详解及使用方法

Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型的2D图表和一些基本的3D图表。本文主要推荐一个学习使用Matplotlib的步骤。 基本前提 如果你除了本文之外没有任何基础,建议用以下几个步骤学习如何使用matplotlib: 学习基本的matplotlib术语,尤其是…

第二十二章Java一维数组的定义、赋值和初始化

当数组中每个元素都只带有一个下标时,这种数组就是“一维数组”。一维数组(one-dimensional array)实质上是一组相同类型数据的线性集合,是数组中最简单的一种数组。 数组是引用数据类型,引用数据类型在使用之前一定要…

Reactor的概念

一、Reactor的概念 ​ Reactor模式是一种事件驱动模式,由一个或多个并发输入源(input),一个消息分发处理器(Initiation Dispatcher),以及每个消息对应的处理器(Request Handler)构成…

Linux安装nodejs

一、下载包 https://registry.npmmirror.com/binary.html?pathnode/ 比如:10.9.0 https://registry.npmmirror.com/binary.html?pathnode/v10.9.0/ 按需下载 https://registry.npmmirror.com/-/binary/node/v10.9.0/node-v10.9.0-linux-x64.tar.gz 二、上传到…

使用Nginx+Lua实现自定义WAF(Web application firewall)

转载https://github.com/unixhot/waf WAF 使用NginxLua实现自定义WAF(Web application firewall) 功能列表: 支持IP白名单和黑名单功能,直接将黑名单的IP访问拒绝。 支持URL白名单,将不需要过滤的URL进行定义。 支持…

解析vcruntime140.dll文件,缺失了要怎么去修复?

在计算机的世界中,vcruntime140.dll是一个重要的动态链接库文件。然而,有时候这个文件可能会引发一系列问题,影响应用程序的正常运行。如果你缺少了vcruntime140.dll,那么你的程序就会打不开,今天我们一起来聊聊vcrunt…

408数据结构第四章

串 定义存储结构模式匹配 小题形式考,比较简单,拿两个题来练手就会了 定义 字符串简称串 由零个或多个字符组成的有限序列 S是串名n称为串的长度,n0称为空串 串中多个连续的字符组成的子序列称为该串的子串 串的逻辑结构和线性表极为相似&am…

ByteHouse+Apache Airflow:高效简化数据管理流程

Apache Airflow 与 ByteHouse 相结合,为管理和执行数据流程提供了强大而高效的解决方案。本文突出了使用 Apache Airflow 与 ByteHouse 的主要优势和特点,展示如何简化数据工作流程并推动业务成功。 主要优势 可扩展可靠的数据流程:Apache Ai…