Esempio n. 1
0
    def fit(self, kg: KG) -> None:
        """Fits the embedding network based on provided Knowledge Graph.

        Args:
            kg: The Knowledge Graph.

        """
        super().fit(kg)
        self.counts = {}
        for vertex in kg._vertices:
            if not vertex.predicate:
                self.counts[vertex.name] = len(kg.get_inv_neighbors(vertex))
Esempio n. 2
0
    def fit(self, kg: KG) -> None:
        """Fits the embedding network based on provided Knowledge Graph.

        Args:
            kg: The Knowledge Graph.

        """
        if kg.is_remote and not self.remote_supported:
            raise ValueError("This sampler is not supported for remote KGs.")
        if self.split:
            self.degrees = {}
            for vertex in kg._vertices:
                if not vertex.predicate:
                    self.degrees[vertex.name] = len(
                        kg.get_inv_neighbors(vertex))
Esempio n. 3
0
    def _create_label(self, kg: KG, vertex: Vertex, n: int):
        """Creates a label.

        kg: The Knowledge Graph.

            The graph from which the neighborhoods are extracted for the
            provided instances.
        vertex: The vertex.
        n:  The position.

        """
        neighbor_names = [
            self._label_map[neighbor][n - 1]
            for neighbor in kg.get_inv_neighbors(vertex)
        ]
        suffix = "-".join(sorted(set(map(str, neighbor_names))))
        return self._label_map[vertex][n - 1] + "-" + suffix