项目介绍
概述
transformers-interpret 是一个模型解释工具,专为 🤗Transformers 包设计,旨在对任意 transformers 模型进行快速解释。其理念与 Transformers 包一致,只需两行代码即可解释任何 transformers 模型。该工具不仅支持文本模型的解释,还支持计算机视觉模型,并可以在笔记本中或保存为 PNG 和 HTML 文件的形式进行可视化。
安装方法
要使用 transformers-interpret 工具,只需在命令行中运行以下命令即可进行安装:
pip install transformers-interpret
快速入门
文本解释器
序列分类解释器
该工具支持对经过微调的情感分析任务模型进行序列分类解释。在初始化 transformers 模型和分词器后,只需使用 SequenceClassificationExplainer 即可对文本片段进行解释。解释结果会返回每个词与预测类别的贡献分数,其中正数表示对预测类别的正向贡献,负数表示负向贡献。
此外,该工具还提供可视化方法,将数值解释转换为 HTML 文件,以助于阅读和分析。
多类别问题
解释器不仅支持查看预测类别的贡献,还可以对指定类别进行解释,从而检查对多类别问题的预测,验证模型的判断是否正确。
配对序列分类解释器
PairwiseSequenceClassificationExplainer 设计用于处理需要两个输入的模型,例如用于自然语言推理(NLI)和交叉编码器模型。这些模型通常用于比较两个输入的相似度。如果模型只输出单个节点,可以通过调整选项查看不同得分的输入贡献。
多标签分类解释器
这是 SequenceClassificationExplainer 的扩展,支持计算模型配置中每个标签的归因,并以字典形式返回每个词的归因分数。
零样本分类解释器
该解释器为零样本分类模型计算归因,可以为给定的标签计算归因分数。此功能利用自然语言推理模型的“entailment”标签,从而实现零样本预测。
问答解释器
该解释器支持问答模型的解释,返回关于回答开始和结束位置的词归因,方便分析模型对给定问题的理解。
令牌分类(NER)解释器
目前仍在开发中的功能,该解释器支持命名实体识别模型的解释。可以忽略某些标签或索引位置的归因以简化计算。
总结
transformers-interpret 为复杂的 transformers 模型提供了强大且易于使用的解释工具。该工具不仅简化了各种模型的解释过程,还通过可视化增强了对预测结果的理解,适用于文本和图像等多种应用场景,助力研究人员和开发者更好地理解和改进他们的模型。