0% found this document useful (0 votes)
22 views

Explainable AI For Software Engineering

Uploaded by

sohamvadje24
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views

Explainable AI For Software Engineering

Uploaded by

sohamvadje24
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE)

Explainable AI for Software Engineering


Chakkrit (Kla) Tantithamthavorn, Jirayus Jiarpakdee
2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE) | 978-1-6654-0337-5/21/$31.00 ©2021 IEEE | DOI: 10.1109/ASE51524.2021.9678580

Monash University, Melbourne, Australia.

Abstract—The success of software engineering projects largely the explanations, what are the types of intelligibility questions,
depends on complex decision-making. For example, which tasks what are the scopes of explanations, what are the types of
should a developer do first, who should perform this task, is explanations). We will also discuss the model-specific and
the software of high quality, is a software system reliable and
resilient enough to deploy, etc. However, erroneous decision- model-agnostic tools and techniques that are extensively-used
making for these complex questions is costly in terms of money in the Explainable AI community (e.g., LIME [9], SHAP [5])
and reputation. Thus, Artificial Intelligence/Machine Learning for explaining the predictions of AI/ML models with a hands-
(AI/ML) techniques have been widely used in software engineer- on tutorial.
ing for developing software analytics tools and techniques to
improve decision-making, developer productivity, and software
quality. However, the predictions of such AI/ML models for
Part 2: Defect Prediction Models
software engineering are still not practical (i.e., coarse-grained), In this part, we will first introduce the fundamental knowl-
not explainable, and not actionable. These concerns often hinder
edge of defect prediction technologies. This include five key
the adoption of AI/ML models in software engineering practices.
In addition, many recent studies still focus on improving the steps (1) Data Collection, (2) Data Preprocessing, (3) Model
accuracy, while a few of them focus on improving explainability. Construction, (4) Model Evaluation, and (5) Model Ranking,
Are we moving in the right direction? How can we better improve along with the following empirical-grounded guidelines [10].
the SE community (both research and education)? We describe details below.
In this tutorial, we first provide a concise yet essential
(Step 1) Data Collection. Poor quality or noisy defect
introduction to the most important aspects of Explainable AI and
a hands-on tutorial of Explainable AI tools and techniques. Then, datasets could lead to inaccurate predictions and insights. We
we introduce the fundamental knowledge of defect prediction (an found that techniques for generating ground-truth data is often
example application of AI for Software Engineering). Finally, we not accurate, impacting the quality of defect datasets. Thus, we
demonstrate three successful case studies on how Explainable AI will discuss how to: consider affected releases (i.e., the actual
techniques can be used to address the aforementioned challenges
software releases that are affected) to label whether a file is
by making the predictions of software defect prediction models
more practical, explainable, and actionable. The materials are considered to be defective or clean, instead of the assumptions
available at https://xai4se.github.io. of a post-release window period (i.e., any defects that are fixed
Index Terms—Explainable AI, Software Engineering after 6 months) [17], while not to be concerned about issue
report misclassification [12].
I. T UTORIAL O UTLINE (Step 2) Data Analysis. Defect datasets are highly imbal-
Our 1.5-hour tutorial consists of three parts: anced with a defective ratio of <10%. Defect models trained
on class imbalance datasets often produce inaccurate models.
• Part 1-Explainable AI: We first provide a concise yet
Our TSE’19 paper suggested to consider using optimised
essential introduction to the most important aspects of
SMOTE to improve the predictive accuracy, i.e., handling the
Explainable AI and a hands-on tutorial of Explainable
class imbalance of the training datasets prior to training the
AI tools and techniques.
defect models. Thus, we will discuss how to:
• Part 2-Defect Prediction Models: We introduce the fun-
damental knowledge of defect prediction (an example • Handle colliniearity and multicollinearity when interpret-
application of AI for Software Engineering) ing defect models (i.e., understanding what are the most
• Part 3-Explainable AI for Software Engineering: We important variables) [2].
demonstrate three successful case studies on how Ex- • Use AutoSpearman for handling collinearity and multi-
plainable AI techniques can be used to address the collinearity [3], and avoid using existing automated fea-
aforementioned challenges by making the predictions of ture selection techniques (e.g., Stepwise Regression) if
software defect prediction models more practical, ex- the goal is to interpret defect prediction models, as they
plainable, and actionable. fail to mitigate correlated features and are dependent on
random seeds [4].
Part 1: Introduction to Explainable AI (Step 3) Model Construction. There exist a large number
We first provide a concise yet essential introduction to the of off-the-shelf classification techniques that can be used with
most important aspects of Explainable AI. At the beginning of a large number of possible combination of hypereparameter
the tutorial, we will introduce the motivation, definitions, and settings that can be configured. Sadly, practitioners often asked
concept of Explainable AI. We will also discuss a theory of which techniques and which settings should be used. Thus, we
explanations (e.g., what are the explainability goals, what are will discuss how to:

978-1-6654-0337-5/21/$31.00 ©2021 IEEE 1


DOI 10.1109/ASE51524.2021.00009
Authorized licensed use limited to: Dr. D. Y. Patil Educational Complex Akurdi. Downloaded on July 23,2024 at 05:50:09 UTC from IEEE Xplore. Restrictions apply.
• Explore various classification techniques and hyperpa- improve the explainability of defect prediction models. Con-
rameter settings. Optimised random forest and optimised tact him at [email protected].
extreme gradient boosting trees often produce the most Acknowledgement. Chakkrit Tantithamthavorn was sup-
accurate defect prediction models [13]. ported by ARC DECRA Fellowship (DE200100941).
• Always optimize the hyperparameter settings of defect
prediction models (e.g., using Grid Search, Random
R EFERENCES
Search, Genetic Algorithm, Differential Evolution) [15].
• Use the Scott-Knott ESD test to identify the best clas- [1] J. Jiarpakdee, C. Tantithamthavorn, H. K. Dam, and J. Grundy, “An
sification techniques that are statistically significantly Empirical Study of Model-Agnostic Techniques for Defect Prediction
Models,” IEEE Transactions on Software Engineering (TSE), p. To
different with non-negligible Cliff’s |δ| effect size [14]. Appear, 2020.
• Estimate the accuracy of defect prediction models using [2] J. Jiarpakdee, C. Tantithamthavorn, and A. E. Hassan, “The Impact of
out-of-sample boostrap model validation techniques when Correlated Metrics on Defect Models,” IEEE Transactions on Software
defect datasets are very small (i.e., EPV < 10) [14]. Engineering (TSE), p. To Appear, 2019.
• Using ANOVA Type-II for explaining the defect predic- [3] J. Jiarpakdee, C. Tantithamthavorn, and C. Treude, “AutoSpearman:
Automatically Mitigating Correlated Software Metrics for Interpreting
tion models (built using regression models), instead of Defect Models,” in Proceedings of the International Conference on
using ANOVA Type-I [2]. Software Maintenance and Evolution (ICSME), 2018, pp. 92–103.
[4] ——, “The impact of automated feature selection techniques on the in-
Part 3-Explainable AI for Software Engineering Including terpretation of defect models,” Empirical Software Engineering, vol. 25,
Hands-on Examples no. 5, pp. 3590–3638, 2020.
[5] S. M. Lundberg and S.-I. Lee, “A Unified Approach to Interpreting
In this part, we will discuss three successful case studies Model Predictions,” in Advances in Neural Information Processing
on how Explainable AI techniques can be used to address Systems (NIPS), 2017, pp. 4765–4774.
the aforementioned challenges by making the predictions of [6] C. Pornprasit and C. Tantithamthavorn, “JITLine: A Simpler, Better,
software defect prediction models more practical [6, 16], Faster, Finer-grained Just-In-Time Defect Prediction,” in Proceedings of
the International Conference on Mining Software Repositories (MSR),
explainable [1, 2], and actionable [7, 8, 11]. In particular, 2021.
the hands-on demo will focus on how to explain defect [7] C. Pornprasit, C. Tantithamthavorn, J. Jiarpakdee, M. Fu, and P. Thong-
prediction models in order to generate global explanations [2] tanunam, “PyExplainer: Explaining the Predictions of Just-In-Time
and instance explanations [1]. Defect Models,” in Proceedings of the 36th IEEE/ACM International
Conference on Automated Software Engineering (ASE), 2021.
II. TARGET PARTICIPANTS [8] D. Rajapaksha, C. Tantithamthavorn, J. Jiarpakdee, C. Bergmeir,
J. Grundy, and W. Buntine, “SQAPlanner: Generating Data-Informed
The target participants of this tutorial include: SE re- Software Quality Improvement Plans,” IEEE Transactions on Software
searchers and PhD students who want to learn more about Engineering (TSE), 2021.
the intersection of Explainable AI and Software Engineering. [9] M. T. Ribeiro, S. Singh, and C. Guestrin, “Why should I trust you?:
Explaining the Predictions of Any Classifier,” in Proceedings of the
Software practitioners who already use Python for as data International Conference on Knowledge Discovery & Data Mining
science, machine learning, research, and analysis and wish to (KDD), 2016, pp. 1135–1144.
apply their data science knowledge to software data. Soft- [10] C. Tantithamthavorn and A. E. Hassan, “An Experience Report on
ware analysts and data scientists who want to understand Defect Modelling in Practice: Pitfalls and Challenges,” in In Proceedings
of the International Conference on Software Engineering: Software
and avoid pitfalls when designing software analytics. Project Engineering in Practice Track (ICSE-SEIP), 2018, pp. 286–295.
managers who involve high-stakes decision-making and need [11] C. Tantithamthavorn, J. Jiarpakdee, and J. Grundy, “Actionable analytics:
software analytics to make smarter data-driven business de- Stop telling me what it is; please tell me what to do,” IEEE Software,
cisions. There are no prerequisites, no audio-visual, and no vol. 38, no. 4, pp. 115–120, 2021.
pre-installed technical requirements for attending this tutorial. [12] C. Tantithamthavorn, S. McIntosh, A. E. Hassan, A. Ihara, and K. Mat-
sumoto, “The Impact of Mislabelling on the Performance and Interpre-
tation of Defect Prediction Models,” in Proceeding of the International
III. I NSTRUCTORS ’ B IOGRAPHY AND E XPERTISE Conference on Software Engineering (ICSE), 2015, pp. 812–823.
Dr. Chakkrit (Kla) Tantithamthavorn is a Senior Lecturer [13] C. Tantithamthavorn, S. McIntosh, A. E. Hassan, and K. Matsumoto,
in Software Engineering and a 2020 ARC DECRA Fellow “Automated Parameter Optimization of Classification Techniques for
Defect Prediction Models,” in Proceedings of the International Con-
in the Faculty of Information Technology, Monash University, ference on Software Engineering (ICSE), 2016, pp. 321–332.
Australia. He is leading a new research area of Explaianble AI [14] ——, “An Empirical Comparison of Model Validation Techniques for
for Software Engineering. His current fellowship is focusing Defect Prediction Models,” IEEE Transactions on Software Engineering
on the development of Practical and Explainable Analytics to (TSE), vol. 43, no. 1, pp. 1–18, 2017.
Prevent Future Software Defects. His work has been published [15] ——, “The Impact of Automated Parameter Optimization on Defect
Prediction Models,” IEEE Transactions on Software Engineering (TSE),
at several top-tier software engineering venues, such as TSE, pp. 683–711, 2018.
ICSE, EMSE, MSR, IST. [16] S. Wattanakriengkrai, P. Thongtanunam, C. Tantithamthavorn, H. Hata,
modelling, experimental design, and software engineering to and K. Matsumoto, “Predicting defective lines using a model-agnostic
technique,” IEEE Transactions on Software Engineering (TSE), 2020.
Dr. Jirayus Jiarpakdee is graduated from Monash Uni-
[17] S. Yathish, J. Jiarpakdee, P. Thongtanunam, and C. Tantithamthavorn,
versity, Australia. His research interests include empirical “Mining Software Defects: Should We Consider Affected Releases?” in
software engineering and mining software repositories (MSR). In Proceedings of the International Conference on Software Engineering
The goal of his Ph.D. is to apply the knowledge of statistical (ICSE), 2019, p. To Appear.

Authorized licensed use limited to: Dr. D. Y. Patil Educational Complex Akurdi. Downloaded on July 23,2024 at 05:50:09 UTC from IEEE Xplore. Restrictions apply.

You might also like