TY - GEN
T1 - Are machine learning cloud APIs used correctly?
AU - Wan, Chengcheng
AU - Liu, Shicheng
AU - Hoffmann, Henry
AU - Maire, Michael
AU - Lu, Shan
N1 - Publisher Copyright:
© 2021 IEEE.
PY - 2021/11/5
Y1 - 2021/11/5
N2 - Machine learning (ML) cloud APIs enable developers to easily incorporate learning solutions into software systems. Unfortunately, ML APIs are challenging to use correctly and efficiently, given their unique semantics, data requirements, and accuracy-performance tradeoffs. Much prior work has studied how to develop ML APIs or ML cloud services, but not how open-source applications are using ML APIs. In this paper, we manually studied 360 representative open-source applications that use Google or AWS cloud-based ML APIs, and found 70% of these applications contain API misuses in their latest versions that degrade functional, performance, or economical quality of the software. We have generalized 8 anti-patterns based on our manual study and developed automated checkers that identify hundreds of more applications that contain ML API misuses.
AB - Machine learning (ML) cloud APIs enable developers to easily incorporate learning solutions into software systems. Unfortunately, ML APIs are challenging to use correctly and efficiently, given their unique semantics, data requirements, and accuracy-performance tradeoffs. Much prior work has studied how to develop ML APIs or ML cloud services, but not how open-source applications are using ML APIs. In this paper, we manually studied 360 representative open-source applications that use Google or AWS cloud-based ML APIs, and found 70% of these applications contain API misuses in their latest versions that degrade functional, performance, or economical quality of the software. We have generalized 8 anti-patterns based on our manual study and developed automated checkers that identify hundreds of more applications that contain ML API misuses.
KW - Cloud API
KW - Machine learning
KW - Software engineering
UR - https://www.scopus.com/pages/publications/85142680147
U2 - 10.1109/ICSE43902.2021.00024
DO - 10.1109/ICSE43902.2021.00024
M3 - 会议稿件
AN - SCOPUS:85142680147
T3 - Proceedings - International Conference on Software Engineering
SP - 125
EP - 137
BT - Proceedings - 2021 IEEE/ACM 43rd International Conference on Software Engineering, ICSE 2021
PB - IEEE Computer Society
T2 - 43rd IEEE/ACM International Conference on Software Engineering, ICSE 2021
Y2 - 22 May 2021 through 30 May 2021
ER -