An Empirical Study towards Characterizing Deep Learning Development and Deployment across Different Frameworks and Platforms

Introduction

Deep Learning (DL) has recently achieved tremendous success in various application domains. A variety of DL frameworks and platforms play a key role to catalyze such progress. However, the differences in architecture designs and implementations of existing frameworks and platforms bring new challenges for DL software development and deployment. Till now, there is no study on how various mainstream frameworks and platforms influence both DL software development and deployment in practice.

To fill this gap, we take the first step towards understanding how the most widely-used DL frameworks and platforms support the DL software development and deployment. We conduct a systematic study on these frameworks and platforms by using two types of DNN architectures and three popular datasets. (1) For development process, we investigate the prediction accuracy under the same runtime training configuration or same model weights/biases. We also study the adversarial robustness of trained models by leveraging the existing adversarial attack techniques. The experimental results show that the computing differences across frameworks could result in an obvious prediction accuracy decline, which should draw the attention of DL developers. (2) For deployment process, we investigate the prediction accuracy and performance (refers to time cost and memory consumption) when the trained models are migrated/quantized from PC to real mobile devices and web browsers. The DL platform study unveils that the migration and quantization still suffer from compatibility and reliability issues. Meanwhile, we find several DL software bugs by using the results as a benchmark. We further validate the results through bug confirmation from stakeholders and industrial positive feedback to highlight the implications of our study. Through our study, we summarize practical guidelines, identify challenges and pinpoint new research directions, such as understanding the characteristics of DL frameworks and platforms, avoiding compatibility/reliability issues, detecting DL software bugs, and reducing time cost and memory consumption towards developing and deploying high quality DL systems effectively.

Overview of This Study

Research Questions

In this study, we aim to investigate the following research questions:

  • RQ1: (Accuracy on different frameworks) Given the same runtime configuration or same model weights/biases, what are the differences of training/prediction accuracy when implemented with different DL frameworks?
  • RQ2: (Adversarial robustness of trained models) Do DL models trained from different DL frameworks exhibit the same adversarial robustness against adversarial examples?
  • RQ3: (Performance after migration and quantization)What are the differences of performance (i.e., time cost and memory consumption) in the capabilities of supporting DL software when migrating or quantizing the trained models to the real mobile devices and web browsers?
  • RQ4: (Prediction accuracy after migration and quantization) Given the same trained DL model, what is the prediction accuracy of the migrated model for mobile and web platforms? How do quantization methods influence the prediction accuracy of quantized model on mobile devices?

Paper Supplement

Due to the page limit, more details on training/validation performance, bug details and reports, model robustness, model reliability, and statistical analysis are shown in this website, which are as follows: