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

Method score_aspect

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

Source from the content-addressed store, hash-verified

119 return triplets
120
121 def score_aspect(self):
122 assert len(self.predictions) == len(self.goldens)
123 golden_set = set()
124 predicted_set = set()
125 for i in range(self.data_num):
126 golden_aspect_spans = self.get_spans(self.goldens[i], self.sen_lengths[i], self.tokens_ranges[i], 1)
127 for spans in golden_aspect_spans:
128 golden_set.add(str(i) + '-' + '-'.join(map(str, spans)))
129
130 predicted_aspect_spans = self.get_spans(self.predictions[i], self.sen_lengths[i], self.tokens_ranges[i], 1)
131 for spans in predicted_aspect_spans:
132 predicted_set.add(str(i) + '-' + '-'.join(map(str, spans)))
133
134 correct_num = len(golden_set & predicted_set)
135 precision = correct_num / len(predicted_set) if len(predicted_set) > 0 else 0
136 recall = correct_num / len(golden_set) if len(golden_set) > 0 else 0
137 f1 = 2 * precision * recall / (precision + recall) if (precision + recall) > 0 else 0
138 return precision, recall, f1
139
140 def score_opinion(self):
141 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