Publication Type

Conference Proceeding Article

Version

acceptedVersion

Publication Date

5-2021

Abstract

API developers have been working hard to evolve APIs to provide more simple, powerful, and robust API libraries. Although API evolution has been studied for multiple domains, such as Web and Android development, API evolution for deep learning frameworks has not yet been studied. It is not very clear how and why APIs evolve in deep learning frameworks, and yet these are being more and more heavily used in industry. To fill this gap, we conduct a large-scale and in-depth study on the API evolution of Tensorflow 2, which is currently the most popular deep learning framework. We first extract 6,329 API changes by mining API documentation of Tensorflow 2 across multiple versions and mapping API changes into functional categories on the Tensorflow 2 framework to analyze their API evolution trends. We then investigate the key reasons for API changes by referring to multiple information sources, e.g., API documentation, commits and StackOverflow. Finally, we compare API evolution in non-deep learning projects to that of Tensorflow 2, and identify some key implications for users, researchers, and API developers.

Keywords

API documentation, API evolution, deep learning, Tensorflow 2

Discipline

Artificial Intelligence and Robotics | Databases and Information Systems

Research Areas

Information Systems and Management; Intelligent Systems and Optimization

Publication

43rd IEEE/ACM International Conference on Software Engineering: Software Engineering in Practice (ICSE 2021)

First Page

238

Last Page

247

ISBN

9780738146690

Identifier

10.1109/ICSE-SEIP52600.2021.00033

Publisher

IEEE

City or Country

Madrid, Spain

Share

COinS