Studying Logging Practice in Machine Learning-based Applications
Patrick Loic Foalem, Foutse Khomh, Heng Li

TL;DR
This study investigates logging practices in 110 open-source ML-based applications, revealing less pervasive logging than traditional software and highlighting common logging locations and purposes in ML development.
Contribution
It provides the first empirical analysis of logging practices in ML applications, filling a significant knowledge gap compared to traditional software logging studies.
Findings
Logging in ML applications is less pervasive than in traditional applications.
Most logging statements are at info and warn levels.
Logging is primarily used during model training and for data/model management.
Abstract
Logging is a common practice in traditional software development. Several research works have been done to investigate the different characteristics of logging practices in traditional software systems (e.g., Android applications, JAVA applications, C/C++ applications). Nowadays, we are witnessing more and more development of Machine Learning-based applications (ML-based applications). Today, there are many popular libraries that facilitate and contribute to the development of such applications, among which we can mention: Pytorch, Tensorflow, Theano, MXNet, Scikit-Learn, Caffe, and Keras. Despite the popularity of ML, we don't have a clear understanding of logging practices in ML applications. In this paper, we aim to fill this knowledge gap and help ML practitioners understand the characteristics of logging in ML-based applications. In particular, we conduct an empirical study on 110…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Cloud Computing and Resource Management · IoT and Edge/Fog Computing
