From Philosophy to Interfaces: an Explanatory Method and a Tool Inspired by Achinstein’s Theory of Explanation
In this repository you'll find the source code and the data used in the experiments of our paper: "From Philosophy to Interfaces: an Explanatory Method and a Tool Inspired by Achinstein’s Theory of Explanation". This paper has been presented at ACM IUI 2021, the 26th annual meeting of the intelligent interfaces, in April the 15th.
Before installation, be sure that virtualenv and pip are both available to your local python environment. To install virtualenv run pip install virtualenv
.
- Run
software/yai_baseline/setup.sh
to install the baseline's dependencies. - Run
software/yai_alternative/setup.sh
to install the alternative's dependencies. - Install the HELOC dataset:
- The HELOC dataset and more information about it, including instructions to download, can be found at https://community.fico.com/s/explainable-machine-learning-challenge?tabset-3158a=2.
- Copy and paste the file heloc_dataset.csv into software/yai_baseline/aix and software/yai_alternative/aix
- The code of the baseline is at software/yai_baseline.
- The code of our user-centred alternative to the baseline is at software/yai_alternative.
We share with you:
- a pitch summarising the salient aspects of the proposed technology,
- a brief video presenting the live demo.
Each demo is made of different components:
- The baseline has 2 components:
- The alternative has the same components of the baseline, but the following extra:
- oke, containing the back-end of the explanatory AI used for the generation of user-centred explanations.
You can run all the components together by running the scripts:
software/yai_alternative/server.sh 8080
to start the alternative to the baseline, at port 8080.- The first time you run it may take a while, training the neural network for credit approval (therefore generating the npz and h5 files) and downloading the pre-trained language models for summarisation and question-answer retrieval (a few GB each one).
- Log files are saved in the aix, oke and yai folders.
software/yai_baseline/server.sh 8000
to start the baseline at port 8000.
For debugging or other reasons, you can run the components separately by executing the following command python3 server.py 8080
(replace 8080 with the port number you chose) from within the directory of the component.
- The collected user studies are in user_study/data.
- To generate the boxplots and compute the related statistics, run user_study/result_analyser.py.
Please use the following bibtex entry:
@inproceedings{sovrano2021philosophy,
title={From Philosophy to Interfaces: an Explanatory Method and a Tool Based on Achinstein's Theory of Explanation},
author={Sovrano, Francesco and Vitali, Fabio},
booktitle={Proceedings of the 26th International Conference on Intelligent User Interfaces},
year={2021},
}
To report issues, use GitHub Issues. For other queries, contact Francesco Sovrano francesco.sovrano2@unibo.it