MCPcopy Create free account
hub / github.com/NJUNLP/GTS / score_opinion

Method score_opinion

code/BertModel/utils.py:140–157  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

138 return precision, recall, f1
139
140 def score_opinion(self):
141 assert len(self.predictions) == len(self.goldens)
142 golden_set = set()
143 predicted_set = set()
144 for i in range(self.data_num):
145 golden_opinion_spans = self.get_spans(self.goldens[i], self.sen_lengths[i], self.tokens_ranges[i], 2)
146 for spans in golden_opinion_spans:
147 golden_set.add(str(i) + '-' + '-'.join(map(str, spans)))
148
149 predicted_opinion_spans = self.get_spans(self.predictions[i], self.sen_lengths[i], self.tokens_ranges[i], 2)
150 for spans in predicted_opinion_spans:
151 predicted_set.add(str(i) + '-' + '-'.join(map(str, spans)))
152
153 correct_num = len(golden_set & predicted_set)
154 precision = correct_num / len(predicted_set) if len(predicted_set) > 0 else 0
155 recall = correct_num / len(golden_set) if len(golden_set) > 0 else 0
156 f1 = 2 * precision * recall / (precision + recall) if (precision + recall) > 0 else 0
157 return precision, recall, f1
158
159 def score_uniontags(self):
160 assert len(self.predictions) == len(self.goldens)

Callers 2

evalFunction · 0.95
evalFunction · 0.80

Calls 1

get_spansMethod · 0.95

Tested by

no test coverage detected