[model]
Model interfacing submodule, defining an API an derived applications.
This declearn submodule provides with:
- Model and Vector abstractions, used as an API to design FL algorithms.
- Submodules implementing interfaces to various frameworks and models.
Default Submodules
The automatically-imported submodules implemented here are:
- api: Model and Vector abstractions' defining module.
- sklearn:
Scikit-Learn based or oriented tools
- NumpyVector Vector for numpy array data structures.
- SklearnSGDModel Model for scikit-learn's SGDClassifier and SGDRegressor.
Optional Submodules
The optional-dependency-based submodules that may be manually imported are:
- haiku:
Jax- and Haiku-interfacing tools.
- HaikuModel: Model to wrap a haiku-transformable model function.
- JaxNumpyVector: Vector for jax array data structures.
- tensorflow:
TensorFlow-interfacing tools
- TensorflowModel: Model to wrap any tensorflow-keras Layer model.
- TensorflowOptiModule: Hacky OptiModule to wrap a keras Optimizer.
- TensorflowVector: Vector for tensorflow Tensor and IndexedSlices.
- torch:
PyTorch-interfacing tools
- TorchModel: Model to wrap any torch Module model.
- TorchOptiModule: Hacky OptiModule to wrap a torch Optimizer.
- TorchVector: Vector for torch Tensor objects.