Train a Mobile Model
Use SmartML to train a model for mobile device deployment
SmartML supports generating Tensorflow Lite (TFLite) models that can be deployed to mobile devices. In order to run a neural network on a mobile device, the device will need to supply runtime for interpreting and executing the neural network computations.
If your account supports mobile model training, the option can be configured when adding a model or model version.
1. After entering a model name, select "Mobile (TF_Lite)" from the Model Type Options
2. Make your dataset and label selections for training, then scroll down and toggle open the SmartML Hyperparameters to view the advanced settings.
3. Under Backbone, select the desired "base" model, the object detection model that will be retrained with your custom dataset. This defaults to EfficientDet Lite 2. See TensorFlow's Quickstart for performance comparison of the EfficientDet Lite models.
Select the backbone to train your mobile model
4. Enter the desired Learning Rate. This value defaults to 0.0001 which may be too low for mobile model training.
5. Once you are satisfied with your model training settings, scroll to the bottom and click "Save and Start Training".
Your model will be queued for training. You will receive a notification that your model is ready.
After successfully training your mobile model, you can download your model output files.
From the model version details, click "Download Model" at the top right.
Download your model from the "Model Performance" tab in Model Version Details.
A zip containing your model output will be downloaded. This includes:
config.yaml- the training configuration after all defaults and overrides have been applied
events.*files - TensorBoard logging
jobstate.json- the job state file
labelmap.json- maps the model’s detection indices to label names (this is already hardcoded into the model as well)
log.txt- training log
saved_model.zip- the model in Tensorflow saved_model format before converting to TFLite
tf_config.yaml- the config settings used internally in the TensorFlow training loop