📜  基于规则的分类器——机器学习

📅  最后修改于: 2022-05-13 01:58:08.448000             🧑  作者: Mango

基于规则的分类器——机器学习

基于规则的分类器只是另一种类型的分类器,它通过使用各种“if..else”规则来做出类决策。这些规则很容易解释,因此这些分类器通常用于生成描述性模型。与“if”一起使用的条件称为先行条件,每个规则的预测类别称为结果

基于规则的分类器的特性:

  • 覆盖率:满足特定规则的先行条件的记录的百分比。
  • 基于规则的分类器生成的规则通常不是相互排斥的,即许多规则可以覆盖相同的记录。
  • 由基于规则的分类器生成的规则可能不是详尽无遗的,即可能存在任何规则未涵盖的一些记录。
  • 它们创建的决策边界是线性的,但它们可能比决策树复杂得多,因为许多规则是针对同一记录触发的。

一个明显的问题,在知道规则不是相互排斥的后想到的问题是,如果不同的规则和不同的结果覆盖了记录,将如何决定类。

上述问题有两种解决方案:

  • 任何一个规则都可以排序,即将触发的最高优先级规则对应的类作为最终类。
  • 否则,我们可以根据每个类的权重为每个类分配投票,即规则保持无序。

例子:
以下是将蘑菇分类为可食用或有毒的数据集:



ClassCap ShapeCap SurfaceBruisesOdourStalk ShapePopulationHabitat
edibleflatscalyyesanisetaperingscatteredgrasses
poisonousconvexscalyyespungentenlargeningseveralgrasses
edibleconvexsmoothyesalmondenlargeningnumerousgrasses
edibleconvexscalyyesalmondtaperingscatteredmeadows
edibleflatfibrousyesaniseenlargeningseveralwoods
edibleflatfibrousnononeenlargeningseveralurban
poisonousconicalscalyyespungentenlargeningscatteredurban
edibleflatsmoothyesaniseenlargeningnumerousmeadows
poisonousconvexsmoothyespungentenlargeningseveralurban
Rules: 
  • 气味 = 刺激性和栖息地 = 城市 -> 等级 = 有毒
  • 瘀伤 = 是 -> 等级 = 可食用:此规则涵盖负面和正面记录。
给定的规则不是相互排斥的。

如何生成规则:

显示顺序规则生成的图表。

顺序规则生成。

可以使用一般到特定的方法或特定到一般的方法生成规则。在从一般到特定的方法中,从没有前因的规则开始,并不断向其添加条件,直到我们看到评估指标的重大改进。而对于另一个,我们继续从涵盖非常具体案例的规则中删除条件。评估指标可以是准确性、信息增益、似然比等。

增量生成模型的算法:

下面给出的算法生成一个具有无序规则和有序类的模型,即我们可以在生成规则的同时决定优先考虑哪个类。

对记录进行分类:
下面描述的分类算法假设规则是无序的并且类是加权的。

注意:规则集也可以通过修剪(简化)其他已经生成的模型(如决策树)来间接创建。