Commit Classification for Software Change Intention Categorization Through Multimodal Machine Learning
摘要
Multimodal machine learning focuses on analyzing and fusing data from various modalities to represent data better and improve learning outcomes. This chapter investigates multimodal fusion in the context of automated classification of commit-level software changes. Each commit relates to several software artifacts directly affected by the commit or relevant to the change context, such as version control system metadata, source code, bug-tracking system reports, and developer communications. These artifacts present an opportunity for multimodal-learning-based approaches to capture a more holistic understanding of software changes and their intentions. This research conducted several experiments using model-agnostic fusion techniques, namely early fusion and weighted late fusion, focusing on text and code modalities of software changes. Two software change message representations were considered for the text modality, i.e., change message embedding and keyword-based representations; two source code change representations were considered for the code modality, i.e., code change embedding and change metrics-based representations. An empirical assessment of machine learning models for commit classification was performed, evaluating their classification performance and computational complexity. A comparative analysis of bimodal models against unimodal models revealed the limitations of relying on single data modalities and highlighted the benefits of multimodality in capturing the multifaceted nature of commit intentions.