Skip to Main content Skip to Navigation
Conference papers

CC2Vec: Distributed Representations of Code Changes

Abstract : Existing work on software patches often use features specific to a single task. These works often rely on manually identified features, and human effort is required to identify these features for each task. In this work, we propose CC2Vec, a neural network model that learns a representation of code changes guided by their accompanying log messages, which represent the semantic intent of the code changes. CC2Vec models the hierarchical structure of a code change with the help of the attention mechanism and uses multiple comparison functions to identify the differences between the removed and added code. To evaluate if CC2Vec can produce a distributed representation of code changes that is general and useful for multiple tasks on software patches, we use the vectors produced by CC2Vec for three tasks: log message generation, bug fixing patch identification, and just-in-time defect prediction. In all tasks, the models using CC2Vec outperform the state-of-the-art techniques.
Document type :
Conference papers
Complete list of metadatas

https://hal.inria.fr/hal-03030530
Contributor : Julia Lawall <>
Submitted on : Monday, November 30, 2020 - 1:12:36 PM
Last modification on : Wednesday, January 13, 2021 - 11:54:02 AM

File

Identifiers

Citation

Thong Hoang, Hong Jin Kang, David Lo, Julia Lawall. CC2Vec: Distributed Representations of Code Changes. ICSE 2020 - 42nd International Conference on Software Engineering, Jun 2020, Seoul / Virtual, South Korea. pp.518-529, ⟨10.1145/3377811.3380361⟩. ⟨hal-03030530⟩

Share

Metrics

Record views

40

Files downloads

115