Hyperparameter definitions

Definitions of hyperparameters used in the experiment training. One or more of these hyperparameter options might be used, depending on your framework and fusion method.

Hyperparameter definitions
Hyperparameters Description
Rounds Int value. The number of training iterations to complete between the aggregator and the remote systems.
Termination accuracy (Optional) Float value. Takes model_accuracy and compares it to a numerical value. If the condition is satisfied, then the experiment finishes early.

For example, termination_predicate: accuracy >= 0.8 finishes the experiment when the mean of model accuracy for participating parties is greater than or equal to 80%. Currently, Federated Learning accepts one type of early termination condition (model accuracy) for classification models only.
Quorum (Optional) Float value. Proceeds with model training after the aggregator reaches a certain ratio of party responses. Takes a decimal value between 0 - 1. The default is 1. The model training starts only after party responses reach the indicated ratio value.
For example, setting this value to 0.5 starts the training after 50% of the registered parties responded to the aggregator call.
Max Timeout (Optional) Int value. Terminates the Federated Learning experiment if the waiting time for party responses exceeds this value in seconds. Takes a numerical value up to 43200. If this value in seconds passes and the quorum ratio is not reached, the experiment terminates.

For example, max_timeout = 1000 terminates the experiment after 1000 seconds if the parties do not respond in that time.
Sketch accuracy vs privacy (Optional) Float value. Used with XGBoost training to control the relative accuracy of sketched data sent to the aggregator. Takes a decimal value between 0 and 1. Higher values will result in higher quality models but with a reduction in data privacy and increase in resource consumption.
Number of classes Int value. Number of target classes for the classification model. Required if "Loss" hyperparameter is:
- auto
- binary_crossentropy
- categorical_crossentropy
Learning rate Decimal value. The learning rate, also known as shrinkage. This is used as a multiplicative factor for the leaves values.
Loss String value. The loss function to use in the boosting process.
- binary_crossentropy (also known as logistic loss) is used for binary classification.
- categorical_crossentropy is used for multiclass classification.
- auto chooses either loss function depending on the nature of the problem.
- least_squares is used for regression.
Max Iter Int value. The total number of passes over the local training data set to train a Scikit-learn model.
N cluster Int value. The number of clusters to form and the number of centroids to generate.
Epoch (Optional) Int value. The number of local training iterations to be preformed by each remote party for each round. For example, if you set Rounds to 2 and Epochs to 5, all remote parties train locally 5 times before the model is sent to the aggregator. In round 2, the aggregator model is trained locally again by all parties 5 times and re-sent to the aggregator.
sigma Float value. Determines how far the local model neurons are allowed from the global model. A bigger value allows more matching and produces a smaller global model. Default value is 1.
sigma0 Float value. Defines the permitted deviation of the global network neurons. Default value is 1.
gamma Float value. Indian Buffet Process parameter that controls the expected number of features in each observation. Default value is 1.

Parent topic: Frameworks, fusion methods, and Python versions