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

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将所有规则放在一起优化,通过全局的考虑来缓解序贯覆盖的局部性。

相关推荐
千金裘换酒4 小时前
LeetCode 移动零元素 快慢指针
算法·leetcode·职场和发展
wm10434 小时前
机器学习第二讲 KNN算法
人工智能·算法·机器学习
NAGNIP5 小时前
一文搞懂机器学习线性代数基础知识!
算法
NAGNIP5 小时前
机器学习入门概述一览
算法
iuu_star5 小时前
C语言数据结构-顺序查找、折半查找
c语言·数据结构·算法
Yzzz-F5 小时前
P1558 色板游戏 [线段树 + 二进制状态压缩 + 懒标记区间重置]
算法
漫随流水5 小时前
leetcode算法(515.在每个树行中找最大值)
数据结构·算法·leetcode·二叉树
mit6.8246 小时前
dfs|前后缀分解
算法
扫地的小何尚6 小时前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
Yeats_Liao7 小时前
MindSpore开发之路(二十四):MindSpore Hub:快速复用预训练模型
人工智能·分布式·神经网络·机器学习·个人开发