Releases: PaddlePaddle/InterpretDL
InterpretDL v0.8.0 Release
We release the version 0.8.0 of InterpretDL, with new features as follows:
- Add new trustworthiness/faithfulness evaluation metrics. Infidelity is added. NLP tasks are supported too.
- TransformerInterpreters support models that may have global pooling at end.
- Add SmoothGradNLPInterpreter.
- General compatibility.
Depreciation:
use_cuda
is removed. Usedevice
._paddle_prepare
is removed. Use_build_predict_fn
.
We have two more papers got accepted by AAAI'23 and Artificial Intelligence respectively. See implementations at G-LIME and TrainingDynamics.
InterpretDL v0.7.0 Release
We release the version 0.7.0 of InterpretDL, with new features as follows:
- Examples are put into a separate directory
examples/
. Tutorials are still kept in the previous directorytutorials
. - A new explanation algorithm
bidirectional_transformer
is implemented. - Documentation is improved.
- Fix some bugs.
We also would like to brag about ourselves that our paper with InterpretDL is accepted by Journal of Machine Learning Research (JMLR).
Xuhong Li, Haoyi Xiong, Xingjian Li, Xuanyu Wu, Zeyu Chen, and Dejing Dou. “InterpretDL: Explaining Deep Models in PaddlePaddle.” Journal of Machine Learning Research, 2022. https://jmlr.org/papers/v23/21-0738.html.
One survey paper is accepted by Knowledge and Information Systems (KAIS):
Xuhong Li, Haoyi Xiong, Xingjian Li, Xuanyu Wu, Xiao Zhang, Jiang Bian, and Dejing Dou. “Interpretable Deep Learning: Interpretations, Interpretability, Trustworthiness, and Beyond.” Knowledge and Information Systems, 2022, Springer. https://arxiv.org/abs/2103.10689.
And two research works got accepted by ECML'22 and Machine Learning Journal:
Xuhong Li, Haoyi Xiong, Siyu Huang, Shilei Ji, Dejing Dou. Cross-Model Consensus of Explanations and Beyond for Image Classification Models: An Empirical Study. ECML'22, Machine Learning Journal Track. https://arxiv.org/abs/2109.00707.
Xuhong Li, Haoyi Xiong, Yi Liu, Dingfu Zhou, Zeyu Chen, Yaqing Wang, and Dejing Dou. "Distilling ensemble of explanations for weakly-supervised pre-training of image segmentation models." Machine Learning (2022): 1-17. https://arxiv.org/abs/2207.03335.
We have also released a dataset containing 1.2M+ pseudo semantic segmentation images of ImageNet. Refer to PaddleSeg:PSSL for downloading the dataset and the pretrained models.
InterpretDL v0.6.2 Release
We release the version 0.6.2 of InterpretDL, with new features as follows:
- Add BTInterpreter.
- Add examples of BTInterpreter.
- Fix compatibility bugs with PaddleNLP.
InterpretDL v0.6.1 Release
We release the version 0.6.1 of InterpretDL, with new features as follows:
- Add GLIMECVInterpreter.
- Add LIME tutorials Part1 and Part2.
- Fix bugs.
InterpretDL v0.6.0 Release
We release the version 0.6.0 of InterpretDL, with new features as follows:
- Documentation is much richer. See here.
- A new Interpreter
GAInterpreter
has been implemented, with a corresponding usage example. This implementation is suitable for models with self-attention in each modality, like CLIP. - Rename the previous "tutorials" to "examples", to avoid the confusion. Examples show how to use the Interpreters and their explanation results. See tutorials for more information.
- Tutorials are provided, including Getting Started Tutorial, Input Gradient Tutorial, and four tutorials for NLP tasks using Ernie2.0 in English (on NBViewer), Bert in English (on NBViewer), BiLSTM in Chinese (on NBViewer) and Ernie1.0 in Chinese (on NBViewer)
as examples. (For text visualizations, NBViewer gives better and colorful rendering results.) - A taxonomy is provided for comparing the Interpreters, as follows:
Methods | Representation | Model Type | Example |
---|---|---|---|
LIME | Input Features | Model-Agnostic | link1 | link2 |
LIME with Prior | Input Features | Model-Agnostic | link |
NormLIME/FastNormLIME | Input Features | Model-Agnostic | link1 | link2 |
LRP | Input Features | Differentiable | link |
SmoothGrad | Input Features | Differentiable | link |
IntGrad | Input Features | Differentiable | link |
GradSHAP | Input Features | Differentiable | link |
Occlusion | Input Features | Model-Agnostic | link |
GradCAM/CAM | Intermediate Features | Specific: CNNs | link |
ScoreCAM | Intermediate Features | Specific: CNNs | link |
Rollout | Intermediate Features | Specific: Transformers | link |
TAM | Intermediate Features | Specific: Transformers | link |
ForgettingEvents | Dataset-Level | Differentiable | link |
TIDY (Training Data Analyzer) | Dataset-Level | Differentiable | link |
Consensus | Features | Cross-Model | link |
Generic Attention | Input Features | Specific: Bi-Modal Transformers | link (nblink)* |
* For text visualizations, NBViewer gives better and colorful rendering results.
InterpretDL v0.5.3 Release
We release the version 0.5.3 of InterpretDL, with improvements of code styles and documentation.
InterpretDL v0.5.2 Release
We release the version 0.5.2 of InterpretDL, with improvements in NormLIME. The tutorial of NormLIME is modified accordingly too.
Besides, the argument of use_cuda
has been removed from tutorials and unit tests. use_cuda
would be removed in the next version.
InterpretDL v0.5.1 Release
We release the version 0.5.1 of InterpretDL, with small fixes:
- Update readme, add the schema of relations among interpretation, interpretability and trustworthiness.
- Fix some imports errors.
- Add one more base Interpreter
IntermediateLayerInterpreter
.
Thanks @Wgm-Inspur for correcting the parameter of GradShapNLPInterpreter
used in tutorials.
We would also like to mention that the arguments use_cuda
is deprecated. Use device
directly.
InterpretDL v0.5.0 Release
We release the version 0.5.0 of InterpretDL, with new features as following:
- Two more evaluation metrics are added: Perturbation tests and PointGame, for measuring the trustworthiness of interpretation algorithms. APIs for Perturbation, PointGame and PointGameSegmentation are available with corresponding tutorials, 1 and 2.
- Gradients are supported in the eval mode since Paddle2.2.1, which is supported too by InterpretDL, making the gradient computation easier.
- Deprecation of
use_cuda
is on the way. Usedevice
directly.
InterpretDL v0.4.0 Release
We release the version 0.4.0 of InterpretDL, with new features as following:
- Add Consensus of Cross-Model Explanation Algorithm. See the API and the tutorial for details.
- Add Deletion and Insertion Evaluation Algorithms, for measuring the trustworthiness of interpretation algorithms. See the API and the tutorial for details.
- Support Continuous Integration for code quality. We choose circleci for InterpretDL. The code coverage is 93% at this version.
- We add colorful badges in README ;)