all projects

Study Project (CS F266) · Supervisor: Dr. N. L. Bhanumurthy

Software Bug Prioritization via Hierarchical Attention Networks

Rijul Dahiya1

1BITS Pilani, Hyderabad Campus
Read paper

Abstract

Software development and deployment is often infested with bugs, and manually prioritising bug reports using domain knowledge is inaccurate and time-consuming. We propose a Hierarchical Attention-based recursive deep learning approach to automate bug prioritisation. Our method takes data from Linux and Chrome bug databases, generates word embeddings using GloVe, FastText, and Word2Vec, and processes them through a Hierarchical Attention Network (HAN). Results show strong performance on well-structured datasets (Linux) and highlight limitations on noisier data (Chrome).

Key Contributions

Method

Bug reports are tokenised and embedded using three embedding strategies (GloVe, FastText, Word2Vec). A Hierarchical Attention Network encodes the report at both the word level (word attention) and the sentence level (sentence attention), producing a document representation used for priority classification. The model is trained and evaluated on Linux kernel Bugzilla (~16.5k reports, 9 priority classes) and Chromium (~59k reports, 3 type classes).

Results — Linux dataset

The research question was whether an emotion score, concatenated to the document vector before the final softmax, improves priority prediction. It does — and by more than any embedding swap.

VariantF1Accuracy
word2vec (Adam)0.51560.6301
word2vec (RMSprop)0.53520.6418
FastText0.52810.6278
GloVe0.54700.6516
word2vec + emotion score0.57340.6646

Findings

Attribution

This study project builds on the released code for 'Automated labeling of bugs and tickets using attention-based mechanisms in recurrent neural networks' (Lyubinets, Boiko and Nicholas, DSMP 2018). The contributions here are the emotion-score variant, the GRU architecture change, and the comparative embedding study.

Figures

System architecture, Hierarchical Attention Network pipeline for bug report priority classification.
System architecture, Hierarchical Attention Network pipeline for bug report priority classification.
Word-level attention mechanism, visualising which terms in the bug report most influence the classification.
Word-level attention mechanism, visualising which terms in the bug report most influence the classification.
Performance comparison across embedding strategies (GloVe, FastText, Word2Vec) on Linux and Chromium datasets.
Performance comparison across embedding strategies (GloVe, FastText, Word2Vec) on Linux and Chromium datasets.

Full paper