Balanced Accuracy

Balanced Accuracy is another metric that is often used to evaluate the performance of binary classifiers, especially on imbalanced datasets.

Standard accuracy, as we discussed earlier, can be misleading on imbalanced datasets. For instance, if you have a dataset where 95% of the instances belong to Class A and only 5% belong to Class B, a naive classifier that always predicts Class A will be 95% accurate. However, this isn't particularly helpful, as it completely fails to identify the instances of Class B, which may be the event of interest.

Balanced accuracy addresses this issue by averaging the proportion of correct predictions in each class separately, and then taking their average. It essentially calculates accuracy for each class individually and then averages them, treating all classes equally, regardless of their size.

Mathematically, balanced accuracy is defined as:

Balanced Accuracy = (Sensitivity + Specificity) / 2


Sensitivity (also known as True Positive Rate, or Recall) is the proportion of actual positive cases (Class B in our example) that the classifier correctly identified.
Sensitivity = True Positives / (True Positives + False Negatives)

Specificity (also known as True Negative Rate) is the proportion of actual negative cases (Class A in our example) that the classifier correctly identified.
Specificity = True Negatives / (True Negatives + False Positives)

By balancing the measures of sensitivity and specificity, the balanced accuracy metric provides a more fair evaluation of classifier performance, particularly when dealing with imbalanced datasets.