以贝叶斯之名寻找规则模型--Falling Rule Lists

本文来自索信达控股旗下的金融人工智能创新中心,微信公众号(datamargin)将不定期推送原创 AI 科学文章。我们的作品都是由实战经验丰富的 AI 科学技术人员或资深顾问精心准备,志在分享结合实际业务的理论应用和心得体会。

本文作者: 苏思达 / Josie

随着 AI 技术的日益发展,除了模型的精确度,模型的解释性也悄然登上舞台。决策树作为经典的内在可解释模型,以其简单易懂的树形结构征服了广大的数据挖掘分析师。那么,我们是否思考过以另一种方式来学习到决策树里的规则呢?本文将给大家介绍索信达 AI 创新中心研究的可解释系列之 Falling Rule Lists,该内在可解释模型由杜克大学的 Rudin 提出,用贝叶斯的方法来学习规则列表的参数,达到不一样的模型效果,给业务人员提供新的解决问题思路。

  • 1. 背景介绍
  • 2. Falling Rule Lists 介绍
  • 3. 模型介绍 3.1 Bayesian Statistics3.2 Falling Rule Lists
  • 4. 模型的解释性
  • 5. 模型的优劣

1. 背景介绍

在金融风控领域,风控人员需要优先考虑基于高风险的客户及行为。潜在风险最高的客户应该要进行最深入的调查,最谨慎的处理;次要高风险的客户则进行次要深入的调查,以此类推。这种决策逻辑如果能嵌入到算法当中,模型的预测过程便能很自然的被使用者理解。然而,传统的预测模型包含这种计算逻辑,大多数的机器学习模型都是高度复杂的模型,设计时更关注模型的预测能力,没有给出预测原因的能力,导致模型没有与决策过程保持一致。

2. Falling Rule Lists 介绍

为了解决这一问题,科学家们提出了 Falling rule lists 模型。Falling rule lists 模型结果是一个降序的规则列表,其中(1)每一条规则对应满足这一条规则的样本;(2)样本的风险概率从高到低排序。通过优先区分最高风险的样本集合,然后区分第二高风险的样本集合,以此类推,最终得到降序的规则列表,因此该模型在设计时包含了使用者的决策过程,结果直观,使用者可以直接获得风险的排序,而不需要自己重新计算每个样本集合的风险概率,这是传统的预测模型做不到的,如果我们用决策树模型去识别最高风险概率的人群,计算量会很大,而且如果最高风险的人群满足的条件设置过多,人们也可能难以记住这些条件。

算法将输入空间变成离散化可以很好的获得可解释性。可解释性意味人们可以从结果中直观的看到逻辑关系,而不像黑盒模型那样只看到输入和输出结果。例如决策树,将连续的变量离散化,形成一个简单的规则,如“年龄大于 50 岁”,满足这一规则的人群分为一类,模型的可解释性便会很强。Falling Rule list 模型在拥有可解释性的同时,算法设计上加入了单调性约束,在风控人员使用时也更希望看到这种单调性约束,而在很多情况下,模型的精度并没有因为这个约束而降低。在运算速度方面,由于算法将输入特征离散化了,每个特征可以转换为简单的布尔向量,加快了运算速度。

3. 模型介绍

在上一篇研究报告中我们介绍了 RuleFit 模型,大家一定对这种由规则构成的模型很感兴趣。Falling Rule Lists 模型,内部也是由规则组成的。不同于传统的变量选择方法,Falling Rule Lists 是从全新的角度挖掘和挑选规则,让人耳目一新。接下来的介绍大家一定要摒弃对模型的固化思想,去感受这不同寻常的建模思想。

3.1 Bayesian Statistics

介绍 Falling rule list 之前,我们要先理解一下贝叶斯统计的思想。不同于频率统计学派,贝叶斯统计解决问题的思路则是打开了新世界的大门,直接从数据分布的参数来入手。在这里参数不是一个常数,而是一个变量。

比如正态分布 N(μ,σ²)中的 μ ,如果已知 μ 的先验分布(prior distribution),所谓先验分布就是人们基于一些信息,相信这个变量服从的某一个分布。设该分布的密度函数是 f(μ).

