Awesome
<div align="center"> <div align="center"> <a href="https://www.sysu-hcp.net/"> <img src="Images/HCP.png" width="400"/> </a> <a href=""> <img src="Images/LOGO.png" width="400"/> </a> </div> </div>CausalVLR is a python open-source framework for causal relation discovery, causal inference that implements state-of-the-art causal learning algorithms for various visual-linguistic reasoning tasks, such as VQA, Image/Video Captioning, Model Generalization and Robustness, Medical Report Generation, etc.
πDocumentation | π οΈInstallation | πModel Zoo | πUpdate News | πOngoing Projects | π€Reporting Issues
</div> <!-- > [![badge](https://github.com/HCPLab-SYSU/CausalVLR/workflows/build/badge.svg)](https://github.com/HCPLab-SYSU/CausalVLR/actions) </--><a id="table-of-contents">π Table of Contents </a>
- π Table of Contents
- π Introduction
- π What's New
- π¨βπ« Get Started
- π Model Zoo
- π« License
- ποΈ Citation
- π Contribution
- π€ Acknowledgement
- ποΈ Projects in HCPLab
<a id="introduction">π Introduction <a href="#table-of-contents">π</a> </a>
CausalVLR is a python open-source framework based on PyTorch for causal relation discovery, causal inference that implements state-of-the-art causal learning algorithms for various visual-linguistic reasoning tasks, detail see on Documentation.
<div> <p> </p> </div> <div align="center"><font size=5> Framework Overview </font> </div> <details open> <summary>Major features</summary>-
Modular Design
We decompose the causal framework of visual-linguistic tasks into different components and one can easily construct a customized causal-reasoning framework by combining different modules.
-
Support of multiple tasks
The toolbox directly supports multiple visual-linguistic reasoning tasks such as VQA, Image/Video Caption, Medical Report Generation, Model Generalization and Robustness and so on.
-
State of the art
The toolbox stems from the codebase developed by the HCPLab team, who dedicated to solving a variety of complex logic tasks through causal reasoning, and we keep pushing it forward.
β Note: The framework is actively being developed. Feedbacks (issues, suggestions, etc.) are highly encouraged.
<a id="whats-new">π What's New <a href="#table-of-contents">π</a> </a>
π₯ 2024.04.07.
- ιη£ δΈθγε€ζ¨‘ζ倧樑εοΌζ°δΈδ»£δΊΊε·₯ζΊθ½ζζ―θεΌγ ε¨ηΊΏθ΅ζΊε·²δΈηΊΏ!
π₯ 2023.12.12.
π₯ 2023.8.19.
- v0.0.2 was released in 8/19/2023
- Support CaCo-CoT for Faithful Reasoning task in LLMs
π₯ 2023.6.29.
- v0.0.1 was released in 6/30/2023
- Support VLCI for Medical Report Generation task
- Support CAMDA (T-PAMI 2023) for Causality-Aware Medical Diagnosis task
- Support CMCIR (T-PAMI 2023) for Event-Level Visual Question Answering task
- Support VCSR (ACM MM 2023) for Video Question Answering task
- Support Robust Fine-tuning (CVPR 2023) for Model Generalization and Robustness
<div> <br>
β¨ CaCo-CoT-Towards CausalGPT: A Multi-Agent Approach for Faithful Knowledge Reasoning via Promoting Causal Consistency in LLMs
<div align=center> </div> <div align="center">Method | ScienceQA | Com2sence | BoolQ |
---|---|---|---|
GPT-3.5-turbo | 79.3 | 70.1 | 71.7 |
CoT | 78.4 | 63.6 | 71.1 |
SC-CoT | 84.0 | 66.0 | 71.4 |
C-CoT | 82.5 | 68.8 | 70.5 |
CaCo-CoT | 86.5(+2.5) | 73.5(3.4) | 73.5(1.8) |
β¨ VLCI-Visual Causal Intervention for Radiology Report Generation
<div align=center> </div> <div align="center">Dataset | B@1 | B@2 | B@3 | B@4 | Meteor | Rough-L | CIDEr |
---|---|---|---|---|---|---|---|
IU-Xray | 50.5 | 33.4 | 24.5 | 18.9 | 20.4 | 39.7 | 45.6 |
MIMIC-CXR | 40.0 | 24.5 | 16.5 | 11.9 | 15.0 | 28.0 | 19.0 |
β¨ CMCIR-Cross-modal Causal Intervention for Event-level Video Question Answering
<div align=center> </div> <!-- div>Dataset | What | Why | How | When | Where | All |
---|---|---|---|---|---|---|
MSVD-QA | 33.1 | 58.9 | 84.3 | 77.5 | 42.8 | 43.7 |
MSRVTT-QA | 32.2 | 50.2 | 82.3 | 78.4 | 38.0 | 38.9 |
Method | Basic | Attribution | Introspection | Counterfactual | Forecasting | Reverse | All |
---|---|---|---|---|---|---|---|
VQAC | 34.02 | 49.43 | 34.44 | 39.74 | 38.55 | 49.73 | 36.00 |
MASN | 33.83 | 50.86 | 34.23 | 41.06 | 41.57 | 50.80 | 36.03 |
DualVGR | 33.91 | 50.57 | 33.40 | 41.39 | 41.57 | 50.62 | 36.07 |
HCRN | 34.17 | 50.29 | 33.40 | 40.73 | 44.58 | 50.09 | 36.26 |
CMCIR | 36.10 (+1.93) | 52.59 (+1.73) | 38.38 (+3.94) | 46.03 (+4.64) | 48.80 (+4.22) | 52.21 (+1.41) | 38.58 (+1.53) |
<a id="get-started">π¨βπ« Getting Started <a href="#table-of-contents">π</a> </a>
Please see Overview for the general introduction of <a hraf="">CausalVLR</a>.
For detailed user guides and advanced guides, please refer to our documentation, and here is the code structure of toolbox.
Installation
Please refer to Installation for installation instructions in documentation.
Briefly, to use CausalVLR, we could install it using pip:
git clone https://github.com/HCPLab-SYSU/CausalVLR.git
pip install -e .
or install from PyPI:
pip install hcpcvlr
Running examples
For causal discovery, there are various running examples in the test directory.
For the implemented modules, we provide unit tests for the convenience of developing your own methods.
<h2 id="model-zoo">π Model Zoo <a href="#table-of-contents">π</a> </h2>Please feel free to let us know if you have any recommendation regarding datasets with high-quality. We are grateful for any effort that benefits the development of causality community.
<div align="center">Task | Model | Benchmark |
---|---|---|
Medical Report Generation | VLCI | IU-Xray, MIMIC-CXR |
VQA | CMCIR | SUTD-TrafficQA, TGIF-QA, MSVD-QA, MSRVTT-QA |
Visual Causal Scene Discovery | VCSR | NExT-QA, Causal-VidQA, and MSRVTT-QA |
Model Generalization and Robustness | Robust Fine-tuning | ImageNet-V2, ImageNet-R, ImageNet-Sketch, ObjectNet, ImageNet-A |
Causality-Aware Medical Diagnosis | CAMDA | MuZhi, DingXiang |
Faithful Reasoning in LLMs | CaCo-CoT | ScienceQA, Com2Sense, BoolQ |
<a id="license"> π« License <a href="#table-of-contents">π</a> </a>
This project is released under the <a hraf="https://github.com/HCPLab-SYSU/CausalVLR/LICENSE">Apache 2.0 license</a>.
<a id="citation"> ποΈ Citation <a href="#table-of-contents">π</a> </a>
If you find this project useful in your research, please consider cite:
@misc{liu2023causalvlr,
title={CausalVLR: A Toolbox and Benchmark for Visual-Linguistic Causal Reasoning},
author={Yang Liu and Weixing Chen and Guanbin Li and Liang Lin},
year={2023},
eprint={2306.17462},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
<a id="contribution"> π Contribution <a href="#table-of-contents">π</a> </a>
Please feel free to open an issue if you find anything unexpected. We are always targeting to make our community better!
<a id="acknowledgement"> π€ Acknowledgement <a href="#table-of-contents">π</a> </a>
CausalVLR is an open-source project and We appreciate all the contributors who implement their methods or add new features and users who give valuable feedback. We wish that the toolbox and benchmark could serve the growing research community by providing a flexible toolkit to reimplement existing methods and develop their new models.
πͺ The review paper here can provide some help
Causal Reasoning Meets Visual Representation Learning: A Prospective Study
Machine Intelligence Research (MIR) 2022
A Review paper for causal reasoning and visual representation learning
@article{
liu2022causal,
title={Causal Reasoning Meets Visual Representation Learning: A Prospective Study},
author={Liu, Yang and Wei, Yu-Shen and Yan, Hong and Li, Guan-Bin and Lin, Liang},
journal={Machine Intelligence Research},
pages={1--27},
year={2022},
publisher={Springer}
}
<a id="hcp">ποΈ Projects in HCPLab<a href="#table-of-contents">π</a> </a>
- HCP-Diffusion is a toolbox for Stable Diffusion models based on π€ Diffusers. It facilitates flexiable configurations and component support for training, in comparison with webui and sd-scripts.