Title: EVONET: A NEURAL NETWORK FOR PREDICTING THE EVOLUTION OF DYNAMIC GRAPHS Anonymous authors Paper under double-blind review

Abstract: Neural networks for structured data like graphs have been studied extensively in recent years. To date, the bulk of research activity has focused mainly on static graphs. However, most real-world networks are dynamic since their topology tends to change over time. Predicting the evolution of dynamic graphs is a task of high significance in the area of graph mining. Despite its practical importance, the task has not been explored in depth so far, mainly due to its challenging nature. In this paper, we propose a model that predicts the evolution of dynamic graphs. Specifically, we use a graph neural network along with a recurrent architecture to capture the temporal evolution patterns of dynamic graphs. Then, we employ a generative model which predicts the topology of the graph at the next time step and constructs a graph instance that corresponds to that topology. We evaluate the proposed model on several artificial datasets following common network evolving dynamics, as well as on real-world datasets. Results demonstrate the effectiveness of the proposed model.

1. INTRODUCTION:

Graph neural networks (GNNs) have emerged in recent years as an effective tool for analyzing graph-structured data (Scarselli et al., 2008; Gilmer et al., 2017; Zhou et al., 2018; Wu et al., 2019) . These architectures bring the expressive power of deep learning into non-Euclidean data such as graphs, and have demonstrated convincing performance in several graph mining tasks, including graph classification (Morris et al., 2019) , link prediction (Zhang & Chen, 2018) , and community detection (Bruna & Li, 2017; Chen et al., 2017) . So far, GNNs have been mainly applied to tasks that involve static graphs. However, most real-world networks are dynamic, i. e., nodes and edges are added and removed over time. Despite the success of GNNs in various applications, it is still not clear if these models are useful for learning from dynamic graphs. Although some models have been applied to this type of data, most studies have focused on predicting a low-dimensional representation (i. e., embedding) of the graph for the next time step (Li et al., 2016; 2017; Nguyen et al., 2018; Goyal et al., 2018; Seo et al., 2018; Pareja et al., 2019) . These representations can then be used in downstream tasks (Li et al., 2016; Goyal et al., 2018; Meng et al., 2018; Pareja et al., 2019) . Predicting the topology of the graph is a task that has not been properly addressed yet.

Graph generation, another important task in graph mining, has attracted a lot of attention from the deep learning community in recent years. The objective of this task is to generate graphs that exhibit specific properties, e. g., degree distribution, node triangle participation, community structure etc. Traditionally, graphs are generated based on some network generation model such as the Erdős-Rényi model. These models focus on modeling one or more network properties, and neglect the others. Neural network approaches, on the other hand, can better capture the properties of graphs since they follow a supervised approach (You et al., 2018; Bojchevski et al., 2018; Grover et al., 2018) . These architectures minimize a loss function such as the reconstruction error of the adjacency matrix or the value of a graph comparison algorithm.

Capitalizing on recent developments in neural networks for graph-structured data and graph generation, we propose in this paper, to the best of our knowledge, the first framework for predicting the evolution of the topology of networks in time. The proposed framework can be viewed as an encoderdecoder architecture. The "encoder" network takes a sequence of graphs as input and uses a GNN to produce a low-dimensional representation for each one of these graphs. These representations capture structural information about the input graphs. Then, it employs a recurrent architecture which predicts a representation for the future instance of the graph. The "decoder" network corresponds to a graph generation model which utilizes the predicted representation, and generates the topology of the graph for the next time step. The proposed model is evaluated over a series of experiments on synthetic and real-world datasets. To measure its effectiveness, the generated graphs need to be compared with the corresponding ground-truth graph instances. To this end, we use the Weisfeiler-Lehman subtree kernel which scales to very large graphs and has achieved state-of-the-art results on many graph datasets (Shervashidze et al., 2011) . The proposed model is compared against several baseline methods. Results show that the proposed model is very competitive, and in most cases, outperforms the competing methods.

The rest of this paper is organized as follows. Section 2 provides an overview of the related work and elaborates our contribution. Section 3 introduces some preliminary concepts and definitions related to the graph generation problem, followed by a detailed presentation of the components of the proposed model. Section 4 evaluates the proposed model on several tasks. Finally, Section 5 concludes.