n 个样本(x1,x2..xn)的似然函数(likelihood), 记为 f(x1,x2,..xn 丨μ)。

如下图所示,最后会得到的后验分布,记为 Fposterior(μ丨 x1,x2..xn)∝F(x1,x2..xn 丨μ)·F(μ)。对于不知道固定形式的后验分布,可以使用蒙特卡罗抽样来得到关于参数 μ 的后验分布,然后根据取值概率的大小计算出μ 的最大后验估计μ 

Falling Rule Lists 也是沿着上述的逻辑,对参数组合 θ 进行后验估计。最终得到具有最大后验概率的决策列表(a decision list)和每一条规则对应的预测概率。

3.2 Falling Rule Lists

不管是在营销场景还是风控场景中,只要我们的目标是预测一个人是否会购买理财又或者是一个人是否会违约,解决的问题都可以被归为二分类问题。传统的机器学习模型,如逻辑回归,随机森林等,它们的思路都是致力于找到特征变量与目标变量之间的真实关系(线性或者非线性),如果是从统计学的角度来看,上述模型利用训练集寻找模型参数的方法是属于频率统计学派。虽然频率学派和贝叶斯学派是从不同的角度出发,但是殊途同归,最终都计算出对样本的预测概率。要想解决好问题就要透过现象看本质,回归本源。通过机器学习模型得到的结果是:计算出样本预测为 1 的概率。这个结果从另一个角度来看,是找到, 即目标变量 Y=1 在已有特征信息条件下的分布。在 Falling rule list 里面是以 a decision list 的形式来表示目标变量取 1 时的条件分布的:

上述表格是一个 decision list,我们可以看到决定这个 decision list 的参数:

  1. decision list 的长度 L 为 3,因为有 3 条 IF 规则。
  2. 关于规则的标记,从上到下,在这里关于 3 条规则的标记是。规则是从事先挖掘好的规则池中抽取的,每条规则中可以包括 1 个 condition,也可以包括 2 个 conditions,具体数目自行设置,一般不超过 2。
  3. 对于目标变量预测为 1 的概率,即第四列的 Probability(Y=1),是随着规则的下降而下降,这也是称该模型为 Falling rule list 的原因。
  4. 最后一列的 support 代表在该数据集中有多少样本满足对应的规则,例如,770 代表着有 770 个样本满足,297 代表有 297 个样本不满足, 但满足里的规则。493 代表有 493 个样本不满足,也不满足,但满足的规则。最后的 2000 代表有 2000 个样本不满足上述所有的规则而留下来的样本。

3.2.1.参数是哪些

把这些参数抽象出来的话,会得到:

  1. L: 列表的长度, 只能取整数
  2. cl(·)∈Bx(·) for l=0,...L-1 是 if 后的条件
  3. rl∈R for l=0,..L s.t. r(l+1)≤rl rl 代表着风险值

表示成参数空间θ={L,c0,...,L-1(·),r0..L},其中 r0..L 代表风险值,用 logistic function 转换为概率,即 Pr(Y=1)=【(e^r)·l】/【1+(e^r)·l】。同时风险值还要满足单调递减的性质,r(l+1)≤rl,for l=0,..L-1。可以看出,这些参数是具有依赖性的。当确定了 a decison list 的长度 L 之后,我们才开始寻找从 0 开始寻找规则 c0(·),c1(·),..cL-1(·), 以及从 0 开始到 L 的风险值 rl。当找到了参数空间中的最优参数组合的时候,a decision list 也就随之确定。

3.2.2. 怎么找到最优的参数呢?

首先,在贝叶斯学派里,是把参数空间的这些参数当成随机变量的,它们本身服从某一种先验分布。在这里的设定是 L~Poisson(λ),因为 L 只能取正整数,因此用计数的泊松分布很合理。 c0,..L-1~B ,其中规则池 B 是使用关联分析算法挖掘出来的众多规则,来源于特征数据集,关于对规则的抽样概率可以是随机,也可以加入特定的权重,rl~Gamma(αl,βl) , 伽马分布在贝叶斯统计中有优良的性质,因为当先验是伽马分布时,后验分布也依旧是伽马分布,内部参数的变化也是符合一定的规律。

