TorchDA: A Python package for performing data assimilation with deep learning forward and transformation functions

IF 7.2 2区 物理与天体物理 Q1 COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS
{"title":"TorchDA: A Python package for performing data assimilation with deep learning forward and transformation functions","authors":"","doi":"10.1016/j.cpc.2024.109359","DOIUrl":null,"url":null,"abstract":"<div><p>Data assimilation techniques are often confronted with challenges handling complex high dimensional physical systems, because high precision simulation in complex high dimensional physical systems is computationally expensive and the exact observation functions that can be applied in these systems are difficult to obtain. It prompts growing interest in integrating deep learning models within data assimilation workflows, but current software packages for data assimilation cannot handle deep learning models inside. This study presents a novel Python package seamlessly combining data assimilation with deep neural networks to serve as models for state transition and observation functions. The package, named TorchDA, implements Kalman Filter, Ensemble Kalman Filter (EnKF), 3D Variational (3DVar), and 4D Variational (4DVar) algorithms, allowing flexible algorithm selection based on application requirements. Comprehensive experiments conducted on the Lorenz 63 and a two-dimensional shallow water system demonstrate significantly enhanced performance over standalone model predictions without assimilation. The shallow water analysis validates data assimilation capabilities mapping between different physical quantity spaces in either full space or reduced order space. Overall, this innovative software package enables flexible integration of deep learning representations within data assimilation, conferring a versatile tool to tackle complex high dimensional dynamical systems across scientific domains.</p></div><div><h3>Program summary</h3><p><em>Program Title:</em> TorchDA</p><p><em>CPC Library link to program files:</em> <span><span>https://doi.org/10.17632/bm5d7xk6gw.1</span><svg><path></path></svg></span></p><p><em>Developer's repository link:</em> <span><span>https://github.com/acse-jm122/torchda</span><svg><path></path></svg></span></p><p><em>Licensing provisions:</em> GNU General Public License version 3</p><p><em>Programming language:</em> Python3</p><p><em>External routines/libraries:</em> Pytorch.</p><p><em>Nature of problem:</em> Deep learning has recently emerged as a potent tool for establishing data-driven predictive and observation functions within data assimilation workflows. Existing data assimilation tools like OpenDA and ADAO are not well-suited for handling predictive and observation models represented by deep neural networks. This gap necessitates the development of a comprehensive package that harmonizes deep learning and data assimilation.</p><p><em>Solution method:</em> This project introduces TorchDA, a novel computational tool based on the PyTorch framework, addressing the challenges posed by predictive and observation functions represented by deep neural networks. It enables users to train their custom neural networks and effortlessly incorporate them into data assimilation processes. This integration facilitates the incorporation of real-time observational data in both full and reduced physical spaces.</p></div>","PeriodicalId":285,"journal":{"name":"Computer Physics Communications","volume":null,"pages":null},"PeriodicalIF":7.2000,"publicationDate":"2024-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0010465524002820/pdfft?md5=cf361b3ec606c0abf6dee1adecdebe6d&pid=1-s2.0-S0010465524002820-main.pdf","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computer Physics Communications","FirstCategoryId":"101","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0010465524002820","RegionNum":2,"RegionCategory":"物理与天体物理","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS","Score":null,"Total":0}
引用次数: 0

Abstract

Data assimilation techniques are often confronted with challenges handling complex high dimensional physical systems, because high precision simulation in complex high dimensional physical systems is computationally expensive and the exact observation functions that can be applied in these systems are difficult to obtain. It prompts growing interest in integrating deep learning models within data assimilation workflows, but current software packages for data assimilation cannot handle deep learning models inside. This study presents a novel Python package seamlessly combining data assimilation with deep neural networks to serve as models for state transition and observation functions. The package, named TorchDA, implements Kalman Filter, Ensemble Kalman Filter (EnKF), 3D Variational (3DVar), and 4D Variational (4DVar) algorithms, allowing flexible algorithm selection based on application requirements. Comprehensive experiments conducted on the Lorenz 63 and a two-dimensional shallow water system demonstrate significantly enhanced performance over standalone model predictions without assimilation. The shallow water analysis validates data assimilation capabilities mapping between different physical quantity spaces in either full space or reduced order space. Overall, this innovative software package enables flexible integration of deep learning representations within data assimilation, conferring a versatile tool to tackle complex high dimensional dynamical systems across scientific domains.

