Learning Steady-States of Iterative Algorithms over Graphs
ICML 2018 9/15/2020
Motivation
Many graph analytics problems can be solved via iterative algorithms according to the graph structure, and the solutions of the algorithms are often characterized by a set of steady-state conditions.
PageRank: score of a node
Mean field inference: the posterior distribution of a variable
Instead of designing algorithms for each individual graph problem, we take a different perspective:
Can we design a learning framework for a diverse range of graph problems that learns the algorithm over large graphs achieving the steady-state solutions efficiently and effectively?
How to represent the meta learner for such algorithm and how to carry out the learning of these algorithms?
Iterative algorithm over graphs
For a graph: G=(V,E) , with node set V and edge set E , many iterative algorithms over graphs can be formulated into:
until the steady-state conditions are met:
node:v,uāV
theĀ setĀ ofĀ neighborĀ nodesĀ ofĀ v:N(v)
someĀ operatorĀ :T(ā )
IntermediateĀ representationĀ ofĀ nodeĀ v:hvā
IntermediateĀ representationĀ ofĀ nodeĀ vĀ atĀ stepĀ t:hv(t)ā
FinalĀ (converged/steady)Ā intermediateĀ representationĀ ofĀ nodeĀ v:hvāā
Specifically:
1) Graph component detection problem
Goal: find all nodes within the same connected component as source node sāV
How: iteratively propagate the label at node s to other nodes:
ysā: label of node s
ys(t)ā: label of node s at step t
at initial step t=0, the label at node s are set to 1 (infected), 0 for all other nodes.
Steady state: nodes in the same connected component as s are infected, (labelled as 1)
2) PageRank scores for node importance
Goal: estimate the importance of each node in a graph
How: update score of each node iteratively
rv(t)ā : score of node v at step t
Initialization: rv(0)ā=0,āvāV
Steady state: rvāā=ā£Vā£(1āĪ»)ā+ā£N(v)ā£Ī»āāuāN(v)āruāā
3) Mean field inference in graphical model
Goal: approximate the marginal distributions of a set of variables xvā in a graph model defined on G
In graphical model, we know:
p({xvā}vāVā) : true marginal distribution
Ļ(xvā)Ā andĀ Ļ(xuā,xvā) are node and edge potential respectively
How: The marginal approximation can be obtained in an iterative fashion by the following mean field update:
q(t+1)(xvā) : marginal approximation of a set of variables xvā at step t+1
Steady State: qā(xvā)=Ļ(xvā)uāN(v)āāāexp(ā«uāqā(xuā)logĻ(xuā,xvā)du)ā
4) Compute long range graph convolution features (node classification)
Goal: extract long range features from graph and use that features to figure to capture the relation between graph topology and external labels
How: One possible parametrization of graph convolution features hvā can be updated from zeros initialization as:
hv(t+1)ā:graphĀ convolutionĀ featuresĀ forĀ nodeĀ vĀ atĀ stepĀ t+1
Ļ:aĀ nonlinearĀ element-wiseĀ operation
W1ā,W2ā:parametersĀ ofĀ theĀ operator
Steady State: hvāāāĻ(W1āxvā+W2āāuāN(v)āhuāā)
After that: the label for each node will be determined by the steady state feature hvāā by a labeling function: f(hvāā)
The Algorithm Learning Problem: framework of algorithm design
Assumption: we have collected the output of an iterative algorithm T over a single large graph.
Training dataset (input of the proposed algorithm) consists of:
input graph G=(V,E)
output of the iterative algorithm for a subset of nodes, V(y)āV , (Note: labeled nodes) from the graph
D={fvāā:=f(hvāā)ā£hvāā=T[{huāā}uāN(v)ā],vāV(y)}Ā Ā Ā Ā Ā (3)
hvāā : is the quantity in the iterative algorithm satisfying the steady-state conditions
f(ā ) : an additional labeling function taking input the steady-state quantity, produces the final label for each node
fvāā: ground truth of node v
Given the above D ,
Goal: to learn a parameterized algorithm AĪā , such that the output of the algorithm AĪā can mimic the output of the original algorithm T .
Namely:
The output of AĪā is: AĪā[G]={fvā^ā}vāV(y)ā , which are close to fvāā according to some loss function.
The algorithm learning problem for AĪā can be formulated into the following optimization problem:
ā(fvāā,fāvā) : loss function
Design goal: respect steady-state conditions and learn fast.
Core:
a steady-state operator TĪābetween vector embedding representations of nodes
a link function g mapping the embedding to the algorithm output.
Note: namely AĪā:TĪāĀ andĀ g
Stead-state operator and link function
initialization: hvāāconstantĀ forĀ allĀ vāV
update using equation (7)
Operator TĪā : a two-layer NN
General nolinear function class
The operator enforces the steady-state condition of node embeddings based on 1-hop
local neighborhood information.
Due to the variety of graph structures, this function should be able to handle different
number of inputs (i.e., different number of neighbor nodes)
Ļ(ā ) : element-wise activation function: Sigmoid, ReLU
W1ā,W2ā:weightĀ matricesĀ ofĀ NN. W1ā:firstĀ layer,Ā W2ā:2ndĀ layer
xvā : the optional feature representation of nodes
Link function (prediction function) g : a two-layer NN
General nolinear function class
input: node embeddings
predict: the corresponding algorithm outputs (like label of node)
hvā : node embeddings
V1ā,V2ā:parametersĀ ofĀ g. V1ā:firstĀ layer,Ā V2ā:2ndĀ layer
Ļ:task-specificĀ activationĀ function
linear regression: identity function Ļ(x)=x
multi-class classification: Ļ(ā ) is softmax (output a probabilistic simplex)
The overall optimization problem
W1ā,W2ā:parametersĀ ofĀ TĪā
V1ā,V2ā:parametersĀ ofĀ g
my understanding: semi-surpervised learning

