在一个中型软件公司的案例研究中,我们从软件存储库中提取
了哪些代码更改部分导致哪些注释的数据(
Baum
等人,
2018
年
a
)。然后,使用本文中描述的规则挖掘系统来获得表征不
需要审查的变更部分
3. 相关工作
下面,我们将讨论相关的工作。通过我们的系统,我们的目
标是支持整个数据挖掘过程。
Mariscal
等人(
2010
)对各种数
据挖掘和知识发现过程模型进行了调查。这些模型中的大多数
都承认这个过程是迭代的和交互的。 与此相一致,
2002
年
SIGKDD
小组的小组成员认为人类和计算机之间的合作对数据
挖掘是有益的(
Ankerst
,
2002
)。
Holzinger
(
2016
)讨论了健
康 信 息 学 中 的 交 互 式 机 器 学 习 。 例 如 ,
Hellerstein
等 人
(
1999
) ,
Zhao
,
Yao
和
Yan
(
2007
) 以 及
Mühlbacher
,
Linhardt
,
Möller
和
Piringer
(
2018
)采用多目标方法研究了交
互式数据挖掘。
Mühlbacher
的
TreePOD
系统强调决策树的二维
Pareto
前沿的可视化探索。有些方法将大部分的构建工作都交
给了用户(
Ankerst
,
Ester
,
&Kriegel
,
2000; Han& Cercone
,
2002
)。与我们的方法更相似的是
&“
基于 约束的数据挖掘
”
(
Han
,
Lakshmanan
,
Ng
,
1999
),其 中用户使用
“
规则
约束
”
限制关联规则的搜索空间,并使用
“
兴趣约束
”
引导搜
索。
在目前的研究中,我们假设简单的模型和模型
-
特征较少的元素更容易理解(
Huysmans
,
De- jaeger
,
Mues
,
Vanthienen
,
Baesens
,
2011
)。这些并不是影响可理解性的唯
一 因 素 (
Fürnkranz
,
Klieu
,
&Paulheim
,
2018; Pazzani
,
2000
)。
Dam
等人(
2018
)指出, 对于软件分析,可解释性
与准确性同样重要。
Freitas
(
2014
)建议将可理解性作为多目
标方法中的一个目标。我们创建透明机器学习模型的方法属于
可解释人工智能(
XAI
)的更大领域(
Barredo Arrieta
等人,
2020
年)。基于规则的系统在
XAI
的最新应用中形成了重要部
分,有时在规则表示上存在差异,例如基于关联规则的时间规
则(
Anguita-Ruiz
,
Segura-Delgado
,
Alcalá
,
Aguilera
,
Alcalá-
Fdez
,
2020
)或模糊逻辑信念规则库(
Sachan
,
Yang
,
Xu
,
Benavides
,
Li
,
2020
)。
XAI
领域的其他研究人员使用两步过
程:首先,学习黑盒模型,并将此模型转换为可理解的模型
(
Johansson
,
Niklasson
,
&König
,
2004; Moeyerdom
,
de
Fortuny
,
Dejaeger
,
Baesens
,
&Martens
,
2015; Zhang
,
Li
,
&Cui
,
2005
)。还有一种方法是根据请求为模型对特定实例的
决策创建解释(
Dam
等人,
2018; Ribeiro
,
Singh
,
&Guestrin
,
2016; Tan
,
Tan
,
Dara
,
&Mayeux
,
2015
)。然而,由于相关
风险,这些对事后可解释性的尝试并非没有批评(
Rudin
,
2018
)。
我们使用多目标
GRASP-PR
的变体(
Martí
,
Campos
,
Rescue
,
&Duarte
,
2015; Rescue& Ribeiro
,
2016
) , 以 及
Ishida
,
De Carvalho
,
Pozo
,
Goldbarg
,
and Gold-barg
(
2008
)
;
Ishida
,
Pozo
,
Goldbarg
,
and Goldbarg
(
2009
) ,
ReynoldsandDe la Iglesia
(
2009
)以及
Pavanelli
,
Arns Steiner
,
Góes
,
Pavanelli
,
and Costa
(
2014
),都取得了可喜的成果。
这些先前的研究与我们的研究在特定的元启发式运算符和各种
其他细节上不同,并且没有考虑领域专家的反馈。许多其他研
究使用多目标进化算法进行数据挖掘(
Dehuri& Mall
,
2006;
Dehuri
,
Patnaik
,
Ghosh
,
&Mall
,
2008; Kaya
,
2010
)。在这
篇文章中不可能全面讨论关于这个主题的大量文献。早期的研
究 是 由
De Jong
、
Spears
和
Gor don
(
1993
年 ) 以 及
Janikow
(
1993
年)完成的,随后的研究, 例如:
Eggermont
,
Eiben
,
and van Hemert
(
1999
),
Fidelis
,
Lopes
,
and Fre-
i t
as
(
2 000
)
,
Berna rdó-Mansilla
and
Ho
(
2 0 0 5
)
,
and
Ba
ykaso
g
luandÖzbakir
(
2007
)
. Kwedlo
和
Kretowski
(
2001
) 在 他 们的 方 法中明 确讨论 了 成本 敏 感 性。
Freitas
(
2003
)调查了进化算法在数据挖掘中的
在 我 们 的 系 统 中 的 规 则 生 成 是 从 标 准 的 规 则 挖 掘 算 法
(
Breiman
,
2001; Cohen
,
1995; Fürnkranz&
Klieg r
,
2 01 5
;
L a
v
r
a
c
,
Fürnk ranz
,
&
Gam b
e r
g
e
r
,
2 01
0
)。
用
启发式搜索对给定
的候选项进行优化。
Ryan
和
Rayward-Smith
(
1998
)使用了类
似的 方法,他们将
C4.5
和遗 传编程杂交以提 高可扩 展性。
Grosan and Abraham
(
2007
)对进化算法的混合算法进行了更
深入的研究。我们的方法的另一个缺点是多目标优化的
&&“
射
击
”
过程(
Benson Sayin
,
1997; Wagner
,
Behrand
,
Naujoks
,
2007
)。进一步的启发是
ROCCER&
在
ROC
空间中构建凸包的
方法(
Prati Flach
,
2005
)。
我们将我们的挖掘方法应用于软件工程中的预测。在过去的
二十年里,缺陷预测和数据挖掘在软件工程中的其他应用已经
成 为 一 个 广 阔 的研 究领 域。 文 献 调 查 (
Hall
,
Beecham
,
Bowes
,
Gray
,
&Counsell
,
2012; Hosseini
,
Turhan
,
&Gunarathna
,
2018; Radjen-
ov
i c
′
,
Heri
c
k
o
,
To
r
k
a
r
,
&
i
vk
o
vi
c
,
2
01 3
)
为
这一
领域提供了一个参考。
4.
问题陈述
现在我们将更抽象地描述采矿问题。考虑一个问题,如上面
介绍的评论评论预测问题,其中
动作
(例如,注意评论评论)
可以由若干实例引起
/
触发。一个实例可以是一个、多个或没有
动作的原因。检查或以其他方式处理一个潜在的原因需要花费
精力,目标是在仍然触发动作的同时最小化总的精力。我们希
望通过预测选择哪些实例来花费精力来解决这个问题。图
2
说
明了这种情况。实例
I2
是动作
A1
和
A2
的原因。其他足够的,但
次优的实例组合,使得
A1
和
A2
的原因都被识别,将是
I1
和
I3
,
以及
I1
和
I4
。我们称之为识别
-
将一个实例作为一个动作的
原因是
一个积极的
预测,而不将一个实例识别为一个原因是一
个消极
的预测。正如我们的例子所示,可能存在多个实例组
合,其中识别将导致相同的操作。此外,我们假设负责这些操
作的领域专家希望了解预测背后的推理,而不是简单地接受预
测为真。如果领域专家理解预测的原因,但不同意,他们应该
能够修改预测模型。因此,我们要解决的问题具有以下性质:
•
最小化积极预测的数量(即,预测的情况),同时仍然覆盖
(几乎)所有的动作。
•
说明操作和实例之间的关系
•
该模型是可理解的,并可由领域专家修改。
我们的问题是一个二元分类问题。有许多方法可以描述对象
分类的假设,例如,通过支持向量机,神经网络,回归函数,
如逻辑回归,和规则。在这些方法中,规则的优点在于它们易
于被人类解释和修改。在这篇文章中,我们关注的是以析取范
式(
DNF
)编写的布尔表达式描述的规则,即,
C1
级
。
. .
P2P
( 1
)
其中
C
k
= c
k
,
1
。
. .
其中
k = 1
,
. . .
,
p
是原子条件下的合取。每
一个布尔表达式也可以被描述为