sheng的学习笔记-AI-规则学习(rule learning)

embedded/2024/12/22 9:04:24/

 AI目录:sheng的学习笔记-AI目录-CSDN博客

什么是规则学习

机器学习中的“规则”(rule)通常是指语义明确、能描述数据分布所隐含的客观规律或领域概念、可写成“若……,则……”形式的逻辑规则。​“规则学习”(rule learning)是从训练数据中学习出一组能用于对未见示例进行判别的规则。

一条规则形如:

在数理逻辑中“文字”专指原子公式(atom)及其否定。

与神经网络、支持向量机这样的“黑箱模型”相比,规则学习具有更好的可解释性,能使用户更直观地对判别过程有所了解。另一方面,数理逻辑具有极强的表达能力,绝大多数人类知识都能通过数理逻辑进行简洁的刻画和表达。例如“父亲的父亲是爷爷”这样的知识不易用函数式描述,而用一阶逻辑则可方便地写为“爷爷(X,Y)←父亲(X,Z)∧父亲(Z,Y)”​,因此,规则学习能更自然地在学习过程中引入领域知识。此外,逻辑规则的抽象描述能力在处理一些高度复杂的AI任务时具有显著的优势,例如在问答系统中有时可能遇到非常多、甚至无穷种可能的答案,此时若能基于逻辑规则进行抽象表述或者推理,则将带来极大的便利。

假定我们从西瓜数据集学得规则集合ℛ:

规则1:好瓜←(根蒂=蜷缩)∧(脐部=凹陷)​;

规则2:¬好瓜←(纹理=模糊)​。

规则1的长度为2,它通过判断两个逻辑文字的赋值(valuation)来对示例进行判别。符合该规则的样本(例如西瓜数据集2.0中的样本1)称为被该规则“覆盖”(cover)。需注意的是,被规则1覆盖的样本是好瓜,但没被规则1覆盖的未必不是好瓜;只有被规则2这样以“¬好瓜”为头的规则覆盖的才不是好瓜。

规则冲突

规则集合中的每条规则都可看作一个子模型,规则集合是这些子模型的一个集成。

当同一个示例被判别结果不同的多条规则覆盖时,称发生了“冲突”(conflict),解决冲突的办法称为“冲突消解”(conflict resolution)。

常用的冲突消解策略有投票法、排序法、元规则法等。

  • 投票法是将判别相同的规则数最多的结果作为最终结果。
  • 排序法是在规则集合上定义一个顺序,在发生冲突时使用排序最前的规则;相应的规则学习过程称为“带序规则”(ordered rule)学习或“优先级规则”(priority rule)学习。
  • 元规则法是根据领域知识事先设定一些“元规则”(meta-rule),即关于规则的规则,例如“发生冲突时使用长度最小的规则”​,然后根据元规则的指导来使用规则集。

默认规则

从训练集学得的规则集合也许不能覆盖所有可能的未见示例,

例如前述规则集合ℛ无法对“根蒂=蜷缩”​、​“脐部=稍凹”且“纹理=清晰”的示例进行判别;这种情况在属性数目很多时常出现。

因此,规则学习算法通常会设置一条“默认规则”(default rule),由它来处理规则集合未覆盖的样本;例如为ℛ增加一条默认规则:​“未被规则1,2覆盖的都不是好瓜”​。

命题规则”(propositional rule)和“一阶规则”(first-order rule)

规则1:好瓜(X)←根蒂(X,蜷缩)∧脐部(X,凹陷)​;

规则2:¬好瓜(X)←纹理(X,模糊)​。

命题规则是一阶规则的特例,因此一阶规则的学习比命题规则要复杂得多。

 


http://www.ppmy.cn/embedded/109355.html

相关文章

影响画布微信小程序canvas及skyline和webview用户界面布局的关键流程

影响微信小程序画布canvas及skyline和webview用户界面布局的关键流程 目录 影响微信小程序画布canvas及skyline和webview用户界面布局的关键流程 一、微信小程序canvas开发流程 1.1、官方指南 1.2、客制化开发 第一步:在 WXML 中添加 canvas 组件 第二步&…

网络安全评测评技术与标准

网络安全测评概况 概念 参照一定的标准规范要求,通过一系列技术和管理方法,获取评估对象网络安全状况信息,对其给出相应网络安全情况综合判定 测评对象:信息系统的组成要素或信息系统自身 CC(Common Criteria&#…

虚拟机苹果系统的QT安装体验

前言 苹果系统MacOS中除了安装XCode,完全可以安装QT。本质上来讲,苹果系统就是Linux改装版本,实际上和Ubuntu非常的接近。 1、Mac对应的QT安装包的下载 安装参考链接:MacOS下Qt 5开发环境安装与配置_macos qt-CSDN博客 苹果系统…

docker-mysql容器数据卷挂载

一、案例2-mysql容器的数据挂载 1-1、需求 查看mysq|容器,判断是否有数据卷挂载基于 宿主机目录实现MySQL数据目录、配置文件、初始化脚本的挂载(查阅官方镜像文档) 二、判断该容器是否有数据卷挂载 2-1、查看容器详情 nginx:还可以是容器id docker…

计算机组成原理(第一课)

计算机系统概述 1.发展史 摩尔定律:集成电路上可以容纳的晶体管数目在大约每经过18个月到24个月便会增加一倍 2.操作系统组成 存储程序程序控制 五个部分记住: 输入输出功能 I/O 记忆功能 访问 计算功能 计算 判断功能 判断 自我控制功能 自我控制…

前端XSS 攻击与SQL注入 处理

前端XSS 攻击与SQL注入 处理 文章目录 前端XSS 攻击与SQL注入 处理 一、XSS 攻击与SQL注入是什么二、XSS 攻击与SQL注入包含哪些方式1. XSS 攻击方式2. SQL 注入方式 三、如何避免XSS 攻击与SQL注入1. 避免XSS 攻击2. 避免SQL 注入 四、扩展与高级技巧1. XSS 防御策略2. SQL 注…

负载均衡调度器--LVS

文章目录 集群和分布式集群分布式 LVS介绍LVS特点LVS工作原理LVS集群架构 LVS集群中的术语CIPVIPRSDIPRIP LVS集群的工作模式NAT模式DR模式DR的工作原理DR的特点:DR的网络配置1.配置负载均衡器2.配置后端服务器lo接口的作用 3.测试连接: DR的典型应用场景 TUN模式 L…

Pytorch中不同的Norm归一化详细讲解

在做项目或者看论文时,总是能看到Norm这个关键的Layer,但是不同的Norm Layer具有不同的作用,准备好接招了吗?(本文结论全部根据pytorch官方文档得出,请放心食用) 一. LayerNorm LayerNorm的公…