AuTomaTic Issue Classifier (ATTIC)
Authors:
- Quentin Perez
- Pierre-Antoine Jean (Github )
Co-authors
- Christelle Urtado
- Sylvain Vauttier
Writing assistant for bug ticket based on ATTIC model is available here.
This repository contains source code about experiments about binary bug tickets classifiers. It is structured in 5 directories 📁 .
root
|
├─ requirements.txt
├─ LICENSE
├─ README.md
├─ genetic_algorithm
├─ classifier_selection
├─ multilayer_perceptron_settings
├─ data
Directory containing sources implementing genetic algorithm to optimize hyper-parameters (features number and hidden_layer_size for the MLP)
Contains a Jupyter notebook to reproduce results used to compare 6 classifiers (MLP, SVM, SGD, RR, RF, KNN).
Contains a Jupyter notebook implementing 5 different settings with TF-IDF and MLP.
Json files containing the dataset of 5,591 tickets used in experiments. Dataset 📜 is split into 7 files to avoid the anonymisation limitation of 1MB performed by anonymous.4open.science The dataset coming from the conference paper: "It’s not a bug, it’s a feature: how misclassification impacts bug prediction" by Herzig, Kim and Just, Sascha and Zeller, Andreas.)
- Python 3
- Package Installer for Python (pip)
You can install Python required libraries using the following command:
$ pip install -r requirements.txt
Genetic algorithm parameters are set in a configuration Python file named "genetic_algo_params.py" at the directory root.
A python main name "genetic_main.py" is runnable with the following command:
$ python3 genetic_main.py
To run it in background with logging:
$ nohup python3 genetic_main.py > genetic_algo.log &
To run the Jupyter notebook please run this command:
$ jupyter notebook baseline_notebook.ipynb
To run the Jupyter notebook please run this command:
$ jupyter notebook mlp_settings.ipynb