机器学习---规则学习(一阶规则学习、归纳逻辑程序设计)

news2024/11/22 18:41:15

1. 一阶规则学习

“一阶”的目的:描述一类物体的性质、相互关系,比如利用一阶关系来挑“ 更好的”瓜,但实际应用

中很难量化颜色、 …、敲声的属性值。一般情况下可以省略全称量词。

命题逻辑:属性-值数据

色泽程度:乌黑>青绿>q浅白;“根蒂弯度”:蜷缩>稍蜷>硬挺;“更好”:好瓜>坏瓜

关系型数据一阶逻辑:

序贯覆盖生成规则集:能否引入新变量?能否使用否定文字?能否允许递归?能否引入函数嵌套?

自顶向下学习单条规则,候选文字需考虑所有可能的选项:

规则生长的评判标准为FOIL增益:

2. 归纳逻辑程序设计

目标:完备地学习一阶规则(Horn子句);仍然以序贯覆盖方法学习规则集,一般采用自底向上

策略学习单条规则。不需要列举所有可能的候选规则;对目标概念的搜索维持在样例附近的局部区

域;自顶向下策略的搜索空间对于规则长度呈指数级增长。

2.1 最小一般泛化(LGG) [Plotkin, 1970]:

“泛化”:将覆盖率低的规则变换为覆盖率高的规则;“一般”:覆盖率尽可能高;“最小”:变换时对原

规则的改动尽可能小。

寻找两条规则LGG的步骤:

①找出两条规则中涉及相同谓词的文字

②考察谓词后括号里的项LGG(t,t)=t;LGG(s,t),s≠t;s, t不是谓词相同的项,则LGG(s,t)=VV

任意未出现过的变量;s, t为谓词相同的项,递归考察其括号内的

③删除没有相同谓词出现的文字

其他基于LGGILP算法:考虑否定文字,不同的初始化选择,多条特殊规则,考虑所有背景知识

RLGG[Plotkin, 1971] … 

2.2 演绎与归纳

“……猜想是很不好的习惯,它有害于作逻辑的推理。你所以觉得奇怪,是因为你没有了解我的思

路,没有注意到 往往能推断出大事来的那些细小 问题(the small facts upon which large

inferences may depend)。举例来说吧,我开始时曾说你哥哥的行为很不谨慎。请看这只表,不

仅下面边缘上有凹痕两处,整个表的上面还有无数的伤痕,这是因为惯于把表放在有钱币、钥匙一

类硬东西的衣袋里的缘故。对一只价值五十多镑的表这样不经心,说他生活不检点,总不算是过

吧!……。”

歇洛克·福尔摩斯     演绎法研究(The science of deduction)——《四签名》

演绎:归结原理

归纳:逆归结

如何考虑带变量的逻辑表达式?

置换:用项替换变量:

θ={1/X,2/Y},C=色泽更深(X,Y)^敲声更沉(X,Y)

C'=Cθ=色泽更深(1,2)^敲声更沉(1,2)

复合置换:θoλ;逆置换:θ-1

合一:通过置换让两个表达式相等:

A=色泽更深(1,X),θ={2/X,1/Y},Aθ=Bθ=色泽更深(1,2),B=色泽更深(Y,2)

最一般合一置换(MGU):任意一个合一置换都是MGU的复合置换

色泽更深(1,Y),色泽更深(X,Y),θ1={1/X}MGU;θ2={1/X,2/Y};θ3={Z/X,1/Z}

都是θ1与其他置换的复合

一阶归结:当

一阶逆归结:

比如:

找一个不在归结项C1中的L1使,令

存在一个解:

使得

四种完备的逆归结操作:

吸收:    辨识:

内构:互构:

吸收:                                                                                        辨识:

内构

互构:

逆归结中出现的q(M,N)是什么?

q(1,S)←纹理更清(1,S)q(1,T)←敲声更沉(1,T).

日晒更多?更新鲜?更甜?......

之前ILP甚至可以通过谓词发明进行递归规则学习[Muggleton andLin,2013]

自动发明得到的a(X,Y)即是楼梯的梯级

目标概念:“楼梯” 

常用工具:

