Our team built a tool that allows users to run, compare, and analyze three different types of machine learning models: centralized, federated, and personalized. The tool’s web app allows a user to select the number of devices to be used, the number of clusters (groups of devices that contain similar data), and the type of machine learning model to train. After configuring the machine learning task on the web app, this information is sent to a server device and several client devices as specified by the user. The devices then perform the machine learning task and collect metrics that are sent back to the web app. Meanwhile, the web app populates real-time graphs that display fields such as test loss, test accuracy, and size of data transmitted for each device. In addition, these metrics are persisted in a database to allow for easier external analysis. Overall, our team has built a tool that makes it easier to compare and visualize important model metrics between different modes of machine learning.
Avishka Suduwa Dewage