Moving Deep Learning into Web Browser: How Far Can We Go?

Recently, several JavaScript-based deep learning frameworks have emerged, making it possible to perform deep learning tasks directly in browsers. However, little is known on what and how well we can do with these frameworks for deep learning in browsers. To bridge the knowledge gap, in this paper, we conduct the first empirical study of deep learning in browsers. We survey 7 most popular JavaScript-based deep learning frameworks, investigating to what extent deep learning tasks have been supported in browsers so far. Then we measure the performance of different frameworks when running different deep learning tasks. Finally, we dig out the performance gap between deep learning in browsers and on native platforms by comparing the performance of TensorFlow.js and TensorFlow in Python. Our findings could help application developers, deep-learning framework vendors and browser vendors to improve the efficiency of deep learning in browsers.

[1]  Geoffrey E. Hinton,et al.  Learning representations by back-propagating errors , 1986, Nature.

[2]  Yann LeCun,et al.  Generalization and network design strategies , 1989 .

[3]  Yann LeCun,et al.  The mnist database of handwritten digits , 2005 .

[4]  Yee Whye Teh,et al.  A Fast Learning Algorithm for Deep Belief Nets , 2006, Neural Computation.

[5]  Zhiqi Xu,et al.  A framework for browser-based Multiplayer Online Games using WebGL and WebSocket , 2011, 2011 International Conference on Multimedia Technology.

[6]  P. Cochat,et al.  Et al , 2008, Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.

[7]  Michael Auer,et al.  Real-Time Web GIS Analysis Using WebGL , 2012, Int. J. 3 D Inf. Model..

[8]  M. Welling,et al.  MLitB: Machine Learning in the Browser , 2014, PeerJ Comput. Sci..

[9]  Nicholas D. Lane,et al.  Can Deep Learning Revolutionize Mobile Sensing? , 2015, HotMobile.

[10]  Honglak Lee,et al.  Action-Conditional Video Prediction using Deep Networks in Atari Games , 2015, NIPS.

[11]  Yuan Yu,et al.  TensorFlow: A system for large-scale machine learning , 2016, OSDI.

[12]  Song Han,et al.  Deep Compression: Compressing Deep Neural Network with Pruning, Trained Quantization and Huffman Coding , 2015, ICLR.

[13]  Shaohan Hu,et al.  DeepSense: A Unified Deep Learning Framework for Time-Series Mobile Sensing Data Processing , 2016, WWW.

[14]  Trevor N. Mudge,et al.  Neurosurgeon: Collaborative Intelligence Between the Cloud and Mobile Edge , 2017, ASPLOS.

[15]  Jiannong Cao,et al.  AppBooster: Boosting the Performance of Interactive Mobile Applications with Computation Offloading and Parameter Tuning , 2017, IEEE Transactions on Parallel and Distributed Systems.

[16]  H. T. Kung,et al.  Distributed Deep Neural Networks Over the Cloud, the Edge and End Devices , 2017, 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS).

[17]  Alexander Kuhnle,et al.  Deep learning evaluation using deep linguistic processing , 2017, ArXiv.

[18]  Stuart J. Russell,et al.  Inverse reinforcement learning for video games , 2018, ArXiv.

[19]  Hao Wu,et al.  Understanding Deep Learning Performance through an Examination of Test Set Difficulty: A Psychometric Case Study , 2017, EMNLP.

[20]  Philip S. Yu,et al.  Not Just Privacy: Improving Performance of Private Deep Learning in Mobile Cloud , 2018, KDD.

[21]  Yang Liu,et al.  Performance Comparison of Deep Learning Techniques for Recognizing Birds in Aerial Images , 2018, 2018 IEEE Third International Conference on Data Science in Cyberspace (DSC).

[22]  Nicolás Wolovick,et al.  Performance Characterization of State-Of-The-Art Deep Learning Workloads on an IBM "Minsky" Platform , 2018, HICSS.

[23]  Masato Oguchi,et al.  Performance Evaluation of Pipeline-Based Processing for the Caffe Deep Learning Framework , 2018, IEICE Trans. Inf. Syst..

[24]  Andreas Holzinger,et al.  The Need for Speed of AI Applications: Performance Comparison of Native vs. Browser-based Algorithm Implementations , 2018, ArXiv.

[25]  Shaohuai Shi,et al.  Performance Modeling and Evaluation of Distributed Deep Learning Frameworks on GPUs , 2017, 2018 IEEE 16th Intl Conf on Dependable, Autonomic and Secure Computing, 16th Intl Conf on Pervasive Intelligence and Computing, 4th Intl Conf on Big Data Intelligence and Computing and Cyber Science and Technology Congress(DASC/PiCom/DataCom/CyberSciTech).

[26]  Ke Wang,et al.  AI Benchmark: Running Deep Neural Networks on Android Smartphones , 2018, ECCV Workshops.