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

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.mzph.cn/news/690962.shtml

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

相关文章

CSS:BFC

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

「连载」边缘计算(十六)02-19:边缘部分源码(源码分析篇)

(接上篇) edgecontroller剖析 edgecontroller功能模块启动函数的具体内容如下所示。 KubeEdge/cloud/pkg/edgecontroller/controller.go // Start controller func (ctl *Controller) Start(c *beehiveContext.Context) { var ctx context.Context c…

【Go语言最佳实践】错误只处理一次

我想提一下你应该只处理错误一次。 处理错误意味着检查错误值并做出单一决定。 // WriteAll writes the contents of buf to the supplied writer. func WriteAll(w io.Writer, buf []byte) {w.Write(buf) }如果你做出的决定少于一个,则忽略该错误。 正如我们在这里…

爬虫入门一

文章目录 一、什么是爬虫?二、爬虫基本流程三、requests模块介绍四、requests模块发送Get请求五、Get请求携带参数六、携带请求头七、发送post请求八、携带cookie方式一:放在请求头中方式二:放在cookie参数中 九、post请求携带参数十、模拟登…

HTTPS网络通信协议基础

目录 前言: 1.HTTPS协议理论 1.1协议概念 1.2加密 2.两类加密 2.1对称加密 2.2非对称加密 3.引入“证书” 3.1证书概念 3.2数据证书内容 3.3数据签名 4.总结 前言: 了解完HTTP协议后,HTTPS协议是HTTP协议的升级加强版&#xff0c…

基于Java的大学社团管理平台

功能介绍 平台采用B/S结构,后端采用主流的Springboot框架进行开发,前端采用主流的Vue.js进行开发。 整个平台包括前台和后台两个部分。 前台功能包括:首页、社团详情、申请加入、用户中心模块。后台功能包括:社团管理、分类管理…

Webpack和Rollup区别、使用场景、如何选择

Webpack 和 Rollup 都是前端构建工具,但它们的设计理念、侧重点和适用场景有所不同: Webpack 设计理念与功能: Webpack 是一个全能型的模块打包工具,不仅支持 JavaScript 模块的打包,还能处理 CSS、HTML、图片等各种静…

设计模式二:代理模式

1、什么是动态代理 可能很多小伙伴首次接触动态代理这个名词的时候,或者是在面试过程中被问到动态代理的时候,不能很好的描述出来,动态代理到底是个什么高大上的技术。不方,其实动态代理的使用非常广泛,例如我们平常使…

unity 使用VS Code 开发,VS Code配置注意事项

vscode 对应的插件(unity开发) 插件:.Net Install Tool,c#,c# Dev Kit,IntelliCode For C# Dev Kit,Unity,Unity Code Snippets 本人现在是用了这些插件 unity需要安装Visual Studio Editor 1、.Net Install Tool 设置 需要在设置里面配置…

人机、态势与感知之间的双向阈值开关及其交变特性

人-机双向阈值开关是一种可以根据阈值条件控制人和机器之间交互的装置或系统。它可以根据事先设定的条件来切换人和机器之间的工作模式。在这个开关中,有两个阈值,一个是人的阈值,另一个是机器的阈值。当人的阈值被触发时,系统将进…

jvm gc日志拿取与分析思路

前言 参考文章:Java中9种常见的CMS GC问题分析与解决 - 美团技术团队 排查过程 进入容器里 生产应用是跑在docker上的,所以需要先进入到应用里面去,步骤如下 1. docker ps 找到对应的应用id,比如 zxc 2. 进入容器内部 docker exec -it 7690…

Elasticsearch:什么是搜索引擎?

搜索引擎定义 搜索引擎是一种软件程序或系统,旨在帮助用户查找存储在互联网或特定数据库中的信息。 搜索引擎的工作原理是对各种来源的内容进行索引和编目,然后根据用户的搜索查询向用户提供相关结果列表。 搜索引擎对于希望快速有效地查找特定信息的用…

怎么清理mac系统缓存系统垃圾文件 ?怎么清理mac系统DNS缓存

很多使用苹果电脑的用户都喜欢在同时运行多个软件,不过这样会导致在运行一些大型软件的时候出现不必要的卡顿现象,这时候我们就可以去清理下内存,不过很多人可能并不知道正确的清内存方式,下面就和小编一起来看看吧。 mac系统是一…

读十堂极简人工智能课笔记07_模拟与情感

1. 数码式考察 1.1. 制作计算机动画或游戏 1.1.1. 想怎么制作都可以 1.2. 计算机模拟 1.2.1. 目标是建造一个虚拟的实验室,其行为与现实完全一致,只是某些变量由我们来控制 1.3. 对现实世界进行建模并不容易,需要非常谨慎地收集和使用数…

Vscode vim 插件使用Ctrl+C和V进行复制粘贴到剪切板

Vscode vim 插件使用CtrlC和V进行复制粘贴到剪切板 使用这一个插件的时候复制粘贴和其他软件互动的时候体验不好, 并且不可以用Ctrl c, Ctrl v很不爽 "vim.commandLineModeKeyBindings": [{"before" : ["Ctrl", "c"],"after&q…

httpd apache

虚拟主机 配置环境 [rootlocalhost ~]#cd /var/www/html/ [rootlocalhost html]#mkdir 123 [rootlocalhost html]#mkdir abc [rootlocalhost html]#ls 123 abc [rootlocalhost html]#cd 123/ [rootlocalhost 123]#echo 123 > index.html [rootlocalhost 123]#cd ../abc/ […

区块链/加密币/敏感/特殊题材专供外媒发稿,英文多国语言海外新闻营销推广

【本篇由言同数字科技有限公司原创】敏感题材是海外媒体在报道过程中常遇到的难题,需要平衡新闻真实性、公正性与敏感性。本文将探讨海外媒体报道敏感题材所面临的挑战,并介绍如何抓住机遇提高报道质量。 第一部分:敏感题材报道的挑战 报道…

【Python】图像裁剪与匹配

图像裁剪与匹配 在计算机视觉领域,图像处理是一项关键的任务,其中图像裁剪和匹配是常见的操作之一。本文将介绍如何使用OpenCV库进行图像裁剪与匹配,并展示一个简单的示例代码。 1. 引言 在图像处理中,有时需要从一张大图中截取…

泰山派摄像头使用-opencv流程

1. 泰山派添加camera 连接摄像头连接到usb接口,查看dev设备: # 在终端中输入如下命令,可以查看到camera设备资源: ls /dev/video* 检查板卡上的camera设备资源示例 也可以使用v4l2命令查看 v4l2-ctl --list-devices v4l2-ctl --list-devices是一个命令…

CentOS上如何配置手动和定时任务自动进行时间同步

场景 Linux(Centos)上使用crontab实现定时任务(定时执行脚本): Linux(Centos)上使用crontab实现定时任务(定时执行脚本)_centos 定时任务-CSDN博客 Winserver上如何配置和开启NTP客户端进行时间同步: Winserver上如何配置和开启NTP客户端进行时间同步…