Program summary

Program Title: TorchDA

CPC Library link to program files: https://doi.org/10.17632/bm5d7xk6gw.1

Developer's repository link: https://github.com/acse-jm122/torchda

Licensing provisions: GNU General Public License version 3

Programming language: Python3

External routines/libraries: Pytorch.

Nature of problem: Deep learning has recently emerged as a potent tool for establishing data-driven predictive and observation functions within data assimilation workflows. Existing data assimilation tools like OpenDA and ADAO are not well-suited for handling predictive and observation models represented by deep neural networks. This gap necessitates the development of a comprehensive package that harmonizes deep learning and data assimilation.

Solution method: This project introduces TorchDA, a novel computational tool based on the PyTorch framework, addressing the challenges posed by predictive and observation functions represented by deep neural networks. It enables users to train their custom neural networks and effortlessly incorporate them into data assimilation processes. This integration facilitates the incorporation of real-time observational data in both full and reduced physical spaces.

TorchDA:利用深度学习前向和转换函数执行数据同化的 Python 软件包
数据同化技术在处理复杂的高维物理系统时往往面临挑战,因为复杂的高维物理系统的高精度模拟计算成本高昂,而且难以获得可用于这些系统的精确观测函数。这促使人们越来越关注在数据同化工作流程中集成深度学习模型,但目前的数据同化软件包无法在内部处理深度学习模型。本研究提出了一个新颖的 Python 软件包,将数据同化与深度神经网络无缝结合,作为状态转换和观测函数的模型。该软件包名为 TorchDA,实现了卡尔曼滤波、集合卡尔曼滤波(EnKF)、三维变分(3DVar)和四维变分(4DVar)算法,可根据应用需求灵活选择算法。在洛伦兹 63 和二维浅水系统上进行的综合实验表明,与没有同化的独立模型预测相比,该算法的性能显著提高。浅水分析验证了数据同化功能在全空间或缩减阶空间不同物理量空间之间的映射。总之,这一创新软件包能够在数据同化中灵活集成深度学习表示法,为解决跨科学领域的复杂高维动态系统问题提供了一个多功能工具:TorchDACPC Library 程序文件链接:https://doi.org/10.17632/bm5d7xk6gw.1Developer's repository 链接:https://github.com/acse-jm122/torchdaLicensing provisions:GNU 通用公共许可证版本 3编程语言:Python3外部例程/库:Pytorch.问题性质:深度学习最近已成为在数据同化工作流程中建立数据驱动的预测和观测功能的有力工具。现有的数据同化工具(如 OpenDA 和 ADAO)并不适合处理以深度神经网络为代表的预测和观测模型。因此,有必要开发一个能协调深度学习和数据同化的综合软件包:本项目介绍了基于PyTorch框架的新型计算工具TorchDA,以应对深度神经网络所代表的预测和观测功能所带来的挑战。它使用户能够训练自己定制的神经网络,并毫不费力地将其纳入数据同化过程。这种整合有助于将实时观测数据纳入完整和缩小的物理空间。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
Computer Physics Communications
Computer Physics Communications 物理-计算机:跨学科应用
CiteScore
12.10
自引率
3.20%
发文量
287
审稿时长
5.3 months
期刊介绍: The focus of CPC is on contemporary computational methods and techniques and their implementation, the effectiveness of which will normally be evidenced by the author(s) within the context of a substantive problem in physics. Within this setting CPC publishes two types of paper. Computer Programs in Physics (CPiP) These papers describe significant computer programs to be archived in the CPC Program Library which is held in the Mendeley Data repository. The submitted software must be covered by an approved open source licence. Papers and associated computer programs that address a problem of contemporary interest in physics that cannot be solved by current software are particularly encouraged. Computational Physics Papers (CP) These are research papers in, but are not limited to, the following themes across computational physics and related disciplines. mathematical and numerical methods and algorithms; computational models including those associated with the design, control and analysis of experiments; and algebraic computation. Each will normally include software implementation and performance details. The software implementation should, ideally, be available via GitHub, Zenodo or an institutional repository.In addition, research papers on the impact of advanced computer architecture and special purpose computers on computing in the physical sciences and software topics related to, and of importance in, the physical sciences may be considered.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信