Closed OStars closed 1 year ago
I noticed the evaluation scores in "eval_end2endEE.py" are calculated like this:
scores = { 'tri_id': (gold_tri_id_num, pred_tri_id_num, match_tri_id_num) + compute_f1(gold_tri_id_num, pred_tri_id_num, match_tri_id_num), 'tri_cls': (gold_tri_cls_num, pred_tri_cls_num, match_tri_cls_num) + compute_f1(gold_tri_cls_num, pred_tri_cls_num, match_tri_cls_num), 'arg_id': (gold_arg_id_num, pred_arg_id_num, match_arg_id_num) + compute_f1(gold_arg_id_num, pred_arg_id_num, match_arg_id_num), 'arg_cls': (gold_arg_cls_num, pred_arg_cls_num, match_arg_cls_num) + compute_f1(gold_arg_cls_num, pred_arg_cls_num, match_arg_cls_num), }
But the function compute_f1 is defined as compute_f1(predicted, gold, matched) which means predited is the first arg and gold is the second arg. So the evaluation scores in "eval_end2endEE.py" should be calculated like this:
compute_f1
compute_f1(predicted, gold, matched)
predited
gold
scores = { 'tri_id': (gold_tri_id_num, pred_tri_id_num, match_tri_id_num) + compute_f1(pred_tri_id_num, gold_tri_id_num, match_tri_id_num), 'tri_cls': (gold_tri_cls_num, pred_tri_cls_num, match_tri_cls_num) + compute_f1(pred_tri_cls_num, gold_tri_cls_num, match_tri_cls_num), 'arg_id': (gold_arg_id_num, pred_arg_id_num, match_arg_id_num) + compute_f1(pred_arg_id_num, gold_arg_id_num, match_arg_id_num), 'arg_cls': (gold_arg_cls_num, pred_arg_cls_num, match_arg_cls_num) + compute_f1(pred_arg_cls_num, gold_arg_cls_num, match_arg_cls_num), }
Thanks for pointing out this. We just fixed it.
I noticed the evaluation scores in "eval_end2endEE.py" are calculated like this:
But the function
compute_f1
is defined ascompute_f1(predicted, gold, matched)
which meanspredited
is the first arg andgold
is the second arg. So the evaluation scores in "eval_end2endEE.py" should be calculated like this: