From aa8632715d9ee9929d77f2533acd85ef08bbb778 Mon Sep 17 00:00:00 2001 From: linlin Date: Mon, 5 Oct 2020 16:36:56 +0200 Subject: [PATCH] New translations synthesized_graphs_num_nodes.py (Chinese Simplified) --- .../PRL_2020/synthesized_graphs_num_nodes.py | 64 ++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 lang/zh/gklearn/experiments/papers/PRL_2020/synthesized_graphs_num_nodes.py diff --git a/lang/zh/gklearn/experiments/papers/PRL_2020/synthesized_graphs_num_nodes.py b/lang/zh/gklearn/experiments/papers/PRL_2020/synthesized_graphs_num_nodes.py new file mode 100644 index 0000000..d0d6ebb --- /dev/null +++ b/lang/zh/gklearn/experiments/papers/PRL_2020/synthesized_graphs_num_nodes.py @@ -0,0 +1,64 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +""" +Created on Mon Sep 21 10:34:26 2020 + +@author: ljia +""" +from utils import Graph_Kernel_List, compute_graph_kernel +import logging + + +def generate_graphs(num_nodes): + from gklearn.utils.graph_synthesizer import GraphSynthesizer + gsyzer = GraphSynthesizer() + graphs = gsyzer.unified_graphs(num_graphs=100, num_nodes=num_nodes, num_edges=int(num_nodes*2), num_node_labels=0, num_edge_labels=0, seed=None, directed=False) + return graphs + + +def xp_synthesied_graphs_num_nodes(): + + # Run and save. + import pickle + import os + save_dir = 'outputs/synthesized_graphs_num_nodes/' + if not os.path.exists(save_dir): + os.makedirs(save_dir) + + run_times = {} + + for kernel_name in Graph_Kernel_List: + print() + print('Kernel:', kernel_name) + + run_times[kernel_name] = [] + for num_nodes in [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]: + print() + print('Number of nodes:', num_nodes) + + # Generate graphs. + graphs = generate_graphs(num_nodes) + + # Compute Gram matrix. + run_time = 'error' + try: + gram_matrix, run_time = compute_graph_kernel(graphs, kernel_name, n_jobs=1) + except Exception as exp: + run_times[kernel_name].append('error') + print('An exception occured when running this experiment:') + LOG_FILENAME = save_dir + 'error.txt' + logging.basicConfig(filename=LOG_FILENAME, level=logging.DEBUG) + logging.exception('') + print(repr(exp)) + run_times[kernel_name].append(run_time) + + pickle.dump(run_time, open(save_dir + 'run_time.' + kernel_name + '.' + str(num_nodes) + '.pkl', 'wb')) + + # Save all. + pickle.dump(run_times, open(save_dir + 'run_times.pkl', 'wb')) + + return + + +if __name__ == '__main__': + xp_synthesied_graphs_num_nodes()