一句话:首个针对基于 JavaScript 的深度学习系统进行故障实证研究,构建了症状、根因与修复模式的分类体系。
深度学习系统的质量保证至关重要,但已有研究多关注原生 DL 应用,可跨浏览器运行的基于 JavaScript 的 DL 应用从未被系统研究;其质量取决于应用、第三方 DL 库与底层框架(如 TensorFlow.js)三部分。本文首次开展实证研究,从官方 TensorFlow.js 仓库、13 个第三方 DL 库与 58 个 JS DL 应用中收集并人工分析 700 个真实故障,分别构建症状、根因与修复模式的分类体系,并统计它们在不同开发生命周期阶段、DL 系统三层架构与 TensorFlow.js 四大组件中的分布。基于结果,作者给出可操作的启示与研究方向,以促进该类系统的开发、测试与调试。
Quality assurance is of great importance for deep learning (DL) systems, especially when they are applied in safety-critical applications. While quality issues of native DL applications have been extensively analyzed, the issues of JavaScript-based DL applications have never been systematically studied. Compared with native DL applications, JavaScript-based DL applications can run on major browsers, making the platform- and device-independent. Specifically, the quality of JavaScript-based DL applications depends on the 3 parts: the application, the third-party DL library used and the underlying DL framework (e.g., TensorFlow.js), called JavaScript-based DL system. In this paper, we conduct the first empirical study on the quality issues of JavaScript-based DL systems. Specifically, we collect and analyze 700 real-world faults from relevant GitHub repositories, including the official TensorFlow.js repository, 13 third-party DL libraries, and 58 JavaScript-based DL applications. To better understand the characteristics of these faults, we manually analyze and construct taxonomies for the fault symptoms, root causes, and fix patterns, respectively. Moreover, we also study the fault distributions of symptoms and root causes, in terms of the different stages of the development lifecycle, the 3-level architecture in the DL system, and the 4 major components of TensorFlow.js framework. Based on the results, we suggest actionable implications and research avenues that can potentially facilitate the development, testing, and debugging of JavaScript-based DL systems.
@inproceedings{paperbot7270,
title = {Towards Understanding the Faults of JavaScript-Based Deep Learning Systems},
author = {Lili Quan and Qianyu Guo and Xiaofei Xie and Sen Chen and Xiaohong Li and Yang Liu},
booktitle = {ASE},
year = {2022},
doi = {10.1145/3551349.3560427}
}