Fault Localization in Deep Learning-based Software: A System-level Approach

Mohammad Mehdi Morovati, Amin Nikanjam, Foutse Khomh
11/12/2024
cs.SEcs.LG

No official code found. Best implementation: mohmehmo/fl4deep (0 stars, last commit 2024-10-23).

Abstract

Over the past decade, Deep Learning (DL) has become an integral part of our daily lives. This surge in DL usage has heightened the need for developing reliable DL software systems. Given that fault localization is a critical task in reliability assessment, researchers have proposed several fault localization techniques for DL-based software, primarily focusing on faults within the DL model. While the DL model is central to DL components, there are other elements that significantly impact the performance of DL components. As a result, fault localization methods that concentrate solely on the DL model overlook a large portion of the system. To address this, we introduce FL4Deep, a system-level fault localization approach considering the entire DL development pipeline to effectively localize faults across the DL-based systems. In an evaluation using 100 faulty DL scripts, FL4Deep outperformed four previous approaches in terms of accuracy for three out of six DL-related faults, including issues related to data (84%), mismatched libraries between training and deployment (100%), and loss function (69%). Additionally, FL4Deep demonstrated superior precision and recall in fault localization for five categories of faults including three mentioned fault types in terms of accuracy, plus insufficient training iteration and activation function.

View on arXivView PDF

Code Implementations(1)

mohmehmo/fl4deepCommunity56%

Replication package of "Fault Localization in Deep Learning-based software: A System-level Approach" paper

00PythonAug 17, 20241 years ago

Similar Papers

Cite this paper

@article{morovati2024fault,
  title  = {Fault Localization in Deep Learning-based Software: A System-level Approach},
  author = {Mohammad Mehdi Morovati and Amin Nikanjam and Foutse Khomh},
  year   = {2024},
  eprint = {2411.08172},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2411.08172v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2411.08172.svg)](https://codeofpaper.com/paper/2411.08172)

Discussion