摘要
本发明公开了一种基于长短期记忆神经网络的跨项目软件缺陷预测方法,包括以下步骤:分析项目的源代码文件,并从源代码中解析出对应的抽象语法树;对所提取的所有抽象语法树的节点转换为Token;将Token映射至词向量空间,使之可以输入至神经网络当中;遍历以词向量形式表示的抽象语法树,得到以词向量表示的抽象语法树节点序列;构建长短期记忆神经网络,并将词向量表示的抽象语法树节点序列按序输入至长短期记忆神经网络当中,提取抽象语法树的语义特征;将语义特征输入至逻辑回归分类器中,分析待检测的文件存在缺陷的概率。本发明结合深度学习自动化特征提取技术,解决传统软件缺陷预测方法中无法有效利用编程语言的语法语义信息的问题。
- 单位