「这是我参与2022首次更文挑战的第26天,活动详情查看:2022首次更文挑战」。
在上一篇文章 《【AI】可解释机器学习4 - 决策树》 中,我们介绍了决策树,决策树中的每个节点都需要进行 IF-ELSE
的判断。这篇文章我们来学习另一种,相似的,基于 IF-THEN
判断的可解释机器学习模型:决策规制
决策规制
决策规则是一个简单的 IF-THEN
语句,由条件(也称为前因)和预测组成。
可以使用单个决策规则或多个规则的组合进行预测。决策规则在条件中至少使用一个 特征=值
语句,对于可以使用 与
添加的规则数量没有上限。
决策规制的组合
组合多个规则有两种主要策略:决策列表(有序)和决策集(无序):
- 决策列表为决策规则引入了顺序。 如果第一条规则的条件对于一个实例为真,我们使用第一条规则的预测。 如果没有,我们转到下一条规则并检查它是否适用,直到列表结束。决策列表通过仅返回列表中适用的第一个规则的预测来解决规则重叠的问题
- 在一个集合中,规则要么是相互排斥的,要么有解决冲突的策略,例如多数投票。 当多个规则适用时,可解释性可能会受到影响。
决策列表和集合都可能遇到没有规则适用于实例的问题。 这可以通过引入默认规则来解决。 默认规则是在没有其他规则适用时适用的规则。 默认规则的预测通常是其他规则未涵盖的数据点中最常见的类别。
如果一组或一系列规则覆盖了整个特征空间,我们称之为详尽的。 通过添加默认规则,集合或列表会自动变得详尽无遗。
决策规制学习方法
下面介绍几种经典的用于学习特征决策的方法:
OneR
从所有特征中,OneR 选择携带有关感兴趣结果的信息最多的特征,并根据该特征创建决策规则。
算法如下:
- 通过选择适当的间隔来离散化连续特征
- 对于每个特征:
- 在特征值和(分类)结果之间创建一个交叉表
- 对于特征的每个值,创建一个规则来预测具有该特定特征值的实例中最常见的类(可以从交叉表中读取)
- 计算特征规则的总误差
- 选择总误差最小的特征
顺序覆盖
顺序覆盖反复学习单个规则以创建一个规则一个规则地覆盖整个数据集的决策列表(或集合)。许多规则学习算法是顺序覆盖算法的变体。
算法如下:
- 从空的规则列表开始
- 学习规则 r
- 当规则列表低于某个质量阈值(或尚未涵盖正面示例)时:
- 将规则 r 添加到规则列表
- 删除规则 r 涵盖的所有数据点
- 了解关于剩余数据的另一条规则
- 返回决策列表
学习单个规则 r 是一个搜索问题,搜索空间是所有可能规则的空间,搜索的目标是根据某些标准找到最佳规则。有许多不同的搜索策略:爬山、波束搜索、穷举搜索、最佳优先搜索、有序搜索、随机搜索、自上而下搜索、自下而上搜索……
学习贝叶斯规则列表
BRL 算法的目标是使用预先挖掘的条件的选择来学习准确的决策列表,同时优先考虑具有很少规则和简短条件的列表。 BRL 通过定义决策列表的分布来实现这一目标,该分布具有条件长度(最好是较短的规则)和规则数量(最好是较短的列表)的先验分布。
目标:从后验分布中抽取决策列表 :
其中 是决策列表, 是特征, 是目标, 是预先挖掘的条件集, 是决策列表的先前预期长度, 是规则中的先验预期条件数, 是正类和负类的先验伪计数
算法如下:
- 生成一个初始决策列表,它是从先验分布中随机抽取的
- 通过添加、切换或删除规则迭代修改列表,确保生成的列表遵循列表的后验分布
- 根据后验分布从抽样列表中选择概率最高的决策列表
优点
IF-THEN
规则很容易解释。 它们可能是可解释模型中最具可解释性的。决策规则可以像决策树一样具有表现力,同时更加紧凑。
决策规则对于输入特征的单调变换是稳健的,因为只有条件中的阈值发生变化。它们对异常值也很稳健,因为重要的是条件适用与否。
IF-THEN
规则通常生成稀疏模型,这意味着包含的特征并不多,只选择模型的相关特征。
缺点
IF-THEN
规则的研究侧重于分类,几乎完全忽略了回归。
许多较旧的规则学习算法容易过度拟合。
决策规则在描述特征和输出之间的线性关系方面很糟糕。这是与决策树共有的问题。决策树和决策规则只能产生阶梯状的预测函数,其中预测的变化总是离散的步骤,而不是平滑的曲线。