Architecting Peer-to-Peer Serverless Distributed Machine Learning Training for Improved Fault Tolerance
This is an incremental position paper that addresses fault tolerance issues for distributed machine learning systems, potentially benefiting developers and organizations using cloud-based training.
The paper tackles the problem of fault tolerance in distributed machine learning by proposing to explore serverless computing with a peer-to-peer architecture, aiming to reduce costs and improve fault tolerance compared to parameter server architectures.
Distributed Machine Learning refers to the practice of training a model on multiple computers or devices that can be called nodes. Additionally, serverless computing is a new paradigm for cloud computing that uses functions as a computational unit. Serverless computing can be effective for distributed learning systems by enabling automated resource scaling, less manual intervention, and cost reduction. By distributing the workload, distributed machine learning can speed up the training process and allow more complex models to be trained. Several topologies of distributed machine learning have been established (centralized, parameter server, peer-to-peer). However, the parameter server architecture may have limitations in terms of fault tolerance, including a single point of failure and complex recovery processes. Moreover, training machine learning in a peer-to-peer (P2P) architecture can offer benefits in terms of fault tolerance by eliminating the single point of failure. In a P2P architecture, each node or worker can act as both a server and a client, which allows for more decentralized decision making and eliminates the need for a central coordinator. In this position paper, we propose exploring the use of serverless computing in distributed machine learning training and comparing the performance of P2P architecture with the parameter server architecture, focusing on cost reduction and fault tolerance.