system: [SYSTEM]

user: 3. LIME模型的改进 LIME [ 1 ] 算法当中采用线性模型对关注样本附近随机扰动生成的样本进行拟合，局部逼近复杂模型在关注样本附近的决策行为。我们都知道，线性模型解释性强，但学习能力非常有限，故本文将使用不含交叉项的EBM [ 4 ] 和GAMINET [ 6 ] 去近似复杂模型在关注样本附近的行为。不含交叉项的EBM模型和GAMINET模型属于广义加性模型，具有良好的可解释性，模型输出的特征重要性可与线性模型一般视为每个特征对最终决策的影响程度。由于EBM、GAMINET对单个特征通过集成树或者神经网络进行加工，相比线性回归具备更强的特征学习能力。如当响应变量和特征分量之间的关系为 y = x 1 2 + x 2 3 + sin ( x 3 ) 时，对于线性回归模型是没有办法学习到这样的关系，而EBM、GAMINET则可通过集成树或者神经网络将特征分量进行升华，如： x 1 → x 1 2 x 2 → x 2 3 x 3 → sin ( x 3 ) 再通过最后的线性层将升华后的特征进行组合得到响应变量和特征分量之间的关系。由于最后一层结构是线性的，故我们很容易计算每个特征分量对决策结果的贡献程度，因此它们具有非常好的可解释性的同时精度也提高了。 3.1. 数据集介绍 本文将采用UCI数据库提供的Adult数据集 [ 7 ] 进行实验，Adult数据集是从美国1994年人口普查数据库抽取而来，用于预测居民收入是否超过50 k，标签为是否超过50 k，特征变量主要包含有性别、年龄、职业、教育程度、婚姻状况、种族等。一共有48，842条数据。 3.2. 模型对比 现选择XGBoost为复杂模型， LIME模型算法内部利用的是线性模型(Ridge回归、逻辑回归)去局部近似复杂模型的局部行为，本小节将在LIME模型算法的框架下，用EBM以及GAMINET去逼近XGBoost在关注样本点附近的行为，比较EBM、GAMINE和线性回归模型对复杂模型的逼近复杂模型的能力。使用XGBoost对Adult数据集进行拟合，在训练集上的准确率为0.883，AUC为0.941，在测试集上准确率为0.883，AUC为0.923。 对某个关注样本点，分别采用10个不同的随机数种子在该样本点附近扰动生成10个数据集，每次生成5000个样本，并分别用线性模型、EBM以及GAMINET进行拟合，结果如下表2所示，其中括号左边是模型在生成的数据集上的AUC值，右边是准确率。 Table 2 Performance of three models on randomly generated datasets near certain sample (XGBoost 线性模型 EBM GAMINET 1 (0.967， 0.951) (0.997， 0.992) (0.983， 0.977) 2 (0.965， 0.950) (0.999， 0.985) (0.996， 0.968) 3 (0.964， 0.953) (0.999， 0.986) (0.995， 0.980) 4 (0.961， 0.951) (0.999， 0.984) (0.996， 0.979) 5 (0.957， 0.948) (0.999， 0.984) (0.997， 0.983) 6 (0.953， 0.951) (0.999， 0.987) (0.995， 0.980) 7 (0.965， 0.953) (0.999， 0.986) (0.996， 0.986) 8 (0.956， 0.950) (0.999， 0.985) (0.997， 0.981) 9 (0.967， 0.954) (0.999， 0.987) (0.994， 0.978) 10 (0.953， 0.953) (0.999， 0.986) (0.996， 0.988) 表2. 三种模型在关注样本附近随机生成的数据集上的拟合结果(XGBoost) 同样也是在LIME模型算法的框架下用不含交叉项的GAMINET去局部近似全连接神经网络在关注样本点附近的行为，并和EBM以及线性模型进行比较。注意到两个复杂模型的数据处理方式略不相同，故图中显示的特征值不一样，且复杂模型决策依据也有所出入。全连接神经网络在训练集上的AUC为0.906，准确率为0.848，在测试集上的AUC为0.891，准确率为0.840，三种模型在扰动生成的数据集上的结果如表3所示。 Table 3 Performance of three models on randomly generated datasets near certain sample (neural network 线性模型 EBM GAMINET 1 (0.955， 0.908) (0.987， 0.856) (0.990， 0.960) 2 (0.960， 0.919) (0.989， 0.887) (0.993， 0.972) 3 (0.948， 0.911) (0.988， 0.882) (0.992， 0.970) 4 (0.956， 0.914) (0.987， 0.886) (0.992， 0.973) 5 (0.939， 0.911) (0.984， 0.877) (0.989， 0.966) 6 (0.963， 0.951) (0.989， 0.929) (0.991， 0.982) 7 (0.969， 0.941) (0.988， 0.909) (0.993， 0.983) 8 (0.950， 0.910) (0.985， 0.879) (0.988， 0.964) 9 (0.955， 0.930) (0.988， 0.898) (0.992， 0.972) 10 (0.963， 0.933) (0.988， 0.900) (0.993， 0.976) 表3. 三种模型在关注样本附近随机生成的数据集上的拟合结果(全连接神经网络) 可以看到，对两种复杂模型(XGBoost和全连接神经网络)，整体上EBM和GAMINET的效果都比线性模型要好。对于XGBoost，EBM的拟合效果要比GAMINET要好一些，而对于全连接网络，GAMINET拟合的效果比EBM更佳。这可能是由于EBM是基于树的，更加适合逼近复杂树模型，而GAMINET是基于神经网络的，和复杂神经网络的决策逻辑更相契合一些，因此拟合神经网络的效果更好。 接下来将在LIME的算法框架下，基于EBM拟合复杂模型XGBoost在关注样本点附近的行为并进行解释决策依据，同样，本文将基于GAMINET去拟合全连接网络在关注样本点附近的行为以及寻找复杂模型局部的决策原由。关注样本点的特征取值在局部解释图中有呈现。 3.3. 基于EBM的LIME模型改进算法 本小节用XGBoost在Adult数据集上训练一个预测模型，并将选择一个关注样本点，分别用原始的LIME [ 1 ] 模型以及基于EBM [ 4 ] 的改进LIME模型对XGBoost在该关注样本点附近的行为进行解释。复杂模型在训练集和测试集上的AUC分别为0.941，0.923，准确率分别为0.883，0.873，图3和图4分别为原LIME 图3. LIME输出的全局特征重要性图 图4. 基于EBM的改进LIME模型输出的全局特征重要性图 模型和基于EBM改进后的LIME模型在关注样本点附近生成的数据集上整体特征重要性图(绝对值)，可以看到两个模型均认为Capital Gain、Education-Num以及Hours per week是最重要的特征，并且均是和标签>50 k是正相关的，关注样本点在这三个特征附近取值均较大，因此被预测为>50 k，当我们取在这三个特征上取值相对较小的样本进行研究时，绝大多数样本被复杂模型预测为≤50 k，故不管是原始LIME模型还是基于EBM的改进LIME模型都可以让我们看到特征和复杂模型预测结果之间的关系，探索其决策依据。 进一步可以看到EBM认为Relationship比Marital Status更加重要，即前者比后者更加影响复杂模型的决策行为，而LIME则反之。我们取Relationship、Marital Status这两个特征列联合标签放入一个逻辑回归模型中训练，从图5可以看到逻辑回归输出的Relationship特征重要性绝对值要比Marital Status要大。基于EBM的LIME模型的解释性更加可靠，这是因为EBM的学习能力比逻辑回归要强。 此外两个模型输出的局部特征重要性图提供了关注样本点的每个特征取值对标签的影响程度。如图6和图7所示。 图5. 特征Relationship和Marital Status比较图 图6. LIME输出的局部特征重要性图 图7. 基于EBM的改进LIME模型输出的局部特征重要性图 3.4. 基于GAMINET的LIME模型改进算法 本小节用全连接神经网络在Adult数据集上训练一个预测模型，选择和上一小节相同的关注样本点，分别基于LIME [ 1 ] 模型以及基于GAMINET [ 6 ] 的改进LIME模型对复杂模型在关注样本点附近的行为进行解释，寻找决策依据。复杂模型在训练集、测试集上的AUC分别为0.907，0.893，准确率分别为0.849，0.843。从图8和图9可以看到两个模型特征重要性排前三的特征均为capital_gain、education_num、maritial_status，原始LIME模型认为capital_loss比hours_per_week更加重要，而基于GAMINET的改进模型则反之。同样我们取capital_loss、hours_per_week这两列特征以及标签列放入逻辑回归中训练，得到如图10所示的逻辑回归特征重要性图。可以看到hours_per_week相对capital_loss来说特征重要性绝对值更大。基于GAMINET的LIME改进模型能够更加准确地逼近复杂模型的局部行为。图11为GAMINET每个子网络的输入到输出的函数曲线图，当特征为连续特征时是一条光滑曲线，若为离散特征则为柱形图。GAMINET从原始输入到最后的输出都是公开透明的，是结构上可解释性模型，且它不是简单的线性模型，具有更强的学习能力。 此外两个模型输出的局部特征重要性图提供了关注样本点的每个特征取值对标签的影响程度。如图12和图13所示。 图8. LIME输出的全局特征重要性图 图9. 基于GAMINET的改进LIME模型输出的全局特征重要性图 图10. 特征Hours per week和Capital Loss比较图 图11. 每个特征对应的岭函数图 图12. LIME输出的局部特征重要性图 图13. 基于GAMINET的改进LIME模型输出的局部特征重要性图