2. RELATED WORK:

Our work is related to random graph models. These models are very popular in graph theory and network science. The Erdős-Rényi model (Erdős & Rényi, 1960) , the preferential attachment model (Albert & Barabási, 2002) , and the Kronecker graph model (Leskovec et al., 2010) are some typical examples of such models. To predict how a graph structure will evolve over time, the values of the parameters of these models can be estimated based on the corresponding values of the observed graph instances, and then the estimated values can be passed on to these models to generate graphs.

Other work along a similar direction includes neural network models which combine GNNs with RNNs (Seo et al., 2018; Manessi et al., 2017; Pareja et al., 2019) . These models use GNNs to extract features from a graph and RNNs for sequence learning from the extracted features. Other similar approaches do not use GNNs, but they instead perform random walks or employ deep autoencoders (Nguyen et al., 2018; Goyal et al., 2018) . All these works focus on predicting how the node representations or the graph representations will evolve over time. However, some applications require predicting the topology of the graph, and not just its low-dimensional representation. The proposed model constitutes the first step towards this objective.

3. EVONET: A NEURAL NETWORK FOR PREDICTING GRAPH EVOLUTION:

In this Section, we first introduce basic concepts from graph theory, and define our notation. We then present EvoNet, the proposed framework for predicting the evolution of graphs. Since the proposed model comprises of several components, we describe all these components in detail.

3.1. PRELIMINARIES:

Let G = (V, E) be an undirected, unweighted graph, where V is the set of nodes and E is the set of edges. We will denote by n the number of vertices and by m the number of edges. We define a permutation of the nodes of G as a bijective function π : V → V , under which any graph property of G should be invariant. We are interested in the topology of a graph which is described by its adjacency matrix A π ∈ R n×n with a specific ordering of the nodes π1 . Each entry of the adjacency matrix is defined as

A π ij = 1 (π(vi),π(vj ))∈E where v i , v j ∈ V .

In what follows, we consider the "topology", "structure" and "adjacency matrix" of a graph equivalent to each other.

In many real-world networks, besides the adjacency matrix that encodes connectivity information, nodes and/or edges are annotated with a feature vector, which we denote as X ∈ R n×d and L ∈ R m×d , respectively. Hence, a graph object can be also written in the form of a triplet G = (A, X, L). In this paper, we use this triplet to represent all graphs. If a graph does not contain node/edge attributes, we assign attributes to it based on local properties (e. g., degree, k-core number, number of triangles, etc). An evolving network is a graph whose topology changes as a function of time. Interestingly, almost all real-world networks evolve over time by adding and removing nodes and/or edges. For instance, in social networks, people make and lose friends over time, while there are people who join the network and others who leave the network. An evolving graph is a sequence of graphs {G 0 , G 1 , . . . , G T } where G t = (A t , X t , E t ) represents the state of the evolving graph at time step t. It should be noted that not only nodes and edges can evolve over time, but also node and edge attributes. However, in this paper, we keep node and edge attributes fixed, and we allow only the node and edge sets of the graphs to change as a function of time. The sequence can thus be written as {G t = (A t , X, E)} t∈[0,T ] . We are often interested in predicting what "comes next" in a sequence, based on data encountered in previous time steps. In our setting, this is equivalent to predicting G t based on the sequence {G k } k<t . In sequential modeling, we usually do not take into account the whole sequence, but only those instances within a fixed small window of size w before G t , which we denote as {G t-w , G t-w+1 , . . . , G t-1 }. We refer to these instances as the graph history. The problem is then to predict the topology of G t given its history.

3.2. PROPOSED ARCHITECTURE:

The proposed architecture is very similar to a typical sequence learning framework. The main difference lies in the fact that instead of vectors, in our setting, the elements of the sequence correspond to graphs. The combinatorial nature of graph-structured data increases the complexity of the problem and calls for more sophisticated architectures than the ones employed in traditional sequence learning tasks. Specifically, the proposed model consists of three components: (1) a graph neural network (GNN) which generates a vector representation for each graph instance, (2) a recurrent neural network (RNN) for sequential learning, and (3) a graph generation model for predicting the graph topology at the next time step. This framework can also be viewed as an autoencoder-decoder model. The first two components correspond to an encoder network which maps the sequence of graphs into a sequence of vectors and predicts a representation for the next in the sequence graph. The decoder network consists of the last component of the model, and transforms the above representation into a graph. Figure 1 illustrates the proposed model. In what follows, we present the different components of EvoNet in detail.

3.2.1. GRAPH NEURAL NETWORK:

Graph Neural Networks (GNNs) have recently emerged as a dominant paradigm for performing machine learning tasks on graphs. Several GNN variants have been proposed in the past years. All these models employ some message passing procedure to update node representations. Specifically, each node updates its representation by aggregating the representations of its neighbors. After k iterations of the message passing procedure, each node obtains a feature vector which captures the structural information within its k-hop neighborhood. Then, GNNs compute a feature vector for the entire graph using some permutation invariant readout function such as summing the representations of all the nodes of the graph. As described below, the learning process can be divided into three phases: (1) aggregation, (2) update, and (3) readout.

Aggregation In this phase, the network computes a message for each node of the graph. To compute that message for a node, the network aggregates the representations of its neighbors. Formally, at time t + 1, a message vector m t+1 v is computed from the representations of the neighbors

N (v) of v: m t+1 v = AGGREGATE t+1 h t w | w ∈ N (v) (1)

where AGGREGATE is a permutation invariant function. Furthermore, for the network to be end-toend trainable, this function needs to be differentiable. In our case, AGGREGATE is a multi-layer perceptron (MLP) followed by a sum function.

Update The new representation h t+1 v of v is then computed by combining its current feature vector h t v with the message vector m t+1 v :

h t+1 v = UPDATE t+1 h t v , m t+1 v

(2) The UPDATE function also needs to be differentiable. To combine the two feature vectors (i. e., h t v and m t+1 v ), we have employed the Gated Recurrent Unit proposed in (Li et al., 2015) :

h t+1 v = GRU t+1 (h t v , m t+1 v )

(3) Omitting biases for readability, we have:

EQUATION

where the W and U matrices are trainable weight matrices, σ is the sigmoid function, and r v and z v are the parameters of the reset and update gates for a given node.

Readout The Aggregation and Update steps are repeated for T time steps. The emerging node representations {h T v } v∈V are aggregated into a single vector which corresponds to the graph representation, as follows:

h G = READOUT h T v | v ∈ V (5)

where READOUT is a differentiable and permutation invariant function. This vector captures the topology of the input graph. To generate h G , we utilize Set2Set (Vinyals et al., 2015) . Other functions such as the sum function were also considered, but were found less effective in preliminary experiments.

3.2.2. RECURRENT NEURAL NETWORKS:

Given an input sequence of graphs, we use the GNN described above to generate a vector representation for each graph in the sequence. Then, to process this sequence, we use a recurrent neural network (RNN). RNNs use their internal state (i. e., memory) to preserve sequential information. These networks exhibit temporal dynamic behavior, and can find correlations between sequential events Specifically, an RNN processes the input sequence in a series of time steps (i. e., one for each element in the sequence). For a given time step t, the hidden state h t at that time step is updated as:

h t+1 = f (h t , x t+1 ) (6)

where f is a non-linear activation function. A generative RNN outputs a probability distribution over the next element of the sequence given its current state h t . RNNs can be trained to predict the next element (e. g., graph) in the sequence, i. e., it can learn the conditional distribution p(G t |G 1 , . . . , G t-1 ).

In our implementation, we use a Long Short-Term Memory (LSTM) network that reads sequentially the vectors {h Gi } i∈[t-w,t-1] produced by the GNN, and generates a vector h G T that represents the embedding of G T , i. e., the graph at the next time step. The embedding incorporates topological information and will serve as input to the graph generation module. Along with the GNN component, this architecture can be seen as a form of an encoder network. This network takes as input a sequence of graphs and projects them into a low-dimensional space.

3.2.3. GRAPH GENERATION:

