p2pfl.learning.frameworks.pytorch.lightning_model moduleΒΆ

Convolutional Neural Network (for MNIST) with PyTorch Lightning.

class p2pfl.learning.frameworks.pytorch.lightning_model.LightningModel(model, params=None, num_samples=None, contributors=None, additional_info=None, compression=None)[source]ΒΆ

Bases: P2PFLModel

P2PFL model abstraction for PyTorch Lightning.

Parameters:
  • model (LightningModule) – The model to encapsulate.

  • params (Union[list[ndarray], bytes, None]) – The parameters of the model.

  • num_samples (Optional[int]) – The number of samples.

  • contributors (Optional[list[str]]) – The contributors of the model.

  • additional_info (Optional[dict[str, Any]]) – Additional information.

  • compression (Optional[dict[str, dict[str, Any]]]) – Optional dictionary for compression settings.

get_framework()[source]ΒΆ

Retrieve the model framework name.

Return type:

str

Returns:

The name of the model framework.

get_parameters()[source]ΒΆ

Get the parameters of the model.

Return type:

List[ndarray]

Returns:

The parameters of the model

set_parameters(params)[source]ΒΆ

Set the parameters of the model.

Parameters:

params (Union[List[ndarray], bytes]) – The parameters of the model.

Raises:

ModelNotMatchingError – If parameters don’t match the model.

Return type:

None