xshubhamx commited on
Commit
6690a46
·
verified ·
1 Parent(s): 4ba54c4

Update multiclass_specificity_macro.py

Browse files
Files changed (1) hide show
  1. multiclass_specificity_macro.py +2 -19
multiclass_specificity_macro.py CHANGED
@@ -87,25 +87,8 @@ class multiclass_specificity_macro(evaluate.Metric):
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
105
- else:
106
- specificity[i] = 0.0
107
- macro_specificity = np.mean(specificity)
108
 
109
  return {
110
- "macro_specificity": macro_specificity,
111
  }
 
87
  pass
88
 
89
  def _compute(self, predictions, references):
90
+ from imblearn.metrics import specificity_score
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
 
92
  return {
93
+ "macro_specificity": specificity_score(references, predictions, average = "macro")
94
  }