Our paper “Functional Federated Learning in Erlang (
The abstract is below:
Functional Federated Learning in Erlang (ffl-erl)
Gregor Ulm, Emil Gustavsson, and Mats Jirstrand
The functional programming language Erlang is well-suited
for concurrent and distributed applications, but numerical
computing is not seen as one of its strengths. Yet, the
recent introduction of Federated Learning, which leverages
client devices for decentralized machine learning tasks,
while a central server updates and distributes a global
model, motivated us to explore how well Erlang is suited to
that problem. We present the Federated Learning framework
ffl-erl and evaluate it in two scenarios: one in which the
entire system has been written in Erlang, and another in
which Erlang is relegated to coordinating client processes
that rely on performing numerical computations in the
programming language C. There is a concurrent as well as a
distributed implementation of each case. We show that Erlang
incurs a performance penalty, but for certain use cases this
may not be detrimental, considering the trade-off between
speed of development (Erlang) versus performance (C). Thus,
Erlang may be a viable alternative to C for some practical
machine learning tasks.