LLM2D
使用LLMs增强深度学习库的差异性测试
Enhancing Differential Testing With LLMs For Testing Deep Learning Libraries
作者: Meiziniu Li, Dongze Li, Jianmeng Liu, Jialun Cao, Yongqiang Tian, Shing-Chi Cheung
发布日期: 5/9/2025
arXiv ID: oai:arXiv.org:2406.07944v2

摘要

arXiv:2406.07944v2 宣告类型: replace-cross 摘要:差异测试通过比较给定API的多种实现之间的测试结果,提供了一种缓解测试先知问题的有前途的策略。然而,现有的深度学习(DL)库的差异测试技术受限于寻找给定API的替代实现(称为对应实现)以及随后生成多样化的测试输入的关键挑战。为了解决这两个挑战,本文提出了一种名为DLLens的LLM增强型差异测试技术,用于DL库。为了解决第一个挑战,DLLens整合了一种基于LLM的对应实现合成工作流,基于这种见解,可以通过另一个DL库的API的特定组合和适应,成功地合成给定DL库API的计算对应的实现。为了解决第二个挑战,DLLens整合了一种静态分析技术,从给定API及其对应实现的实现中提取路径约束,以指导多样化的测试输入生成。提取过程由LLM对相关DL库及其上游库的知识支持。 我们对两种流行的DL库TensorFlow和PyTorch进行了评估。我们的评估表明,与这些库中最先进的技术相比,DLLens为API合成了1.84倍的对应实现。此外,在相同的时间预算下,相对于最先进的技术,DLLens覆盖了7.23%更多的分支,并在200个随机选择的API中检测到1.88倍更多的错误。DLLens成功在最近的TensorFlow和PyTorch库中检测到了71个错误。其中,59个错误得到了开发者的确认,包括46个被认为是以前未知的错误,并且在这46个以前未知的错误中,有10个在最新版本的TensorFlow和PyTorch中得到了修复。