xshubhamx commited on
Commit
8d78ceb
Β·
verified Β·
1 Parent(s): d773ac8

Update multiclass_specificity_weighted.py

Browse files
Files changed (1) hide show
  1. multiclass_specificity_weighted.py +6 -7
multiclass_specificity_weighted.py CHANGED
@@ -86,19 +86,19 @@ class multiclass_specificity_weighted(evaluate.Metric):
86
  # TODO: Download external resources if needed
87
  pass
88
 
89
- def _compute(self, y_pred, y_true):
90
  import numpy as np
91
  """Returns the scores"""
92
  # TODO: Compute the different scores of the module
93
- unique_classes = np.unique(y_true)
94
  num_classes = len(unique_classes)
95
  specificity = np.zeros(num_classes)
96
- class_counts = np.bincount(y_true)
97
- total_samples = len(y_true)
98
 
99
  for i, class_label in enumerate(unique_classes):
100
- true_negative = sum((y_true != class_label) & (y_pred != class_label))
101
- total_negative = sum(y_true != class_label)
102
 
103
  if total_negative != 0:
104
  specificity[i] = true_negative / total_negative
@@ -106,7 +106,6 @@ class multiclass_specificity_weighted(evaluate.Metric):
106
  specificity[i] = 0.0
107
 
108
  weighted_specificity = np.sum(specificity * (class_counts / total_samples))
109
- macro_specificity = np.mean(specificity)
110
 
111
  return {
112
  "weighted_specificity": weighted_specificity,
 
86
  # TODO: Download external resources if needed
87
  pass
88
 
89
+ def _compute(self, predictions, references):
90
  import numpy as np
91
  """Returns the scores"""
92
  # TODO: Compute the different scores of the module
93
+ unique_classes = np.unique(predictions)
94
  num_classes = len(unique_classes)
95
  specificity = np.zeros(num_classes)
96
+ class_counts = np.bincount(predictions)
97
+ total_samples = len(predictions)
98
 
99
  for i, class_label in enumerate(unique_classes):
100
+ true_negative = sum((predictions != class_label) & (references != class_label))
101
+ total_negative = sum(predictions != class_label)
102
 
103
  if total_negative != 0:
104
  specificity[i] = true_negative / total_negative
 
106
  specificity[i] = 0.0
107
 
108
  weighted_specificity = np.sum(specificity * (class_counts / total_samples))
 
109
 
110
  return {
111
  "weighted_specificity": weighted_specificity,