Scientific computing is an essential tool for scientific discovery and engineering design, and its computational cost is always a main concern in practice. To accelerate scientific computing, it is a promising approach to use machine learning (especially meta-learning) techniques for selecting hyperparameters of traditional numerical methods. There have been numerous proposals to this direction, but many of them require automatic-differentiable numerical methods. However, in reality, many practical applications still depend on well-established but non-automatic-differentiable legacy codes, which prevents practitioners from applying the state-of-the-art research to their own problems. To resolve this problem, we propose a non-intrusive methodology with a novel gradient estimation technique to combine machine learning and legacy numerical codes without any modification. We theoretically and numerically show the advantage of the proposed method over other baselines and present applications of accelerating established non-automatic-differentiable numerical solvers implemented in PETSc, a widely used open-source numerical software library.
翻译:科学计算是科学发现与工程设计的重要工具,其计算成本始终是实践中的核心关注点。为加速科学计算,采用机器学习(尤其是元学习)技术来选择传统数值方法的超参数是一种有前景的途径。已有大量研究朝此方向推进,但其中许多方法要求数值方法具备自动微分能力。然而,现实中大量实际应用仍依赖于成熟但无法自动微分的传统代码,这阻碍了科研工作者将前沿研究应用于自身问题。为解决这一难题,我们提出一种非侵入式方法,结合了一种新颖的梯度估计技术,可在无需任何修改的前提下整合机器学习与传统数值代码。我们从理论与数值两方面证明了该方法相较于其他基准方法的优势,并展示了其在PETSc(一个广泛使用的开源数值软件库)中加速已建立的不可自动微分数值求解器的应用实例。