UNPKG

federer

Version:

Experiments in asynchronous federated learning and decentralized learning

31 lines 1.4 kB
import { Logger } from "winston"; import { Coordinator, CoordinatorOptions, StopCondition, PreprocessResult, IPCServer } from "../../../coordinator"; import { LeafModelOptions } from "./model"; export declare type DatasetName = "shakespeare" | "synthetic"; export interface LeafCoordinatorOptions extends CoordinatorOptions { /** Name of the dataset to use. */ dataset: DatasetName; /** Options for the ML model. */ model: CoordinatorOptions["model"]; /** Number of label classes to include in the experiment * For Shakespeare dataset, this is the number of roles */ numberLabelClasses: number; /** * Number of roles per client * * This value will probably be 1 so each client is reponsible for 1 role. Each role * has at least 2 lines in FedAvg paper. */ numberRolesPerClient: number; } export declare class LeafCoordinator extends Coordinator { protected readonly experimentName: string; protected readonly options: Readonly<LeafCoordinatorOptions>; protected readonly modelOptions: LeafModelOptions; constructor(options: Readonly<LeafCoordinatorOptions>, ipc: IPCServer, logger: Logger, stopCondition?: StopCondition); protected preprocessData(): Promise<PreprocessResult>; /** Possibly implement a run name function */ protected getRunName(): string; } //# sourceMappingURL=LeafCoordinator.d.ts.map