Models
Table of Contents
models.model
Abstract class for models
Model Objects
train
@abstractmethod
def train(trainloader: DataLoader,
client_name: str,
epochs: int,
verbose: bool = False) -> Dict
Method for running a training round
Arguments:
trainloader: Data loader for training dataclient_name: Name of the current clientepochs: Number of epochs to trainverbose: Whether to print verbose output
test
@abstractmethod
def test(testloader: DataLoader,
client_name: str,
verbose: bool = False) -> Tuple[float, float, dict]
Method for running a test round
Arguments:
testloader: Data loader for test dataclient_name: Name of the current clientverbose: Whether to print verbose output
get_net
Returns the current deep network
get_size
Returns the size of the current deep network
models.resnet18
Resnet18 model for federated learning
Resnet18 Objects
Resnet18 model for federated learning
get_net
Returns the current deep network
Returns:
The current deep network
get_size
Returns the size of the current deep network
Returns:
The size of the current deep network
train
Method for running a training round using cross entropy loss
Arguments:
trainloader: Data loader for training dataclient_name: Name of the current clientepochs: Number of epochs to trainverbose: Whether to print verbose output
Returns:
Metrics of the training round
test
def test(testloader: DataLoader,
client_name: str,
verbose: bool = False) -> Tuple[float, float, dict]
Method for running a test round
Arguments:
testloader: Data loader for test dataclient_name: Name of the current clientverbose: Whether to print verbose output
Returns:
Metrics of the test round