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.
最长约 10秒,即可获得该文献文件

科研通智能强力驱动
Strongly Powered by AbleSci AI
更新
PDF的下载单位、IP信息已删除 (2025-6-4)

科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
2秒前
2秒前
英俊的铭应助bear采纳,获得10
3秒前
4秒前
4秒前
科研通AI5应助zzzxiangyi采纳,获得10
5秒前
kelly发布了新的文献求助10
7秒前
morena发布了新的文献求助10
8秒前
大模型应助清爽难敌采纳,获得30
9秒前
9秒前
mcxkjnv完成签到,获得积分10
9秒前
zzzz关注了科研通微信公众号
9秒前
9秒前
淡淡采白发布了新的文献求助10
10秒前
10秒前
lpf发布了新的文献求助10
11秒前
12秒前
13秒前
镓氧锌钇铀完成签到,获得积分10
13秒前
英姑应助愤怒的铁身采纳,获得10
13秒前
ff发布了新的文献求助20
13秒前
栖迟发布了新的文献求助10
14秒前
量子星尘发布了新的文献求助10
14秒前
14秒前
15秒前
所所应助caoxiongfeng_512采纳,获得20
15秒前
lsybf发布了新的文献求助10
15秒前
jiejie发布了新的文献求助10
17秒前
端端完成签到,获得积分10
18秒前
SciGPT应助多肉葡萄采纳,获得10
18秒前
深情安青应助xh采纳,获得10
19秒前
小只bb发布了新的文献求助30
19秒前
上官若男应助jiangzuo采纳,获得10
20秒前
清爽难敌发布了新的文献求助30
20秒前
20秒前
simple1完成签到 ,获得积分10
20秒前
YYY发布了新的文献求助10
20秒前
charleslam完成签到,获得积分10
21秒前
vinci完成签到,获得积分10
21秒前
bkagyin应助陈大海采纳,获得10
22秒前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
Handbook of Milkfat Fractionation Technology and Application, by Kerry E. Kaylegian and Robert C. Lindsay, AOCS Press, 1995 1000
The Social Work Ethics Casebook(2nd,Frederic G. R) 600
A novel angiographic index for predicting the efficacy of drug-coated balloons in small vessels 500
Textbook of Neonatal Resuscitation ® 500
The Affinity Designer Manual - Version 2: A Step-by-Step Beginner's Guide 500
Affinity Designer Essentials: A Complete Guide to Vector Art: Your Ultimate Handbook for High-Quality Vector Graphics 500
热门求助领域 (近24小时)
化学 医学 生物 材料科学 工程类 有机化学 内科学 生物化学 物理 计算机科学 纳米技术 遗传学 基因 复合材料 化学工程 物理化学 病理 催化作用 免疫学 量子力学
热门帖子
关注 科研通微信公众号,转发送积分 5075598
求助须知:如何正确求助?哪些是违规求助? 4295360
关于积分的说明 13384177
捐赠科研通 4117030
什么是DOI,文献DOI怎么找? 2254637
邀请新用户注册赠送积分活动 1259275
关于科研通互助平台的介绍 1192040