ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

机器学习基础(十):规则学习(序贯覆盖、剪枝优化、命题学习、一阶规则学习、归纳逻辑程序设计ILP、最小一般泛化LGG、归结/逆归结)

2021-10-01 16:00:49  阅读:516  来源: 互联网

标签:剪枝 泛化 归结 规则学习 学习 一阶 规则


10、规则学习 rule learning

从训练数据中学习出一组能用于对未见示例进行判别的规则
在这里插入图片描述
优势:①与神经网络、支持向量机这样的黑箱模型相比,规则学习具有更好的可解释性,使用户更直观地对判别过程有所了解
②数理逻辑有极强的表达能力,绝大多数人类知识都能通过数理逻辑进行简洁的刻画和表达,因此规则学习能更自然地在学习过程中引入领域知识
③逻辑规则的抽象描述能力在处理一些高度复杂的AI任务时具有显著的优势
规则集合:规则集合中的每条规则都可看做一个子模型,规则集合是这些子模型的一个集成

冲突:同一个示例被判别结果不同的多条规则覆盖

冲突消解conflict resolution:投票法、排序法(相应的规则学习称为带序规则学习/优先级规则学习)、元规则法(根据领域知识事先设定一些元规则,即关于规则的规则,如“发生冲突时使用长度最小的规则”)等

从训练集学得的规则集合可能不能覆盖所有可能的未见示例
→通常设置一条默认规则default rule,处理规则集合未覆盖的样本

规则分类
①命题规则propositional rule:由原子命题propositional atom和逻辑连接词“与∧、或∨、非¬、蕴含←”构成的简单陈述句
在这里插入图片描述
②一阶规则first-order rule(关系型规则):基本成分是能描述事物的属性或关系的原子公式atomic formula(如表达父子关系的谓词“父亲(X,Y)”、加一操作“δ(X)=X+1”的函数δ(X))
在这里插入图片描述
命题规则是一阶规则的特例

10.1序贯覆盖(规则学习最直接的做法)

逐条归纳:在训练集上每学到一条规则,就将该规则覆盖的训练样例去除,然后以剩下的训练样例组成训练集重复上述过程(由于每次只处理一部分数据,也称“分治策略”)

——最简单的做法是从空规则 "⊕←"开始,将正例类别作为规则头,再逐个遍历训练集中的每个属性及取值,尝试将其作为逻辑文字增加到规则体中,若能使当前规则体仅覆盖正例,则由此产生一条规则,然后去除己被覆盖的正例并基于剩余样本尝试生成下一条规则

两种产生规则的策略
①自顶而下top-down(生成-测试法)从比较一般的规则开始,逐渐添加新文字以缩小规则覆盖范围,直到满足预定条件为止,是规则逐渐“特化”的过程,更容易产生泛化性能较好的规则
②自底向上bottom-up(数据驱动法)从比较特殊的规则开始,逐渐删除文字以扩大规则覆盖范围,直到满足条件为止,是规则逐渐“泛化”的过程,更适合于训练样本较少的情形

命题规则学习中通常使用第一种策略,一阶规则学习中较多使用第二种策略

10.2剪枝优化

10.2.1预剪枝

CN2算法,使用了似然率统计量LRS,通常设置为LRS很大(如0.99)时CN2算法才停止规则(集)生长
在这里插入图片描述

10.2.2后剪枝

常用的策略是减错剪枝REP(针对规则集进行剪枝),IREP(仅对单条规则进行剪枝,更高效)

10.2.3 RIPPER算法

将剪枝与后处理优化相结合
在这里插入图片描述

10.3一阶规则学习

FOIL算法:遵循序贯覆盖框架且使用自顶向下的规则归纳策略,在规则生成时需要考虑不同的变量组合
在这里插入图片描述
FOIL可大致看作命题规则学习与归纳逻辑程序设计之间的过渡,其自顶向下的规则生成过程不能支持函数和逻辑表达式嵌套,因此规则表达能力仍有不足;但它是把命题规则学习过程通过变量替换等操作直接转化为一阶规则学习,因此比→般归纳逻辑程序设计技术更高效

10.4归纳逻辑程序设计Inductive Logic Programming,ILP

一阶规则学习中引入函数逻辑表达式嵌套

10.4.1最小一般泛化Least General Generalization,LGG

归纳逻辑程序设计采用自底向上的规则生成策略,直接将一个或多个正例所对应的具体事实(grounded fact)作为初始规则,再对规则逐步进行泛化以增加其对样例的覆盖率(可以是将规则中的常量替换为逻辑变量,也可以是删除规则体中的某个文字)

→最基础的技术:最小一般泛化LGG
假定“更好(X,Y)”仅决定于(X,Y)取值相同的关系
在这里插入图片描述
RLGG(Relative Least General Generalization):计算LGG时考虑所有背景知识

10.4.2归结、逆归结inverse resolution

归结:一阶谓词演算中的演绎推理能用一条十分简洁的规则描述
在这里插入图片描述
逆归结
在这里插入图片描述
→归结、逆归结都能容易地扩展为一阶逻辑形式,与命题逻辑的主要不同之处是,一阶逻辑的归结、逆归结通常需进行合一置换操作
在这里插入图片描述
一阶归结/逆归结
在这里插入图片描述
_ _ _ _ _ _ 未完待续,喜欢的朋友可以关注后续文章 _ _ _ _ _ _

机器学习基础系列文章回顾:
机器学习基础(一):简介
机器学习基础(二):模型评估与选择
机器学习基础(三):决策树
机器学习基础(四):特征选择与稀疏学习
机器学习基础(五):计算学习理论(PAC学习、有限假设空间、VC维、Rademacher复杂度、稳定性)
机器学习基础(六):贝叶斯分类(贝叶斯决策论、朴素/半朴素贝叶斯分类器、贝叶斯网、EM算法)
机器学习基础(七):概率图模型(HMM、MRF、CRF、话题模型、推断方法)
机器学习基础(八):降维与度量学习(KNN、MDS、线性降维、PCA、核化线性降维、流形学习、度量学习)
机器学习基础(九):集成学习(Boosting、Bagging、Random Forest、学习器结合策略、多样性)

参考书目:
周志华.《机器学习》

标签:剪枝,泛化,归结,规则学习,学习,一阶,规则
来源: https://blog.csdn.net/weixin_44949421/article/details/120578107

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有