当前位置:网站首页>【AI4Code】《Unified Pre-training for Program Understanding and Generation》 NAACL 2021
【AI4Code】《Unified Pre-training for Program Understanding and Generation》 NAACL 2021
2022-07-25 13:08:00 【chad_ lee】
《Unified Pre-training for Program Understanding and Generation》 NAACL 2021
The article puts forward PLBART It is a sequence to sequence model , Able to perform a wide range of program and language understanding and generation tasks . PLBART adopt denoising autoencoding For a large number of Java and Python Functions and related NL The text is pre trained . Code summary 、 The experiments of code generation and code translation of seven programming languages show ,PLBART Superior to or comparable to the most advanced models . Besides , Experiments on discrimination tasks , For example, program repair 、 Clone detection and vulnerable code detection , Proved PLBART Effectiveness in program understanding . Besides , The analysis shows that PLBART Learn program grammar 、 style ( for example , Identifier naming convention )、 Logical process ( for example ,else In block if Block is equivalent to else if block ) It is very important for program semantics , So it performs well even with limited comments .
Denoising pre training
PLBART be based on BARTbase framework , Use seq2seq Denoising pre training to take advantage of PL and NL Unlabeled data in , There are three noise strategies : Mark shielding 、 Mark deletion and mark filling , Input the noisy sequence encoder, Original sequence plus position offset input decoder, The goal is to remove noise and restore the original sequence .

among token infilling Yes, it will 0~k individual token Replace with [MASK] ,k=0 When you add a mask nothing more .
During pre training NL and PL The ratio is 1:14, Therefore, up sampling and down sampling are needed to remove bias .
Downstream tasks

Downstream tasks generate descriptions based on code , Generate code according to the description And code translation , It's all about seq2seq Mission .
There are also two classification tasks : Clone code detection and fragile code detection , about pair Input , Join the two pieces of data , Use one in the middle </s> token Connect .decoder The last output of is sent to the linear classifier for classification .
边栏推荐
- Requirements specification template
- 微软提出CodeT:代码生成新SOTA,20个点的性能提升
- Connotation and application of industrial Internet
- 【视频】马尔可夫链原理可视化解释与R语言区制转换MRS实例|数据分享
- massCode 一款优秀的开源代码片段管理器
- 【问题解决】ibatis.binding.BindingException: Type interface xxDao is not known to the MapperRegistry.
- B树和B+树
- Masscode is an excellent open source code fragment manager
- 跌荡的人生
- Selenium uses -- XPath and analog input and analog click collaboration
猜你喜欢

R语言GLM广义线性模型:逻辑回归、泊松回归拟合小鼠临床试验数据(剂量和反应)示例和自测题
![Detailed explanation of switch link aggregation [Huawei ENSP]](/img/34/dff118b52404e35f74a8f06b2517be.png)
Detailed explanation of switch link aggregation [Huawei ENSP]

【视频】马尔可夫链原理可视化解释与R语言区制转换MRS实例|数据分享

2022.07.24 (lc_6124_the first letter that appears twice)

Common operations for Yum and VIM

卷积神经网络模型之——AlexNet网络结构与代码实现

Detailed explanation of flex box

录制和剪辑视频,如何解决占用空间过大的问题?

Emqx cloud update: more parameters are added to log analysis, which makes monitoring, operation and maintenance easier

【重温SSM框架系列】15 - SSM系列博文总结【SSM杀青篇】
随机推荐
力扣 83双周赛T4 6131.不可能得到的最短骰子序列、303 周赛T4 6127.优质数对的数目
Atcoder beginer contest 261e / / bitwise thinking + DP
Chapter5 : Deep Learning and Computational Chemistry
若依如何实现用户免密登录配置方法?
Detailed explanation of flex box
【历史上的今天】7 月 25 日:IBM 获得了第一项专利;Verizon 收购雅虎;亚马逊发布 Fire Phone
Shell常用脚本:检测某域名、IP地址是否通
Mlx90640 infrared thermal imager temperature sensor module development notes (V)
状态(State)模式
Shell常用脚本:获取网卡IP地址
2022.07.24 (lc_6125_equal row and column pairs)
全球都热炸了,谷歌服务器已经崩掉了
零基础学习CANoe Panel(16)—— Clock Control/Panel Control/Start Stop Control/Tab Control
Substance designer 2021 software installation package download and installation tutorial
Vim技巧:永远显示行号
Chapter5 : Deep Learning and Computational Chemistry
mysql函数汇总之日期和时间函数
卷积神经网络模型之——GoogLeNet网络结构与代码实现
Seven lines of code made station B crash for three hours, but "a scheming 0"
OAuth,JWT ,OIDC你们搞得我好乱啊