MCPcopy Create free account
hub / github.com/RingBDStack/GDAP / eval_pred

Function eval_pred

extraction/extraction_metrics.py:18–42  ·  view source on GitHub ↗
(predict_parser, gold_list, pred_list, text_list=None, raw_list=None)

Source from the content-addressed store, hash-verified

16
17
18def eval_pred(predict_parser, gold_list, pred_list, text_list=None, raw_list=None):
19
20 well_formed_list, counter = predict_parser.decode(
21 gold_list, pred_list, text_list, raw_list)
22
23 event_metric = Metric()
24 role_metric = Metric()
25
26 for instance in well_formed_list:
27 event_metric.count_instance(instance['gold_event'],
28 instance['pred_event'])
29 role_metric.count_instance(instance['gold_role'],
30 instance['pred_role'],
31 verbose=False)
32
33 trigger_result = event_metric.compute_f1(prefix='trigger-')
34 role_result = role_metric.compute_f1(prefix='role-')
35
36 result = dict()
37 result.update(trigger_result) # 将trigger_result 添加到result中
38 result.update(role_result) # 将role_result 添加到result中
39 result['AVG-F1'] = trigger_result.get('trigger-F1', 0.) + \
40 role_result.get('role-F1', 0.)
41 result.update(counter)
42 return result
43
44
45def get_extract_metrics(pred_lns: List[str], tgt_lns: List[str], label_constraint: EventSchema, decoding_format='tree'):

Callers 1

get_extract_metricsFunction · 0.85

Calls 4

count_instanceMethod · 0.95
compute_f1Method · 0.95
MetricClass · 0.90
decodeMethod · 0.45

Tested by

no test coverage detected