To generate a graph that corresponds to the evolution of the current graph instance, we capitalize on a recently-proposed framework for learning generative models of graphs (You et al., 2018) . This framework models a graph in an autoregressive manner (i. e., a sequence of additions of new nodes and edges) to capture the complex joint probability of all nodes and edges in the graph. Formally, given a node ordering π, it considers a graph G as a sequence of vectors:

EQUATION

where S π i = [a 1,i , . . . , a i-1,i ] ∈ {0, 1} i-1 is the adjacency vector between node π(i) and the nodes preceding it ({π(1), . . . , π(i -1)}). We adapt this framework to our supervised setting.

The objective of the generative model is to maximize the likelihood of the observed graphs of the training set. Since a graph can be expressed as a sequence of adjacency vectors (given a node ordering), we can consider instead the distribution p( Ŝπ ; θ), which can be decomposed in an autoregressive manner into the following product:

EQUATION

This product can be parameterized by a neural network. Specifically, following (You et al., 2018) , we use a hierarchical RNN consisting of two levels: (1) the graph-level RNN which maintains the state of the graph and generates new nodes and thus learns the distribution p( Ŝπ i | Ŝπ k:k<i ) and ( 2) the edge-level RNN which generates links between each generated node and previously-generated nodes and thus learns the distribution p(â π ji |â π li:l<j ). More formally, we have:

h 0 = h G T h i = RNN 1 (h i-1 , Ŝπ i-1 ) m 0,i = h i m j,i = RNN 2 (m j-1,i , âπ j-1,i ) p(â π j,i = 1) = σ(m j,i ) âπ j,i ∼ p (9)

where h i is the state vector of the graph-level RNN (i. e., RNN 1 ) that encodes the current state of the graph sequence and is initialized by h G T , the predicted embedding of the graph at the next time step T . The output of the graph-level RNN corresponds to the initial state of the edge-level RNN (i. e., RNN 2 ). The resulting value is then squashed by a sigmoid function to produce the probability of existence of an edge â j,i . In other words, the model learns the probability distribution of the existence of edges and a graph can then be sampled from this distribution, which will serve as the predicted topology for the next time step T .

To train the model, the cross-entropy loss between existence of each edge and its probability of existence is minimized:

EQUATION

Node ordering It should be mentioned that node ordering π has a large impact on the efficiency of the above generative model. Note that a good ordering can help us avoid the exploration of all possible node permutations in the sample space. Different strategies such as the Breadth-First-Search ordering scheme can be employed to improve scalability (You et al., 2018) . However, in our setting, the nodes are distinguishable, i. e., node v of G i and node v of G i+1 correspond to the same entity. Hence, we can impose an ordering onto the nodes of the first instance of our sequence of graphs, and then utilize the same node ordering for the graphs of all subsequent time steps (we place new nodes at the end of the ordering).

4.1. DATASETS:

We use both synthetic and real-world datasets. The synthetic datasets consist of sequences of graphs where there is a specific pattern on how each graph emerges from the previous graph instance, i. e., add/remove some graph structure at each time step. The real-world datasets correspond to single graphs whose nodes incorporate temporal information. We decompose these graphs into sequences of snapshots based on their timestamps. We fix the length of the sequences to 1000 time steps. The size of the graphs in each sequence ranges from tens of nodes to several thousand of nodes.

4.1.1. SYNTHETIC DATASETS:

Path graph A path graph can be drawn such that all vertices and edges lie on a straight line. We denote a path graph of n nodes as P n . In other words, the path graph P n is a tree with two nodes of degree 1, and the other n -2 nodes of degree 2. We consider two scenarios. In both cases the first graph in the sequence is P 3 . In the first scenario, at each time step, we add one new node to the previous graph instance and we also add an edge between the new node and the last according to the previous ordering node. The second scenario follows the same pattern, however, every three steps, instead of adding a new node, we remove the first according to the previous ordering node (along with its edge).

Cycle graph A cycle graph C n is a graph on n nodes containing a single cycle through all the nodes. Note that if we add an edge between the first and the last node of P n , we obtain C n . Similar to the above case, we use C 3 as the first graph in the sequence, and we again consider two scenarios.

