Code comment has been an important part of computer programs, greatly facilitating the understanding and maintenance of source code. However, high-quality code comments are often unavailable in smart contracts, the increasingly popular programs that run on the blockchain. In this paper, we propose a Multi-Modal Transformer-based (MMTrans) code summarization approach for smart contracts. Specifically, the MMTrans learns the representation of source code from the two heterogeneous modalities of the Abstract Syntax Tree (AST), i.e., Structure-based Traversal (SBT) sequences and graphs. The SBT sequence provides the global semantic information of AST, while the graph convolution focuses on the local details. The MMTrans uses two encoders to extract both global and local semantic information from the two modalities respectively, and then uses a joint decoder to generate code comments. Both the encoders and the decoder employ the multi-head attention structure of the Transformer to enhance the ability to capture the long-range dependencies between code tokens. We build a dataset with over 300K <method, comment> pairs of smart contracts, and evaluate the MMTrans on it. The experimental results demonstrate that the MMTrans outperforms the state-of-the-art baselines in terms of four evaluation metrics by a substantial margin, and can generate higher quality comments.


翻译:代码注释是计算机程序的一个重要部分,极大地便利了源代码的理解和维护。然而,智能合同中往往无法提供高质量的代码注释,因为智能合同中出现的程序越来越受欢迎。在本文中,我们建议对智能合同采用多式变换器(MMTrans)代码总和法。具体地说,MMTrans从简易语树(AST)的两种不同模式中学习源代码的表达方式,即基于结构的Traversal(SBT)序列和图形。SBT序列提供了AST的全球语义信息,而图形转换则侧重于本地细节。MMTrans使用两个编码器分别从两种模式中提取全球和地方语义信息,然后使用一个联合解码器生成代码评论。编码者和解码器都使用变换器的多重关注结构,即基于结构的Traversal(SBT)序列和图示。我们用300K以上<ethodriferal)的语义信息设置了一个数据集,而图表则侧重于4个标准基准(Transal-trainal),可以用来评估。

0
下载
关闭预览

相关内容

《计算机信息》杂志发表高质量的论文,扩大了运筹学和计算的范围,寻求有关理论、方法、实验、系统和应用方面的原创研究论文、新颖的调查和教程论文,以及描述新的和有用的软件工具的论文。官网链接:https://pubsonline.informs.org/journal/ijoc
最新《Transformers模型》教程,64页ppt
专知会员服务
306+阅读 · 2020年11月26日
【Google】多模态Transformer视频检索,Multi-modal Transformer
专知会员服务
102+阅读 · 2020年7月22日
【Google】监督对比学习,Supervised Contrastive Learning
专知会员服务
74+阅读 · 2020年4月24日
CCF推荐 | 国际会议信息6条
Call4Papers
9+阅读 · 2019年8月13日
计算机 | EMNLP 2019等国际会议信息6条
Call4Papers
18+阅读 · 2019年4月26日
IEEE | DSC 2019诚邀稿件 (EI检索)
Call4Papers
10+阅读 · 2019年2月25日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
从Seq2seq到Attention模型到Self Attention(二)
量化投资与机器学习
23+阅读 · 2018年10月9日
Jointly Improving Summarization and Sentiment Classification
黑龙江大学自然语言处理实验室
3+阅读 · 2018年6月12日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
条件GAN重大改进!cGANs with Projection Discriminator
CreateAMind
8+阅读 · 2018年2月7日
Arxiv
10+阅读 · 2021年3月30日
Arxiv
8+阅读 · 2021年3月2日
Arxiv
5+阅读 · 2019年8月22日
Arxiv
21+阅读 · 2019年3月25日
Arxiv
6+阅读 · 2019年3月19日
Star-Transformer
Arxiv
5+阅读 · 2019年2月28日
VIP会员
相关VIP内容
最新《Transformers模型》教程,64页ppt
专知会员服务
306+阅读 · 2020年11月26日
【Google】多模态Transformer视频检索,Multi-modal Transformer
专知会员服务
102+阅读 · 2020年7月22日
【Google】监督对比学习,Supervised Contrastive Learning
专知会员服务
74+阅读 · 2020年4月24日
相关资讯
CCF推荐 | 国际会议信息6条
Call4Papers
9+阅读 · 2019年8月13日
计算机 | EMNLP 2019等国际会议信息6条
Call4Papers
18+阅读 · 2019年4月26日
IEEE | DSC 2019诚邀稿件 (EI检索)
Call4Papers
10+阅读 · 2019年2月25日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
从Seq2seq到Attention模型到Self Attention(二)
量化投资与机器学习
23+阅读 · 2018年10月9日
Jointly Improving Summarization and Sentiment Classification
黑龙江大学自然语言处理实验室
3+阅读 · 2018年6月12日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
条件GAN重大改进!cGANs with Projection Discriminator
CreateAMind
8+阅读 · 2018年2月7日
相关论文
Arxiv
10+阅读 · 2021年3月30日
Arxiv
8+阅读 · 2021年3月2日
Arxiv
5+阅读 · 2019年8月22日
Arxiv
21+阅读 · 2019年3月25日
Arxiv
6+阅读 · 2019年3月19日
Star-Transformer
Arxiv
5+阅读 · 2019年2月28日
Top
微信扫码咨询专知VIP会员