3 机器学习之假设空间

news/2024/10/19 3:37:10/

归纳(induction)与演绎(deduction)是科学推理的两大基本手段。前者是从特殊到一般的“泛化”(generalization)过程,即从具体的事实归结出一般性规律;后者则是从一般到特殊的“特化”(specialization)过程,即从基础原理推演出具体状况。例如,在数学公理系统中,基于一组公理和推理规则推导出与之相洽的定理,这是演绎;而“从样例中学习”显然是一个归纳的过程,因此亦称“归纳学习”(inductivelearning)。

归纳学习有狭义与广义之分,广义的归纳学习大体相当于从样例中学习,而狭义的归纳学习则要求从训练数据中学得概念(concept),因此亦称为“概念学习”或“概念形成”​。概念学习技术目前研究、应用都比较少,因为要学得泛化性能好且语义明确的概念实在太困难了,现实常用的技术大多是产生“黑箱”模型。然而,对概念学习有所了解,有助于理解机器学习的一些基础思想。

概念学习中最基本的是布尔概念学习,即对“是”​“不是”这样的可表示为0/1布尔值的目标概念的学习。举一个简单的例子,假定我们获得了这样一个训练数据集:

表1.1 西瓜数据集


更一般的情况是考虑形如(A∧B)∨(C∧D)的析合范式。

这里要学习的目标是“好瓜”​。暂且假设“好瓜”可由“色泽”​“根蒂”​“敲声”这三个因素完全确定,换言之,只要某个瓜的这三个属性取值明确了,我们就能判断出它是不是好瓜。于是,我们学得的将是“好瓜是某种色泽、某种根蒂、某种敲声的瓜”这样的概念,用布尔表达式写出来则是“好瓜。​(色泽=?​)∧(根蒂=?​)∧(敲声=?​)​”​,这里“​?​”表示尚未确定的取值,而我们的任务就是通过对表1.1的训练集进行学习,把“​?​”确定下来。

“记住”训练样本,就能力。如果仅仅把训练集中的瓜“记住”​,是所谓的“机械学习”​[Cohen and Feigenbaum,1983]​,或称“死记硬背式学习”​,参见(1.5 发展历程)​。

读者可能马上发现,表1.1第一行:​“​(色泽=青绿)∧(根蒂=蜷缩)∧(敲声=浊响)​”不就是好瓜吗?是的,但这是一个已见过的瓜,别忘了我们学习的目的是“泛化”​,即通过对训练集中瓜的学习以获得对没见过的瓜进行判断的能力。如果仅仅把训练集中的瓜“记住”​,今后再见到一模一样的瓜当然可判断,但是,对没见过的瓜,例如“​(色泽=浅白)∧(根蒂=蜷缩)∧(敲声=浊响)​”怎么办呢?

这里我们假定训练样本不含噪声,并且不考虑“非青绿”这样的操作。由于训练集包含正例,因此假设自然不出现。

我们可以把学习过程看作一个在所有假设(hypothesis)组成的空间中进行搜索的过程,搜索目标是找到与训练集“匹配”(fit)的假设,即能够将训练集中的瓜判断正确的假设。假设的表示一旦确定,假设空间及其规模大小就确定了。这里我们的假设空间由形如“​(色泽=?​)∧(根蒂=?​)∧(敲声=?​)​”的可能取值所形成的假设组成。例如色泽有“青绿”​“乌黑”​“浅白”这三种可能取值;还需考虑到,也许“色泽”无论取什么值都合适,我们用通配符“”来表示,例如“好瓜。​(色泽=)∧(根蒂=蜷缩)∧(敲声=浊响)​”​,即“好瓜是根蒂蜷缩、敲声浊响的瓜,什么色泽都行”​。此外,还需考虑极端情况:有可能“好瓜”这个概念根本就不成立,世界上没有“好瓜”这种东西;我们用表示这个假设。这样,若“色泽”​“根蒂”​“敲声”分别有3、3、3种可能取值,则我们面临的假设空间规模大小为4×4×4+1=65。图1.1直观地显示出了这个西瓜问题假设空间。
图1.1 西瓜问题的假设空间
在这里插入图片描述

有许多可能的选择,如在路径上自顶向下与自底向上同时进行,在操作上只删除与正例不一致的假设等。

可以有许多策略对这个假设空间进行搜索,例如自顶向下、从一般到特殊,或是自底向上、从特殊到一般,搜索过程中可以不断删除与正例不一致的假设、和(或)与反例一致的假设。最终将会获得与训练集一致(即对所有训练样本能够进行正确判断)的假设,这就是我们学得的结果。

需注意的是,现实问题中我们常面临很大的假设空间,但学习过程是基于有限样本训练集进行的,因此,可能有多个假设与训练集一致,即存在着一个与训练集一致的“假设集合”​,我们称之为“版本空间”(version space)。例如,在西瓜问题中,与表1.1训练集所对应的版本空间如图1.2所示。
图1.2 西瓜问题的版本空
在这里插入图片描述


http://www.ppmy.cn/news/1540171.html

相关文章

MySQL中表的操作

目录 一、查看所有表 1.1、语法 二、创建表 2.1、语法 2.2、示例: 2.3、创建数据加时使⽤校验语句[if not exists] 三、查看表结构 3.1、语法 3.2、示例 四、删除表 4.1、语法 4.2、示例 4.3、注意事项 五、主要数据类型 5.1、数值类型 5.2、日期和…

MyBatis的详细大全,结合项目(Day35)

1 学习目标 了解MyBatis的介绍和历史重点掌握SpringBoot整合MyBatis重点掌握MyBatis基于注解方式重点掌握MyBatis基于XML方式 2 MyBatis介绍 MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取…

Android常用界面控件——ImageView

目录 1 ImageView 1.1在XML 中定义ImageView: 1.1.1 ImageView常用XML属性 1.1.2 ImageView ScaleType用法 1.2 在Java代码中控制ProgressBar: 1.3 区别总结 1.3.1 应用场景选择建议 1 ImageView ImageView,图像视图,直接…

人员跌倒检测系统的设计与实现(Yolov Python38 深度学习)+文档

💗博主介绍💗:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示:文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…

.net core 3.0 与 6.0 有哪些不同

.NET Core 3.0 和 .NET 6.0(注意,从 .NET 5.0 开始,微软将 .NET Core 和 .NET Framework 合并为一个统一的 .NET 平台)之间有许多重要的区别。这些区别包括性能改进、新功能、API 的变化以及对不同平台的支持。下面是一些主要的区…

RA6M5——GPIO

文章目录 GPIO输入输出RASC图形化配置输出模式:输入模式:配置选项: 接口函数实例代码: GPIO输入输出 RASC图形化配置 输出模式: 输入模式: 配置选项: 配置项取值/描述Model “Input mode”&a…

被DNS污染劫持,怎么见招拆招?

在畅游互联网的海洋时,我们可能会遭遇DNS污染劫持这一 “暗礁”,它就像一个隐藏在暗处的 “海盗”,干扰着我们正常的网络航行。那么,当遇到DNS污染劫持时,我们该如何见招拆招呢? 首先,我们要明…

千兆超薄lan transformer H82412S应用主板英特尔光仟网卡

千兆超薄lan transformer H82412S应用主板英特尔光仟网卡:I992643OO38 网卡网络变压器应用广泛,但如何找到适合自己公司使用的产品,还真要对网络变压器有一定的了解才行,这节将和大家分享有关知识点,希望大家喜欢。一&…