In the first scenario, at each time step, we increase the size of the cycle, i. e., from C i , we obtain C i+1 by adding a new node and two edges, the first between the new node and the first according to the previous ordering node and the second between the new node and the last according to the previous ordering node. In the second scenario, every three steps, we remove the first according to the ordering node (along with its edges), and we add an edge between the second and the last according to the ordering nodes.

Ladder graph:

The ladder graph L n is a planar graph with 2n vertices and 3n -2 edges. It is the cartesian product of two path graphs, as follows: L n = P n × P 2 . As the name indicates, the ladder graph L n can be drawn as a ladder consisting of two rails and n rungs between them. We consider the following scenario: at each time step, we attach one rung (P 2 ) to the tail of the ladder (the two nodes of the rung are connected to the two last according to the ordering nodes).

For all graphs, we set the attribute of each node equal to its degree, while we set the attribute of all edges to the same value (e. g., to 1).

4.1.2. REAL-WORLD DATASETS:

Besides synthetic datasets, we also evaluate EvoNet on real-world datasets. These datasets contain graphs derived from the Bitcoin transaction network, a who-trust-whom network of people who trade using Bitcoin (Kumar et al., 2016; 2018) . Due to the anonymity of Bitcoin users, platforms seek to maintain a record of users' reputation in Bitcoin trades to avoid fraudulent transactions. The nodes of the network represent Bitcoin users, while an edge indicates that a trade has been executed between its two endpoint users. Each edge is annotated with an integer between -10 and 10, which indicates the rating of the one user given by the other user. The network data are collected separately from two platforms: Bitcoin OTC2 and Bitcoin Alpha3 . More details about these two datasets are given in Table 1 . For all graphs, we set the attribute of each node equal to the average rating that the user has received from the rest of the community, and the attribute of each edge equal to the rating between its two endpoint users.

4.2. BASELINES:

We compare EvoNet against several random graph models: (1) the Erdős-Rényi model (Erdős & Rényi, 1960) , ( 2) the Stochastic Block model (Holland et al., 1983; Airoldi et al., 2008) Barabási-Albert model (Albert & Barabási, 2002) , and ( 4) the Kronecker Graph model (Leskovec et al., 2010) . These are the traditional methods to study the topology evolution of temporal graphs, by proposing a driven mechanism behind the evolution.

4.3. EVALUATION METRIC AND EXPERIMENTAL SETUP:

In general, it is very challenging to measure the performance of a graph generative model since it requires comparing two graphs to each other, a long-standing problem in mathematics and computer science (Conte et al., 2004) . We propose to use graph kernels to compare graphs to each other, and thus to evaluate the quality of the generated graphs. Graph kernels have emerged as one of the most effective tools for graph comparison in recent years (Nikolentzos et al., 2019) . A graph kernel is a symmetric positive semidefinite function which takes two graphs as input, and measures their similarity. In our experiments, we employ the Weisfeiler-Lehman subtree kernel which counts label-based subtree-patterns (Shervashidze et al., 2011) . Note that we also normalize the kernel values, and thus the emerging values lie between 0 and 1.

As previously mentioned, each dataset corresponds to a sequence of graphs where each sequence represents the evolution of the topology of a single graph in 1000 time steps. We use the first 80% of these graph instances for training and the rest of them serve as our test set. The window size w is set equal to 10, which means that we feed 10 consecutive graph instances to the model and predict the topology of the instance that directly follows the last of these 10 input instances. Each graph of the test set along with its corresponding predicted graph is then passed on to the Weisfeiler-Lehman subtree kernel which measures their similarity and thus the performance of the model.

