Generalized physics-informed learning through language-wide differentiable programming
Author(s)
Rackauckas, C; Edelman, A; Fischer, K; Innes, M; Saba, E; Shah, VB; Tebbutt, W; ... Show more Show less
DownloadPublished version (532.5Kb)
Publisher with Creative Commons License
Publisher with Creative Commons License
Creative Commons Attribution
Terms of use
Metadata
Show full item recordAbstract
Copyright © 2020, for this paper by its authors. Scientific computing is increasingly incorporating the advancements in machine learning to allow for data-driven physics-informed modeling approaches. However, re-targeting existing scientific computing workloads to machine learning frameworks is both costly and limiting, as scientific simulations tend to use the full feature set of a general purpose programming language. In this manuscript we develop an infrastructure for incorporating deep learning into existing scientific computing code through Differentiable Programming (∂P). We describe a ∂P system that is able to take gradients of full Julia programs, making Automatic Differentiation a first class language feature and compatibility with deep learning pervasive. Our system utilizes the one-language nature of Julia package development to augment the existing package ecosystem with deep learning, supporting almost all language constructs (control flow, recursion, mutation, etc.) while generating high-performance code without requiring any user intervention or refactoring to stage computations. We showcase several examples of physics-informed learning which directly utilizes this extension to existing simulation code: neural surrogate models, machine learning on simulated quantum hardware, and data-driven stochastic dynamical model discovery with neural stochastic differential equations.
Department
Massachusetts Institute of Technology. Department of MathematicsJournal
CEUR Workshop Proceedings
Citation
Rackauckas, C, Edelman, A, Fischer, K, Innes, M, Saba, E et al. "Generalized physics-informed learning through language-wide differentiable programming." CEUR Workshop Proceedings, 2587.
Version: Final published version