中文

前馈神经网络训练程序的测试

软件工程 2022-04-05 v1 人工智能 机器学习

摘要

如今,我们正见证为提升深度神经网络(DNN)性能与可信度并使其能在自动驾驶汽车等安全关键系统中部署而付出的日益增多的努力。已有多种测试技术被提出以生成可暴露 DNN 模型行为不一致性的测试用例。这些技术隐式地假设训练程序无缺陷且配置恰当。然而,对于新问题满足该假设需要大量的工程工作来准备数据、设计 DNN、实现训练程序并调优超参数,从而产出当前自动化测试数据生成器所搜索拐角案例行为的模型。所有这些模型训练步骤都易出错。因此,在基于 DNN 的软件系统的所有工程步骤中(而不仅是最终 DNN 模型上)检测并纠正错误至关重要。本文中,我们收集了训练问题目录,并基于其症状及对训练程序行为的影响,提出实用的验证例程,通过在训练期间持续验证学习动态的一些重要性质成立来自动检测上述问题。随后,我们设计了 TheDeepChecker,一种面向 DNN 训练程序的端到端基于属性的调试方法。我们在合成与真实世界缺陷 DL 程序上评估了 TheDeepChecker 的有效性,并与 Amazon SageMaker Debugger (SMD) 比较。结果表明,TheDeepChecker 对基于 DNN 程序属性的执行中验证成功在早期且以低成本揭示了若干编码缺陷与系统误配置。此外,TheDeepChecker 在检测准确率与 DL 缺陷覆盖方面优于 SMD 对训练日志的离线规则验证。

关键词

引用

@article{arxiv.2204.00694,
  title  = {Testing Feedforward Neural Networks Training Programs},
  author = {Houssem Ben Braiek and Foutse Khomh},
  journal= {arXiv preprint arXiv:2204.00694},
  year   = {2022}
}