机器学习之覆盖算法

本文探讨了数据挖掘中覆盖算法的核心思想,即寻找能覆盖尽可能多正例并排斥反例的规则。介绍了洪家荣提出的AQ15、AE和FCV算法,并强调了在保证规则简洁性的同时减少计算量的重要性。虽然找到最优规则是NP问题,但这些方法提供了解决途径。文章还提到了属性数值化和评价矩阵在算法优化中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总述

覆盖算法的核心:找到一条规则,覆盖尽可能多的正例,排斥尽可能多的反例。主要介绍三种方法:(1)AQ15(洪家荣改进的);(2)AE(洪家荣);(3)FCV
后续有许多对覆盖算法的改进,主要目的是找到更简洁的规则,满足正例,排斥反例,以减小计算量
**NOTICE:使用数量最少的规则,覆盖所有正例,排斥所有反例,是NP问题。**

一、AQ15

1. 公式

针对每个正例ei,规则为:eiV¬NE 即:eiV¬(e1-˅…˅ek-)≡ ei V(¬e1-˄…˄¬ek-),通过逻辑运算,最后得到的结论,即覆盖正例ei,排斥所有的反例,即NE。

2. 举例(计算第一个正例的规则)

在这里插入图片描述
根据第一个正例得到的规则如下:👇
在这里插入图片描述
这条规则满足第一个正例,排斥所有的反例,具有泛化能力,但计算量很大,因此后续需要优化。

2. 扩张矩阵算法AE

在这里插入图片描述

3. FCV算法

PE‘= PE; NE’= NE
step1: 建立PE的评价矩阵PEM和NE的评价矩阵NEM;
step2:For( i =0; i< N; i++)
            For(j=0; j<F; j++) 
                求PEM[i,j]/NEM[i,j]最小值;
Step3:在PE和NE中删除第j个属性的取值为i的例子;
Step4:如果NE不空,重复Step1;否则建立PE在NE'的扩张矩阵EM,寻找一个公共路径,即覆盖规则;
PE‘=PE’-PE; PE=PE‘;  NE=NE’;
重复上面步骤,直到PE’为空,即得到覆盖正例集PE,排斥反例集NE的所有覆盖规则

将属性的每个取值数值化,0,1,2自己编,如下👇:
在这里插入图片描述
在这里插入图片描述
然后,分别构造正例集的评价矩阵和反例集的评价矩阵。按顺序执行上面的步骤,本例题的步骤如下(自己写的,不一定对奥,欢迎大噶指出错误一起讨论~):👇
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天使Di María

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值