We contribute NeuralSolver, a novel recurrent solver that can efficiently and consistently extrapolate, i.e., learn algorithms from smaller problems (in terms of observation size) and execute those algorithms in large problems. Contrary to previous recurrent solvers, NeuralSolver can be naturally applied in both same-size problems, where the input and output sizes are the same, and in different-size problems, where the size of the input and output differ. To allow for this versatility, we design NeuralSolver with three main components: a recurrent module, that iteratively processes input information at different scales, a processing module, responsible for aggregating the previously processed information, and a curriculum-based training scheme, that improves the extrapolation performance of the method. To evaluate our method we introduce a set of novel different-size tasks and we show that NeuralSolver consistently outperforms the prior state-of-the-art recurrent solvers in extrapolating to larger problems, considering smaller training problems and requiring less parameters than other approaches.
翻译:我们提出了NeuralSolver,一种新颖的循环求解器,能够高效且一致地进行外推,即从较小规模(就观测尺寸而言)的问题中学习算法,并在大规模问题中执行这些算法。与以往的循环求解器不同,NeuralSolver可自然地应用于输入输出尺寸相同的等尺寸问题,以及输入输出尺寸不同的异尺寸问题。为实现这种通用性,我们为NeuralSolver设计了三个主要组件:一个循环模块,用于在不同尺度上迭代处理输入信息;一个处理模块,负责聚合先前处理过的信息;以及一个基于课程学习的训练方案,用于提升该方法的外推性能。为评估我们的方法,我们引入了一系列新颖的异尺寸任务,并证明在考虑较小训练问题且所需参数少于其他方法的情况下,NeuralSolver在向更大规模问题外推时始终优于现有最先进的循环求解器。