import tensorflow as tf import numpy as np flags = tf.app.flags FLAGS = flags.FLAGS flags.DEFINE_integer('hidden3', 64, 'Number of units in hidden layer 3.') flags.DEFINE_integer('discriminator_out', 0, 'discriminator_out.') flags.DEFINE_float('discriminator_learning_rate', 0.001, 'Initial learning rate.') flags.DEFINE_float('learning_rate', .6 * 0.001, 'Initial learning rate.') flags.DEFINE_integer('hidden1', 32, 'Number of units in hidden layer 1.') # 64 for Citeseer and Pubmed flags.DEFINE_integer('hidden2', 32, 'Number of units in hidden layer 2.') # 64 for Citeseer and Pubmed flags.DEFINE_float('weight_decay', 0., 'Weight for L2 loss on embedding matrix.') flags.DEFINE_float('dropout', 0., 'Dropout rate (1 - keep probability).') flags.DEFINE_integer('features', 1, 'Whether to use features (1) or not (0).') flags.DEFINE_integer('seed', 50, 'seed for fixing the results.') flags.DEFINE_integer('iterations', 60, 'number of iterations.') ''' infor: number of clusters ''' infor = {'cora': 7, 'citeseer': 6, 'pubmed': 3} ''' We did not set any seed when we conducted the experiments described in the paper; We set a seed here to steadily reveal better performance of ARGA ''' seed = 7 np.random.seed(seed) tf.set_random_seed(seed) def get_settings(dataname, model, task): if dataname != 'citeseer' and dataname != 'cora' and dataname != 'pubmed': print('error: wrong data set name') if task != 'clustering' and task != 'link_prediction': print('error: wrong task name') if task == 'clustering': iterations = FLAGS.iterations clustering_num = infor[dataname] re = {'data_name': dataname, 'iterations': iterations, 'clustering_num': clustering_num, 'model': model} elif task == 'link_prediction': iterations = 4 * FLAGS.iterations print('epoch is', iterations) re = {'data_name': dataname, 'iterations': iterations, 'model': model} return re