机器学习---规则学习(序贯覆盖、单条规则学习、剪枝优化)

1. 序贯覆盖

回归: 分类:

聚类:

逻辑规则:

读作:若(文字1且文字2且...),则目标概念成立

规则集:充分性与必要性;冲突消解:顺序规则、缺省规则、元规则

eg:

命题逻辑 → 命题规则

原子命题:𝐴*,𝐵,𝐶,...A,B,C,...;逻辑连词:↔,→,←,⋀,⋁,¬*...↔,→,←,⋀,⋁,¬...

一阶逻辑 →一阶规则

常量:𝑎*,𝑏,𝑏,...,1,2,3,...*;变量:𝐴*,𝐵,𝐶,...*A,B,C,...

(n元)谓词/函数: p/n, f/n;项:常量|变量|函数/谓词(项1,项2,...)

原子公式:函数/谓词(项1,项2,...)父亲(X,Y),自然数(39),偶数(后继(1)),...

逻辑连词:↔,→,←,⋀,⋁,¬...;逻辑量词:∀,∃

序贯覆盖:在训练集上每学到一条规则,就将改规则覆盖的样例去除,然后以剩下的样例组成训练

集重复上述过程( 分治策略)。

2. 单条规则学习

目标:寻找一组最优的逻辑文字来构成规则体。本质:搜索问题;搜索空间大,易造成组合爆炸。

方法:自顶向下:一般到特殊( 泛化);自底向上:特殊到一般( 特化)

自顶向下策略:一般到特殊(特化)

自底向上策略:特殊到一般(泛化)

规则评判:增加/删除哪一个候选文字;准确率;信息熵增益(率);基尼系数 ......

规避局部最优:集束搜索:每次保留最优的多个候选规则 ......

3. 剪枝优化

贪心算法导致的非最优的算法:

预剪枝:似然率统计量:

后剪枝:剪错剪枝(REP):穷举所有可能的剪枝操作(删除文字、删除规则),复杂度非常高,

用验证集反复剪枝直到精确率无法提高。

二者结合:IREP:每生成一条新规则即对进行REP剪枝

IREP*:是对IREP的优化

RIPPER:

IREP*生成规则集,选取其规则,找到其覆盖的样例,重新生成规则,特化原规则在泛化,把原规

则和新规则放入规则集中进行评价,留下最好的,反复优化直到无法进步。

RIPPER将所有规则放在一起优化,通过全局的考虑来缓解序贯覆盖的局部性。

相关推荐
erzong2314 分钟前
Linux操作系统:线程概念与控制
linux·算法
德林恩宝26 分钟前
On-Policy Distillation(OPD)学习文档
人工智能·学习·机器学习·大模型·llm·大模型微调
Nil20842 分钟前
leetcode 5最长回文子串
算法·leetcode·职场和发展
a puppy slide 葱43 分钟前
ENAS | 基于参数共享的高效神经网络架构搜索
论文阅读·人工智能·深度学习·神经网络·机器学习·计算机视觉·神经网络架构搜索
xxwl5851 小时前
区域赛分类题解
c++·笔记·学习·算法
m0_674571971 小时前
力扣 hot 100 python
python·算法·leetcode
青少儿编程课堂1 小时前
蓝桥杯+全国青少年信息素养大赛+电子学会PythonC/C++考级:最长公共子序列LCS解析
c++·python·算法·bfs·信息学竞赛
倚楼听风语3 小时前
Kotlin 协程与 suspend 原理详解
java·算法·kotlin
程序员清风3 小时前
双指针与滑动窗口:高效处理连续区间
开发语言·算法
代钦塔拉3 小时前
【C++/Qt 进阶】设计模式系列(2):工厂模式——从游戏角色到披萨店
c++·算法·设计模式