INNER CODE UNIT · Python

get_geometric_data

IBM/transition-amr-parser · src/ibm_neural_aligner/main.py:488

    def get_geometric_data(self, amr):
        if args.add_edges:
            return self.get_geometric_data_add_edges(amr)
        return self.get_geometric_data_standard(amr)

    def get_geometric_data_add_edges(self, amr):
        vocab = self.amr_tokenizer.vocab
        node_ids = get_node_ids(amr)
        d_node_idx = {k: i for i, k in enumerate(node_ids)}

        edge_index = []
        for label_idx, (src, label, tgt) in enumerate(amr.edges):
            label_idx = len(node_ids) + label_idx
            src_idx = d_node_idx[src]
            tgt_idx = d_node_idx[tgt]

            edge_index.append([src_idx, label_idx])
            edge_index.append([label_idx, tgt_idx])

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…