The hyperparameters of EvoNet are chosen based on its performance on a validation set. The parameters of the random graph models are set under the principle that the generated graphs need to share similar properties with the ground-truth graphs. For instance, in the case of the Erdős-Rényi model, the probability of adding an edge between two nodes is set to some value such that the density of the generated graph is identical to that of the ground-truth graph. However, since the model should not have access to such information (e. g., density of the ground-truth graph), we use an MLP to predict this property based on past data (i. e., the number of nodes and edges of the previous graph instances). This is in par with how the proposed model computes the size of the graphs to be generated (i. e., using also an MLP). generate graphs very similar to the ground-truth graphs (normalized kernel values > 0.9). Hence, instead of reporting the kernel values, we compare the size of the predicted graphs against that of the ground-truth graphs. The figures visualize the increase of graph size on real sequence (orange) and predicted sequence (blue). For path graphs, in spite of small variance, we have an accurate prediction on the graph size. For ladder graph, we observe a mismatch at the beginning of the sequence for small size graphs but then a coincidence of the two lines on large size graphs. This mismatch on small graphs may be due to a more complex structure in ladder graphs such as cycles, as supported by the results of cycle graph on the right figure, where we completely mispredict the size of cycle graphs.

4.4. RESULTS:



Synthetic datasets:

In fact, we fail to reconstruct the cycle structure in the prediction, with all the predicted graphs being path graphs. This failure could be related to the limitations of GNN mentioned in Xu et al. (2018) Real-World datasets Finally, we analyze the performance of our model on real datasets: the Bitcoin-OTC and Bitcoin-Alpha. We obtain the similarities between each pair of real and predicted graphs in the sequence and draw a histogram to illustrate the distribution of similarities. The results are shown in Figure 3 respectively for the two datasets. Among all the traditional random graph models, Kronecker graph model (with learnable parameter) performs the best, however on both datasets, our proposed method EvoNet (in blue) outperforms tremendously all other methods, with an average similarity of 0.82 on BTC-OTC dataset and 0.55 on BTC-Alpha dataset. Detailed statistics can be found in Table 2 .

Overall, our experiments demonstrate the advantage of EvoNet over the traditional random graph models on predicting the evolution of dynamic graphs.

5. CONCLUSION:

In this paper, we proposed EvoNet, a model that predicts the evolution of dynamic graphs, following an encoder-decoder framework. We also proposed an evaluation methodology for this task which capitalizes on the well-established family of graph kernels. Experiments show that the proposed model outperforms traditional random graph methods on both synthetic and real-world datasets.

Figure 6 : Some examples of predictions on Path datasets: the left column is the real graphs and the right column is the predicted ones.

:

For simplicity, the ordering π will be omitted in what follows.

EXPERIMENTS AND RESULTSIn this Section, we evaluate the performance of EvoNet on synthetic and real-world datasets for predicting the evolution of graph topology, and we compare it against several baseline methods.

https://snap.stanford.edu/data/soc-sign-bitcoin-otc.html

https://snap.stanford.edu/data/soc-sign-bitcoin-alpha.html

Figures and Tables:

Figure 1: Illustration of the proposed architecture

Figure 2: Results of synthetic datasets. Comparison of graph size (path, ladder and cycle graphs from left to right): predicted size (blue) VS. real size (orange).

Figure2illustrates the experimental results on the synthetic datasets. Since the graph structures contained in the synthetic datasets are fairly simple, it is easy for the model to

Statistics of the two real-world datasets used in our experiments.

Table content: <table><tr><td>, (3) the</td></tr></table>

Distribution of Similarities between real and predicted graphs (BTC-OTC) Statistics on the similarity distribution of different models: ER stands for Erdős-Rényi model. SBM stands for Stochastic Block Model. BA is Barabási-Albert Model. POWER is another model, similar to the Barabási-Albert, that grows graphs with powerlaw degree distribution. Kron-Rand represents the Kronecker Graph Model with learnable parameter while Kron-Fix represents the Kronecker Graph Model with fixed parameters which depend on the initial graph.

