您的位置:首页 > 其它

论文阅读-A Workflow for Visual Diagnostics of Binary Classifiers using Instance-Level Explanations

2018-03-24 14:16 801 查看

使用实例级解释对二分类器可视诊断的工作流程

参考文献:[1]     Krause, Josua, et al. "A Workflow for Visual Diagnostics ofBinary Classifiers using Instance-Level Explanations." (2017).

论文内容:

(1)   论文背景
医院急诊室在对急诊病人进行诊断时,最终需要判断病人是否需要住院治疗,但通常无法在第一时间做出这样的决策,医生在对病人做出全方面的诊断后才会通知其他部门该病人是否需要住院。但是,病人在进入急诊室时就将锁定一个床位,在等待最终确认住院的过程中,需要花费数小时,这对医疗资源造成了浪费。
因此,有人根据医生的处方单训练了一个二分类器,用来预测病人是否需要住院治疗。
但这样的分类器是否可靠?以及如何改进?本文基于此问题,设计了一个用于可视诊断二分类器的工作流程。因为机器学习本身的黑盒属性,本文提供实例级别的解释,对分类模型进行可视化呈现,并在此基础上进行对模型进行改进。
此处的论文背景即是本文的Case Study。
(2)   论文方法
1)  可视化设计目标:
G1: What is theoverall accuracy of the model? (global)
G2: What are themain individual decisions the model makes? (local)
G3: How accurateare individual decisions the model makes? (local)
G4: How can onechange the data or the model to improve its decisions?
2)   模型诊断流程


[align=center]图1 模型诊断流程[/align]在该流程中,首先利用数据训练一个机器学习模型,然后通过Statistical Summary(解决G1)、ExplanationExplorer(解决G2和G3)、Item-Level Inspector(解决G4)三个视图对模型进行可视化诊断,再通过得到的信息反过来对模型进行改进。

   Statistical Summary View



[align=center]图2 统计概览视图[/align]上图中,直方图表示预测值的分布,蓝色无阴影表示TP(实际为正值,预测为正值),蓝色阴影表示FP(实际为负值,预测为正值),橙色无阴影表示FN(实际为负值,预测为负值),橙色有阴影表示TN(实际为正值,预测为负值)。在图A中,设预测正值的阈值为0.531时,无阴影的部分表示预测正确的部分,有阴影的部分预测错误的部分,条形图的长度表示预测值为该值(横轴)时预测样本的数量,通过图A可以直观地对整个分类器的准确率有整体的了解,能够达成G1。另外,图B给出了预测性能的数字表格,图C给出了该分类器的ROC曲线(受试者工作特征曲线,能够很容易地查出取任意阈值时模型的预测能力)。

   Explanation Explorer(解决G2和G3)
解释探索视图是在更细的粒度上对模型进行可视化,这里本文提出了一个解释(Explanation)的概念,来对模型的训练数据和测试数据及进行分组。
解释的定义为:改变预测模型预测值的最小数据项组合,通过寻找改变分析模型预测所需的最小变化量来构建explanation。


其中L是标签函数,取值为positive/negative,e是原始数据项中对预测结果产生影响的变化集,v是被解释的数据项。该公式的意义是,在减去e后,预测模型对数据项的预测结果将会发生改变。


其中P为预测分数,表示置信率,介于0和1之间,t为阈值,用来选择训练集中预测最正确的一部分训练数据。
通俗地讲,如果一个病人的处方单上有阿司匹林、氯化钠、布洛芬三种药物时,模型将病人预测为住院,当我们去掉布洛芬这一数据属性之后,模型对该病人的预测为不住院,则我们认为布洛芬是改变预测值的最小变化量,布洛芬就是该病人记录的一个解释。
步骤如下图:


[align=center]图3 构建解释的步骤[/align]


[align=center]图4 解释探索视图[/align]上图为解释探索视图。其中A、B、C、D是panel,可以对右边展示的数据进行过滤筛选等操作。E部分是每个解释的数据属性集,比如第一行中,只有氯化钠一项,表示解释为氯化钠,E和F中是对解释为氯化钠的数据记录的数据统计,具体含义与统计概览视图中一致。E部分最多展示一个解释的三个属性,当大于三个属性时,可通过后面的按钮点击查看。H部分展示的是该解释的比值比,比值比用来衡量该解释对模型预测值的关联程度,比如氯化钠在医学临床的用处广泛,处方有没有氯化钠,与病人是否住院的关联度很弱,此时比值比接近为1,为红色,关联很强时为灰色。

   Item-Level Inspector(解决G4)



[align=center]图5 实例级观察器[/align]上图是在实例级别上对分类器进行可视化。横轴代表数据属性,及处方单中的各种药品,纵轴表示一类处方单,前面数字表示该类处方单数量,第一列色彩图表示模型预测情况,意义如前所述。网格中的黑色表示该类处方单中有该药品,白色表示没有。
(3)   Case Study
作者在论文中以医院预测病人是否住院的模型为例进行了多层次的分析。该预测模型的训练集和测试集都是医生为病人开设的处方单,其中包含病人的用药信息,以此来判断病人是否住院。
通过本文系统的可视化呈现,我们能够发现氯化钠(盐水)是最常见的解释,并且包含氯化钠解释的记录预测的准确率很低,这也与我们的常识相符合,氯化钠代表静脉注射治疗,它对是否住院并没有多大关系,比值比接近1也正好解释了这样的情况。相反的,布洛芬能够较好的预测非住院,它用来缓解疼痛,而疼痛症状往往意味着良性,所以能够预测非住院。
按照比值比对解释进行排序,我们能够找出与预测不相关的一些数据属性,这些属性不能对预测模型起到好的作用,并且因为相关度较低,模型在利用这些数据时通常用猜的方式,这反倒会降低模型的准确度。
模型的训练专家可以利用这些信息对模型进行改进,添加更有效的信息来训练模型。

2.2.3 总结

阅读该论文时一开始比较费劲,描述也艰涩难懂。后来找到了该论文的更多资料,比如PPT、视频和talk,以及系统原型。作者在介绍本文工作时,都是用Case Study来引入,后面我也换了一种阅读思路,先了解原型系统的视图设计,结合CaseStudy,就能搞清楚作者所做的工作,再回过头看其他的部分,就豁然开朗了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