Interoperability in Deep Learning: A User Survey and Failure Analysis of ONNX Model Converters

Purvish Jajal, Purdue University
Wenxin Jiang, Purdue University
Arav Tewari, Purdue University
Erik Kocinare, Purdue University
Joseph Woo, Purdue University
Anusha Sarraf, Purdue University
Yung-Hsiang Lu, Purdue University
George K. Thiruvathukal, Loyola University Chicago
James C. Davis, Purdue University

Author Posting © The Authors, 2024. This article is posted here by permission of Association for Computing Machinery for personal use and redistribution. This article was published open access in ISSTA 2024: Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis, (September 11, 2024), https://doi.org/10.1145/3650212.3680374.

Abstract

Software engineers develop, fine-tune, and deploy deep learning (DL) models using a variety of development frameworks and runtime environments. DL model converters move models between frameworks and to runtime environments. Conversion errors compromise model quality and disrupt deployment. However, the failure characteristics of DL model converters are unknown, adding risk when using DL interoperability technologies.
This paper analyzes failures in DL model converters. We survey software engineers about DL interoperability tools, use cases, and pain points (N=92). Then, we characterize failures in model converters associated with the main interoperability tool, ONNX (N=200 issues in PyTorch and TensorFlow). Finally, we formulate and test two hypotheses about structural causes for the failures we studied. We find that the node conversion stage of a model converter accounts for ~75% of the defects and 33% of reported failure are related to semantically incorrect models. The cause of semantically incorrect models is elusive, but models with behaviour inconsistencies share operator sequences. Our results motivate future research on making DL interoperability software simpler to maintain, extend, and validate. Research into behavioural tolerances and architectural coverage metrics could be fruitful.