一句话:提出 CC2Vec,一种以日志消息为语义意图引导、学习代码变更表示的神经网络模型。
现有软件补丁研究通常依赖为单一任务人工设计的特征,难以为每个任务重新识别特征。本文提出 CC2Vec,一种学习代码变更表示的神经网络模型。与直接依赖人工特征不同,CC2Vec 以代码变更伴随的日志消息作为语义意图信号进行引导,并利用注意力机制建模代码变更的层次结构;同时采用多种比较函数刻画删除代码与新增代码之间的差异。摘要未报告具体数据集与定量结果,但该工作将代码变更表示学习与日志语义结合,为后续补丁相关任务提供了一种不依赖任务特定手工特征的表示方法。
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.