一句话:提出 DeepDiagnosis,在 DNN 训练中定位故障、报告错误症状并给出可操作修复建议。
深度神经网络(DNN)应用广泛,但与普通软件一样存在缺陷。已有工作发现 DNN 缺陷的修复模式不同于传统缺陷,且其错误不显式、修复选项多,导致诊断与修复困难。为此,本文提出 DeepDiagnosis:在训练过程中周期性监控模型,检查八类错误条件;一旦发现问题,便报告包含足够信息的消息,以支持对模型进行可操作的修复。评估使用 444 个模型,包括 GitHub 与 Stack Overflow 的 53 个真实模型和 AUTOTRAINER 整理的 391 个模型。结果显示,DeepDiagnosis 的准确率优于 UMLUAT 与 DeepLocalize,故障定位速度快于 AUTOTRAINER;它支持更多类型模型,而现有方法仅能处理分类模型,并能报告训练中未表现为数值错误的缺陷,提供可操作修复洞见,而 DeepLocalize 只能报告导致数值错误的故障。
Deep Neural Networks (DNNs) are used in a wide variety of applications. However, as in any software application, DNN-based apps are afflicted with bugs. Previous work observed that DNN bug fix patterns are different from traditional bug fix patterns. Furthermore, those buggy models are non-trivial to diagnose and fix due to inexplicit errors with several options to fix them. To support developers in locating and fixing bugs, we propose DeepDiagnosis, a novel debugging approach that localizes the faults, reports error symptoms and suggests fixes for DNN programs. In the first phase, our technique monitors a training model, periodically checking for eight types of error conditions. Then, in case of problems, it reports messages containing sufficient information to perform actionable repairs to the model. In the evaluation, we thoroughly examine 444 models - 53 real-world from GitHub and Stack Overflow, and 391 curated by AUTOTRAINER. DeepDiagnosis provides superior accuracy when compared to UMLUAT and DeepLocalize. Our technique is faster than AUTOTRAINER for fault localization. The results show that our approach can support additional types of models, while state-of-the-art was only able to handle classification ones. Our technique was able to report bugs that do not manifest as numerical errors during training. Also, it can provide actionable insights for fix whereas DeepLocalize can only report faults that lead to numerical errors during training. DeepDiagnosis manifests the best capabilities of fault detection, bug localization, and symptoms identification when compared to other approaches.