SEAILGPLSep 6, 2020

Self-Supervised Contrastive Learning for Code Retrieval and Summarization via Semantic-Preserving Transformations

arXiv:2009.02731v8137 citations
Originality Highly original
AI Analysis

This work addresses the data labeling bottleneck for developers and researchers in software engineering by enabling more efficient code understanding and search without extensive manual annotation.

The paper tackles the problem of needing labeled data for code retrieval and summarization by proposing Corder, a self-supervised contrastive learning framework that uses semantic-preserving transformations to train code models, resulting in substantial performance improvements over baselines in code-to-code retrieval, text-to-code retrieval, and code-to-text summarization tasks.

We propose Corder, a self-supervised contrastive learning framework for source code model. Corder is designed to alleviate the need of labeled data for code retrieval and code summarization tasks. The pre-trained model of Corder can be used in two ways: (1) it can produce vector representation of code which can be applied to code retrieval tasks that do not have labeled data; (2) it can be used in a fine-tuning process for tasks that might still require label data such as code summarization. The key innovation is that we train the source code model by asking it to recognize similar and dissimilar code snippets through a contrastive learning objective. To do so, we use a set of semantic-preserving transformation operators to generate code snippets that are syntactically diverse but semantically equivalent. Through extensive experiments, we have shown that the code models pretrained by Corder substantially outperform the other baselines for code-to-code retrieval, text-to-code retrieval, and code-to-text summarization tasks.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes