Captum v0.8.0发布:模型可解释性工具的重大升级
项目简介
Captum是PyTorch生态系统中的一个重要工具库,专注于为深度学习模型提供可解释性分析。作为模型解释领域的专业工具,Captum通过多种算法帮助研究人员和开发者理解模型决策背后的原因,包括特征重要性分析、神经元贡献度计算等。最新发布的v0.8.0版本带来了多项重要改进,特别是在数据归因和特征归因方面有显著增强。
数据归因新功能:影响力函数
v0.8.0版本引入了两种计算"无穷小"影响力分数的新实现,这是理解模型预测与训练数据关系的重要工具。
理论基础
影响力分数近似回答了这样一个问题:如果在训练过程中对某个训练样本进行微小权重调整并重新训练模型,那么给定测试样本的损失会如何变化。数学上,这个影响力分数表示为∇θL(x)'H⁻¹∇θL(z),其中∇θL(x)是训练样本x的损失梯度,H是模型参数的Hessian矩阵。
两种实现方式
-
NaiveInfluenceFunction:精确但计算较慢的实现,适合需要"基准"结果的研究场景。它通过显式计算Hessian矩阵及其特征向量来获得结果。
-
ArnoldiInfluenceFunction:基于Schioppa等人论文的高效实现,使用Arnoldi迭代在不显式构建Hessian矩阵的情况下计算top-k特征值/特征向量,显著提高了计算效率。
这两种实现都采用了低秩近似技术来避免数值问题,并生成低维的"影响力嵌入",使得计算影响力分数变得高效。对于大型模型,这种方法比传统的LISSA方法快几个数量级。
特征归因功能增强
异步计算支持
新版本为多个特征归因方法添加了异步计算支持,利用PyTorch的futures机制实现,包括:
- FeatureAblation
- FeaturePermutation
- ShapleyValueSampling
- ShapleyValues
这一改进使得这些方法在大规模数据上的计算更加高效。
大语言模型(LLM)归因增强
针对当前热门的LLM解释需求,v0.8.0版本增加了:
- 新的梯度归因方法支持:
- LayerGradientXActivation
- LayerGradientShap
- 支持"键值"缓存的扰动归因
- 梯度参数传递支持,允许更灵活的梯度计算配置
可视化与教程
新增了LLM归因教程(Llama2_LLM_Attribution.ipynb),并改进了归因结果的可视化效果,提升了文本可读性和美学表现。
类型注解全面升级
v0.8.0版本对全库的类型注解进行了大规模改进,全面支持最新版本的pyre和mypy类型检查。这一改进使得:
- 代码静态分析更加准确
- IDE智能提示更加完善
- 开发者体验显著提升
其他重要改进
-
设备支持:修复了MPS后端在IntegratedGradients中的支持问题,增强了跨设备兼容性。
-
代码质量:
- 采用了最新版black代码格式化工具
- 大幅提升了测试覆盖率
- 优化了多个函数的复杂度
-
性能优化:在LLM归因调用间释放自动微分图,减少内存占用。
-
教程修复:修正了Titanic基础解释教程中的数据类型问题。
环境要求变更
随着版本更新,Captum v0.8.0调整了环境要求:
- 不再支持Python 3.8以下版本
- 不再支持PyTorch 1.10以下版本
- 计划在下个主要版本中弃用Captum Insights功能
总结
Captum v0.8.0作为模型可解释性工具的重要更新,在数据归因、特征归因特别是LLM解释方面带来了显著增强。新引入的影响力函数为理解训练数据对模型预测的影响提供了有力工具,而全面的类型注解改进则提升了开发体验。这些改进使得Captum在深度学习可解释性领域继续保持领先地位,为研究人员和开发者提供了更加强大、易用的分析工具。
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00- DDeepSeek-OCR暂无简介Python00
openPangu-Ultra-MoE-718B-V1.1昇腾原生的开源盘古 Ultra-MoE-718B-V1.1 语言模型Python00
HunyuanWorld-Mirror混元3D世界重建模型,支持多模态先验注入和多任务统一输出Python00
AI内容魔方AI内容专区,汇集全球AI开源项目,集结模块、可组合的内容,致力于分享、交流。03
Spark-Scilit-X1-13BFLYTEK Spark Scilit-X1-13B is based on the latest generation of iFLYTEK Foundation Model, and has been trained on multiple core tasks derived from scientific literature. As a large language model tailored for academic research scenarios, it has shown excellent performance in Paper Assisted Reading, Academic Translation, English Polishing, and Review Generation, aiming to provide efficient and accurate intelligent assistance for researchers, faculty members, and students.Python00
GOT-OCR-2.0-hf阶跃星辰StepFun推出的GOT-OCR-2.0-hf是一款强大的多语言OCR开源模型,支持从普通文档到复杂场景的文字识别。它能精准处理表格、图表、数学公式、几何图形甚至乐谱等特殊内容,输出结果可通过第三方工具渲染成多种格式。模型支持1024×1024高分辨率输入,具备多页批量处理、动态分块识别和交互式区域选择等创新功能,用户可通过坐标或颜色指定识别区域。基于Apache 2.0协议开源,提供Hugging Face演示和完整代码,适用于学术研究到工业应用的广泛场景,为OCR领域带来突破性解决方案。00- HHowToCook程序员在家做饭方法指南。Programmer's guide about how to cook at home (Chinese only).Dockerfile013
Spark-Chemistry-X1-13B科大讯飞星火化学-X1-13B (iFLYTEK Spark Chemistry-X1-13B) 是一款专为化学领域优化的大语言模型。它由星火-X1 (Spark-X1) 基础模型微调而来,在化学知识问答、分子性质预测、化学名称转换和科学推理方面展现出强大的能力,同时保持了强大的通用语言理解与生成能力。Python00- PpathwayPathway is an open framework for high-throughput and low-latency real-time data processing.Python00