CrossValidationReport.metrics.log_loss#

CrossValidationReport.metrics.log_loss(*, data_source='test', X=None, y=None, aggregate=('mean', 'std'))[source]#

Compute the log loss.

Parameters:
data_source{“test”, “train”, “X_y”}, default=”test”

The data source to use.

  • “test” : use the test set provided when creating the report.

  • “train” : use the train set provided when creating the report.

  • “X_y” : use the provided X and y to compute the metric.

Xarray-like of shape (n_samples, n_features), default=None

New data on which to compute the metric. By default, we use the validation set provided when creating the report.

yarray-like of shape (n_samples,), default=None

New target on which to compute the metric. By default, we use the target provided when creating the report.

aggregate{“mean”, “std”}, list of such str or None, default=(“mean”, “std”)

Function to aggregate the scores across the cross-validation splits. None will return the scores for each split.

Returns:
pd.DataFrame

The log-loss.

Examples

>>> from sklearn.datasets import load_breast_cancer
>>> from sklearn.linear_model import LogisticRegression
>>> from skore import CrossValidationReport
>>> X, y = load_breast_cancer(return_X_y=True)
>>> classifier = LogisticRegression(max_iter=10_000)
>>> report = CrossValidationReport(classifier, X=X, y=y, cv_splitter=2)
>>> report.metrics.log_loss()
        LogisticRegression
                    mean       std
Metric
Log loss            0.14...  0.03...