Lime对表格数据的机器学习模型解释
目录
- Lime简介
- 结构
- 原理
- Lime重要函数
- 1、生成解释器
- 2、对局部点的解释
- 3、显示详细信息图
- 4、保存详细信息图
- 5、显示权重图
- 6、显示权重表
- Lime结果的解释
- 1、verbose=True的信息
- 2、show_in_notebook的信息
- 3、as_pyplot_figure的信息
- 4、as_list的信息
Lime简介
from lime import lime_tabular
结构

主要用到的是lime_tabular模块
原理
在需要解释的点附近将机器学习模型局部线性化,利用该近似的线性模型进行局部解释,判断对于该点来说,哪些特征更重要。
局部线性化的形式:
positive:积极权重
negative:消极权重
Intercept:截距
具体意义会在后文解释
Lime重要函数
1、生成解释器
explainer = lime_tabular.LimeTabularExplainer(training_data,mode='classification',feature_names=None,categorical_features=None,verbose=False,class_names=None)
training_data:训练机器学习模型的自变量数据
mode:模式,可选'classification'(分类)和'regression'(回归)
feature_names:特征的名称列表
categorical_features:索引列表,即用作线性化近似的特征只会由该列表中选中的特征组成
verbose:决定是否在使用explain_instance的时候输出详细信息
class_names:字符串列表,决定后续权重表的标题
2、对局部点的解释
exp = explainer.explain_instance(data_row,predict_fn,top_labels=None,num_features=10)
data_row:一维ndarray,单个数据点(要解释的点)
predict_fn:预测函数,对分类模式,预测函数应该是一个输出各种情况可能性的函数;对回归模式,预测函数应该是一个输出预测值的函数
top_labels:若top_labels=k,则选取预测出的概率最高的k种情况来进行解释
num_features:若num_features=k,则选出k个最有效的特征来进行局部线性化
3、显示详细信息图
注:该函数仅用于jupyter,否则只会返回一个
exp.show_in_notebook(show_table=True, show_all=False)
show_table:是否显示解释点对应的“特征名称——实际值”表格
show_all:是否显示show_table中的全部特征,为False则只显示num_features中指定的特征
4、保存详细信息图
exp.save_to_file('filename')
内容与第三点相同,保存为html文件
5、显示权重图
注:权重图也包含在第3点所说的详细信息图中
exp.as_pyplot_figure(labels=1)
labels:在多分类情况下,才需要填充的参数,表面针对该类的预测概率的权重图
6、显示权重表
注:权重表即第五点所说的权重图用列表表示的形式
exp.as_list(labels=1)
labels:在多分类情况下,才需要填充的参数,表面针对该类的预测概率的权重图
Lime结果的解释
无论是回归模式还是分类模式,Lime的解释都是相似的,分类模式下,可以认为是对每种分类情况的概率的回归,即一个n分类模型的解释可以看做对n个回归模型的解释
1、verbose=True的信息
信息形式如下:

Intercept:模型局部线性化后的截距
Prediction_local:局部线性化后的模型对解释点给出的预测
Right:原机器学习模型对解释点给出的预测
2、show_in_notebook的信息
信息形式如下:


上图中
Predicted value 和 Prediction probabilities图则为原机器学习模型对解释点的预测值;
Positive / Negative 和 xxx / Not xxx图则为权重图,左边表示的是消极权重(即原理中的negative),右边表示的是积极权重(即原理中的positive);
Feature——Value图则是“特征名称——实际值”表格。
3、as_pyplot_figure的信息
信息形式如下:

同第2点所提的权重图
4、as_list的信息
信息形式如下:

同第2点所提的权重图
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
