Ejemplo n.º 1
0
 def update_metrics(self, batch: Dict[str, Any],
                    output: Union[torch.Tensor, Dict[str, torch.Tensor],
                                  Iterable[torch.Tensor], Any],
                    prediction: Dict[str, Any], metric: Union[MetricDict,
                                                              Metric]):
     BiaffineSemanticDependencyParser.update_metric(self, *prediction,
                                                    batch['arc'],
                                                    batch['rel_id'],
                                                    output[1], output[-1],
                                                    metric, batch)
Ejemplo n.º 2
0
 def update_metric(self,
                   arc_preds,
                   rel_preds,
                   arcs,
                   rels,
                   mask,
                   puncts,
                   metric,
                   batch=None):
     super().update_metric(arc_preds[0], rel_preds[0], arcs, rels, mask,
                           puncts, metric['1st'], batch)
     puncts = BiaffineSemanticDependencyParser.convert_to_3d_puncts(
         puncts, batch['mask_2nd'])
     # noinspection PyCallByClass
     BiaffineSemanticDependencyParser.update_metric(
         self, arc_preds[1], rel_preds[1], batch['arc_2nd'],
         batch['rel_2nd_id'], batch['mask_2nd'], puncts, metric['2nd'],
         batch)