Generation of pseudo-code descriptions of legacy source code for software maintenance is a manually intensive task. Recent encoder-decoder language models have shown promise for automating pseudo-code generation for high resource programming languages such as C++, but are heavily reliant on the availability of a large code-pseudocode corpus. Soliciting such pseudocode annotations for codes written in legacy programming languages (PL) is a time consuming and costly affair requiring a thorough understanding of the source PL. In this paper, we focus on transferring the knowledge acquired by the code-to-pseudocode neural model trained on a high resource PL (C++) using parallel code-pseudocode data. We aim to transfer this knowledge to a legacy PL (C) with no PL-pseudocode parallel data for training. To achieve this, we utilize an Iterative Back Translation (IBT) approach with a novel test-cases based filtration strategy, to adapt the trained C++-to-pseudocode model to C-to-pseudocode model. We observe an improvement of 23.27% in the success rate of the generated C codes through back translation, over the successive IBT iteration, illustrating the efficacy of our approach.


翻译:为软件维护而生成遗留源代码的伪代码描述是一项手动密集型任务。近期,编码器-解码器语言模型已展现出在C++等高资源编程语言中自动化伪代码生成的潜力,但它们高度依赖于大规模代码-伪代码语料库的可用性。为用遗留编程语言编写的代码征集此类伪代码注释是一项耗时且昂贵的工作,需要对源编程语言有透彻理解。本文聚焦于将利用并行代码-伪代码数据在高资源编程语言(C++)上训练的代码到伪代码神经模型所获取的知识进行迁移。我们旨在将此知识迁移至无编程语言-伪代码并行数据用于训练的遗留编程语言(C)。为实现此目标,我们采用迭代反向翻译方法,并结合一种基于测试用例的新型过滤策略,将训练好的C++到伪代码模型适配为C到伪代码模型。通过反向翻译,我们观察到生成的C代码成功率在连续迭代反向翻译迭代中提高了23.27%,这证明了我们方法的有效性。

0
下载
关闭预览

相关内容

通过学习、实践或探索所获得的认识、判断或技能。
专知会员服务
124+阅读 · 2020年9月8日
100+篇《自监督学习(Self-Supervised Learning)》论文最新合集
专知会员服务
167+阅读 · 2020年3月18日
强化学习最新教程,17页pdf
专知会员服务
182+阅读 · 2019年10月11日
[综述]深度学习下的场景文本检测与识别
专知会员服务
78+阅读 · 2019年10月10日
机器学习入门的经验与建议
专知会员服务
94+阅读 · 2019年10月10日
VCIP 2022 Call for Demos
CCF多媒体专委会
1+阅读 · 2022年6月6日
征稿 | International Joint Conference on Knowledge Graphs (IJCKG)
开放知识图谱
2+阅读 · 2022年5月20日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
逆强化学习-学习人先验的动机
CreateAMind
16+阅读 · 2019年1月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
44+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
18+阅读 · 2018年12月24日
【推荐】GAN架构入门综述(资源汇总)
机器学习研究会
10+阅读 · 2017年9月3日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2008年12月31日
国家自然科学基金
0+阅读 · 2008年12月31日
Arxiv
10+阅读 · 2017年7月4日
VIP会员
最新内容
《基于深度强化学习的反无人机技术研究》178页
专知会员服务
1+阅读 · 今天16:06
“史诗怒火”行动与“AI中心战”模式的浮现
专知会员服务
1+阅读 · 今天15:31
【CVPR2026教程】扩散模型的解析理解
专知会员服务
0+阅读 · 今天14:49
马赛克战:俄乌战场透析
专知会员服务
13+阅读 · 今天4:12
《利用人工智能增强军事决策》
专知会员服务
4+阅读 · 今天4:09
《自动机器学习在军事数据耕耘法中的应用》
专知会员服务
6+阅读 · 今天4:02
为何指挥所生存能力要求范式转变
专知会员服务
5+阅读 · 今天3:54
打造“新蛛网”模式与高科技动员
专知会员服务
4+阅读 · 今天3:33
“蛛网”行动一周年:远程无人机战争
专知会员服务
3+阅读 · 今天3:23
【剑桥博士论文】智能体-环境协同优化
专知会员服务
7+阅读 · 6月9日
相关VIP内容
相关资讯
VCIP 2022 Call for Demos
CCF多媒体专委会
1+阅读 · 2022年6月6日
征稿 | International Joint Conference on Knowledge Graphs (IJCKG)
开放知识图谱
2+阅读 · 2022年5月20日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
逆强化学习-学习人先验的动机
CreateAMind
16+阅读 · 2019年1月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
44+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
18+阅读 · 2018年12月24日
【推荐】GAN架构入门综述(资源汇总)
机器学习研究会
10+阅读 · 2017年9月3日
相关基金
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2008年12月31日
国家自然科学基金
0+阅读 · 2008年12月31日
Top
微信扫码咨询专知VIP会员