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

Function score_opinion

code/NNModel/utils.py:62–79  ·  view source on GitHub ↗
(predicted, golden, lengths, ignore_index=-1)

Source from the content-addressed store, hash-verified

60
61
62def score_opinion(predicted, golden, lengths, ignore_index=-1):
63 assert len(predicted) == len(golden)
64 golden_set = set()
65 predict_set = set()
66 for i in range(len(golden)):
67 golden_spans = get_opinions(golden[i], lengths[i], ignore_index)
68 for l, r in golden_spans:
69 golden_set.add('-'.join([str(i), str(l), str(r)]))
70
71 predict_spans = get_opinions(predicted[i], lengths[i], ignore_index)
72 for l, r in predict_spans:
73 predict_set.add('-'.join([str(i), str(l), str(r)]))
74
75 correct_num = len(golden_set & predict_set)
76 precision = correct_num / len(predict_set) if len(predict_set) > 0 else 0
77 recall = correct_num / len(golden_set) if len(golden_set) > 0 else 0
78 f1 = 2 * precision * recall / (precision + recall) if (precision + recall) > 0 else 0
79 return precision, recall, f1
80
81
82def find_pair(tags, aspect_spans, opinion_spans):

Callers

nothing calls this directly

Calls 1

get_opinionsFunction · 0.70

Tested by

no test coverage detected