Core Concepts
Neural networks can be trained to directly find the equilibrium point of an algorithm, without the need to match each network iteration with a step of the algorithm.
Abstract
The paper introduces the Deep Equilibrium Algorithmic Reasoner (DEAR), a novel approach to learning algorithms by identifying the equilibrium point of a graph neural network (GNN) equation.
The key insights are:
Algorithms often have an equilibrium state where further iterations do not change the output. Examples include shortest-path, minimum spanning tree, and sorting algorithms.
By aligning the neural algorithmic reasoning (NAR) models to this equilibrium property, the model accuracy can be improved.
Removing the requirement that each GNN iteration must match a step of the algorithm and instead finding the equilibrium point can reduce the required number of GNN iterations.
The authors implement DEAR using a Pointer Graph Network architecture with a gating mechanism. They evaluate DEAR on four algorithms from the CLRS-30 benchmark: Bellman-Ford, Floyd-Warshall, Strongly Connected Components, and Insertion Sort. DEAR outperforms the baseline NAR models, especially on the Insertion Sort task.
The authors also discuss potential issues like underreaching and oversmoothing, and how the DEAR approach addresses them. They note that adding supervision on intermediate algorithm states is ambiguous due to the lack of one-to-one correspondence between solver iterations and algorithm steps.
Stats
Algorithms in the CLRS-30 benchmark often have an equilibrium state where further iterations do not change the output.
The CLRS-30 benchmark includes 30 iconic algorithms from the Introduction to Algorithms textbook.
The test split in CLRS-30 comprises graphs four times larger than the training set, designed for assessing out-of-distribution generalization.
Quotes
"Once the optimal solution is found, further algorithm iterations will not change the algorithm's output prediction values."
"We will call such state an equilibrium – additional applications of a function (an algorithm's iteration) to the state leave it unchanged."