aisquared.utils package
Submodules
aisquared.utils.utils module
- aisquared.utils.utils.get_model(model_type: str, input_shape: int | tuple, num_outputs: int, output_activation: str, size: str = 'small', vocab_size: None | int = None)[source]
Get a pre-configured model for different use cases
- Parameters:
model_type (str) – Either ‘cv’, ‘nlp_embedding’, or ‘fc’, defining the model type
input_shape (int or tuple of int) – The input shape to the model
num_outputs (int) – The output shape of the model
output_activation (str or keras activation function) – The activation of the final layer of the model
size (str (default 'small')) – One of either ‘small’, ‘medium’, or ‘large’
vocab_size (str or None (default None)) – Size of the vocab, if model_type is ‘nlp_embedding’
- Returns:
model – The model
- Return type:
TensorFlow Keras model
- aisquared.utils.utils.mimic_model(trained_model: BaseEstimator, nnet: Model, training_data: ndarray, test_data: ndarray, test_labels: ndarray, problem_type: str, loss: str, metrics: str | list, optimizer: str, mimic_proba: bool = False, retention: float = 0.9, batch_size: int = 32, epochs: int = 100, starting_sparsification: int = 0, max_sparsification: int = 99, sparsification_rate: int = 5) Model [source]
Train a sparse neural network to mimic a scikit-learn model
- Parameters:
trained_model (sklearn model) – The model that is already trained
nnet (TensorFlow keras Model) – The neural network to train to mimic the trained model
training_data (array or array-like) – The input data that was used to train the trained model
test_data (array or array-like) – The input data to be used for testing
test_labels (array or array-like) – The output data used in testing
problem_type (str) – The type of problem, either ‘classification’ or ‘regression’
loss (str or keras loss function) – The loss to use
metrics (str, function or list of str, function) – Metrics to measure
optimizer (str or keras optimizer) – The optimizer to use
mimic_proba (bool (default False)) – For classification, mimic the probability outputs
retention (float (default 0.9)) – The retention of performance to allow further pruning
batch_size (int (default 32)) – The batch size to use while training
epochs (int (default 100)) – The number of epochs (if early stopping is not met beforehand)
starting_sparsification (int (default 0)) – The starting model sparsification
max_sparsification (int (default 99)) – The maximum sparsification to allow
sparsification_rate (int (default 5)) – The sparsification rate when invoked
- Returns:
nnet – The trained model
- Return type:
TensorFlow keras Model
Module contents
Additional utilities to use with the aisquared package. These utilities currently consist of two functions, the mimic_model and get_model functions. They utilize functionality that exists in our open source package BeyondML to train teacher-student models
To see in-depth examples of how to use these functions, please visit our GitHub repository at https://github.com/AISquaredInc/MimicModelExamples