Machine/Deep Learning for Software Engineering: A Systematic Literature Review

Machine/Deep Learning for Software Engineering: A Systematic Literature Review
复制标题

DOI:
10.1109/tse.2022.3173346
复制
发表时间:
2023-03
影响因子:
7.4
通讯作者:
Simin Wang;LiGuo Huang;Amiao Gao;Jidong Ge;Tengfei Zhang;Haitao Feng;Ishna Satyarth;Ming Li-Ming
Simin Wang;LiGuo Huang;Amiao Gao;Jidong Ge;Tengfei Zhang;Haitao Feng;Ishna Satyarth;Ming Li-Ming
中科院分区:
计算机科学1区
文献类型:
--
作者:
Simin Wang;LiGuo Huang;Amiao Gao;Jidong Ge;Tengfei Zhang;Haitao Feng;Ishna Satyarth;Ming Li-Ming

文献摘要

被引文献

相似文献

自2009年以来,由ImageNet的引入引发的深度学习革命激发了软件工程(SE)和机器学习(ML)/深度学习(DL)之间的协同作用。与此同时,批评性评论也表明应谨慎使用 ML/DL。为了提高 ML/DL 相关 SE 研究的适用性和普遍性,我们对 2009 年至 2020 年间发表的 1,428 篇 ML/DL 相关 SE 论文进行了为期 12 年的系统文献综述(SLR)。我们的趋势分析证明了 ML/DL 对 SE 带来的影响。我们研究了将 ML/DL 解决方案应用于 SE 问题的复杂性,以及这种复杂性如何导致有关 SE 中 ML/DL 研究的再现性和可复制性的问题。具体来说,我们研究了 ML 和 DL 在应用于 SE 任务时在数据预处理、模型训练和评估方面有何不同,以及需要提供哪些细节来确保研究可以重现或重复。通过将选择 ML/DL 技术的基本原理分为五个主题,我们分析了模型性能、稳健性、可解释性、复杂性和数据简单性如何影响 ML/DL 模型的选择。
Since 2009, the deep learning revolution, which was triggered by the introduction of ImageNet, has stimulated the synergy between Software Engineering (SE) and Machine Learning (ML)/Deep Learning (DL). Meanwhile, critical reviews have emerged that suggest that ML/DL should be used cautiously. To improve the applicability and generalizability of ML/DL-related SE studies, we conducted a 12-year Systematic Literature Review (SLR) on 1,428 ML/DL-related SE papers published between 2009 and 2020. Our trend analysis demonstrated the impacts that ML/DL brought to SE. We examined the complexity of applying ML/DL solutions to SE problems and how such complexity led to issues concerning the reproducibility and replicability of ML/DL studies in SE. Specifically, we investigated how ML and DL differ in data preprocessing, model training, and evaluation when applied to SE tasks, and what details need to be provided to ensure that a study can be reproduced or replicated. By categorizing the rationales behind the selection of ML/DL techniques into five themes, we analyzed how model performance, robustness, interpretability, complexity, and data simplicity affected the choices of ML/DL models.