February 12, 2021 (Python SDK)

We are committed to your success, that's why we are always improving our platform. You can now integrate training and prediction calls within the Python pipeline.

Run model training

To run a model training:

sa.run_training(
  project = ["city_batch1","city_batch2"], 
  base_model = "Instance Segmentation (trained on COCO)", 
  model_name = "Cityscapes Segmentation Model", 
  model_description = "Model Finetuned on Cityscapes", 
  task = "Instance Segmentation for Vector Projects", 
  hyperparameters = {"base_lr": 0.02, "images_per_batch": 8},
  log = True)

Adjust the default values of the training hyperparameters based on the following table:

ParameterDescriptionDefault Value
instance_typeThe type of the devices (GPUs) available to train your model. You have two options: One GPU of type T4 with 16GB memory or 4 GPUs of the same type1 x T4 16 GB
num_epochsThe number of times the dataset undergoes training. The epoch count ranges from 10 to 200.12
images_per_batchNumber of images fed to network per training iteration per GPU4
base_lrThe model’s initial learning step. The learning rate ranges from 0 to 1.0.02
batch_per_imageThe number of regions of interest (ROI) per image. The ROI ranges from 2 to 512 and is a power of 2. The smaller the ROI, the faster the learning rate. Image (ROIs) per batch works only with Instance segmentation.512
evaluation_periodThe number of epochs to run evaluation periodically. If the epoch count is 10 and the evaluation period is 2, it means that the dataset will undergo an evaluation every 2 epochs. The user will be reported of the best model that resulted from the evaluation period.12
dataset_split_ratioThe number of images that need to be trained to the number of images that need to be tested. The train/test split ratio ranges from 0 to 100.80
gammaGamma is needed for the learning rate. Its value ranges from 0 to 1, and it will be multiplied with the learning rate.0.5
stepsList of epoch counts to decrease learning rate gamma times[ 5 ]

Run smart prediction

To run smart prediction on a model:

project_name = "city_batch3"

images = sa.search_images(
  project = project_name,
	annotation_status = "NotStarted")

succeeded, failed = sa.run_prediction(
  project = project_name, 
  images_list = images,
  model = "Cityscapes Segmentation Mode")

This function logs the progress bar which shows the number of successful predicted images.

Run smart segmentation

To run smart segmentation on a model:

succeeded, failed = sa.run_segmentation(
  project = project_name, 
  images_list = images,
  model = "generic")

There are two segmentation model available: generic and autonomous. Choose the option that best suits your use case.

Other changes and improvements

With Python SDK, you can also:

  • Stop model trainings.
  • Download, compare, and delete models.

What do you think of the updates? We’d love to hear your feedback.

We have a blog! Follow us to stay updated.