中文

利用数据特征进行深度学习程序中的缺陷定位

软件工程 2024-12-10 v1

摘要

深度学习(DL)是一类广泛应用于各种场景的机器学习算法。与任何软件系统一样,DL程序也可能存在缺陷。为支持DL程序中的缺陷定位,过去已提出多种工具。由于大多数因模型结构不当而产生的缺陷(称为结构性缺陷)会导致训练期间性能不足,开发者难以识别根本原因并解决这些缺陷。为支持DL程序中的缺陷检测与定位,本文提出了Theia,能够检测并定位DL程序中的结构性缺陷。与先前工作不同,Theia考虑训练数据集的特征,自动检测使用两个深度学习库(Keras和PyTorch)开发的DL程序中的缺陷。由于训练DL模型是一个耗时的过程,Theia在训练开始时检测这些缺陷,并通过包含缺陷位置和可操作修复方案的信息化消息提醒开发者,帮助其改进模型结构。我们在来自Stack Overflow的40个真实世界有缺陷DL程序的基准数据集上评估了Theia。结果表明,Theia成功定位了40个有缺陷程序中的57/75个结构性缺陷,而最先进的、能够在训练前定位结构性缺陷的方法NeuraLint仅定位了17/75个缺陷。

关键词

引用

@article{arxiv.2412.05775,
  title  = {Leveraging Data Characteristics for Bug Localization in Deep Learning Programs},
  author = {Ruchira Manke and Mohammad Wardat and Foutse Khomh and Hridesh Rajan},
  journal= {arXiv preprint arXiv:2412.05775},
  year   = {2024}
}

备注

Accepted in ACM Transactions on Software Engineering and Methodology (TOSEM)