Treffer: MLCatchUp: Automated Update of Deprecated Machine-Learning APIs in Python

Title:
MLCatchUp: Automated Update of Deprecated Machine-Learning APIs in Python
Contributors:
Singapore Management University (SIS), Well Honed Infrastructure Software for Programming Environments and Runtimes (Whisper), Centre Inria de Paris, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), This research is also supported by the Singapore National Research Foundation (award number: NRF2016-NRF-ANR003), ANR-16-CE25-0012,ITrans,Inférence automatique de règles de transformation pour le portage des logiciels d'infrastructure patrimoniaux(2016)
Source:
ICSME 2021 - 37th IEEE International Conference on Software Maintenance and Evolution, Sep 2021, Luxembourg City / Virtual, Luxembourg. ⟨10.1109/ICSME52107.2021.00061⟩
Publisher Information:
CCSD, 2021.
Publication Year:
2021
Collection:
collection:INRIA
collection:INRIA-ROCQ
collection:TESTALAIN1
collection:INRIA2
collection:TEST-HALCNRS
collection:ANR
collection:INRIA-SINGAPOUR
Original Identifier:
HAL: hal-03361370
Document Type:
Konferenz conferenceObject<br />Conference papers
Language:
English
Relation:
info:eu-repo/semantics/altIdentifier/doi/10.1109/ICSME52107.2021.00061
DOI:
10.1109/ICSME52107.2021.00061
Rights:
info:eu-repo/semantics/OpenAccess
Accession Number:
edshal.hal.03361370v1
Database:
HAL

Weitere Informationen

Tool Paper
Machine learning (ML) libraries are gaining vast popularity, especially in the Python programming language. Using the latest version of such libraries is recommended to ensure the best performance and security. When migrating to the latest version of a machine learning library, usages of deprecated APIs need to be updated, which is a time-consuming process. In this paper, we propose MLCatchUp, an automated API usage update tool for deprecated APIs of popular ML libraries written in Python. MLCatchUp automatically infers the required transformation to migrate usages of deprecated API through the differences between the deprecated and updated API signatures. MLCatchUp offers a readable transformation rule in the form of a domain specific language (DSL). We evaluate MLCatchUp using a dataset of 267 real-world Python code containing 551 usages of 68 distinct deprecated APIs, where MLCatchUp achieves 90.7% accuracy. A video demonstration of MLCatchUp is available at https://youtu.be/5NjOPNt5iaA.