跳到正文
OpenReview · Representation learning· Shaojie Zhang; Yiwei Ding; Enrui Hu; Yue Yu; Yu Zhang·· 2024-01-01精选AI 评分72

利用抽象代码语义增强面向代码搜索的代码表征学习

Enhancing Code Representation Learning for Code Search with Abstract Code Semantics

AI 导读

基于摘要分析。本文研究源代码预训练中如何保留代码单元及其逻辑语义,提出自监督方法 Abstract Code Embedding(AbCE),以支持自然语言代码搜索,并评估其在代码克隆检测和缺陷检测任务上的表现。 核心机制是改变预训练的基本处理单元:不同于将源代码或 Abstract Syntax Tree(AST)结构信息视为普通 token 序列,AbCE 将完整 AST 节点或子树作为基本代码单元,以保留代码单元的完整性;同时通过自蒸馏学习 AST 节点的抽象语义。摘要未说明自蒸馏的教师与学生构造、监督目标、损失形式及具体训练流程,这些实现条件尚未验证。 作者报告,在所评估的代码搜索任务中,AbCE 相对作者称为当前先进方法的基线取得显著提升;在代码克隆检测和缺陷检测任务中取得可比表现,且未使用对比学习或课程学习。摘要未提供数据集、划分协议、指标、具体数值及统计检验信息,因此暂不能判断提升幅度、稳定性或不同任务结果的可比性;实验协议、消融及统计信息尚未验证。 本文的主要对象是具有明确语法树结构的程序代码,而非 EEG 或 BCI 信号。其机制依赖 AST 提供离散、可组合的语义单元,当前材料未建立这些单元与神经信号结构之间的具体对应关系,因此不据此推断 EEG/BCI 效果,也不提出迁移复现实验。已有 EEG 相关工作尚未检索确认。

阅读价值

值得关注其以完整 AST 节点或子树为预训练单元、结合自蒸馏学习抽象代码语义的机制,但性能优势及其对结构化输入的依赖仍需结合全文验证。

来源:OpenReview · Representation learning · openreview.net