其次,我们要利用到样本的信息来更新参数,这里样本的信息指的是在已知参数的取值下,所有样本一起出现的概率。当上述参数都已经确定的情况下,目标变量服从伯努利分布,即 yn~Bernoulli(logistic(rzn)),zn 代表该样本满足的第一个规则在 decision list 中的下标,rzn 代表该条规则后面对应的风险值。

由前面的贝叶斯统计的基础知识,我们如果要计算这些参数的后验估计,是需要先验分布的信息以及似然函数的值。在这里,对参数空间的参数进行了再参数化,变量加强等操作,使其可以进行后验采样。最终得到拥有最大后验概率估计的(L,c0..L-1,r0..L)。

3.2.3.模型的结果呈现形式是

3.2.4.如何使用该模型?

那么通过训练集得到关于分布的参数后,当被给予新的数据集后我们要如何用它来预测呢?

很简单,当进入一个新样本时,拥有的特征信息是一样的,我们只需要一一查看该样本是否满足 c0(·),如果满足,则该样本预测为 1 的概率是 logit(r0),如果不满足,则接着看是否满足 c1(·),如果满足,则该样本预测为 1 的概率是 logit(r1),否则继续接下来的规则,直至到最后,如果 L 个规则都不满足,最后的预测为 1 的默认概率为 logit(rL)。

4. 模型的解释性

从模型结果的呈现形式来看,Falling Rule Lists 模型的表现形式是降序的规则列表,相当于已经展示了对样本的预测路径,自身具有强大的可解释性。降序的规则列表是以整个训练数据集为基础来挖掘规则,用贝叶斯的方法来寻找到最优参数。同时规则列表是以离散概率分布的形式展现,天然地对训练集做了聚类,每一类有对应的条件以及概率。

降序的规则列表本质上是基于规则的解释,与 RuleFit 得到的具有并列性的规则有一些不同,这里的规则是 IF-Then 规则,即带有因果性的规则。规则和因果关系结合在一起,使得模型的预测结果更具有说服力,解释性也更强。在预测的时候,当输入单个样本后,只需要检验该样本是否满足其中的某个规则,如果满足,就以那条规则后面的概率作为该样本的预测概率。

假设我们输入一个样本,最后得到模型的预测为 1 的概率是 0.23。通过上面的降序规则列表,我们可以解密 Falling Rule Lists 一步步预测样本的过程。首先,该样本中的特征 1 和特征 4 不同时满足 X1=1&X2>4,接着发现该样本中的特征 5 取值为 1,满足第二条规则。所以最后得到预测为 1 的概率是 0.23。

5. 模型的优劣

Falling Rule Lists 模型本身具有强大的可解释性。从降序的规则列表中,我们可以从中看到很多信息。第一是做到了聚类的效果,每一类是有具体的条件限制,并且后面计算出对应的预测目标变量为 1 的概率,且概率是随着规则列表而下降的。我们可以清楚地看到,第一类的样本被预测为 1 的概率最大,所以被归入第一类的用户可以被单独拿出来当做高价值用户。紧接着是第二类,第三类,每一类都可以拿出来,用特征做新的用户画像。第二,规则的因果性。因果关系本身就是可以用作解释,加上规则,就更能让模型使用者认识到是因为什么样的规则导致了模型对该样本的预测概率。

同时,我们无法忽视该模型的运行时间较长。当数据样本量很大以及特征很多时,要花很长时间来挖掘众多规则,形成规则池。第二,得到的预测概率值是离散的,就只有规则列表中的某几个值。而其他机器学习模型得到的预测概率则是近乎连续的,具有更多的可能性。第三,Falling Rule Lists 模型对输入的变量有一定的要求,训练该模型之前,需要对数据集做一定的预处理才可以继续。输入时需要的是二元变量,如果是离散变量,需要的是 one hot encoding 或者做哑变量。如果是连续变量,则需要分箱等操作,这会损失掉特征中的某些信息。

  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址https://www.infoq.cn/article/607cfc7e17a80adeb64d61947
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券