Embedding API dependency graph for neural code generation

计算机科学 依赖关系图 Python(编程语言) 嵌入 Java 程序设计语言 依赖关系(UML) 代码生成 编码器 图形 脚本语言 源代码 理论计算机科学 编码(集合论) 人工智能 软件 操作系统 集合(抽象数据类型) 计算机安全 钥匙(锁)
作者
Chen Lyu,Ruyun Wang,Hongyu Zhang,Hanwen Zhang,Songlin Hu
出处
期刊:Empirical Software Engineering [Springer Science+Business Media]
卷期号:26 (4) 被引量:5
标识
DOI:10.1007/s10664-021-09968-2
摘要

The problem of code generation from textual program descriptions has long been viewed as a grand challenge in software engineering. In recent years, many deep learning based approaches have been proposed, which can generate a sequence of code from a sequence of textual program description. However, the existing approaches ignore the global relationships among API methods, which are important for understanding the usage of APIs. In this paper, we propose to model the dependencies among API methods as an API dependency graph (ADG) and incorporate the graph embedding into a sequence-to-sequence (Seq2Seq) model. In addition to the existing encoder-decoder structure, a new module named ``embedder" is introduced. In this way, the decoder can utilize both global structural dependencies and textual program description to predict the target code. We conduct extensive code generation experiments on three public datasets and in two programming languages (Python and Java). Our proposed approach, called ADG-Seq2Seq, yields significant improvements over existing state-of-the-art methods and maintains its performance as the length of the target code increases. Extensive ablation tests show that the proposed ADG embedding is effective and outperforms the baselines.

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
xueguo0001发布了新的文献求助10
1秒前
小萝卜完成签到,获得积分10
1秒前
1秒前
可爱的函函应助怕黑若翠采纳,获得10
1秒前
3秒前
AA18236931952发布了新的文献求助10
3秒前
3秒前
充电宝应助愤怒的鼠标采纳,获得10
3秒前
晨雾完成签到,获得积分10
3秒前
能干的邹完成签到 ,获得积分10
4秒前
机灵白猫发布了新的文献求助10
4秒前
科研通AI6.4应助feelingdegj采纳,获得10
4秒前
Mercurius完成签到 ,获得积分10
5秒前
布丁发布了新的文献求助10
6秒前
6秒前
pluto应助黙宇循光采纳,获得50
7秒前
小黄发布了新的文献求助10
7秒前
披着羊皮的狼应助帯砡采纳,获得10
7秒前
8秒前
咕噜肉完成签到,获得积分10
8秒前
西乡塘塘主完成签到,获得积分10
8秒前
FashionBoy应助负责玉米采纳,获得10
8秒前
10秒前
10秒前
古叶完成签到,获得积分10
11秒前
vv完成签到 ,获得积分10
11秒前
vicin完成签到,获得积分10
11秒前
12秒前
12秒前
欣慰的馒头完成签到,获得积分10
13秒前
18707979012完成签到,获得积分10
13秒前
共享精神应助十二采纳,获得10
13秒前
潇潇玄怜完成签到 ,获得积分10
13秒前
谨慎千琴发布了新的文献求助10
15秒前
怕黑若翠发布了新的文献求助10
15秒前
科研通AI6.3应助ZJX采纳,获得10
15秒前
北巷完成签到 ,获得积分10
15秒前
16秒前
科研通AI6.4应助单纯代桃采纳,获得10
16秒前
自觉的问蕊完成签到,获得积分10
16秒前
高分求助中
Principles of Economics, 11th Edition 10000
University Physics with Modern Physics, 16th edition 10000
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
Gründe der Seele:Die Wiener Psychatrie im 20.Jahrhundert 1000
Development of a Bridge Weigh-In-Motion System: A technology to convert the bridge response to the passage of traffic into data on vehicle configurations, speeds, times of travel and weights 1000
Organic Reactions, Volume 116 1000
Current concepts in cutaneous toxicity : proceedings of the Fourth Conference on Cutaneous Toxicity, Washington, D.C., May 9-11, 1979 1000
热门求助领域 (近24小时)
化学 材料科学 医学 生物 纳米技术 工程类 有机化学 化学工程 生物化学 计算机科学 内科学 物理 复合材料 催化作用 细胞生物学 无机化学 光电子学 物理化学 电极 基因
热门帖子
关注 科研通微信公众号,转发送积分 7271017
求助须知:如何正确求助?哪些是违规求助? 8891274
关于积分的说明 18795749
捐赠科研通 6945845
什么是DOI,文献DOI怎么找? 3203825
关于科研通互助平台的介绍 2376687
邀请新用户注册赠送积分活动 2179789