Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:Evidentlyai Evidently Legacy Classification Preset

From Leeroopedia
Knowledge Sources
Domains Machine Learning, Classification, Model Monitoring
Last Updated 2026-02-14 12:00 GMT

Overview

The ClassificationPreset class is a metric preset that bundles a comprehensive set of classification performance metrics for use in Evidently reports and test suites.

Description

ClassificationPreset extends MetricPreset and generates a curated list of classification-related metrics via its generate_metrics method. The preset always includes the following core metrics:

  • ClassificationQualityMetric -- overall classification quality scores
  • ClassificationClassBalance -- class distribution analysis
  • ClassificationConfusionMatrix -- confusion matrix visualization
  • ClassificationQualityByClass -- per-class quality metrics

When prediction probability columns are available in the data definition (i.e., prediction_probas is not None), the preset additionally includes:

  • ClassificationClassSeparationPlot -- class separation visualization
  • ClassificationProbDistribution -- probability distribution analysis
  • ClassificationRocCurve -- ROC curve
  • ClassificationPRCurve -- precision-recall curve
  • ClassificationPRTable -- precision-recall table

Finally, ClassificationQualityByFeatureTable is always appended for feature-level quality analysis, using the optionally specified column list.

The preset supports configurable probas_threshold and k parameters that are passed through to the relevant metrics.

Usage

Use this preset when you want a one-line setup for comprehensive classification model performance monitoring. It is suitable for binary and multiclass classification tasks and automatically adapts to whether probability predictions are available.

Code Reference

Source Location

Signature

class ClassificationPreset(MetricPreset):
    class Config:
        type_alias = "evidently:metric_preset:ClassificationPreset"

    columns: Optional[List[str]]
    probas_threshold: Optional[float]
    k: Optional[int]

    def __init__(self, columns: Optional[List[str]] = None,
                 probas_threshold: Optional[float] = None,
                 k: Optional[int] = None): ...

    def generate_metrics(self, data_definition: DataDefinition,
                         additional_data: Optional[Dict[str, Any]]) -> List[AnyMetric]: ...

Import

from evidently.legacy.metric_preset.classification_performance import ClassificationPreset

I/O Contract

Inputs

Name Type Required Description
columns Optional[List[str]] No List of columns for feature-level quality analysis. If None, all columns are used.
probas_threshold Optional[float] No Probability threshold for converting predicted probabilities to class labels
k Optional[int] No Number of top classes to consider (for top-k classification metrics)

Outputs

Name Type Description
metrics List[AnyMetric] A list of 5 to 10 classification metric instances depending on whether probability columns are present in the data definition

Usage Examples

from evidently.legacy.metric_preset.classification_performance import ClassificationPreset

# Basic usage with defaults
preset = ClassificationPreset()

# With a custom probability threshold and specific columns
preset = ClassificationPreset(
    columns=["feature_1", "feature_2", "feature_3"],
    probas_threshold=0.7,
    k=3
)

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment