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))
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))
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