MLCatchUp: Automated update of deprecated machine-learning APIs in Python

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...

Full description

Saved in:
Bibliographic Details
Main Authors: AGUS HARYONO, Stefanus, Ferdian, Thung, LO, David, LAWALL, Julia, JIANG, Lingxiao
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2021
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/6662
https://ink.library.smu.edu.sg/context/sis_research/article/7665/viewcontent/icsme21MLCatchUpTool.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-7665
record_format dspace
spelling sg-smu-ink.sis_research-76652022-01-13T09:35:57Z MLCatchUp: Automated update of deprecated machine-learning APIs in Python AGUS HARYONO, Stefanus Ferdian, Thung LO, David LAWALL, Julia JIANG, Lingxiao 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. 2021-10-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/6662 info:doi/10.1109/ICSME52107.2021.00061 https://ink.library.smu.edu.sg/context/sis_research/article/7665/viewcontent/icsme21MLCatchUpTool.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Artificial Intelligence and Robotics
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Artificial Intelligence and Robotics
spellingShingle Artificial Intelligence and Robotics
AGUS HARYONO, Stefanus
Ferdian, Thung
LO, David
LAWALL, Julia
JIANG, Lingxiao
MLCatchUp: Automated update of deprecated machine-learning APIs in Python
description 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.
format text
author AGUS HARYONO, Stefanus
Ferdian, Thung
LO, David
LAWALL, Julia
JIANG, Lingxiao
author_facet AGUS HARYONO, Stefanus
Ferdian, Thung
LO, David
LAWALL, Julia
JIANG, Lingxiao
author_sort AGUS HARYONO, Stefanus
title MLCatchUp: Automated update of deprecated machine-learning APIs in Python
title_short MLCatchUp: Automated update of deprecated machine-learning APIs in Python
title_full MLCatchUp: Automated update of deprecated machine-learning APIs in Python
title_fullStr MLCatchUp: Automated update of deprecated machine-learning APIs in Python
title_full_unstemmed MLCatchUp: Automated update of deprecated machine-learning APIs in Python
title_sort mlcatchup: automated update of deprecated machine-learning apis in python
publisher Institutional Knowledge at Singapore Management University
publishDate 2021
url https://ink.library.smu.edu.sg/sis_research/6662
https://ink.library.smu.edu.sg/context/sis_research/article/7665/viewcontent/icsme21MLCatchUpTool.pdf
_version_ 1770576019320733696