Exemplo n.º 1
0
from karateclub.community_detection.non_overlapping import EdMot, LabelPropagation, SCD, GEMSEC
from karateclub.graph_embedding import Graph2Vec, FGSD, GL2Vec, SF, NetLSD, GeoScattering, FeatherGraph
from karateclub.node_embedding.attributed import BANE, TENE, TADW, FSCNMF, SINE, MUSAE, FeatherNode
from karateclub.node_embedding.structural import GraphWave, Role2Vec
from karateclub.node_embedding.meta import NEU
from karateclub.dataset import GraphReader, GraphSetReader

#---------------
# Feather Node
#---------------

g = nx.newman_watts_strogatz_graph(150, 10, 0.2)

X = np.random.uniform(0, 1, (150, 127))

model = FeatherNode()

model.fit(g, X)
embedding = model.get_embedding()

#----------------
# Feather Graph
#----------------

graphs = [nx.newman_watts_strogatz_graph(50, 5, 0.3) for _ in range(100)]

model = FeatherGraph()

model.fit(graphs)
embedding = model.get_embedding()
def test_feather_node():
    """
    Testing the FEATHER node embedding.
    """
    graph = nx.newman_watts_strogatz_graph(250, 10, 0.2)

    features = np.random.uniform(0, 1, (250, 2000))
    model = FeatherNode()
    model.fit(graph, features)
    embedding = model.get_embedding()

    assert embedding.shape[0] == graph.number_of_nodes()
    assert embedding.shape[
        1] == 2 * model.order * model.eval_points * model.reduction_dimensions
    assert type(embedding) == np.ndarray

    features = np.random.uniform(0, 1, (250, 16))
    model = FeatherNode()
    model.fit(graph, features)
    embedding = model.get_embedding()

    assert embedding.shape[0] == graph.number_of_nodes()
    assert embedding.shape[
        1] == 2 * model.order * model.eval_points * features.shape[1]
    assert type(embedding) == np.ndarray

    features = {i: random.sample(range(150), 50) for i in range(250)}

    row = np.array([k for k, v in features.items() for val in v])
    col = np.array([val for k, v in features.items() for val in v])
    data = np.ones(250 * 50)
    shape = (250, 150)

    features = coo_matrix((data, (row, col)), shape=shape)
    model = FeatherNode()
    model.fit(graph, features)
    embedding = model.get_embedding()

    assert embedding.shape[0] == graph.number_of_nodes()
    assert embedding.shape[
        1] == 2 * model.order * model.eval_points * model.reduction_dimensions
    assert type(embedding) == np.ndarray
Exemplo n.º 3
0
graphs = [nx.newman_watts_strogatz_graph(7, 5, 0.3) for _ in range(100)]

model = IGE()

model.fit(graphs)
embedding = model.get_embedding()

#---------------
# Feather Node
#---------------

g = nx.newman_watts_strogatz_graph(150, 10, 0.2)

X = np.random.uniform(0, 1, (150, 127))

model = FeatherNode()

model.fit(g, X)
embedding = model.get_embedding()

#----------------
# Feather Graph
#----------------

graphs = [nx.newman_watts_strogatz_graph(50, 5, 0.3) for _ in range(100)]

model = FeatherGraph()

model.fit(graphs)
embedding = model.get_embedding()
Exemplo n.º 4
0
"""Feather-N Example"""

import numpy as np
import networkx as nx
from karateclub.node_embedding.attributed import FeatherNode

g = nx.newman_watts_strogatz_graph(150, 10, 0.2)

X = np.random.uniform(0, 1, (150, 16))

model = FeatherNode()

model.fit(g, X)
embedding = model.get_embedding()