利用循环神经网络探索缺陷代码的自然性
软件工程
2018-03-26 v1 计算与语言
机器学习
摘要
统计语言模型是功能强大的工具,已被用于自然语言处理中的诸多任务。近期,它们被应用于源代码等其他序列数据。(Ray et al., 2015) 表明,可以训练一个 n-gram 源代码语言模型,并通过基于该语言模型的熵来确定“非自然”代码行,从而预测代码中的缺陷行。在本工作中,我们提出使用一种更先进的语言建模技术——长短期记忆循环神经网络,来对源代码进行建模并基于熵对缺陷行进行分类。我们表明,在缺陷行分类任务中,使用 AUC 评估时我们的方法略优于 n-gram 模型。
引用
@article{arxiv.1803.08793,
title = {Exploring the Naturalness of Buggy Code with Recurrent Neural Networks},
author = {Jack Lanchantin and Ji Gao},
journal= {arXiv preprint arXiv:1803.08793},
year = {2018}
}