<ol>
<li>You can create a ClientData for your dataset, see <a href="https://www.tensorflow.org/federated/tutorials/working_with_client_data" rel="nofollow noreferrer">Working with tff's ClientData</a>.</li>
<li>The dataset doesn't have to balanced to build a federated learning model. In <a href="https://arxiv.org/abs/1602.05629" rel="nofollow noreferrer">https://arxiv.org/abs/1602.05629</a>, the server takes weighted federated averaging of client's model updates, where the weights are the number of samples each client has.</li>
<li>A few hundred records per client is no less than the <a href="https://www.tensorflow.org/federated/api_docs/python/tff/simulation/datasets/emnist/load_data" rel="nofollow noreferrer">EMNIST dataset</a>, so that would be fine. About the total number of clients: this <a href="https://www.tensorflow.org/federated/tutorials/federated_learning_for_image_classification" rel="nofollow noreferrer">tutorial</a> shows FL with 10 clients, you can run the colab with smaller <code>NUM_CLIENTS</code> to see how it works on the example dataset.</li>
</ol>
How to build federated learning model of unbalanced and small dataset
<p>I am working to build a federated learning model using TFF and I have some questions:</p>
<ol>
<li><p>I am preparing the dataset, I have separate files of data, with same features and different samples. I would consider each of these files as a single client. How can I maintain this in TFF?</p>
</li>
<li><p>The data is not balanced, meaning, the size of data varies in each file. Is this affecting the modeling process?</p>
</li>
<li><p>The size of the data is a bit small, one file (client) is having 300 records and another is 1500 records, is it suitable to build a federated learning model?</p>
</li>
</ol>
<p>Thanks in advance</p>