CN111553389A - 一种用于理解深度学习模型决策机制的决策树生成方法 - Google Patents

一种用于理解深度学习模型决策机制的决策树生成方法 Download PDF

Info

Publication number
CN111553389A
CN111553389A CN202010271181.7A CN202010271181A CN111553389A CN 111553389 A CN111553389 A CN 111553389A CN 202010271181 A CN202010271181 A CN 202010271181A CN 111553389 A CN111553389 A CN 111553389A
Authority
CN
China
Prior art keywords
decision tree
contribution
tree
deep learning
learning model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010271181.7A
Other languages
English (en)
Other versions
CN111553389B (zh
Inventor
王念滨
柳杨
张耘
王红滨
周连科
张毅
厉原通
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Engineering University
Original Assignee
Harbin Engineering University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Engineering University filed Critical Harbin Engineering University
Priority to CN202010271181.7A priority Critical patent/CN111553389B/zh
Publication of CN111553389A publication Critical patent/CN111553389A/zh
Application granted granted Critical
Publication of CN111553389B publication Critical patent/CN111553389B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

一种用于理解深度学习模型决策机制的决策树生成方法,它属于深度学习模型的决策机制理解技术领域。本发明解决了在现有基于决策树的深度学习模型决策机制理解方法中需要对深度学习模型进行特殊处理,产生的理解效果有限,且现有方法复杂,对模型决策机制的理解造成影响的问题。本发明利用训练好的深度学习模型,通过使用局部解释的方法来得到输入变量的贡献值,从而最终构建出贡献分布矩阵。将贡献分布矩阵作为输入,利用平均贡献值差异作为划分标准,递归地分区生成模型的决策树,再对生成的决策树进行剪枝、验证最终得到最优解释树。本发明可以应用于深度学习模型的决策机制理解。

Description

一种用于理解深度学习模型决策机制的决策树生成方法
技术领域
本发明属于深度学习模型的决策机制理解技术领域,具体涉及一种用于理解深度学习模型决策机制的决策树生成方法。
背景技术
深度学习模型的全局可解释性是从整体上理解模型隐含的复杂逻辑和运行机制。对于模型如何决策,从训练数据集中学到了什么等缺乏认识。通过从已经训练好的深度模型中提取解释规则的方式,来提供对复杂的深度学习模型整体上的决策逻辑的理解。
使用传统的机器学习模型解释卷积网络模型。Hinton等人提出使用知识蒸馏的方式,通过训练相对较为简单的网络模型来模拟复杂的深度学习网络模型的预测概率来提取复杂网络的知识规则。为了更好的提高深度模型的可解释性,Frosst等人在Hinton的基础上,提出通过利用决策树的方法来模拟复杂的深度神经网络模型的决策。Zhang等人从另外角度出发,提出了使用决策树来定量的解释网络模型的预测逻辑。该方法是在深度学习模型中将深层的卷积层中学习到的数据信息的显示表示,同时挖掘隐含层中潜在决策模式。将决策树由粗到细的方式对这些决策模式进行重组,从而定量地解释深度模型的预测逻辑。但该方法对于深层卷积层中的知识提取比较复杂,从卷积层提取的语义信息比较困难,且得到的语义信息并不能完全代表该卷积核的语义信息,而往往深层的卷积层包含了复杂多样的语义信息,容易忽略其他较为重要的信息。对理解模型并不是较为有效准确的。
以上的方法虽然都是在决策树的方式进行模型的理解研究,将得到的决策树作为一颗解释树来理解原始模型。但是对于深度模型都进行了一定的特殊处理,产生的效果往往也是有所改变的,对模型决策机制的理解效果有限,而且方法比较复杂,对模型的理解造成一定影响。
发明内容
本发明的目的是为解决在现有基于决策树的深度学习模型决策机制理解方法中需要对深度学习模型进行特殊处理,产生的理解效果有限,且现有方法复杂,对模型决策机制的理解造成影响的问题,而提出了一种用于理解深度学习模型决策机制的决策树生成方法。
本发明为解决上述技术问题采取的技术方案是:一种用于理解深度学习模型决策机制的决策树生成方法,该方法包括以下步骤:
步骤一、将一组样本数据集随机分成数据集M0和数据集M1两部分;
步骤二、将数据集M0中包含的样本数据输入训练好的深度学习模型中,生成贡献分布矩阵;
步骤三、将贡献分布矩阵作为输入,利用平均贡献值差异作为划分标准,递归地分区生成深度学习模型的初始决策树;
步骤四、对初始决策树进行剪枝,获得剪枝后的决策树,再利用数据集M1对剪枝后的决策树进行验证,得到最优决策树。
本发明的有益效果是:本发明提出了一种用于理解深度学习模型决策机制的决策树生成方法,本发明中解释深度学习模型的方法是利用训练好的深度学习模型,通过使用局部解释的方法来得到输入变量的贡献值,从而最终构建出贡献分布矩阵。将贡献分布矩阵作为输入,利用平均贡献值差异作为划分标准,递归地分区生成模型的决策树,再对生成的决策树进行剪枝、验证最终得到最优解释树。
本发明基于贡献值的解释树方法来理解模型,不需要对原始模型做任何的修改,即不需要对模型进行特殊处理,就可以对模型的决策机制产生很好的理解效果。而且本发明方法操作简单,从而更好地从整体上解释深度学习模型。将局部解释从全局的角度出发产生更加统一有效的理解方法。
附图说明
图1是本发明方法的流程图;
图2是构建的初始树T0的示意图;
图中,Split:v1代表以变量v1为结点;
图3是sgn函数图像。
具体实施方式
具体实施方式一:结合图1说明本实施方式。本实施方式所述的一种用于理解深度学习模型决策机制的决策树生成方法,该方法包括以下步骤:
步骤一、将一组样本数据集随机分成数据集M0和数据集M1两部分;
步骤二、将数据集M0中包含的样本数据输入训练好的深度学习模型中,生成贡献分布矩阵;
加载训练好的深度学习模型,将数据集M0输入训练好的深度学习模型生成贡献值,利用生成的贡献值构建贡献分布矩阵;
步骤三、将贡献分布矩阵作为输入,利用平均贡献值差异作为划分标准,递归地分区生成深度学习模型的初始决策树;
步骤四、对初始决策树进行剪枝,获得剪枝后的决策树,再利用数据集M1对剪枝后的决策树进行验证,得到最优决策树。得到的最优决策树可以用于解释深度学习模型决策机制。
本实施方式是通过从已训练好的深度学习模型中提取规则,来从整体上理解模型的决策逻辑。研究方法将难以解释的深度学习模型转化为可解释的解释树模型。解释深度学习模型的方法是通过数据集训练得到深度学习模型,通过使用局部解释的方法来得到输入变量的贡献值,从而最终构建出贡献分布矩阵。将贡献分布矩阵作为输入,利用平均贡献值差异作为划分标准,递归地分区生成模型的解释树,剪枝、验证最终得到最优解释树。
本实施方式提出了基于贡献值的解释树方法来理解模型,对原始模型不做任何的修改,从而更好地从整体上解释深度学习模型。将局部解释从全局的角度出发产生更加统一有效的理解方法。
具体实施方式二:本实施方式与具体实施方式一不同的是:所述步骤二中,生成贡献分布矩阵采用的是局部模型解释方法。
具体实施方式三:本实施方式与具体实施方式二不同的是:所述训练好的深度学习模型的输入特征变量的个数为N,将训练好的深度学习模型的N个输入特征变量表示为Vi,i=1,2,…,N;M0中包含的样本数据的个数为M,将M0中包含的样本数据表示为Sj,j=1,2,…,M;
将第j个样本数据Sj在第i个输入特征变量Vi上的贡献值记为cij
具体实施方式四:本实施方式与具体实施方式三不同的是:所述步骤三的具体过程为:
步骤三一、对于输入特征变量Vi,根据输入特征变量Vi将ci1,ci2,…,ciM分为SR和SL两个子集;
步骤三二、计算输入特征变量Vi的平均贡献值差异:
Figure BDA0002443209990000031
其中:
Figure BDA0002443209990000032
表子集SL中包含的贡献值的加和,|SL|代表子集SL中包含的贡献值的个数,
Figure BDA0002443209990000033
代表子集SR中包含的贡献值的加和,|SR|代表子集SR中包含的贡献值的个数,spliti表示划分是基于输入特征变量Vi的,G(spliti)是用作衡量划分效果的度量标准,
Figure BDA0002443209990000041
代表SL的平均贡献值,
Figure BDA0002443209990000042
代表SR的平均贡献值;
步骤三三、选取出最大的|G(spliti)|对应的输入特征变量,将选取出的输入特征变量作为划分的初始结点,即将选取出的输入特征变量作为根结点;
步骤三四、从初始结点生成左右两个子结点,根据选取出的输入特征变量将数据集M0中的样本数据划分到左右两个子结点中;
步骤三五、对生成的左右两个子结点,按照递归方式重复步骤三一至步骤三四的过程,直至达到设定的阈值条件时停止,获得初始决策树T0
具体实施方式五:本实施方式与具体实施方式四不同的是:所述步骤三五中,设定的阈值条件为:
子结点内的样本数据个数小于预定阈值、子集的平均贡献值小于预定阈值或输入特征变量的个数变为0。
若某个子结点内的样本数据个数小于预定阈值,则不再继续对该子结点进行分支,若某个子结点内出现了子集平均贡献度小于阈值,则也不再继续对该子结点进行分支;
具体实施方式六:本实施方式与具体实施方式五不同的是:所述步骤四的具体过程为:
对于初始决策树T0中的全部非叶子结点(叶子结点是指没有分裂的结点),假设初始决策树T0中的全部非叶子结点的个数为t,将步骤三中计算出的结点k对应的|G(splitk)|作为结点k的分裂值,k=1,2,…,t;
则初始决策树T0的总分裂强度值G(T0)为:
Figure BDA0002443209990000043
将以结点k为根结点的T0的子树表示为Tk,则子树Tk中内部结点的平均分裂强度为g(Tk):
Figure BDA0002443209990000044
其中:K为子树Tk中内部结点的总个数,k′=1,2,…,K,|G(splitk′)|为子树Tk中结点k′对应的分裂值;
k=1,2,…,t,将最小的g(Tk)设为λ1,在初始决策树T0中剪去g(Tk)最小的子树Tk,获得决策树T1
同理,继续对决策树T1进行剪枝,将决策树T1中非叶子结点的最小平均分裂强度设为λ2,并获得决策树T2
λ1和λ2均为衡量决策树复杂程度的参数,T1为区间[λ12)内最优的决策树;
不断进行递归地剪枝,直到到达解释树T0的根结点(从决策树T0的底部开始进行剪枝,直至到达根结点结束),获得一系列的嵌套决策树T0,T1,T2,...,Tn
将数据集M1分别输入到决策树T0,T1,T2,...,Tn中,分别计算出决策树T0,T1,T2,...,Tn的贡献值,将最大的贡献值对应的决策树作为最优决策树。
具体实施方式七:本实施方式与具体实施方式六不同的是:所述将数据集M1分别输入到决策树T0,T1,T2,...,Tn中,分别计算出决策树T0,T1,T2,...,Tn的贡献值,其具体过程为:
对于初始决策树T0中的t个非叶子结点,结点k的贡献值Gv(k)为:
Gv(k)=sgn[G(splitk)]·G(splitk) (4)
Figure BDA0002443209990000051
将t个非叶子结点的贡献值做和,将求和结果作为初始决策树T0的贡献值;
同理,再分别计算出决策树T1,T2,...,Tn的贡献值,将最大的贡献值对应的决策树作为最优决策树。
实施例
本发明首先通过局部的方法对原始输入进行降维处理,以构建输入变量贡献分布矩阵的方式提取相对重要的变量。选取输入变量中重要的特征子集,使生成的解释树的可理解性更好,因为减少了输入变量维数,从而使解释树的模型更加紧凑且易于呈现表达。
全局角度解释模型是以一种集合的、人类可理解的方式来理解一个训练好的深度学习模型,通过提取模型从训练数据中学习到的最重要的规则来实现的。从模型的角度来看,这些生成的规则能够解释很大一部分的数据集,因此有助于更好地理解模型的全局的决策。通过构建输入变量贡献分布矩阵能够从输入中提取相关重要的变量,丢弃不重要的变量,而模型预测是基于这些选定的变量。所以构建贡献分布矩阵是有效的方法,来保证在不改变模型的情况下,又能直接与模型的输入相关联,保证了解释的可靠性。全局模型解释是后期对解释模型的拟合过程。以一种紧凑的,易于理解的方式表示训练过的模型,并与原始模型非常吻合。全局解释的目的不是使用这种表示来进行预测,而是通过合理的规则构建来理解模型的预测方式。
生成解释树来理解深度学习模型,通过简单的树状结构表示决策规则。递归分区及其树状的结构是一种直观的方法呈现出解释规则集合和模型输入变量之间的交互。
1、贡献分布矩阵的构建
局部模型解释方法是在特定的单个数据样本上进行工作的,从而生成输入变量对特定数据样本最终预测分数的贡献。详细地来说,假定一个有N个输入变量的深度学习模型,给定一个新的数据样本,该模型为第i个变量生成一个量化值来表示这个变量在与模型预测中的重要性,称这个量化值是输入变量的贡献值。假定对于一类的样本数据,总共有M个数据样本,如表1所示,通过使用局部模型解释方法来生成贡献分布矩阵。贡献分布矩阵的每一行代表模型在相应的预测中相关变量的重要性,汇总M个样本的输入变量的贡献值。
表1贡献分布矩阵
Figure BDA0002443209990000061
对于生成的输入变量的贡献分布矩阵,相当于从深度学习模型到生成最终的解释树之间做了一个预处理操作,没有对原始模型的输入直接使用,而是将这些数据样本使用局部解释的方法来生成贡献矩阵。深度学习模型从海量的数据样本中“提取知识”来进行分类决策,局部解释的方法是从特定样本中生成输入变量对特定数据样本最终预测分数的贡献,而模型的预测是基于这些输入变量的。所以通过局部的方法对原始输入相当于进行降维处理,以构建输入变量贡献分布矩阵的方式提取相对重要的变量。选取输入变量中重要的特征子集,使生成的解释树的可理解性更好。
LIME算法是首先利用该样本数据以及该数据样本生成一组近邻的数据集来训练一个可理解的线性模型来拟合待解释模型的局部边界。最终的线性模型的权重系数直接体现了当前决策中该实例的每一维特征变量的重要性。图像数据中扰乱单个像素没有意义,因为一个类别即特征变量包含了许许多多多的单个像素。随机改变单个像素可能不会对预测产生太大影响。所以使用LIME算法采样时,不是直接扰动图像中的单个像素。对于一张普通的图片像素点非常多,若直接把单个像素点作为特征,通过扰动产生的采样空间非常大,严重影响效率。所以在使用LIME算法之前对图像进行预处理,使用扩张卷积网络对图像样本进行特征区域分割,而不是以单个像素作为分割标准,这样使用LIME算对图像进行扰动采样的过程就是随机保留一部分特征区域,丢弃一部分特征区域将这些扰动后的样本输入到模型中得到该样本的预测分数,该预测分数就是样本中保留的特征区域的权重值。这里,将分割的样本只保留一块区域,掩盖其他所有分割区域,得到的是预测分数就是这个特征的贡献值,即贡献分布矩阵中每一行中样本的输入变量的贡献值。
2、基于贡献度的解释树的构建
对于深度模型构建解释树,将得到的样本特征向量的贡献矩阵作为输入,来最终构建模型的解释树。解释树的构建遵循了CART树的机制流程以递归地方式进行构建,包括初始树的生成、生成树的剪枝以及最优子树的验证。而不同的是根据模型解释的需要,提出了用特征变量贡献度差值进行划分,作为构建解释树来提取最优结点,决定该特征变量为最佳切分点,生成模型的解释树T0
2.1初始树的生成
首先进行第一步,来构建解释树,即生成一个较大的初始树T0。这里采用与CART决策树算法相同的贪心过程,递归地对每个结点进行操作,将每个数据样本区域划分为两个子区域来构建二叉决策树,如图2所示。
这里采用与CART决策树算法相同的贪心过程,递归地对每个结点进行操作,将每个数据样本区域划分为两个子区域来构建二叉决策树。以得到的样本变量贡献矩阵作为输入,定义输入变量i,决策树结点的构建都是基于变量i的值进行划分,将所有数据样本分为两个子组。划分子组是基于输入变量值,而不是基于贡献矩阵中的相对贡献值。使用vi来表示输入值以区别于贡献值ci。划分样本子组的类型取决于变量的类型。如果vi是二进制表示的,则划分条件可以是“vi=1”;如果vi是有序数,那么划分的条件可以应用“若vi<d”,其中d是常数值。如果vi是集合元素,则划分条件是vi∈D,D表示变量vi的所有可能值的子集。为了方便起见,假设所有符合划分条件的数据样本都转到右子集,定义为SR,那么不符合的数据样本都被划到左子集中,定义为SL。对于两个数据样本子集SR和SL。定义如下:
Figure BDA0002443209990000081
spliti表示划分是基于变量vi的。括号中的第一个数值代表数据样本中左子集SL中变量的平均贡献值。括号中第二个数值代表右子集SR中变量的平均贡献值。这两个数值之间的差异衡量了数据样本中左右子集中变量vi对模型对样本预测分数的贡献程度。这种两个子集平均贡献差异越大,则变量vi对于模型来说判断意义越大,变量vi对于模型的判别范围越大。因此,通过找到变量|G(spliti)|的最大值,可以从模型角度了解最重要的变量,所以G(spliti)用作衡量划分效果的度量标准。所以在所有可能的划分中搜索所有变量,来达到最佳的初始分割,并作为根节点。解释树生成算法如表2所示:
表2
Figure BDA0002443209990000082
Figure BDA0002443209990000091
算法停止计算的条件是结点中的样本数目小于预定阈值,或者本集的平均贡献指数小于预定阈值(变量对于样本贡献度过于小,以至于在解释性和准确性等因素下忽略不计),或者没有了特征变量。
2.2解释树的剪枝
解释树是采用递归分区的方式来产生解释子树的,解释子树是会一直产生。采用贪心方法来生成初始树T0,初始树T0中包含的规则对训练数据集的问题过于乐观,无法很好地解释模型。可能生成树在学习过程中过多地考虑数据集,从而构建出相对复杂的解释树,而生成过于复杂结构的解释树往往不易于对原解释模型产生好的解释效果,对于解释树采取一定程度的简化是必要的。剪枝从已经生成初始树T0上裁掉一些子树或者叶子结点,来对模型做出更好的解释和推广。
剪枝算法为了使初始解释树T0变小,从解释树的底端开始处理。通过解释树来解释深度学习模型,如果生成的结果树过于复杂,解释性大打折扣,合理的剪枝,从而对解释模型有更好的匹配并做出相对完善的解释。解释树剪枝的过程是首先从底端出发对生成的初始解释树T0进行剪枝操作,当到达初始树T0的根结点时停止剪枝,从而形成一个子树序列{T0,T1,Ti,...,Tn};然后通过一部分验证集对子树集合进行测试,从中选取最优的解释子树。
初始树T0中的所有内部结点(非叶子结点),所有这些结点都包含一个分裂(spliti),定义为t,每个分裂值G(t)对应于公式中定义的值|G(spliti)|。假设T是任何解释树并且t是解释树T内部的结点,可以计算得到解释树T的总分裂强度的值。
Figure BDA0002443209990000092
通常使该值最大化。为了控制该树T的复杂度,向G(t)中添加惩罚项,以惩罚树中更多的结点。得到了该树的损失函数。
Figure BDA0002443209990000101
式中,G(t)是解释树T对数据集生成结点的总分裂强度的值,|T|为T内部的结点树,λ是大于0的参数,Gλ(T)是参数为λ时,该树T的整体的损失,所以参数λ是衡量解释树的复杂程度。为了最大化Gλ(T)的值,如果T内部结点G(t)的值小于λ,则将这些结点删除。λ值越大,该树删除的结点数也就越多,因此最终的结果树会相对简单,λ值越小,则树删除的结点数越少,最终的结果树反而与初始树并无差异。对于如何明确删除哪个内部节点,给出了度量,公式如下。
Figure BDA0002443209990000102
定义t是解释树的内部结点,Tt表示以结点t为根结点的T0的子树。剪枝是在递归的方式下进行的,不断地增大λ值的过程中,产生了与λ值相对应的一系列的区间[λkk+1),k=0,1,…,n剪枝得到的子树序列对应的区间[λkk+1),得到的子树{T0,T1,T2,...,Tn}序列中的子树是嵌套的。具体而言,对T0中的每个内部结点,由公式直观地定义了子树Tt中内部节点的平均分裂强度g(Tt),他表示剪枝后整体损失函数的减少程度。在T0中剪去g(Tt)最小的子树Tt,将得到的子树作为T1,同时将最小的g(Tt)设为λ1。那么得到T1为区间[λ12)的最优的解释子树。通过如此递归地剪枝下去,直到到达最后解释树的根结点。在这个过程中,不断地增大λ的值,产生新的区间。最后得到一系列的嵌套树{T0,T1,Ti,...,Tn}。递归剪枝过程创建的嵌套树对应于一系列的λ值,其中,0=λ0<λ1<λi...<λn
2.3最优解释树
剪枝之后得到的一系列的嵌套解释树{T0,T1,Ti,...,Tn}中,通过交叉验证选取最优子树Tλ。如何确定哪个Tλ是解释树最佳子树,即选取最好的λ值。这里使用独立的数据集进行验证决策,将独立的数据集输入到每个子树序列{T0,T1,Ti,...,Tn},对每个子树的内部结点进行计算,公式如下:
Figure BDA0002443209990000103
其中,Gv(t)定义为单一结点的贡献值,公式中采用sgn函数进行计算来求出Gv(t)。G(t)如果大于0,则sgn(G(t))返回1;如果小于0,则返回-1。G(t)的值决定了sgn函数的返回值,sgn函数的函数图像如图3所示。
使用sgn函数保证对内部结点的G(t)值永远是正值。通过上面的公式计算得到内部结点的G(t)值,最后将解释树所有内部结点的G(t)值相加得到最终Gv(Tλ),Gv(Tλ)是子树的贡献值。
通过公式
Figure BDA0002443209990000111
得到子树Tλ的贡献值,最后比较选择Gv(Tλ)贡献值最大的子树Tλ作为最优子树。通过初始树的生成,到对初始树的进一步地剪枝并验证选取最优子树。最终选取的子树作为对深度学习模型解释效果最好的一颗解释树。
对深度学习模型进行可理解方法研究,本发明是通过在决策树的基础上进行改进来解释深度学习模型的,解释过程分为两步:首先是对已经训练的模型进行特征提取,生成贡献分布矩阵。然后对生成的贡献矩阵进步处理,按照决策树的方式对贡献矩阵进行递归分区从而产生出便于理解模型的解释树。完整的模型解释树算法如表3所示:
表3
Figure BDA0002443209990000112
Figure BDA0002443209990000121
本发明从全局的层面来更好地理解深度学习模型,提出了贡献度的解释树模型的方法来理解模型,以简单有效的方法来解释深度学习模型中输入到输出的映射机制,通过对目标分类识别的深度学习模型进行实验,从具体的深度学习模型进行研究,即一类相关的数据样本中的哪些特征变量对于模型的决策有影响的,模型依据数据样本中哪些“特征”来产生判别结果,模型从输入数据到输出结果是依据了哪些特征。通过生成解释树来理解模型,以一组可理解的规则集合解释模型背后的决策逻辑和依据。使用解释树的方法提取深度学习模型中的目标的相关知识,从而构建出易于理解的规则。该方法可以帮助人们有效地理解面向目标的深度模型的预测方式。
本发明的上述算例仅为详细地说明本发明的计算模型和计算流程,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。

Claims (7)

1.一种用于理解深度学习模型决策机制的决策树生成方法,其特征在于,该方法包括以下步骤:
步骤一、将一组样本数据集随机分成数据集M0和数据集M1两部分;
步骤二、将数据集M0中包含的样本数据输入训练好的深度学习模型中,生成贡献分布矩阵;
步骤三、将贡献分布矩阵作为输入,利用平均贡献值差异作为划分标准,递归地分区生成深度学习模型的初始决策树;
步骤四、对初始决策树进行剪枝,获得剪枝后的决策树,再利用数据集M1对剪枝后的决策树进行验证,得到最优决策树。
2.根据权利要求1所述的一种用于理解深度学习模型决策机制的决策树生成方法,其特征在于,所述步骤二中,生成贡献分布矩阵采用的是局部模型解释方法。
3.根据权利要求2所述的一种用于理解深度学习模型决策机制的决策树生成方法,其特征在于,所述训练好的深度学习模型的输入特征变量的个数为N,将训练好的深度学习模型的N个输入特征变量表示为Vi,i=1,2,…,N;M0中包含的样本数据的个数为M,将M0中包含的样本数据表示为Sj,j=1,2,…,M;
将第j个样本数据Sj在第i个输入特征变量Vi上的贡献值记为cij
4.根据权利要求3所述的一种用于理解深度学习模型决策机制的决策树生成方法,其特征在于,所述步骤三的具体过程为:
步骤三一、对于输入特征变量Vi,根据输入特征变量Vi将ci1,ci2,…,ciM分为SR和SL两个子集;
步骤三二、计算输入特征变量Vi的平均贡献值差异:
Figure FDA0002443209980000011
其中:
Figure FDA0002443209980000012
代表子集SL中包含的贡献值的加和,|SL|代表子集SL中包含的贡献值的个数,
Figure FDA0002443209980000013
代表子集SR中包含的贡献值的加和,|SR|代表子集SR中包含的贡献值的个数,spliti表示划分是基于输入特征变量Vi的,G(spliti)是用作衡量划分效果的度量标准,
Figure FDA0002443209980000014
代表SL的平均贡献值,
Figure FDA0002443209980000015
代表SR的平均贡献值;
步骤三三、选取出最大的|G(spliti)|对应的输入特征变量,将选取出的输入特征变量作为划分的初始结点,即将选取出的输入特征变量作为根结点;
步骤三四、从初始结点生成左右两个子结点,根据选取出的输入特征变量,将除去选取出的输入特征变量外的,其他的输入特征变量以及对应的贡献值划分到左右两个子结点中;
步骤三五、对生成的左右两个子结点,按照递归方式重复步骤三一至步骤三四的过程,直至达到设定的阈值条件时停止,获得初始决策树T0
5.根据权利要求4所述的一种用于理解深度学习模型决策机制的决策树生成方法,其特征在于,所述步骤三五中,设定的阈值条件为:
子结点内的样本数据个数小于预定阈值、子集的平均贡献值小于预定阈值或输入特征变量的个数变为0。
6.根据权利要求5所述的一种用于理解深度学习模型决策机制的决策树生成方法,其特征在于,所述步骤四的具体过程为:
对于初始决策树T0中的全部非叶子结点,假设初始决策树T0中的全部非叶子结点的个数为t,将步骤三中计算出的结点k对应的|G(splitk)|作为结点k的分裂值,k=1,2,…,t;
将以结点k为根结点的T0的子树表示为Tk,则子树Tk中内部结点的平均分裂强度为g(Tk):
Figure FDA0002443209980000021
其中:K为子树Tk中内部结点的总个数,k′=1,2,…,K,|G(splitk′)|为子树Tk中结点k′对应的分裂值;
将最小的g(Tk)设为λ1,在初始决策树T0中剪去g(Tk)最小的子树Tk,获得决策树T1
同理,继续对决策树T1进行剪枝,将决策树T1中非叶子结点的最小平均分裂强度设为λ2,并获得决策树T2
λ1和λ2均为衡量决策树复杂程度的参数,T1为区间[λ12)内最优的决策树;
不断进行递归地剪枝,直到到达解释树T0的根结点,获得一系列的嵌套决策树T0,T1,T2,...,Tn
将数据集M1分别输入到决策树T0,T1,T2,...,Tn中,分别计算出决策树T0,T1,T2,...,Tn的贡献值,将最大的贡献值对应的决策树作为最优决策树。
7.根据权利要求6所述的一种用于理解深度学习模型决策机制的决策树生成方法,其特征在于,所述将数据集M1分别输入到决策树T0,T1,T2,...,Tn中,分别计算出决策树T0,T1,T2,...,Tn的贡献值,其具体过程为:
对于初始决策树T0中的t个非叶子结点,结点k的贡献值Gv(k)为:
Gv(k)=sgn[G(splitk)]·G(splitk) (4)
Figure FDA0002443209980000031
将t个非叶子结点的贡献值做和,将求和结果作为初始决策树T0的贡献值;
同理,再分别计算出决策树T1,T2,...,Tn的贡献值,将最大的贡献值对应的决策树作为最优决策树。
CN202010271181.7A 2020-04-08 2020-04-08 一种用于理解深度学习模型目标分类决策机制的决策树生成方法 Active CN111553389B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010271181.7A CN111553389B (zh) 2020-04-08 2020-04-08 一种用于理解深度学习模型目标分类决策机制的决策树生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010271181.7A CN111553389B (zh) 2020-04-08 2020-04-08 一种用于理解深度学习模型目标分类决策机制的决策树生成方法

Publications (2)

Publication Number Publication Date
CN111553389A true CN111553389A (zh) 2020-08-18
CN111553389B CN111553389B (zh) 2023-06-13

Family

ID=72002322

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010271181.7A Active CN111553389B (zh) 2020-04-08 2020-04-08 一种用于理解深度学习模型目标分类决策机制的决策树生成方法

Country Status (1)

Country Link
CN (1) CN111553389B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112116028A (zh) * 2020-09-29 2020-12-22 联想(北京)有限公司 模型决策解释实现方法、装置及计算机设备
CN112270352A (zh) * 2020-10-26 2021-01-26 中山大学 一种基于并行剪枝优化的决策树生成方法及装置
CN112766415A (zh) * 2021-02-09 2021-05-07 第四范式(北京)技术有限公司 用于解释人工智能模型的方法、装置及系统
CN113240119A (zh) * 2021-04-08 2021-08-10 南京大学 一种用于游戏ai策略解释的跨模型蒸馏装置
CN116662412A (zh) * 2023-07-24 2023-08-29 云南电网能源投资有限责任公司 一种电网配用电大数据的数据挖掘方法
CN116704208A (zh) * 2023-08-04 2023-09-05 南京理工大学 基于特征关系的局部可解释方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030069652A1 (en) * 2001-10-05 2003-04-10 Lee Shih-Jong J. Regulation of hierarchic decisions in intelligent systems
CN108491766A (zh) * 2018-03-05 2018-09-04 中山大学 一种端到端的基于深度决策森林的人群计数方法
CN109886464A (zh) * 2019-01-20 2019-06-14 东北电力大学 基于优化奇异值分解生成特征集的低信息损失短期风速预测方法
US20190279111A1 (en) * 2018-03-09 2019-09-12 Zestfinance, Inc. Systems and methods for providing machine learning model evaluation by using decomposition

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030069652A1 (en) * 2001-10-05 2003-04-10 Lee Shih-Jong J. Regulation of hierarchic decisions in intelligent systems
CN108491766A (zh) * 2018-03-05 2018-09-04 中山大学 一种端到端的基于深度决策森林的人群计数方法
US20190279111A1 (en) * 2018-03-09 2019-09-12 Zestfinance, Inc. Systems and methods for providing machine learning model evaluation by using decomposition
CN109886464A (zh) * 2019-01-20 2019-06-14 东北电力大学 基于优化奇异值分解生成特征集的低信息损失短期风速预测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DAVID ALVAREZ-MELIS等: "On the Robustness of Interpretability Methods", 《ARXIV》, pages 66 - 71 *
厉原通: "面向目标识别的深度学习模型理解方法研究", 《中国优秀硕士学位论文全文数据库信息科技辑》, no. 04, pages 138 - 821 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112116028A (zh) * 2020-09-29 2020-12-22 联想(北京)有限公司 模型决策解释实现方法、装置及计算机设备
CN112116028B (zh) * 2020-09-29 2024-04-26 联想(北京)有限公司 模型决策解释实现方法、装置及计算机设备
CN112270352A (zh) * 2020-10-26 2021-01-26 中山大学 一种基于并行剪枝优化的决策树生成方法及装置
CN112766415A (zh) * 2021-02-09 2021-05-07 第四范式(北京)技术有限公司 用于解释人工智能模型的方法、装置及系统
CN113240119A (zh) * 2021-04-08 2021-08-10 南京大学 一种用于游戏ai策略解释的跨模型蒸馏装置
CN113240119B (zh) * 2021-04-08 2024-03-19 南京大学 一种用于游戏ai策略解释的跨模型蒸馏装置
CN116662412A (zh) * 2023-07-24 2023-08-29 云南电网能源投资有限责任公司 一种电网配用电大数据的数据挖掘方法
CN116662412B (zh) * 2023-07-24 2023-10-03 云南电网能源投资有限责任公司 一种电网配用电大数据的数据挖掘方法
CN116704208A (zh) * 2023-08-04 2023-09-05 南京理工大学 基于特征关系的局部可解释方法
CN116704208B (zh) * 2023-08-04 2023-10-20 南京理工大学 基于特征关系的局部可解释方法

Also Published As

Publication number Publication date
CN111553389B (zh) 2023-06-13

Similar Documents

Publication Publication Date Title
CN111553389B (zh) 一种用于理解深度学习模型目标分类决策机制的决策树生成方法
Lines et al. A shapelet transform for time series classification
CN108985380B (zh) 一种基于聚类集成的转辙机故障识别方法
CN109614495B (zh) 一种结合知识图谱和文本信息的相关公司挖掘方法
CN108132927A (zh) 一种融合图结构与节点关联的关键词提取方法
CN111931505A (zh) 一种基于子图嵌入的跨语言实体对齐方法
Tripoliti et al. Modifications of the construction and voting mechanisms of the random forests algorithm
CN101196905A (zh) 一种智能图形检索方法
Sanz et al. IIVFDT: Ignorance functions based interval-valued fuzzy decision tree with genetic tuning
CN109165672A (zh) 一种基于渐进式学习的集成分类方法
CN102682089A (zh) 一种利用鉴别随机邻域嵌入分析的数据降维方法
CN111062438A (zh) 基于相关学习的图传播的弱监督细粒度图像分类算法
CN116524960A (zh) 一种基于混合熵下采样和集成分类器的语音情感识别系统
Feng et al. Fsrf: an improved random forest for classification
Nuiaa et al. Evolving Dynamic Fuzzy Clustering (EDFC) to Enhance DRDoS_DNS Attacks Detection Mechnism.
Kim et al. A daily tourism demand prediction framework based on multi-head attention CNN: The case of the foreign entrant in South Korea
CN113989544A (zh) 一种基于深度图卷积网络的群体发现方法
CN113743453A (zh) 一种基于随机森林的人口数量预测方法
CN113095501A (zh) 一种基于深度强化学习的不平衡分类决策树生成方法
CN115273645B (zh) 一种室内面要素自动聚类的地图制图方法
CN110502669A (zh) 基于n边dfs子图的轻量级无监督图表示学习方法及装置
CN112861692B (zh) 一种房间分类模型构建方法及装置、房间分类方法及装置
CN114970684A (zh) 一种结合vae的提取网络核心结构的社区检测方法
CN114708114A (zh) 一种基于特征评价及改进算法的社交机器人账号检测方法
Naitzat et al. M-Boost: Profiling and refining deep neural networks with topological data analysis

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Wang Nianbin

Inventor after: Liu Yang

Inventor after: Zhang Yun

Inventor after: Wang Hongbin

Inventor after: Zhou Lianke

Inventor after: Zhang Yi

Inventor after: Li Yuantong

Inventor before: Wang Nianbin

Inventor before: Liu Yang

Inventor before: Zhang Yun

Inventor before: Wang Hongbin

Inventor before: Zhou Lianke

Inventor before: Zhang Yi

Inventor before: Li Yuantong

GR01 Patent grant
GR01 Patent grant