With the widespread deployment of deep neural networks (DNNs), ensuring the reliability of DNN-based systems is of great importance. Serious reliability issues such as system failures can be caused by numerical defects, one of the most frequent defects in DNNs. To assure high reliability against numerical defects, in this paper, we propose the RANUM approach including novel techniques for three reliability assurance tasks: detection of potential numerical defects, confirmation of potential-defect feasibility, and suggestion of defect fixes. To the best of our knowledge, RANUM is the first approach that confirms potential-defect feasibility with failure-exhibiting tests and suggests fixes automatically. Extensive experiments on the benchmarks of 63 real-world DNN architectures show that RANUM outperforms state-of-the-art approaches across the three reliability assurance tasks. In addition, when the RANUM-generated fixes are compared with developers' fixes on open-source projects, in 37 out of 40 cases, RANUM-generated fixes are equivalent to or even better than human fixes.
翻译:随着深度神经网络(DNN)的广泛部署,确保基于DNN系统的可靠性至关重要。数值缺陷作为DNN中最常见的缺陷之一,可能导致系统故障等严重可靠性问题。为保障对数值缺陷的高度可靠性,本文提出RANUM方法,涵盖三项可靠性保障任务的新型技术:潜在数值缺陷检测、潜在缺陷可行性确认以及缺陷修复建议。据我们所知,RANUM是首个通过故障复现测试确认潜在缺陷可行性并自动提供修复建议的方法。在63个真实世界DNN架构基准上的大量实验表明,RANUM在三项可靠性保障任务中的表现均优于当前最先进方法。此外,将RANUM生成的修复方案与开源项目中开发者提供的修复方案对比,在40个案例中有37个案例中,RANUM生成的修复方案与人工修复效果相当甚至更优。