返回
Cross-project defect prediction based on transfer graph convolutional network
DOI:10.1007/s10664-025-10783-2.png)
摘要
En 中文
跨项目缺陷预测(CPDP)是一种软件缺陷检测(SDP)技术,旨在克服目标项目中缺陷数据不足的挑战。在CPDP中,基于抽象语法树(AST)的先前方法主要依赖于从叶节点或语法结构类型节点中提取特征。然而,基于叶节点的方法通常存在信息冗余问题,并且在递归遍历AST时可能遇到梯度消失问题,而基于语法结构类型节点的方法通常面临由AST序列化引起的结构信息丢失等局限性以及节点选择范围受限等问题。此外,大多数现有方法在文件级别引入最大均值差异(MMD)以对齐源项目和目标项目的全局特征分布。然而,这种粗粒度对齐通常忽略了代码中的细粒度语义和语法结构。为解决这些问题,本文提出了一种基于节点级MMD对齐机制的CPDP方法——传输图卷积网络(TGCN)。该方法从AST的节点层次结构出发,在细粒度级别上对齐不同项目中相同类型的节点特征分布,从而实现节点级MMD对齐并提升模型的跨项目迁移能力。具体而言,首先将源代码解析为AST,然后通过遍历AST构建子图,仅保留语法结构类型节点。使用字典将每种节点类型映射为整数索引,并利用这些索引作为节点特征构建最终的语法图。此外,为保证对齐一致性,仅保留源项目和目标项目共有的节点类型。将语法图输入GCN以提取可迁移的语法特征,随后通过主成分分析(PCA)对语法特征进行线性降维,并输入到逻辑回归(LR)分类器中进行训练。在12个基准项目上的实验结果表明,与基线方法中表现最佳的语义和语法编码(SSE)相比,所提出的TGCN方法将F-measure提升了5.47%,准确率(ACC)提升了5.67%,马修斯相关系数(MCC)提升了8.84%,几何平均(G-Mean)提升了3.31%,精确率提升了4.38%。
Keyword:
Project defect prediction
Graph convolutional network
Maximum mean discrepancy
Software reliability
期刊
IF:
3.6
论文数:
2.0K
被引数:
5.3K
机构
引用论文
Cross‐Project Defect Prediction Using Transfer Learning with Long Short‐Term Memory Networks基于迁移学习和长短期记忆网络的跨项目缺陷预测
IET Software
IF0

