BalancedAccuracy¶
Balanced accuracy.
Balanced accuracy is the average of recall obtained on each class. It is used to deal with imbalanced datasets in binary and multi-class classification problems.
Parameters¶
-
cm
Type → confusion.ConfusionMatrix | None
Default →
None
This parameter allows sharing the same confusion matrix between multiple metrics. Sharing a confusion matrix reduces the amount of storage and computation time.
Attributes¶
-
bigger_is_better
Indicate if a high value is better than a low one or not.
-
requires_labels
Indicates if labels are required, rather than probabilities.
-
works_with_weights
Indicate whether the model takes into consideration the effect of sample weights
Examples¶
from river import metrics
y_true = [True, False, True, True, False, True]
y_pred = [True, False, True, True, True, False]
metric = metrics.BalancedAccuracy()
for yt, yp in zip(y_true, y_pred):
metric = metric.update(yt, yp)
metric
BalancedAccuracy: 62.50%
y_true = [0, 1, 0, 0, 1, 0]
y_pred = [0, 1, 0, 0, 0, 1]
metric = metrics.BalancedAccuracy()
for yt, yp in zip(y_true, y_pred):
metric = metric.update(yt, yp)
metric
BalancedAccuracy: 62.50%
Methods¶
get
Return the current value of the metric.
is_better_than
Indicate if the current metric is better than another one.
Parameters
- other
revert
Revert the metric.
Parameters
- y_true
- y_pred
- sample_weight — defaults to
1.0
update
Update the metric.
Parameters
- y_true
- y_pred
- sample_weight — defaults to
1.0
works_with
Indicates whether or not a metric can work with a given model.
Parameters
- model — 'base.Estimator'