Links

Multi-Label Classification

Multi-label classification models predict multiple outcomes. In Aporia, these models are represented with the multi-label model type.
Examples of multi-label classification problems:
  • Is this song sad, happy, funny, rock, jazz, or all simultaneously?
  • Does this movie belong to one or more of the 'romantic', 'comedy', 'documentary', 'thriller' categories, or all simultaneously?

Integration

To monitor a multi-label model, create a new model version with a dict field where keys are different labels and values are the probabilities for each label:
apr_model = aporia.create_model_version(
model_id="<MODEL_ID>",
model_version="v1",
model_type="multi-label"
features={
...
},
predictions={
"genres": "dict"
},
)
Next, connect to a data source or manually log predictions like so:
apr_model.log_prediction(
id="<PREDICTION_ID>",
features={
...
},
predictions={
"genres": {
"action": 0.8,
"horror": 0.7,
"thriller": 0.9,
"drama": 0.2,
...
}
},
)
If you don't have probabilities for each label, you can log zeros and ones instead. To log actuals for this prediction:
apr_model.log_actuals(
id="<PREDICTION_ID>",
actuals={
"genres": {
"action": 1.0,
"horror": 1.0,
"thriller": 1.0,
"drama": 0.0,
...
}
},
)
You can also log multiple dict fields if you have a multi-multi-label model :)