InstanceEngine.evaluate_cases

InstanceEngine.evaluate_cases(
    model_name=None,
    split='validation',
    *,
    decode=None,
    group_by=None,
)

One row per case instead of one row per model, for one decoding.

One decoding rather than all of them, so a row stays one case and summarise_cases keeps meaning what it means. The table across decodings is evaluate’s job; this one answers “on which case does it fail”, and the object counts beside each score are what say whether a case was mislabelled or shattered.

Parameters

Name Type Description Default
model_name str | None Which model, by name. Defaults to the first. None
split str Which data to score on. 'validation'
decode str | None Which decoding, by name. Defaults to the model’s first, which is the separation’s own rather than the yardstick. None
group_by str | None A pattern picking a group out of each case’s name, pooling a group’s objects into one score the way a volume’s slices would be. None

Returns

Name Type Description
list[dict[str, Any]] One row per case, or per group.