NeuRI:通过归纳规则推理实现多样化DNN生成
软件工程
2023-09-06 v3 机器学习
摘要
深度学习(DL)广泛应用于各行各业,以改进决策和自动化流程,这得益于不断发展的DL库和编译器。DL系统的正确性对于DL应用的信任至关重要。因此,最近的研究浪潮致力于自动合成测试用例(即DNN模型及其输入)以对DL系统进行模糊测试。然而,现有的模型生成器仅包含有限数量的算子,缺乏全面建模算子约束的能力。为应对这一挑战,我们提出NeuRI,一种全自动方法,用于生成由数百种算子类型组成的有效且多样化的DL模型。NeuRI采用三步流程:(i)从各种来源收集有效和无效的API轨迹;(ii)对轨迹应用归纳程序合成以推断构建有效模型的约束;(iii)使用混合模型生成,结合符号算子和具体算子。我们的评估表明,NeuRI在TensorFlow和PyTorch上的分支覆盖率分别比最先进的模型级模糊器提高了24%和15%。NeuRI在四个月内为PyTorch和TensorFlow发现了100个新错误,其中81个已被修复或确认。其中,9个错误被标记为高优先级或安全漏洞,占该时期所有高优先级错误的10%。开源开发者认为我们报告的引发错误的测试用例是“高质量的”和“实践中常见的”。
引用
@article{arxiv.2302.02261,
title = {NeuRI: Diversifying DNN Generation via Inductive Rule Inference},
author = {Jiawei Liu and Jinjun Peng and Yuyao Wang and Lingming Zhang},
journal= {arXiv preprint arXiv:2302.02261},
year = {2023}
}