Table content: <table><tr><td/><td>Proposed</td><td colspan="7">Distribution of Similarities between real and predicted graphs (BTC-ALPHA) 350 Proposed</td></tr><tr><td/><td>Erdos-Renyi Barabasi-Albert</td><td>300</td><td/><td/><td/><td/><td/><td>Erdos-Renyi Barabasi-Albert</td></tr><tr><td/><td>Powerlaw-Cluster SBM Kronecker-random Kronecker-fix</td><td>100 150 200 250 Number of instances</td><td/><td/><td/><td/><td/><td>Powerlaw-Cluster SBM Kronecker-random Kronecker-fix</td></tr><tr><td/><td/><td>50</td><td/><td/><td/><td/><td/></tr><tr><td/><td/><td>0</td><td>0.1</td><td>0.2</td><td>0.3</td><td>0.4 Similarity</td><td>0.5</td><td>0.6</td><td>0.7</td></tr><tr><td colspan="9">Figure 3: Similarity histograms on BTC-OTC (left) and BTC-Alpha (right) datasets. Blue one is the</td></tr><tr><td colspan="5">result of EvoNet, which is compared against 6 random graph models.</td><td/><td/><td/></tr><tr><td>STAT.</td><td colspan="2">BTC-OTC</td><td/><td colspan="3">BTC-ALPHA</td><td/></tr><tr><td>MODEL</td><td colspan="6">MEAN 90%ILE MEAN 90%ILE</td><td/></tr><tr><td>ER</td><td>0.28</td><td>0.40</td><td/><td>0.22</td><td/><td>0.32</td><td/></tr><tr><td>SBM</td><td>0.21</td><td>0.30</td><td/><td>0.18</td><td/><td>0.27</td><td/></tr><tr><td>BA</td><td>0.35</td><td>0.48</td><td/><td>0.23</td><td/><td>0.28</td><td/></tr><tr><td>POWER</td><td>0.35</td><td>0.48</td><td/><td>0.23</td><td/><td>0.28</td><td/></tr><tr><td>KRON-RAND</td><td>0.62</td><td>0.64</td><td/><td>0.44</td><td/><td>0.47</td><td/></tr><tr><td>KRON-FIX</td><td>0.21</td><td>0.23</td><td/><td>0.08</td><td/><td>0.11</td><td/></tr><tr><td>EVONET</td><td>0.82</td><td>0.84</td><td/><td>0.55</td><td/><td>0.59</td><td/></tr></table>