WEKA中的JRIP(http://weka.sourceforge.net/doc.dev/weka/classifiers/rules/JRip.html

 ILP的集大成工具ALEPH(http://www.cs.ox.ac.uk/activities/machlearn/Aleph/aleph.html

 相对最小一般泛化:GOLEM(http://www.doc.ic.ac.uk/~shm/golem.html

逆演绎:Progol(http://www.doc.ic.ac.uk/~shm/progol.html

开源Prolog环境:YAP(http://www.dcc.fc.up.pt/~vsc/Yap/

SWI-Prolog(http://www.swi-prolog.org/

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

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

相关文章

ElasticSearch之Index Template 和Dynamic Template

写在前面 在ElasticSearch之Mapping 一文中我们一起看了es的dynamic mapping机制,通过该机制允许我们不需要显式的定义mapping信息,而是es根据插入的文档值来自动生成 ,比如插入如下的文档: {"firstName": "Chan…

【C语言】指针练习篇(下),深入理解指针---指针练习题【图文讲解,详细解答】

欢迎来CILMY23的博客喔,本期系列为【C语言】指针练习篇(下),深入理解指针---指针练习题【图文讲解,详细解答】,图文讲解指针练习题,带大家更深刻理解指针的应用,感谢观看,支持的可以…

ctfshow-web29~40-WP

web29 if(isset($_GET[c])){$c = $_GET[c];if(!preg_match("/flag/i", $c)){eval($c);}}else{highlight_file(__FILE__); } 首先先system(“ls”);查看一下文件 既然过滤了flag,那我们就fla*的形式进行匹配,结合tac命令输出flag.php文件内容

舵机PID控制

目录 舵机工作原理 舵机PID控制 原理介绍 代码 主代码 赋值PWM寄存器 限制PWM赋值 取绝对值 位置式PID控制 位置式离散PID 舵机工作原理 控制电路接收信号源的控制脉冲,并驱动电机转动:控制电路接收来自遥控器或者单片机的控制信号,然后驱…

milligram css 源码浅析

一、前言 milligram 是我在 20 年接触并使用的一个 CSS 库,他的出现时间已经无法溯源了,根据 npm 上的发布时间最早是 2015 年,而在国内名气起来的时间大概就是 2020 年了,同时 milligram 最后的更新也停在了那一年。 由于当时只…

[工具探索]VSCode介绍和进阶使用

相比较GoLand、PhpStorm、PyCharm、WebStorm的重量级内存占用,从Windows系统来,各种卡死,换到MacOS倒不会卡死,但是内存占用太多,影响体验,决定换到VSCode。当然这个过程需要适应过渡期,旧伙计都…

C++入门 上(命名空间 缺省参数 函数重载)

C入门 上 命名空间命名空间定义命名空间使用 C输入输出缺省参数缺省参数概念缺省参数分类 函数重载函数重载概念C支持函数重载的原理--名字修饰 命名空间 在C/C中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用…

阿里云服务器部署配置选择全攻略

阿里云服务器配置怎么选择?根据实际使用场景选择,个人搭建网站可选2核2G配置,访问量大的话可以选择2核4G配置,企业部署Java、Python等开发环境可以选择2核8G配置,企业数据库、Web应用或APP可以选择4核8G配置或4核16G配…

ActiveMQ高可用架构涉及常用功能整理

ActiveMQ高可用架构涉及常用功能整理 1. activemq的集群模式2. 镜像模式高可用系统架构和相关组件2.1 架构说明2.2 相关概念说明2.3 消息模型2.3.1 点对点2.3.2 发布订阅 3. activemq常用命令4. activemq配置集群5. 疑问和思考5.1 activemq的数据删除策略是怎样的?5…

已解决:IDEA中@Autowired自动注入MyBatis Mapper报红警告的几种解决方法

今天在使用 IDEA 使用 MyBatis 的时候遇到了这种情况: 可以看到 userMapper 下有个红色的波浪警告,虽然代码没有任何问题,能正常运行,但是这个红色警告在这里杵着确实让人很窝心。 于是我在网上找了找,最终明白了原因…

使用静态CRLSP配置MPLS TE隧道

正文共:1591 字 13 图,预估阅读时间:4 分钟 静态CRLSP(Constraint-based Routed Label Switched Paths,基于约束路由的LSP)是指在报文经过的每一跳设备上(包括Ingress、Transit和Egress&#xf…

DBeaver通用数据库管理 连接DM8 数据库及其配置

一.工具版本说明 DBeaver版本: 21.0.202106012023, 推荐官网下载。 DM8/达梦数据库: DM 8 Windows 官网安装手册 如果想深入了解DM8 数据库操作请参考:DM8/达梦 数据库管理员使用手册详解 二.DM8/达梦驱动下载 下载渠道/官方文档 DM 8/达梦技术…

LeetCode JS专栏刷题笔记(一)

一、前言 LeetCode 在前不久出了一个 JavaScript 专栏,这个专栏一个目的是为了非前端工程师学习 JS,另一个是为了前端工程师提升 JS 能力。 因此在这个专栏中,基本不涉及什么具体算法问题,都是一些 JS 的入门语法与常见的 JS 面…

Maven(基础)、MyBatis

简介 Apache Maven是一个项目管理和构建工具,它基于项目对象模型 (POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档 官网: http://maven.apache.org/ Maven作用 Maven是专门用于管理和构建Java项目的工具,它的主要功能有&#x…

Elasticsearch查询报错 Result window is too large

一现象: es数据分页查询前端提示系统异常,后端报错日志 二根本原因: 默认情况下,Elasticsearch 限制了 from size 参数的组合不能超过 10,000 条记录,用于防止查询大数据集时对系统资源的过度消耗 三解决办法&#…

JavaSE——面向对象基础(1/4)-面向对象编程、程序中的对象、对象的产生、对象的执行原理、类和对象的一些注意事项

目录 面向对象编程 程序中的对象 对象的产生 对象的执行原理 类和对象的一些注意事项 面向对象编程 开发一个一个的对象,把数据交给对象,再调用对象的方法来完成对数据的处理。 例如设计一个学生的对象,其中有姓名和成绩等&#xff0c…

可视化视频监控平台EasyCVR如何配置服务参数以免getbaseconfig接口信息泄露?

可视化云监控平台/安防视频监控系统EasyCVR视频综合管理平台,采用了开放式的网络结构,平台支持高清视频的接入和传输、分发,可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集…

【.NET Core】C#编程规范

【.NET Core】C#编程规范 文章目录 【.NET Core】C#编程规范一、概述1.1 结构清晰第一1.2 简洁之风1.3 代码风格保持一致性 二、命名约定三、类型参数命名指南3.1 请使用描述性名称命名泛型类型参数,除非单个字面名称完全具有自我说明性且描述性名称不会增加任何作用…

Redis(03)——发布订阅

基础命令 基于频道 publish channel message:将信号发送到指定的频道pubsub subcommand [argument [argyment]]:查看订阅或发布系统状态subscribe channel [channel]:订阅一个或多个频道的信息unsubscribe [channel [channel]]:退…

CSS:BFC

BFC,Block Formatting Context,块级格式化上下文,是一个独立的渲染区域或隔离的独立容器,它决定了其子元素如何布局,并且与这个区域外部的元素无关。 形成 BFC 的条件 float 的值不为 none(left、right&a…