CN111783956A - 特征维度重要性分析方法、装置、设备及可读存储介质 - Google Patents
特征维度重要性分析方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN111783956A CN111783956A CN202010625135.2A CN202010625135A CN111783956A CN 111783956 A CN111783956 A CN 111783956A CN 202010625135 A CN202010625135 A CN 202010625135A CN 111783956 A CN111783956 A CN 111783956A
- Authority
- CN
- China
- Prior art keywords
- result
- sample
- original
- data
- modified
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/03—Credit; Loans; Processing thereof
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种特征维度重要性分析方法、装置、设备及可读存储介质,所述方法包括:将原始样本输入目标机器学习模型得到原始输出结果,并对所述原始输出结果进行修改得到修改结果;在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本;对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果。本发明提出了一种分析机器学习模型输入数据的各个特征维度重要性的有效途径。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种特征维度重要性分析方法、装置、设备及可读存储介质。
背景技术
大数据时代背景下,人工智能已经成为工业领域、金融领域以及科研领域中帮助人们对数据背后的事实进行挖掘与阐述的必要工具。另一方面,尽管人工智能会给出相应的预测结果,然而受限于人类对抽象事物理解能力的上限,大部分人工智能模型与方法都被视为黑箱模型,黑箱模型存在的一个问题是模型输入数据的各个特征维度对模型预测结果所起的作用,即其重要程度是未知的。然而在实际应用中,往往需要了解各个特征维度的重要程度,才能够更好地应用人工智能模型。且,随着计算机计算能力,存储能力与人工智能算法性能的不断提升,模型输入样本的特征维度也在不断增长,因此如何判断各个特征维度的重要性成为了一个急需解决的问题。
发明内容
本发明的主要目的在于提供一种特征维度重要性分析方法、设备、系统及可读存储介质,旨在解决如何判断人工智能模型输入样本的各个特征维度的重要性的问题。
为实现上述目的,本发明提供一种特征维度重要性分析方法,所述方法包括以下步骤:
将原始样本输入目标机器学习模型得到原始输出结果,并对所述原始输出结果进行修改得到修改结果;
在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本;
对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果。
可选地,所述修改结果为所述原始样本对应的反例结果,
所述在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本的步骤包括:
在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本;
将所述备选样本输入所述目标机器学习模型得到备选结果,并检测所述备选结果是否构成所述原始样本的反例结果;
若检测到所述备选结果构成所述原始样本的反例结果,则将所述备选样本作为修改样本;
若检测到所述备选结果不构成所述原始样本的反例结果,则将所述备选结果作为新的原始输出结果,基于新的原始输出结果再执行所述步骤:在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本。
可选地,所述在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本的步骤包括:
计算所述修改结果和所述原始输出结果之间的差值;
按照反向传播方法根据所述差值计算所述原始样本各个特征维度的梯度值;
根据所述梯度值对所述原始样本各个特征维度的数据进行修改得到修改样本。
可选地,所述对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果的步骤包括:
计算所述修改样本中各个特征维度的数据与所述原始样本中对应特征维度的数据之间的差值,得到各个特征维度的数据差值;
将各所述数据差值分别与对应特征维度的预设阈值进行比较,将数据差值大于预设阈值的特征维度确定为重要特征,以得到各个特征维度的重要性分析结果。
可选地,所述对所述原始输出结果进行修改得到修改结果的步骤包括:
接收对所述原始输出结果进行修改的修改指令;
将所述修改指令中携带的结果作为所述原始输出结果的修改结果。
可选地,当所述原始输出结果是概率值时,所述对所述原始输出结果进行修改得到修改结果的步骤包括:
检测所述原始输出结果是否大于预设分类阈值;
若所述原始输出结果大于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第一区间为大于或等于零,且小于所述预设分类阈值的区间。
若所述原始输出结果小于或等于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第二区间为小于或等于一,且大于所述预设分类阈值的区间。
可选地,所述重要性分析结果为指示各个特征维度中重要特征的结果,所述目标机器学习模型为风险授信模型,所述对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果的步骤之后,还包括:
根据所述重要性分析结果,检测待预测用户的样本数据中所述重要特征对应的数据是否为异常数据;
若所述重要特征对应的数据为异常数据,则对所述重要特征对应的数据进行弱化处理;
将弱化处理后的样本数据输入所述目标机器学习模型得到风险授信结果。
为实现上述目的,本发明提供一种特征维度重要性分析装置,所述装置包括:
输入模块,用于将原始样本输入目标机器学习模型得到原始输出结果,并对所述原始输出结果进行修改得到修改结果;
修改模块,用于在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本;
比对模块,用于对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果。
为实现上述目的,本发明还提供一种特征维度重要性分析设备,所述特征维度重要性分析设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的特征维度重要性分析程序,所述特征维度重要性分析程序被所述处理器执行时实现如上所述的特征维度重要性分析方法的步骤。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有特征维度重要性分析程序,所述特征维度重要性分析程序被处理器执行时实现如上所述的特征维度重要性分析方法的步骤。
本发明中,通过将原始样本输入目标机器学习模型得到原始输出结果,对原始输出结果进行修改得到修改结果,在目标机器学习模型中反向传播该修改结果与该原始输出结果之间的差值,以对原始样本进行修改得到修改样本,并对比原始样本和修改样本的各个特征维度的数据,得到各个特征维度的重要性分析结果。通过对输出结果进行修改,采用反向传播方式将输出结果的变化反映到输入样本上,从而能够根据输入样本各个特征维度的数据变化,得到各个特征维度对输出结果的影响程度,进而得出各个特征维度的重要性分析结果。也即,本发明提出了一种分析机器学习模型输入数据的各个特征维度重要性的有效途径,并能够得出准确地分析结果,进而能够根据准确的分析结果,提高对机器学习模型的使用效率。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明特征维度重要性分析方法第一实施例的流程示意图;
图3为本发明各实施例涉及的一种修改得到反事实样本的流程示意图;
图4为本发明特征维度重要性分析装置较佳实施例的功能示意图模块图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
需要说明的是,本发明实施例特征维度重要性分析设备可以是智能手机、个人计算机和服务器等设备,在此不做具体限制。
如图1所示,该特征维度重要性分析设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对特征维度重要性分析设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及特征维度重要性分析程序。其中,操作系统是管理和控制设备硬件和软件资源的程序,支持特征维度重要性分析程序以及其它软件或程序的运行。在图1所示的设备中,用户接口1003主要用于与客户端进行数据通信;网络接口1004主要用于服务器建立通信连接;处理器1001可以用于调用存储器1005中存储的特征维度重要性分析程序,并执行以下操作:
将原始样本输入目标机器学习模型得到原始输出结果,并对所述原始输出结果进行修改得到修改结果;
在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本;
对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果。
进一步地,所述修改结果为所述原始样本对应的反例结果,
所述在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本的步骤包括:
在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本;
将所述备选样本输入所述目标机器学习模型得到备选结果,并检测所述备选结果是否构成所述原始样本的反例结果;
若检测到所述备选结果构成所述原始样本的反例结果,则将所述备选样本作为修改样本;
若检测到所述备选结果不构成所述原始样本的反例结果,则将所述备选结果作为新的原始输出结果,基于新的原始输出结果再执行所述步骤:在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本。
进一步地,所述在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本的步骤包括:
计算所述修改结果和所述原始输出结果之间的差值;
按照反向传播方法根据所述差值计算所述原始样本各个特征维度的梯度值;
根据所述梯度值对所述原始样本各个特征维度的数据进行修改得到修改样本。
进一步地,所述对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果的步骤包括:
计算所述修改样本中各个特征维度的数据与所述原始样本中对应特征维度的数据之间的差值,得到各个特征维度的数据差值;
将各所述数据差值分别与对应特征维度的预设阈值进行比较,将数据差值大于预设阈值的特征维度确定为重要特征,以得到各个特征维度的重要性分析结果。
进一步地,所述对所述原始输出结果进行修改得到修改结果的步骤包括:
接收对所述原始输出结果进行修改的修改指令;
将所述修改指令中携带的结果作为所述原始输出结果的修改结果。
进一步地,当所述原始输出结果是概率值时,所述对所述原始输出结果进行修改得到修改结果的步骤包括:
检测所述原始输出结果是否大于预设分类阈值;
若所述原始输出结果大于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第一区间为大于或等于零,且小于所述预设分类阈值的区间。
若所述原始输出结果小于或等于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第二区间为小于或等于一,且大于所述预设分类阈值的区间。
进一步地,所述重要性分析结果为指示各个特征维度中重要特征的结果,所述目标机器学习模型为风险授信模型,所述对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果的步骤之后,处理器1001还可以用于调用存储器1005中存储的特征维度重要性分析程序,执行以下操作:
根据所述重要性分析结果,检测待预测用户的样本数据中所述重要特征对应的数据是否为异常数据;
若所述重要特征对应的数据为异常数据,则对所述重要特征对应的数据进行弱化处理;
将弱化处理后的样本数据输入所述目标机器学习模型得到风险授信结果。
基于上述的结构,提出特征维度重要性分析方法的各实施例。
参照图2,图2为本发明特征维度重要性分析方法第一实施例的流程示意图。需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。本发明特征维度重要性分析方法各个实施例的执行主体可以是智能手机、个人计算机和服务器等设备,为便于描述,以下各实施例中省略执行主体进行阐述。在本实施例中,特征维度重要性分析方法包括:
步骤S10,将原始样本输入目标机器学习模型得到原始输出结果,并对所述原始输出结果进行修改得到修改结果;
在本实施例中,可对目标机器学习模型的输入数据的各个特征维度进行重要性分析,其中,目标机器学习模型可以是常用的机器学习模型,例如,各种类型的神经网络模型。样本数据是作为目标机器学习模型输入数据的数据,可以获取至少一条样本数据作为分析基础,应当理解的是,进行重要性分析时所依据的样本数据的数据量越大,得到的分析结果更加可靠、准确。由于对每个样本数据的处理过程是类似的,一下以一个样本数据为例进行说明。
将获取到的样本数据作为原始样本,将原始样本输入目标机器学习模型得到原始输出结果,也即采用目标机器学习模型对输入的原始样本进行处理,输出一个预测结果,将该预测结果作为原始输出结果(表示与该原始样本对应的输出结果)。例如,目标机器学习模型是用于对用户数据进行处理,预测是否对用户进行贷款的风险授信模型,将获取到的一个用户样本数据作为原始样本输入目标机器学习模型,经过机器学习模型的处理,得到贷款预测结果,该贷款预测结果表示是否对该用户贷款,如输出结果是一个概率值,大于0.5表示贷款,不大于0.5表示不贷款,将该贷款预测结果作为原始输出结果。
在得到原始输出结果后,可对原始输出结果进行修改得到修改结果。其中,对原始输出结果进行修改是指:当目标机器学习模型的输出数据是连续型数值时,将原始输出结果修改为连续取值范围内的除原始输出结果外的其他数值,例如当输出数据是概率值时,其对应的连续取值范围是0~1,若原始输出结果为0.2,则可将原始输出结果修改为0~1内除0.2外的其他概率值,例如修改为0.4;当目标机器学习模型的输出数据是离散型数值时,将原始输出结果修改为离散取值范围内除原始输出结果外的其他数值,例如当输出数据的离散取值范围是{0,1,2},原始输出结果为0时,可将原始输出结果修改为1或2。
修改的方式可以是从可选的修改值中随机选取一个修改结果,例如,上述离散型数值的例子中,可以从1和2中随机选取一个作为原始输出结果0的修改结果。修改的方式还可以是按照预先设置的规则从可选的修改值中选取修改结果,例如,上述连续型数值的例子中,预先设置了规则:当原始输出结果小于0.5时,每次修改都往增大方向修改,例如每次增大0.1;当原始输出结果不小于0.5时,每次修改都往减小方向修改,例如,每次减小0.1。
需要说明的是,对于一个样本数据的原始输出结果,可以进行多次不同的修改以进行多次分析,再基于多次分析的结果得到最终的重要性分析结果,本实施例中为便于描述以一次修改为例进行说明。
进一步地,所述步骤S10中对所述原始输出结果进行修改得到修改结果的步骤包括:
步骤S101,接收对所述原始输出结果进行修改的修改指令;
步骤S102,将所述修改指令中携带的结果作为所述原始输出结果的修改结果。
修改方式还可以是基于修改指令进行修改。具体地,可接收对原始输出结果进行修改的修改指令,该修改指令中携带了一个结果,将该结果作为原始输出结果的修改结果。修改指令可以是用户触发的,例如,设置了供用户输入修改结果的交互界面,用户在交互界面中输入修改结果的操作触发修改指令。
步骤S20,在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本;
修改结果和原始输出结果之间存在一个差值,可在目标机器学习模型中反向传播该差值,也即,将该差值作为一个误差,在目标机器学习模型中反向传播该误差。反向传播(Backpropagation,BP)是“误差反向传播”的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。本实施例中,参照现有根据反向传播方法来更新模型参数的过程,可以通过反向传播方法来修改原始样本的各个特征维度的数据,也即,原本的反向传播方法是输入数据固定,通过误差传播来更新参数,本实施例中是模型参数固定,通过误差传播来更新输入数据。通过误差反向传播,计算得到原始样本中各个特征维度的数据的更新值,也即得到一个新的样本,将该样本作为原始样本的修改样本。
步骤S30,对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果。
得到的修改样本各个特征维度的数据相对于原始样本中对应特征维度的数据是有改变的,可对修改样本和原始样本的各个特征维度进行数据比对,即,将两个样本中相同特征维度的数据进行比对,根据两两比对的结果,得到各个特征维度的重要性分析结果。
具体地,以一个特征维度为例,若两个样本中该特征维度的数据之间相差越大,则说明输出结果的修改使得该特征维度数据的变动较大,反过来说明了是该特征维度的数据变动引起了输出结果的改变,从而说明该特征维度对目标机器学习模型的输出结果影响越大,也即该特征维度的越重要;反之,若两个样本中该特征维度的数据之间相差越小,则说明输出结果的修改使得该特征维度数据的变动较小,反过来说明了不一定是该特征维度的数据变动引起的输出结果改变,从而说明该特征维度对目标机器学习模型的输出结果影响越小,也即该特征维度的越不重要。
进一步地,所述步骤S30包括:
步骤S301,计算所述修改样本中各个特征维度的数据与所述原始样本中对应特征维度的数据之间的差值,得到各个特征维度的数据差值;
步骤S302,将各所述数据差值分别与对应特征维度的预设阈值进行比较,将数据差值大于预设阈值的特征维度确定为重要特征,以得到各个特征维度的重要性分析结果。
可计算修改样本中各个特征维度的数据与原始样本中对应特征维度的数据之间的差值,即,将两个样本中相同特征维度的数据计算差值,得到每个特征维度分别对应的数据差值。可对每个特征维度设置一个阈值,若某个特征维度对应的数据差值大于该特征维度对应的阈值,则确定该特征维度为重要特征,否则,确定该特征维度为非重要特征。
需要说明的是,当对原始样本的原始输出结果进行多次修改时,可综合每次修改对应的分析结果确定各个特征维度的重要性,例如,在n次修改中,某个特征维度对应的数据差值大于对应阈值的次数大于一个m次时,将该特征维度确定为重要特征,否则,确定为非重要特征,其中m小于或等于n。同样地,当采用多个样本数据进行分析时,可综合每个样本数据对应的分析结果确定各个特征维度的重要性,例如,对于a各样本数据,每个样本数据都对应有各个特征维度的差值,若某个特征维度对应的数据差值大于对应阈值的个数大于b个时,将该特征维度确定为重要特征,否则,确定为非重要特征,其中b小于或等于a。通过根据多次修改得到的分析结果综合得到最终的重要性分析结果,可以提高最终分析结果的可靠性和准确性,同样地,根据对多个样本数据对应的分析结果综合得到最终的重要性分析结果,以大量数据为基础,也提高了最终分析结果的可靠性和准确性。
在本实施例中,通过将原始样本输入目标机器学习模型得到原始输出结果,对原始输出结果进行修改得到修改结果,在目标机器学习模型中反向传播该修改结果与该原始输出结果之间的差值,以对原始样本进行修改得到修改样本,并对比原始样本和修改样本的各个特征维度的数据,得到各个特征维度的重要性分析结果。通过对输出结果进行修改,采用反向传播方式将输出结果的变化反映到输入样本上,从而能够根据输入样本各个特征维度的数据变化,得到各个特征维度对输出结果的影响程度,进而得出各个特征维度的重要性分析结果。也即,本实施例提出了一种分析机器学习模型输入数据的各个特征维度重要性的有效途径,并能够得出准确地分析结果,进而能够根据准确的分析结果,提高对机器学习模型的使用效率。
进一步地,基于上述第一实施例,提出本发明特征维度重要性分析方法第二实施例,在本实施例中,所述步骤S20包括:
步骤S201,在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本;
进一步地,在本实施例中,修改结果可以是原始样本对应的反例结果。其中,反例结果是指与原始样本的输出结果在事实上相反的结果,例如,原始样本对应的输出结果是确定对目标用户进行贷款,那么其反例结果就是确定对目标用户不进行贷款。
在目标机器学习模型中反向传播修改结果与原始输出结果之间的差值,得到原始样本的各个特征维度数据的更新值,也即得到一个新的样本,可先将该样本作为备选样本。
步骤S202,将所述备选样本输入所述目标机器学习模型得到备选结果,并检测所述备选结果是否构成所述原始样本的反例结果;
将备选样本输入目标机器学习模型进行处理得到预测结果,将该预测结果作为备选结果,也即与备选样本对应的输出结果。可检测该备选结果是否构成原始样本的反例结果。具体地,当目标机器学习模型的输出数据是概率值时,不同的概率区间表示不同的事实结果,可以判断备选结果和原始样本对应的输出结果是否处于不同的区间,若处于不同的区间,则确定备选结果构成原始样本的反例结果,否则确定备选结果不构成原始样本的反例结果。例如,预先根据行业经验设定一个阈值,如设定0.5,标机器学习模型输出的概率值大于0.5表示对用户进行贷款,不大于0.5表示不对用户进行贷款,原始样本对应的输出结果为0.2,则当备选结果大于0.5时,就确定备选结果构成原始样本的反例结果,否则不构成原始样本的反例结果。当机器学习模型的输出数据是离散数值时,不同的离散数值表示不同的事实结果,可以判断备选结果和原始样本是否不同,若不同则说明备选结果构成原始样本的反例结果,若相同则确定不构成原始样本的反例结果。例如,目标机器学习模型输出1表示对用户进行贷款,输出0表示不对用户进行贷款,原始样本对应的输出结果为0,则当备选结果为1时,就确定备选结果构成原始样本的反例结果,否则不构成原始样本的反例结果。
步骤S203,若检测到所述备选结果构成所述原始样本的反例结果,则将所述备选样本作为修改样本;
步骤S204,若检测到所述备选结果不构成所述原始样本的反例结果,则将所述备选结果作为新的原始输出结果,基于新的原始输出结果再执行所述步骤:在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本。
若检测到备选结果构成原始样本的反例结果,就将备选样本作为最终的修改样本。
若检测到备选结果不构成原始样本的反例结果,则将备选结果作为新的原始输出结果,在新的原始输出结果的基础上,再执行步骤S201以及后续的步骤。也即,若修改得到的备选样本不构成原始样本的反例结果,就将备选结果作为新的原始输出结果,在目标机器学习模型中反向传播新的原始输出结果和修改结果之间差值,得到原始样本的各个特征维度的更新值,即得到一个新的样本,将该样本再作为备选样本,并检测备选样本的备选结果是构成原始样本的反例结果,若不构成,则再以该备选样本的备选结果作为新的原始输出结果,如此循环,直到备选样本的备选结果构成原始样本的反例结果时,将备选样本作为最终的修改样本。
也即,在本实施例中,通过多次循环迭代后,最终得到的修改样本所对应的输出结果是原始样本的输出结果的反例结果,通过对比分析最终的修改样本与原始样本在各个特征维度的数据,可以更加准确地得到各个特征维度的重要性分析结果。具体地,以一个特征维度为例,若两个样本中该特征维度的数据之间相差越大,说明该特征维度的数据变动对机器学习模型的输出结果的影响越大,并且该影响是使得输出结果变成了事实上完全相反的结果,从而更加能够说明该特征维度的重要性,也即使得最终得到的重要性分析结果更加具备可靠性和准确性。
进一步地,在一实施方式中,所述步骤S20包括:
步骤S205,计算所述修改结果和所述原始输出结果之间的差值;
步骤S206,按照反向传播方法根据所述差值计算所述原始样本各个特征维度的梯度值;
步骤S207,根据所述梯度值对所述原始样本各个特征维度的数据进行修改得到修改样本。
在目标机器学习模型中反向传播修改结果和原始输出结果之间的差值,以得到修改样本的过程具体可以是:先计算修改结果和原始输出结果之间的误差;然后可参照反向传播方法中根据误差计算模型参数的梯度值的方法,根据该误差计算得到原始样本各个特征维度对应的梯度值;再参照根据梯度值更新模型参数的方法,根据梯度值对原始样本各个特征维度的数据进行更新(也即修改),得到一个新的样本,将该新样本作为修改样本。或者先将该新样本作为备选样本,按照步骤S201~204的方式,循环迭代得到最终的修改样本。
如图3所示,为本发明实施例涉及的一种修改得到反事实样本的流程示意图,其中,反事实样本即最终得到的输出结果构成原始样本的反例结果的修改样本。图3中,通过修改原始输出结果,得到构成原始样本的反例结果的修改结果;计算修改结果与原始输出结果之间的误差,利用误差计算梯度值,修改原始样本得到新样本(图中是新反事实样本),判断该样本是否满足反事实要求,也即判断该样本的输出结果是否构成原始样本的输出结果的反例结果;若满足反事实要求,则可将该新样本作为反事实样本输出,以供用户直观地获知该反事实样本的各个特征维度的数据与原始样本的差别,并可基于差别分析各个特征维度的重要性;若不满足反事实要求,则可将新样本的输出结果作为新的原始输出结果,再计算修改结果与原始输出结果之间的误差,计算梯度值修改样本;如此循环,直到得到反事实样本为止;进一步地,比对反事实样本与原始样本各个特征维度的数据,得到各个特征维度的重要性分析结果。
进一步地,基于上述第一和/或二实施例,提出本发明特征维度重要性分析方法第三实施例。在本实施例中,当所述原始输出结果是概率值时,所述步骤S10中对所述原始输出结果进行修改得到修改结果的步骤包括:
步骤S103,检测所述原始输出结果是否大于预设分类阈值;
进一步地,在本实施例中,为修改得到一个构成原始样本的反例结果的修改结果,修改的方式还可以是:
当原始输出结果是概率值时,也即当目标机器学习模型的输出结果是概率值时,可预先设置一个分类阈值,当输出结果大于该分类阈值时表示一种事实结果,输出结果不大于该分类阈值时表示另一种事实结果。例如,当输出结果大于该分类阈值时,表示对用户进行贷款,当输出结果不大于该分类阈值时,表示不对用户进行贷款。
检测原始输出结果是否大于该预设分类阈值。
步骤S104,若所述原始输出结果大于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第一区间为大于或等于零,且小于所述预设分类阈值的区间。
若原始输出结果大于该预设分类阈值,则从第一区间选取一个概率值作为修改结果,其中,第一区间为大于等于零,且小于该预设分类阈值的区间,如预设分类阈值为0.5,则第一区间为[0,0.5)。从第一区间选取一个概率值可以是随机选取。
步骤S105,若所述原始输出结果小于或等于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第二区间为小于或等于一,且大于所述预设分类阈值的区间。
若原始输出结果小于或等于该预设分类阈值,则从第二区间选取一个概率值作为修改结果,其中,第二区间为小于或等于一,且大于该预设分类阈值的区间,如预设分类阈值为0.5,则第二区间为(0.5,1]。从第二区间选取一个概率值可以是随机选取。
在本实施例中,通过修改得到构成原始样本的反例结果的修改结果,通过反向传播该修改结果与原始输出结果的差值,得到原始样本的修改样本,通过对比原始样本和修改样本的各个特征维度的数据,可以分析得到各个特征维度在使得输出结果变成事实上完全相反的结果上所起的作用大小,从而能够得到各个特征维度更加准确的重要性分析结果。例如,当原始输出结果为确定不向用户进行贷款,修改结果是确定向用户进行贷款时,修改样本各个特征维度的数据相对于原始样本的变化大小,即反映了各个特征维度对不向用户贷款的结果修改为向用户贷款的结果所起的作用大小;也即,特征维度对应的数据变化越大,说明正是因为该特征维度的数据修改使得模型预测结果由不贷款转变为贷款,也即该特征维度为判断是否贷款的重要因素,从而可确定该特征维度为重要特征。
进一步地,在一实施方式中,所述重要性分析结果为指示各个特征维度中重要特征的结果,所述目标机器学习模型为风险授信模型,所述步骤S30之后,还包括:
步骤S40,根据所述重要性分析结果,检测待预测用户的样本数据中所述重要特征对应的数据是否为异常数据;
在本实施例中,目标机器学习模型可以是风险授信模型,具体该模型可以用于预测是否对用户进行贷款。重要性分析结果可以是指示各个特征维度中重要特征的结果,也即,哪些特征维度为重要特征。那么,当使用目标机器学习模型来预测是否对待预测用户进行贷款时,可以先获取待预测用户的样本数据中重要特征对应的数据,例如,根据重要性分析结果确定存款金额这一项为重要特征,则可以提取待预测用户的样本数据中的存款金额。
对于提取到的重要特征对应的数据,检测该数据是否为异常数据。具体地,对于重要特征可以预先设置一个异常阈值,该异常阈值可以设置得较大,当检测到提取的重要特征对应的数据大于该异常阈值时,确定该数据为异常数据,否则,确定该数据为正常数据。
步骤S50,若所述重要特征对应的数据为异常数据,则对所述重要特征对应的数据进行弱化处理;
步骤S60,将弱化处理后的样本数据输入所述目标机器学习模型得到风险授信结果。
若该重要特征对应的数据为异常数据,则可以对该数据进行弱化处理。具体地,可以将该数据减小到正常范围内,如减小到比上述异常阈值小的范围内。将弱化处理后的样本数据输入目标机器学习模型得到风险授信结果,可根据该风险授信结果确定是否对用户进行贷款。具体地,当风险授信结果为离散型数值时,可根据预先定义的各离散值与是否贷款之间的关系确定是否对用户进行贷款;当预测结果为概率值时,可根据预先定义的各概率区间与是否贷款之间的关系确定是否对用户进行贷款。
在本实施例中,当重要特征对应的数据较大时,由于该重要特征对目标机器学习模型的输出结果影响较大,可能使得当其他特征维度的数据无论怎样变化时,目标机器学习模型输出的结果都不变,也即,使得机器学习模型忽视了其他特征维度数据的作用。为了避免用户通过伪造重要特征的数据,使得机器学习模型输出对用户进行贷款的结果,将重要特征对应的数据进行弱化处理,使得机器学习模型能够基于其他特征维度的数据综合判断是否对用户进行贷款,从而得到更加可靠的预测结果。
此外本发明实施例还提出一种特征维度重要性分析装置,参照图4,所述装置包括:
输入模块10,用于将原始样本输入目标机器学习模型得到原始输出结果,并对所述原始输出结果进行修改得到修改结果;
修改模块20,用于在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本;
比对模块30,用于对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果。
进一步地,所述修改结果为所述原始样本对应的反例结果,所述修改模块20包括:
第一修改单元,用于在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本;
第一检测单元,用于将所述备选样本输入所述目标机器学习模型得到备选结果,并检测所述备选结果是否构成所述原始样本的反例结果;
第一确定单元,用于若检测到所述备选结果构成所述原始样本的反例结果,则将所述备选样本作为修改样本;
循环单元,用于若检测到所述备选结果不构成所述原始样本的反例结果,则将所述备选结果作为新的原始输出结果,基于新的原始输出结果再执行所述步骤:在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本。
进一步地,所述修改模块20包括:
第一计算单元,用于计算所述修改结果和所述原始输出结果之间的差值;
第二计算单元,用于按照反向传播方法根据所述差值计算所述原始样本各个特征维度的梯度值;
第二修改单元,用于根据所述梯度值对所述原始样本各个特征维度的数据进行修改得到修改样本。
进一步地,所述比对模块30包括:
第三计算单元,用于计算所述修改样本中各个特征维度的数据与所述原始样本中对应特征维度的数据之间的差值,得到各个特征维度的数据差值;
比较单元,用于将各所述数据差值分别与对应特征维度的预设阈值进行比较,将数据差值大于预设阈值的特征维度确定为重要特征,以得到各个特征维度的重要性分析结果。
进一步地,所述输入模块10包括:
接收单元,用于接收对所述原始输出结果进行修改的修改指令;
第二确定单元,用于将所述修改指令中携带的结果作为所述原始输出结果的修改结果。
进一步地,当所述原始输出结果是概率值时,所述输入模块10包括:
第二检测单元,用于检测所述原始输出结果是否大于预设分类阈值;
第一选取单元,用于若所述原始输出结果大于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第一区间为大于或等于零,且小于所述预设分类阈值的区间。
第二选取单元,用于若所述原始输出结果小于或等于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第二区间为小于或等于一,且大于所述预设分类阈值的区间。
进一步地,所述重要性分析结果为指示各个特征维度中重要特征的结果,所述目标机器学习模型为风险授信,所述装置还包括:
检测模块,用于根据所述重要性分析结果,检测待预测用户的样本数据中所述重要特征对应的数据是否为异常数据;
弱化模块,用于若所述重要特征对应的数据为异常数据,则对所述重要特征对应的数据进行弱化处理;
所述输入模块10还用于将弱化处理后的样本数据输入所述目标机器学习模型得到风险授信结果。
本发明特征维度重要性分析装置的具体实施方式的拓展内容与上述特征维度重要性分析方法各实施例基本相同,在此不做赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述存储介质上存储有特征维度重要性分析程序,所述特征维度重要性分析程序被处理器执行时实现如下所述的特征维度重要性分析方法的步骤。
本发明特征维度重要性分析设备和计算机可读存储介质的各实施例,均可参照本发明特征维度重要性分析方法各实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种特征维度重要性分析方法,其特征在于,所述方法包括以下步骤:
将原始样本输入目标机器学习模型得到原始输出结果,并对所述原始输出结果进行修改得到修改结果;
在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本;
对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果。
2.如权利要求1所述的特征维度重要性分析方法,其特征在于,所述修改结果为所述原始样本对应的反例结果,
所述在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本的步骤包括:
在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本;
将所述备选样本输入所述目标机器学习模型得到备选结果,并检测所述备选结果是否构成所述原始样本的反例结果;
若检测到所述备选结果构成所述原始样本的反例结果,则将所述备选样本作为修改样本;
若检测到所述备选结果不构成所述原始样本的反例结果,则将所述备选结果作为新的原始输出结果,基于新的原始输出结果再执行所述步骤:在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到备选样本。
3.如权利要求1所述的特征维度重要性分析方法,其特征在于,所述在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本的步骤包括:
计算所述修改结果和所述原始输出结果之间的差值;
按照反向传播方法根据所述差值计算所述原始样本各个特征维度的梯度值;
根据所述梯度值对所述原始样本各个特征维度的数据进行修改得到修改样本。
4.如权利要求1所述的特征维度重要性分析方法,其特征在于,所述对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果的步骤包括:
计算所述修改样本中各个特征维度的数据与所述原始样本中对应特征维度的数据之间的差值,得到各个特征维度的数据差值;
将各所述数据差值分别与对应特征维度的预设阈值进行比较,将数据差值大于预设阈值的特征维度确定为重要特征,以得到各个特征维度的重要性分析结果。
5.如权利要求1所述的特征维度重要性分析方法,其特征在于,所述对所述原始输出结果进行修改得到修改结果的步骤包括:
接收对所述原始输出结果进行修改的修改指令;
将所述修改指令中携带的结果作为所述原始输出结果的修改结果。
6.如权利要求1所述的特征维度重要性分析方法,其特征在于,当所述原始输出结果是概率值时,所述对所述原始输出结果进行修改得到修改结果的步骤包括:
检测所述原始输出结果是否大于预设分类阈值;
若所述原始输出结果大于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第一区间为大于或等于零,且小于所述预设分类阈值的区间。
若所述原始输出结果小于或等于所述预设分类阈值,则从第一区间选取一个概率值作为所述修改结果,其中,所述第二区间为小于或等于一,且大于所述预设分类阈值的区间。
7.如权利要求1至6任一项所述的特征维度重要性分析方法,其特征在于,所述重要性分析结果为指示各个特征维度中重要特征的结果,所述目标机器学习模型为风险授信模型,所述对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果的步骤之后,还包括:
根据所述重要性分析结果,检测待预测用户的样本数据中所述重要特征对应的数据是否为异常数据;
若所述重要特征对应的数据为异常数据,则对所述重要特征对应的数据进行弱化处理;
将弱化处理后的样本数据输入所述目标机器学习模型得到风险授信结果。
8.一种特征维度重要性分析装置,其特征在于,所述装置包括:
输入模块,用于将原始样本输入目标机器学习模型得到原始输出结果,并对所述原始输出结果进行修改得到修改结果;
修改模块,用于在所述目标机器学习模型中反向传播所述修改结果和所述原始输出结果之间的差值,以对所述原始样本进行修改得到修改样本;
比对模块,用于对所述修改样本和所述原始样本的各个特征维度进行数据对比,基于对比结果得到各个特征维度的重要性分析结果。
9.一种特征维度重要性分析设备,其特征在于,所述特征维度重要性分析设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的特征维度重要性分析程序,所述特征维度重要性分析程序被所述处理器执行时实现如权利要求1至7中任一项所述的特征维度重要性分析方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有特征维度重要性分析程序,所述特征维度重要性分析程序被处理器执行时实现如权利要求1至7中任一项所述的特征维度重要性分析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010625135.2A CN111783956A (zh) | 2020-07-01 | 2020-07-01 | 特征维度重要性分析方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010625135.2A CN111783956A (zh) | 2020-07-01 | 2020-07-01 | 特征维度重要性分析方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111783956A true CN111783956A (zh) | 2020-10-16 |
Family
ID=72757812
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010625135.2A Pending CN111783956A (zh) | 2020-07-01 | 2020-07-01 | 特征维度重要性分析方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111783956A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112347252A (zh) * | 2020-11-04 | 2021-02-09 | 吉林大学 | 一种基于cnn文本分类模型的可解释性分析方法 |
-
2020
- 2020-07-01 CN CN202010625135.2A patent/CN111783956A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112347252A (zh) * | 2020-11-04 | 2021-02-09 | 吉林大学 | 一种基于cnn文本分类模型的可解释性分析方法 |
CN112347252B (zh) * | 2020-11-04 | 2024-02-27 | 吉林大学 | 一种基于cnn文本分类模型的可解释性分析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7157154B2 (ja) | 性能予測ニューラルネットワークを使用したニューラルアーキテクチャ探索 | |
Yadav et al. | A fuzzy logic based approach for phase-wise software defects prediction using software metrics | |
US20120066166A1 (en) | Predictive Analytics for Semi-Structured Case Oriented Processes | |
US20210174214A1 (en) | Systems and methods for quantizing a neural network | |
US10067746B1 (en) | Approximate random number generator by empirical cumulative distribution function | |
US9208209B1 (en) | Techniques for monitoring transformation techniques using control charts | |
JP2010140434A (ja) | プログラムの解析を支援するための方法、並びにそのコンピュータ・プログラム及びコンピュータ・システム | |
US8161329B2 (en) | Generating random sequences based on stochastic generative model having multiple random variates | |
CN110942086A (zh) | 数据预测优化方法、装置、设备及可读存储介质 | |
US20220171697A1 (en) | Fuzzy testing a software system | |
Sellami et al. | A measurement method for sizing the structure of UML sequence diagrams | |
Traiola et al. | Probabilistic estimation of the application-level impact of precision scaling in approximate computing applications | |
CN112784905A (zh) | 数据样本扩充的方法、装置和电子设备 | |
CN111783956A (zh) | 特征维度重要性分析方法、装置、设备及可读存储介质 | |
CN110991079A (zh) | 基于神经网络的油气藏参数解释方法、装置及电子设备 | |
CN113641525A (zh) | 变量异常修复方法、设备、介质及计算机程序产品 | |
CN112365156A (zh) | 一种数据处理方法、数据处理装置、终端及存储介质 | |
JP2012181666A (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
CN112801620B (zh) | 工程信息处理方法、装置、设备及存储介质 | |
CN113269433B (zh) | 税收风险预测方法、设备、介质及计算机程序产品 | |
US20110270589A1 (en) | Determining ill conditioning in square linear system of equations | |
CN114420219A (zh) | 相对保留时间预测模型的构建方法、预测方法及装置 | |
CN109284354B (zh) | 脚本搜索方法、装置、计算机设备及存储介质 | |
CN114186090A (zh) | 一种图像标注数据的智能质检方法及系统 | |
CN112906723A (zh) | 一种特征选择的方法和装置 |
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 |