放牧代码和思想
专注自然语言处理、机器学习算法
    Why join the Navy if you can be a pirate?

CS224n研究热点12 神经网络自动代码摘要

目录

hankcs.com 2017-07-11 上午11.16.11.png

任务与数据集 

自动生成C#和SQL代码的文档描述,数据集整理自StackOverflow上的提问。

hankcs.com 2017-07-11 上午11.34.30.png

子任务 

hankcs.com 2017-07-11 上午11.36.46.png

根据代码生成摘要,或根据问题检索代码。

网络架构 

hankcs.com 2017-07-11 上午11.42.19.png

一个LSTM处理已生成的文本token,一个在整个代码token序列上做attention的单元,两者的输出求和,送入$\tanh$激活;得到ngram语言模型,预测下一个词语。

结果

量化评测

hankcs.com 2017-07-11 上午11.46.04.png

文本生成评测用到了BLEU等自动方法,以及人工评分,检索用到了MRR,结果都比以前的工作要好。

直观效果

hankcs.com 2017-07-11 上午11.47.56.png

该模型知道代码在操作TreeView,但没有捕捉到“add”这个动作。

hankcs.com 2017-07-11 上午11.50.04.png

对这段SQL代码的理解,模型是完全正确的。

知识共享许可协议 知识共享署名-非商业性使用-相同方式共享码农场 » CS224n研究热点12 神经网络自动代码摘要

分享到:更多 ()

评论 欢迎留言

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

我的开源项目

HanLP自然语言处理包基于DoubleArrayTrie的Aho Corasick自动机