Exemplo n.º 1
0
import numpy as np

input_file = 'karate'
node_embedding = io_utils.load_embedding(
    path='../data',
    file_name="{}_my_ComE_l1-0_l2-0_ds-0_it-0".format(input_file),
    ext=".txt")

g = mixture.GaussianMixture(n_components=2,
                            reg_covar=0.000001,
                            covariance_type='full',
                            n_init=5)
g.fit(node_embedding)
centroid = np.float32(g.means_)
covariance_mat = np.float32(g.covariances_)

G = graph_utils.load_adjacencylist(
    path_join("../data/", input_file, input_file + '.adjlist'), True)
node_color = plot_utils.graph_plot(G=G,
                                   show=False,
                                   graph_name="karate",
                                   node_position_file=True,
                                   node_position_path='../data')

plot_utils.node_space_plot_2D_elipsoid(node_embedding,
                                       means=centroid,
                                       covariances=covariance_mat,
                                       color_values=node_color,
                                       grid=False,
                                       show=True)
Exemplo n.º 2
0
if __name__ == "__main__":
    num_walks = 10
    walk_length = 20
    window_size = 3
    negative = 4
    representation_size = 2
    num_workers = 1
    lr = 0.1
    alpha = 1.0
    beta = 1.0
    batch_size = 20
    input_file = "karate"
    output_file = "karate_my"

    G = graph_utils.load_adjacencylist(
        './data/' + input_file + '/' + input_file + '.adjlist', True)
    model = ComEModel(G.degree(),
                      size=representation_size,
                      input_file=input_file + '/' + input_file,
                      path_labels="./data",
                      f_type=FloatTensor)

    total_example = (G.number_of_nodes() * walk_length * num_walks *
                     (2 * (window_size - 1)))
    num_iter = int(total_example / (G.number_of_nodes() * 2))

    # neg_loss = Context2Emb(deprecated_model, negative)
    o1_loss = Node2Emb(model, negative)
    o2_loss = Context2Emb(model, negative)
    o3_loss = Community2Emb(model, reg_covar=0.00001)
Exemplo n.º 3
0
Arquivo: main.py Projeto: SongFGH/ComE
    output_file = 'Karate'               # name of the output file
    batch_size = 10
    window_size = 3    # windows size used to compute the context embedding
    negative = 5        # number of negative sample
    lr = 0.025           # learning rate

    alpha_betas = [(1., 0.01)]
    down_sampling = 0.0

    k = 2
    walks_filebase = os.path.join('data', output_file)            # where read/write the sampled path



    #CONSTRUCT THE GRAPH
    G = graph_utils.load_adjacencylist(os.path.join('./data', input_file, input_file + '.adjlist'), undirected=True)
    # Sampling the random walks for context
    log.info("sampling the paths")
    walk_files = graph_utils.write_walks_to_disk(G,
                                                 os.path.join(walks_filebase, "{}.walks".format(output_file)),
                                                 num_paths=number_walks,
                                                 path_length=walk_length,
                                                 alpha=0,
                                                 rand=random.Random(0),
                                                 num_workers=num_workers)

    vertex_counts = graph_utils.count_textfiles(walk_files, num_workers)
    model = Model(vertex_counts,
                  size=representation_size,
                  down_sampling=down_sampling,
                  table_size=5000000,
Exemplo n.º 4
0
if __name__ == "__main__":
    num_walks = 10
    walk_length = 20
    window_size = 3
    negative = 4
    representation_size = 2
    num_workers = 1
    lr = 0.1
    alpha = 1.0
    beta = 1.0
    num_iter = 200
    input_file = "karate"
    output_file = "karate_my"
    path = "../data"

    G = graph_utils.load_adjacencylist(
        os.path.join(path, input_file, input_file + '.adjlist'), True)
    model = ComEModel(G.degree(),
                      size=representation_size,
                      input_file=input_file + '/' + input_file,
                      path_labels=path)
    model.k = 2
    o2_loss = Context2Emb(model, negative)
    o3_loss = Community2Emb(model, reg_covar=0.00001)

    node_color = plot_utils.graph_plot(G=G,
                                       show=False,
                                       graph_name="karate",
                                       node_position_file=True,
                                       node_position_path=path)

    exmple_filebase = os.path.join(