深度学习中的可解释性方法,前接常规机器学习的可解释性方法。
- 隐层分析法??
- 模拟模型方法? ?
- 注意力机制
- 分段线性函数下的神经网络(Piecewise Linear Neural Networks, PLNN)
1、隐层分析法,通过关注某些神经元节点对结果的影响程度或关联关系,对隐层进行解释。
? ? ? ? 比如卷积神经网络的基础上,引入反卷积神经网络,即利用卷积层中卷积核的转置来进行反卷积,并可视化出每个网络层学习到的特征
2、模拟模型方法,利用模型压缩的方法,通过构造一个简易模型的方式,模仿原深度模型的决策函数,达到解释模型以及与原模型相近的结果的效果
? ? ? 不过该方法在使用一个简易的神经网络模型时,虽然方便了解释,但模型复杂度的大大降低,不再能保证原模型可以被简易模型很好的模拟[8-10]。因此在解释性上,也大打折扣。
?3、注意力机制,深度网络中当前业界比较常见的方法。该种方法在不影响模型效果的前提下,引入Attention向量,对特征及网络中的隐层特征赋予不同的权重,并在训练过程中对该权重进行学习,使得我们可以得到各个特征对于模型学习的重要性程度。
? ? ? ?该方法很直观并准确地体现出用户在特征层面的重要性程度;考虑在模型的整体的特征重要程度,目前较为常见的业界方法为对学到的Attention权重矩阵进行不同用户的平均处理,从而得到一个比较整体的特征重要性权重。
4、分段线性函数下的神经网络?该方法将分段线性函数作为神经网络中神经元的激活函数。同时在此基础上引入每个神经元的状态states。所有states的数量由分段线性函数的分段数决定。分段线性函数的公式如下:
?
其中,k为不同的k个states,而每个神经元的输入都必须满足由该神经元的激活状态state所决定的不等式约束,而该样本的所有states构成的一组线性不等式约束则确定了凸多面体的决策平面。
可以看到,到这里,仍然学得的是每个样本的state matrix所又称的决策平面,仍不具有整体性。为了进一步表达模型的整体性,该方法将具有相同state matrix的样本分为一类,该类中所有样本共享一个决策平面。从而在group-wise的层面上,表现了模型在整体性上的可解释性。
进一步分析,由于分段线性函数在每个状态下对应一个线性函数wx+b。而该方法最终的输出函数为:
?可以看到,该方法的本质仍是在学习每个样本的基于其每个特征维度的权重。
综上,当前基于深度学习方法的可解释性研究,主要围绕隐层分析,模拟模型,注意力机制的引入以及隐层状态向量的引入来进行。本质上,仍是在通过隐层的特征的可视化与分析,来得到personal-wise或者group-wise的解释性。而即使是可以体现出一定的整体性的PLNN方法,其使用分段线性函数作为隐层激活函数,并不属于当前普及的神经网络的激活函数,因此用到某些特定场景可能并不能达到使用其他激活函数的效果,因此仍存在一定的局限性。未来可能会在更普适,更平滑的激活函数下的神经网络的可解释性上进行进一步探索。
|