Peer review (iclr2020):
This paper proposes a framework to model the evolution of dynamic graphs for the task of predicting the topology of next graph given a sequence of graphs. Specifically, the paper uses a combination of recently proposed techniques in graph representation learning (Graph Neural Network) and Graph Generation (GraphRNN [You et. al. 2018]). Given a sequence of graphs as input, a GNN (to obtain low-dimensional representations of the graphs in this sequence) and LSTM (to model the sequence of these representations) based encoder is used to compute a vector representation of the topology of next graph in the sequence. The learned vector is then used as input to a GraphRNN decoder to generate a graph that would serve as a predicted next graph in the sequence. The proposed approach is validated with experiments on three synthetic datasets and one real-world dataset (Bitcoin is same dataset from two different resources with little difference in characteristics) and compared against random graph models. This paper should be rejected due to following reasons: (1) The authors do not justify/discuss the motivation and importance of the task and corresponding applications that would require to predict topology of complete graph in the next step. (2) The proposed techniques are an adhoc combination of existing techniques with major concerns (details below) but also with little novelty (if any) for achieving this combination. (3) The empirical efforts are very limited and does not provide enough evidence about the efficacy of the method, miss several details and does not serve as motivation for designing such a method in first place. Please note that negative results on cycle graphs has no role to play in this assessment. In fact, I appreciate the authors for reporting negative results as it provides a transparent insights into the effectiveness of model in different settings. Overall, the paper needs lot of work on all aspects - motivation, technique and experiments to make it fit for a conference publication. Major Concerns: (a) Motivation: The authors do not discuss or motivate the problem and why it is important to the community. The authors mention that many existing work on dynamic graphs focus on learning representations. This is the case because learned representations can then be used for various downstream applications and even future event predictions. When such methods can be used to do future predictions required for most applications, why does one need to predict the topology of complete next graph? The authors need to provide concrete justification for the problem they address, instances where such a task would be useful and discussion on other techniques that can do similar tasks but lack in aspects that such a method can capture. For instance, as a preliminary step, can the authors explain how solving this problem would be helpful to bitcoin? (b) Technical: The technical contributions of this paper lack novelty and has several flows: - Figure 1 seems to show that graph only grows in size. While the authors do provide an experiment with removal process, that experiment does not seem to perform well. So, does the method is only good to support growing graphs? - Authors mention that the edge and node attributes are considered to be fixed. However, if the number of nodes and edges change, X and L should also change in terms of dimensions and adding values for new nodes/edges. so why should it not be considered time-varying? - What was the motivation for using GRU for update function in Eq 3? Was simple MLP tried and not useful? Was GRU used to capture some long term dependencies in structure? If so, the authors must explain how it is useful for this task. - Why Set2Set was used for ReadOut function? This seems to be a particularly adhoc and odd choice. when sum did not work well, jump to Set2Set is not justified. Can the authors provide an explanation for the same? - The authors claim that the embedding h_G_T incorporates topological information -- I find this claim highly unsubstantiated and needs justification. For instance, can you provide some rigorous analysis to demonstrate that this is the case? At the least, can the authors use this vector and pass it through a graph decoder to recover the original graph? - What is novel in 3.2.3 as compared to You et. al.? Infact, it is hard to see any novelty in the entire combination. Was it challenging to achieve this combination? If so, what was the challenging part? It is not clear what the authors contributed to address such a challenge. Was the training challenging? If so, please explain. If not, why is this a novel approach? (c) Empirical: The empirical efforts are inadequate and raises more questions than answers. - Synthetic datasets are simple and more datasets should be used e.g. You et. al. 2018 to validate the performance. Only one real-world dataset from two different sources is used. It is hard to understand author*s motivation in doing so. Why not use various graph datasets available in papers that learn representations (e.g. cited by authors themselves) What is special about bitcoin dataset that makes it suitable for this task? - Node/edge attributes are chosen in adhoc manner and it is unclear what role they perform. Do they help with prediction? If not, would it be useful to first show experiments without them? Or does this method absolutely need attributes? It is not clear why it is useful to set all attributes for edge as 1. - How was window size of 10 chosen? Why is the same window size good for all graphs? What impact does window size has on performance? - What is the motivation for using Graph kernel for similarity? The authors borrow the decoder from You et. al. 2018 which also provides a principled method to compare graphs using MMD based on statistics. Why not employ the same? - GraphRNN (You et. al.) and other generative models can learn over multiple graphs? Did the authors try to feed the sequence of graphs to such models and then try to generate a new graph to see if they can produce similar results? It is true that those generative models do not specifically model temporal sequence, but such an experiment would help to distinguish the efficacy of the proposed method. -The technique of using MLP for generating predictions using random graph models seem to be highly unfair for the baselines. Can you elaborate more as it is difficult to understand why one should handicap those models by using learned information instead of data information? - A rigorous discussion on insights explaining the results is required. The authors show high performance on Bitcoin dataset. However, it is not clear what part is contributing to the performance. Similarly, authors should dig deep into the failure cases and provide justification of why such a method would fail in particular cases and propose alternatives. - Why was Graph size used as a statistic to report? Two graphs of same size can be entirely different and I do not see any merit in using such a metric. Again, something like MMD based metric may be useful. Improvements that would make future revision strong but has not impacted current assessment: Overall, the presentation of the paper is very unpolished. The authors are missing many important details as described above while spending a lot of time in describing (repeating) known techniques verbatim as original works. This can be removed and condensed into very short preliminary section. - Notations: The authors must use clear notations. For instance, on Page 2, L is used to describe edge attributes but then it is replaced by E in Page 3. Also, both X and L are shown to have dimension d. Are edge and node attributes of same dimension? w is used for window-size of sequence used as input and also as neighbor node. When modeling evolution of graphs where a sequence is available over time points 0...T, it is not useful to use T to also represent time step of GNN propagation. Infact, authors should avoid using time steps to signify GNN iterations. - Empirical details: The details provided for datasets and experimental setup is inadequate. Why are the two Bitcoin datasets different from each other? What does Pos. Edges in Table 1 mean? What does Mean and 90th percentile in Table 2 signify? Authors only talk about train-test split but then mention validation set for hyper-param tuning. How was this validation set obtained? Also, what hyper-params were tuned and what was sensitivity of those hyper-params? Authors use GNN and multiple RNN*s, what was the model capacity used and how it impacted the performance? Figure 5 (c) what is a circle graph?