arrow
返回

Detecting Refactoring Commits in Machine Learning Python Projects: A Machine Learning-Based Approach

delete2025-02-23
delete0
delete
OA
AI
S
Shayan Noei
H
Heng Li
Y
Ying Zou
DOI:10.1145/3705309delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
重构旨在在不改变其功能行为的前提下提高软件质量。理解开发者的重构活动对于改进软件可维护性至关重要。近年来,机器学习(ML)库和框架在软件系统中的使用显著增加,这使得最大化其可维护性变得至关重要。由于ML库和框架具有数据驱动的特性,它们通常经历与传统项目不同的开发过程。因此,它们可能会经历各种类型的数据相关重构。当前最先进(state-of-the-art)的重构检测工具尚未在ML技术领域进行测试,并且它们并非专门设计用于检测ML项目中的ML特定重构类型(例如数据操作);因此,它们可能无法充分识别所有潜在的重构操作,特别是ML特定的重构操作。此外,大量ML库和框架是用Python编写的,而Python的重构检测工具支持有限。PyRef是一种基于规则且当前最先进的Python重构检测工具,能够识别11种类型重构操作,且具有较高的精度。相比之下,对于其他语言(如Java),当前最先进的工具能够检测更全面的重构列表。例如,Rminer可以为Java项目检测99种重构类型。受利用提交信息(commit messages)检测重构的先前工作启发,我们引入了MLRefScanner,这是一种原型工具,应用ML技术来检测ML Python项目中的重构提交。MLRefScanner能够检测涉及ML特定重构操作以及当前最先进重构检测工具检测范围之外的其他重构操作的提交。为了证明我们方法的有效性,我们在199个ML开源库和框架上评估了MLRefScanner,并将其与用于Python项目的其他重构检测工具进行了比较。我们的研究发现,MLRefScanner在检测与重构相关的提交方面优于现有工具,在识别与重构相关的提交时,达到了94%的总精度和82%的召回率。与当前最先进重构检测工具相比,MLRefScanner能够识别包含ML特定和附加重构操作的提交。当将MLRefScanner与PyRef结合使用时,我们可以进一步将精度和召回率分别提高到95%和99%。MLRefScanner为Python ML社区提供了有价值的贡献,因为它使ML开发者能够更有效地检测其ML Python项目中的与重构相关的提交。我们的研究为利用机器学习技术检测其他编程语言或技术领域的重构活动这一有前景的方向提供了启示,在这些领域中,常用的基于规则的重构检测方法是不够的。
Keyword:
Code Refactoring
Refactoring Detection
Python Refactoring
Machine Learning
Code Quality

期刊

A
ACM Transactions on Software Engineering and Methodology
IF:
6.2
论文数:
1.2K
被引数:
3.4K

机构

Q
Queens Univ
学者数:
899
论文数: 750
被引数: 153
引用论文

引用论文

Neural representation of goal direction in the monarch butterfly brain
err
IF0
err2022-10-18
err0
errOAAI
errM. Jerome Beetz; Christian Kraus; Basil el Jundi
err分享
err收藏
err分享
err收藏
Multiscale Local and Global Feature Fusion for the Detection of Steel Surface Defects
err2023-07-16
err0
errOAAI
errLi Zhang; Zhipeng Fu; Huaping Guo; Yange Sun; Xirui Li; Mingliang Xu
err分享
err收藏
err分享
err收藏
Bivalirudin or Unfractionated Heparin for Anticoagulation in Pediatric Patients on Continuous Flow Ventricular Assist Device Support: Single-Center Retrospective Cohort Study
err2022-06-10
err0
PREAI
errKriti Puri; Hari P. Tunuguntla; Lisa A. Hensch; JiaHoi Loh; Shiu-Ki Hui; Asma Razavi; Sebastian C. Tume; Timothy J. Humlicek; Susan W. Denfield; Joseph A. Spinner; Swati Choudhry; Jack F. Price; William J. Dreyer; Iki Adachi; Jun Teruya
err分享
err收藏
err分享
err收藏
Determination of the optimal combination chemotherapy regimen for treatment of platinum-resistant ovarian cancer in nude mouse model
err2007-03-01
err0
PREAI
errJenifer M. Saucier; Jiang Yu; Anjali Gaikwad; Robert L. Coleman; Judith K. Wolf; Judith A. Smith
err分享
err收藏
err
IF0
err
err0
PREAI
err
err分享
err收藏
学者 查看更多内容