0 / 0
Set up your system
Last updated: Oct 09, 2024
Set up your system

Before you can use IBM Federated Learning, ensure that you have the required hardware, software, and dependencies.

Core requirements by role

Each entity that participates in a Federated Learning experiment must meet the requirements for their role.

Admin software requirements

Designate an admin for the Federated Learning experiment. The admin must have:

Party hardware and software requirements

Each party must have a system that meets these minimum requirements.

Note: Remote parties participating in the same Federated Learning experiment can use different hardware specs and architectures, as long as they each meet the minimum requirement.

Supported architectures

  • x86 64-bit
  • PPC
  • Mac M-series
  • 4 GB memory or greater

Supported environments

  • Linux
  • Mac OS/Unix
  • Windows

Software dependencies

  • A supported Python version and a machine learning framework.
  • The Watson Machine Learning Python client.
    1. If you are using Linux, run pip install 'ibm-watson-machine-learning[fl-rt22.2-py3.10]'.
    2. If you are using Mac OS with M-series CPU and Conda, download the installation script and then run ./install_fl_rt22.2_macos.sh <name for new conda environment>.

Network requirements

An outbound connection from the remote party to aggregator is required. Parties can use firewalls that restrict internal connections with each other.

Data sources requirements

Data must comply with these requirements.

  • Data must be in a directory or storage repository that is accessible to the party that uses them.
  • Each data source for a federate model must have the same features. IBM Federated Learning supports horizontal federated learning only.
  • Data must be in a readable format, but the formats can vary by data source. Suggested formats include:
    • Hive
    • Excel
    • CSV
    • XML
    • Database

Parent topic: Creating a Federated Learning experiment

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more