How to solve (11): Stochastic Steady-state Embedding(SSE)
An alternating algorithm: alternate between:
using most current model to find the embeddings and make prediction
using the gradient of the loss with respect to {W1ā,W2ā,V1ā,V2ā} for update these parameters

Intuition:
RL (policy iteration): improve the policy minimizing the cost proportional to fā by updating the parameters TĪāĀ andĀ g
steady-state hvā^ā for each node: "value function"
embedding operator TĪā and classifier function g : "policy"
K-means and EM (mine)
"Value" estimation: estimate steady-state hvā^ā
limitation: it is prohibitive to solve the steady-state equation exactly in large-scale graph with millions of vertices since it requires visiting all the nodes in the graph.
Solution: stochastic fixed point iteration, the extra randomness on the constraints for sampling the constraints to tackle the groups of equations approximately.
In k-th step, first sample a set of nodes V~={v1ā,v2ā,ā¦,vNā}āV from the entire node set rather of the labeled set. Update the new embedding by moving averageļ¼
α:0ā¤Ī±ā¤1
"Policy" improvement: update parameters of TĪāĀ andĀ g
At the k-th step, once we have {hv(k)ā}vāVā satisfying the steady-state equation, we use vanilla stochastic gradient descent to update parameters {W1ā,W2ā,V1ā,V2ā} :
E[ā ] : the expectation is w.r.t. uniform distribution over labeled nodes V(y) .

nhā : the # of inner loops in "value" estimation
nfā : the # of inner loops in "policy" improvement

Complexity
Memory space
O(ā£Vā£): The dominating part is the persistent node embedding matrix{hvā}vāVā
O(Tā£Vā£): T-hops for GNN family
Time: the computational cost in each iteration is just proportional to the number of edges in each mini-batch.
"policy" improvement: O(Mā£Vā£ā£Eā£ā)
"value" estimation: O(Nā£Vā£ā£Eā£ā)
Reference
Last updated