I am working on a baseline where the clients have to communicate the gradients of the network (the way the gradients are calculated is irrelevant to the question) along with the updated model. Is there a recommended way of doing this? In my mind I have an extra set of NDArrays to return along with the model parameters in the client’s fit method.
I am sure that what I am describing is a common problem but couldn’t find the recommended way.
FitRes.metricsis a free-form dict collected on the server. It only supports scalars/strings, so for NDArrays you can serialize (e.g., via numpy.save to bytes + base64) and unpack in a custom Strategy.