Model predictions are uploaded in a Model Run. A Model Run is a container for the predictions, annotations and metrics of a specific experiment in your ML model development cycle.
Every model prediction can be uploaded with a confidence score. Besides, given the predictions and annotations in a Model Run, Labelbox calculates some auto-generated metrics.
Besides, users can upload custom scalar metrics to the Model Run.
To upload predictions in a Model Run, you'll need to have a set of data rows to upload the predictions on. If you do not already have a set of data rows, you'll need to import data rows in a dataset in Catalog.
To learn how to import data rows via the Python SDK (Step 1), see this tutorial.
To learn more about creating data rows, see Create a dataset in Catalog.
When you create a Model - to upload a set of predictions - you'll need to specify the ontology (also called taxonomy) that corresponds to the set of predictions. You may want to re-use an ontology that already exists in Labelbox - e.g. an ontology already used for a labeling project. Or, you may want to use an ontology for your model predictions that does not exist in Labelbox yet. In the latter case, you'll need to create an ontology.
To learn how to create an ontology via the Python SDK (Step 2), see this tutorial.
To learn more about creating ontologies, see Create/modify ontologies.
Before you can upload your predictions, you'll need to make sure you have a Model and a Model Run to contain them. You cannot simply upload predictions without specifying which Model and Model Run they'll be associated with. A Model is attached to an ontology: it defines the predictions that can be contained in it. A Model can contain any number of Model Runs. Each Model Run corresponds to an experiment in your ML model development cycle. If you do not already have a Model and a Model Run, you will need to create a Model, then attach the ontology that fits your predictions, and finally create a Model Run.
To learn how to set up a Model and Model Run via the Python SDK (step 3), see this tutorial.
Now that you have your Model, Model Run and ontology configured, you'll need to send a set of data rows to the Model Run.
To learn how to send data rows to a Model Run via the Python SDK (Step 4), see this tutorial.
After you have successfully configured your Model Run with the correct ontology and sent data rows to the Model Run, you can optionally send annotations to the Model Run.
To learn how to send annotations to a Model Run via the Python SDK (Step 5), see this tutorial.
Uploading confidence scores with each model predictions
Labelbox now supports specifying the confidence score associated with every model prediction. It is optional.
After you have successfully configured your Model Run with the correct ontology and sent data rows (and optionally annotations) to the Model Run, you are ready to prepare the predictions payload. To do this, you will need to use our Python SDK. Each imported prediction will need to reference a feature class within the ontology (see step 2 above) and a specific data row ID. Labelbox support two formats for the predictions payload: NDJSON and Python Annotation types.
Use the table below to find a prediction payload sample for your asset type. The "-" symbol indicates that importing predictions to a Model Run is not supported for that prediction/asset type combination. To learn how to create a prediction payload (Step 6), see this tutorial.
|Bounding box||Payload||N/A||N/A||Coming soon||Coming soon||N/A||N/A||-|
|Polyline||Payload||-||N/A||N/A||Coming soon||N/A||N/A||Coming soon|
|Segmentation mask||Payload||N/A||N/A||N/A||-||N/A||N/A||Coming soon|
|Classification - Radio||Payload||Coming soon||Payload||Coming soon||Coming soon||Coming soon||-||-|
|Classification - Checklist||Payload||Coming soon||Payload||Coming soon||Coming soon||Coming soon||-||-|
|Classification - Free-form text||Payload||-||Payload||Coming soon||Coming soon||Coming soon||-||-|
Relationships and Segments cannot be imported as predictions in a Model Run. Import predictions in a Model Run is not supported for HTML assets.
After you have constructed your predictions payload, you are ready to upload the it to the Model Run. To do this you will need to use our Python SDK. See the table in the next section to find the end-to-end tutorial that most closely fits your use case.
To learn how to upload a prediction payload via the SDK (Step 7), see this tutorial.
Check out these end-to-end Python tutorials to see how to import predictions to a Model Run (Steps 1-7).
- Make sure the predictions are in the proper format. Use the charts above to determine whether a prediction type is supported for the asset type you are working with.
Updated about 2 months ago