Skip to content

Introduction to SAIL Models

Dhaval Salwala edited this page Jun 24, 2023 · 6 revisions

SAIL Model Framework

SAIL provides wrappers for machine learning models created using popular machine learning (ML) libraries. It wraps ML models and exposes Scikit-learn like APIs for uniform experiences across the SAIL Ecosystem - Models, Training and Pipelines.

The SAIL Model is an abstract layer that enforces and provides standard APIs to access ML models built using libraries like PyTorch, Keras, River and Scikit-learn. It follows Scikit-learn-like terminology and routines and provides a consistent experience across cross-library model training. The Model API inside the SAIL Pipeline complements the SAIL Model with Distributed Hyper-parameter Optimisation (HPO), model selection and incremental training operations. It has broad applicability with choices of fitting the estimator from scratch or partially fitting a trained estimator on the new data.

SAIL contains wrappers for:

  • River
  • TensorFlow / Keras
  • PyTorch
  • SAIL native models
  • Ensemble models via Scikit-multiflow

Once wrapped inside a SAIL wrapper, the ML model can be used interchangeably with SAIL Pipelines, SAIL AutoML, and distributed training / tuning using the Ray API.

Model Implementations

SAIL models are available at sail/models

Serialisation

SAIL models are injected with serialisation APIs via a mixin class at the base level. Hence, all SAIL models have save_model and load_model routines by default. Please check tests classes in tests/models.

Clone this wiki locally