Spaces:
Running
Running
Update evaluation/evaluator.py
Browse files- evaluation/evaluator.py +16 -1
evaluation/evaluator.py
CHANGED
@@ -1,6 +1,17 @@
|
|
1 |
import json
|
2 |
from evaluation.evaluate_utils.evaluate_factory import get_evaluator
|
|
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
5 |
def fix_ans(answer):
|
6 |
|
@@ -89,6 +100,10 @@ def question_scorer(prediction, gold_answer):
|
|
89 |
if not run_eval:
|
90 |
return 0.
|
91 |
|
|
|
|
|
|
|
|
|
92 |
metric_eval = get_evaluator(evaluator)
|
93 |
accuracy = metric_eval(prediction, gold_answer)
|
94 |
-
return accuracy
|
|
|
1 |
import json
|
2 |
from evaluation.evaluate_utils.evaluate_factory import get_evaluator
|
3 |
+
import numpy as np
|
4 |
|
5 |
+
def find_isnan(samp):
|
6 |
+
|
7 |
+
try:
|
8 |
+
if np.isnan(samp):
|
9 |
+
return True
|
10 |
+
else:
|
11 |
+
return False
|
12 |
+
except:
|
13 |
+
return False
|
14 |
+
|
15 |
|
16 |
def fix_ans(answer):
|
17 |
|
|
|
100 |
if not run_eval:
|
101 |
return 0.
|
102 |
|
103 |
+
has_ans = 1.
|
104 |
+
if ((type(x['prediction']) != float and len(x["prediction"]) == 0) or find_isnan(x['prediction'])):
|
105 |
+
has_ans = 0.
|
106 |
+
|
107 |
metric_eval = get_evaluator(evaluator)
|
108 |
accuracy = metric_eval(prediction, gold_answer)
|
109 |
+
return accuracy, has_ans
|