问题标签 [lime]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Lime explainer 显示与分类器预测不同的预测概率 - 情感分析
我正在使用 Lime 来追踪模型为什么决定预测这句话是(NEG、POS 或 NEUTRAL)背后的行为,并且在大多数情况下,lime 解释正确,但在这种情况下,为什么我输入 NEG 句子,模型将其预测为 NEUTRAL 但 Lime 以 NEG 最高百分比将其可视化,那么为什么我会出现这样的逻辑错误?
python - LIME ImageExplanation - 'ImageExplanation' 对象没有属性 'as_list'
我正在尝试恢复 LIME 算法在图像超像素上使用的权重。我完全能够恢复预测的地图和边界,但不能恢复权重。
我尝试了命令print(explanation.as_list())但我收到错误'ImageExplanation' object has no attribute 'as_list'。
有谁知道该怎么做?
提前致谢。
编辑
我的实际代码是:
我需要恢复权重,但即使从文档中也找不到方法。谢谢!
编辑 2
我不知道它是否有帮助,但我在 Imagenet 上预训练的 keras 中使用了 v3 模型。x 是要解释的图像。
r - Lime 包无法获得 CaretStack 的预测
我通过将模型堆叠在一起构建了一个 Caret 集成模型。
该模型运行成功,我得到了令人鼓舞的结果。
当我尝试使用 Lime 来解释黑盒预测时,挑战就来了。我收到一条错误消息“模型的类必须有一个 model_type 方法”
我唯一一次遇到这种错误是在 H20 中使用 Lime 时。随后,Lime 背后的人发布了支持 Lime 中的 H20 的更新。
有谁知道是否有任何工作将 CaretStack 包含在 Lime 中?或者知道解决此问题的解决方法。
r - `object` 和 `newdata` 中存储的特征名称不同!使用 LIME 包解释 R 中的 xgboost 模型时
我正在尝试使用 LIME 来解释我使用 XGboost 训练的二进制分类模型。从 LIME调用函数时遇到错误explain()
,这意味着我的模型(或解释器)中有不匹配的列以及我试图解释预测的新数据。
LIME 的这个小插图确实演示了一个带有 xgboost 的版本,但是它是一个文本问题,与我的表格数据有点不同。这个问题似乎遇到了同样的错误,但对于文档术语矩阵也是如此,这似乎掩盖了我的案例的解决方案。我已经设计了一个最小的示例,mtcars
它产生的错误与我在自己的更大数据集中得到的错误完全相同。
我假设因为explainer
只有原始预测列的名称,其中转换状态的测试数据也有一个(Intercept)
列,所以这导致了问题。我只是还没有想出防止这种情况发生的巧妙方法。任何帮助将非常感激。我认为必须有一个巧妙的解决方案。
deep-learning - 多输入 DNN 的 LIME 图像分类解释
我对深度学习还很陌生,但我设法构建了一个多分支图像分类架构,并产生了非常令人满意的结果。
不是那么重要:我正在研究 KKBox 客户流失 ( https://kaggle.com/c/kkbox-churn-prediction-challenge/data ),我将客户行为、交易和静态数据转换为热图,并尝试基于流失者分类在那。
分类本身工作得很好。当我尝试应用 LIME 来查看结果来自哪里时,我的问题就出现了。遵循此处的代码时:https ://marcotcr.github.io/lime/tutorials/Tutorial%20-%20images.html除了我使用输入列表 [members[0],transactions[0],user_logs[ 0]],我收到以下错误:AttributeError: 'list' object has no attribute 'shape'
我想到的是,LIME 可能不是为像我这样的多输入架构而设计的。另一方面,Microsoft Azure 也有一个多分支架构(http://www.freepatentsonline.com/20180253637.pdf?fbclid=IwAR1j30etyDGPCmG-QGfb8qaGRysvnS_f5wLnKz-KdwEbp2Gk0_-OBsSepVc),据称他们使用 LIME 来解释他们的结果(https://www.slideshare.net/FengZhu18/predicting-azure-churn-with-deep-learning-and-explaining-predictions-with-lime)。
我试图将图像连接到单个输入中,但这种方法产生的结果比多输入方法差得多。不过,LIME 适用于这种方法(尽管不像通常的图像识别那样易于理解)。
DNN 架构:
尝试的 LIME 利用率:
型号总结:
因此我的问题是:有人对多输入 DNN 架构和 LIME 有经验吗?有没有我没有看到的解决方法?我可以使用另一种可解释的模型吗?
谢谢你。
python-3.x - 将石灰表格解释器与 Keras 一起使用时出现关键错误
我正在尝试使用 Lime 列出 Keras 神经网络回归模型的特征重要性。
我已经尝试了许多不同的代码变体,并不断得到一些版本的 KeyError: 4 ,其中数字不同。我尝试过更改目标标签和功能数量,以及是否将数据帧转换为数组。
我的模型:
还有我的石灰代码:
x_train 包括除吸收 pct 之外的所有特征,吸收 pct 是我的目标变量
我想获得一些表格数据,如本页所示:https ://pythondata.com/local-interpretable-model-agnostic-explanations-lime-python/
但不断得到:
r - 有没有办法向 R 包中的函数添加方法?
我正在尝试使用石灰在我正在开发的包的输出中添加 ML 解释。我的解决方案使用库 gbm 中的梯度提升模型。石灰不支持这种类型的模型,所以我需要向泛型添加一个 gbm 方法:-model_type -predict_model
如果我手动执行此操作,逐行运行我的代码,我没有问题。
但是,一旦将石灰包含在函数中并且我尝试运行它,该函数似乎无法分配“gbm”方法。.
有人知道如何解决这个问题吗?
我也尝试过使用 setMethod,但随后我会收到一条消息说环境已锁定
我在包函数之外训练我的模型:
然后将其传递给函数:
定义为:
代码原样给出错误消息:“错误:模型类必须有一个 model_type 方法。请参阅 ?model_type 以获得开箱即用支持的模型的概述”
或者,如果我在分配方法时删除“.gbm”并删除前面的#
:
setMethod("model_type", "gbm", function(x, ...) "classification") 中的错误:环境 'SiteViewModelling' 被锁定;无法为函数“model_type”分配方法</p>
python - 来自lime.lime_tabular 的LimeTabularExplainer 函数不起作用:ValueError:参数中的域错误
我正在尝试创建我记得之前工作但现在没有的 LimeTabularExplainer。我下面的试验认为会奏效,但没有奏效。请帮忙,提前谢谢!
我尝试检查 feature_names 是否是列表,它是。尝试删除 training_labels 参数,因为它在 LIME Docs中提到不需要尝试使用具有分类级别“YES”和“NO”的原始目标变量,并将其分别转换为 1 和 0。