Modeling Scalability of Distributed Machine Learning
This work addresses scalability estimation for practitioners using distributed systems like Apache Spark, but it is incremental as it builds on existing models without introducing a new paradigm.
The authors tackled the problem of estimating scalability for distributed machine learning algorithms by proposing a framework that models time complexity for methods like gradient descent and graphical model inference, validated through experiments on deep learning training and belief propagation, achieving speedup measurements.
Present day machine learning is computationally intensive and processes large amounts of data. It is implemented in a distributed fashion in order to address these scalability issues. The work is parallelized across a number of computing nodes. It is usually hard to estimate in advance how many nodes to use for a particular workload. We propose a simple framework for estimating the scalability of distributed machine learning algorithms. We measure the scalability by means of the speedup an algorithm achieves with more nodes. We propose time complexity models for gradient descent and graphical model inference. We validate our models with experiments on deep learning training and belief propagation. This framework was used to study the scalability of machine learning algorithms in Apache Spark.