Skip to content

Latest commit

 

History

History
86 lines (65 loc) · 2.4 KB

README.md

File metadata and controls

86 lines (65 loc) · 2.4 KB

ATTIC

AuTomaTic Issue Classifier (ATTIC)

Authors:

  • Quentin Perez
  • Pierre-Antoine Jean (Github :octocat:)

Co-authors

  • Christelle Urtado
  • Sylvain Vauttier

Demonstrator

Writing assistant for bug ticket based on ATTIC model is available here.

Description

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

genetic_algorithm

Directory containing sources implementing genetic algorithm to optimize hyper-parameters (features number and hidden_layer_size for the MLP)

classifier_selection

Contains a Jupyter notebook to reproduce results used to compare 6 classifiers (MLP, SVM, SGD, RR, RF, KNN).

multilayer_perceptron_settings

Contains a Jupyter notebook implementing 5 different settings with TF-IDF and MLP.

data

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.)

How to use ? 💻

Requirements

  • Python 3
  • Package Installer for Python (pip)

You can install Python required libraries using the following command:

$ pip install -r requirements.txt

genetic_algorithm

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 &

classifier_selection

To run the Jupyter notebook please run this command:

$ jupyter notebook baseline_notebook.ipynb

multilayer_perceptron_settings

To run the Jupyter notebook please run this command:

$ jupyter notebook mlp_settings.ipynb