Design Smells in Deep Learning Programs: An Empirical Study
Not on the map. Why?
Abstract (arXiv)
Nowadays, we are witnessing an increasing adoption of Deep Learning (DL) based software systems in many industries. Designing a DL program requires constructing a deep neural network (DNN) and then training it on a dataset. This process requires that developers make multiple architectural (e.g., type, size, number, and order of layers) and configuration (e.g., optimizer, regularization methods, and activation functions) choices that affect the quality of the DL models, and consequently software quality. An under-specified or poorly-designed DL model may train successfully but is likely to perform poorly when deployed in production. Design smells in DL programs are poor design and-or configuration decisions taken during the development of DL components, that are likely to have a negative impact on the performance (i.e., prediction accuracy) and then quality of DL based software systems. In this paper, we present a catalogue of 8 design smells for a popular DL architecture, namely deep Feedforward Neural Networks which is widely employed in industrial applications. The design smells were identified through a review of the existing literature on DL design and a manual inspection of 659 DL programs with performance issues and design inefficiencies. The smells are specified by describing their context, consequences, and recommended refactorings. To provide empirical evidence on the relevance and perceived impact of the proposed design smells, we conducted a survey with 81 DL developers. In general, the developers perceived the proposed design smells as reflective of design or implementation problems, with agreement levels varying between 47% and 68%.
Key facts. Cited by 10 papers in the map (data through 14 Oct 2026). Builds on 15 of its 31 references that are in the map. First posted on arXiv 5 Jul 2021.
Builds on
15 of 31 references.
References · 15
- 2015Deep Residual Learning for Image Recognitioncited by 52,096
- 2014Microsoft COCO: Common Objects in Contextcited by 17,608
- 2014Very Deep Convolutional Networks for Large-Scale Image Recognitioncited by 15,364
- 2015Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shiftcited by 7,005
- 2015Rethinking the Inception Architecture for Computer Visioncited by 5,475
- 2016SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model sizecited by 1,060
- 2014Striving for Simplicity: The All Convolutional Netcited by 990
- 2016An Analysis of Deep Neural Network Models for Practical Applicationscited by 116
- 2019Taxonomy of Real Faults in Deep Learning Systemscited by 90
- 2014Convolutional Neural Networks at Constrained Time Costcited by 81
- 2019A Comprehensive Study on Deep Learning Bug Characteristicscited by 65
- 2018Understanding the Disharmony between Dropout and Batch Normalization by Variance Shiftcited by 37
3 more
Built on by
Citing papers per year: 2022: 3; 2023: 2; 2024: 1; 2025: 3; 2026: 1.
10 papers.
- 2022Bugs in Machine Learning-based Systems: A Faultload Benchmarkcited by 15
- 2023Challenges and Practices of Deep Learning Model Reengineering: A Case Study on Computer Visioncited by 11
- 2022Quality issues in Machine Learning Software Systemscited by 7
- 2022Challenges in Migrating Imperative Deep Learning Programs to Graph Execution: An Empirical Studycited by 2
- 2023Quality Issues in Machine Learning Software Systemscited by 0
- 2024On Security Weaknesses and Vulnerabilities in Deep Learning Systemscited by 0
- 2025MixFunn: A Neural Network for Differential Equations with Improved Generalization and Interpretabilitycited by 0
- 2025Speculative Automated Refactoring of Imperative Deep Learning Programs to Graph Executioncited by 0
- 2025Analysing Python Machine Learning Notebooks with Moosecited by 0
- 2026From AI Technical Debt to Agentic Technical Debt: A Systematic Mapping of Root Causes and Manifestations in Agentic AI Systemscited by 0
- 2026From AI Technical Debt to Agentic Technical Debt: A Systematic Mapping of Root Causes and Manifestations in Agentic AI Systems2 Aug 2026
- 2025Analysing Python Machine Learning Notebooks with Moose15 Sep 2025
- 2025Speculative Automated Refactoring of Imperative Deep Learning Programs to Graph Execution7 Apr 2025
- 2025MixFunn: A Neural Network for Differential Equations with Improved Generalization and Interpretability28 Mar 2025
- 2024On Security Weaknesses and Vulnerabilities in Deep Learning Systems12 Jun 2024
- 2023Quality Issues in Machine Learning Software Systems26 Jun 2023
- 2023Challenges and Practices of Deep Learning Model Reengineering: A Case Study on Computer Vision13 Mar 2023
- 2022Quality issues in Machine Learning Software Systems18 Aug 2022
- 2022Bugs in Machine Learning-based Systems: A Faultload Benchmark24 Jun 2022
- 2022Challenges in Migrating Imperative Deep Learning Programs to Graph Execution: An Empirical Study24 Jan 2022