社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

聊一聊机器学习在 WRF 模型上的应用

锐多宝 • 1 年前 • 283 次点击  

这是一个粉丝的万事屋的需求,原始需求是这样的:

我的问题是,目前对机器学习在 WRF 模型上的应用有哪些方向?希望您对这方面有了解且能出一期简单的科普

要聊这个话题说实话我还是有一些压力,因为实话实说我本身既不是 AI 方面的专家也不是 WRF 方面的专家。而且机器学习对数值预报的辅助应用在行业内也是比较受关注的话题,有很多老师在这个方面也做了一些研究。比如在准备本篇文章的过程中我就拜读了《人工智能技术气候预测应用简介》这篇综述文章,个人觉得论文内容在于机器学习在数值预报的辅助应用的话题上已经介绍得相当全面和深入了,强烈建议对这一话题感兴趣的朋友阅读一下这篇论文。虽然我觉得我肯定不可能写得比这篇论文更好,但是我也不想鸽掉这个需求,所以我就简要聊一下我个人在这个话题上的一些见解,不一定对。

机器学习可以为 WRF 做什么

首先简单介绍一下 WRF,WRF(Weather Research and Forecasting Model) 是一个历史悠久、规模庞大的开源的区域数值天气预报项目(https://github.com/wrf-model/WRF),主要由 Fortran 语言编写(项目中还纵跨了 Fortran 语言的多个历史版本),包含了用于大气化学和空气污染建模的 WRF-Chem 及用于水文模拟的 WRF-Hydro 扩展分支,全部代码量约200万行,通常运行需要消耗大量的并行计算资源(CPU)。

粗略地划分,WRF 的预报流程大致分为前处理 -> 模型运算 -> 后处理三大部分。其中模型运算部分是 WRF 运算的核心,它是由复杂的数学运算代码编写的,通常来说 ML(Machine Learning,机器学习)是难以参与其中的,但是上述论文中也提到有人尝试用机器学习方法直接求解数值预报中的偏微分方程,说明这也是一种利用 ML 为数值预报赋能的研究方向。但这明显已经超出了 WRF 的范畴,对于 WRF 这种历史悠久的巨型项目来说,用 ML 方法替换核心求解过程的难度可能要高于新建一个项目推倒重来。

因此在我看来,就 WRF 而言,ML 为其服务的主要关注点可能还是应该放在前处理(这里的前处理不是狭义地单指 WPS,而是模型运算之前的所有流程,包括资料同化)和后处理阶段上。

资料同化

众所周知,高质量的数值预报离不开资料同化,而资料同化的质量也直接影响着预报的效果。资料同化通俗来说就是利用最新的观测资料对初始预报场做订正,生成一个与真实世界更接近的初始场用于模式预报。资料同化与模型运算是解耦的,有着明确的边界(例如 WRF 框架中有专门的资料同化组件 WRFDA)这也让用机器学习替换原有资料同化的过程从工程上变得相对简单。

目前传统主流方案有集合卡尔曼滤波(EnKF)、3/4D变分(Var)等,这些方案具有比较强的可解释性。但是也有着比较明显的缺点,例如像3D-Var和4D-Var这样的方法在其核心算法中做了线性或准线性的假设,这可能限制了它们捕获非线性系统的能力。另外在计算开销方面,4D-Var需要多次运行模型来计算所需的梯度信息,这可能非常耗时。而像EnKF这样的方法需要维护一个集合,集合的大小和表示可能限制了其能够捕获的不确定性的范围,并且集合成员较多时其运算开销也比较大。

而基于数据驱动的机器学习有着一些天然的优势,比如深度学习模型,特别是神经网络,天然地可以处理高度非线性的关系,这是许多传统方法难以捕获的。此外机器学习方法直接从数据中学习,这意味着它们可能更适合捕获复杂的、从理论上难以建模的大气规律。

近年来,许多学者利用人工智能改进数据同化方法。其中我觉得比较有意思的是伦敦帝国理工的一个学者利用循环神经网络学习数据同化过程,提出了 DDA(Deep Data Assimilation,深度数据同化)2的概念。其他还有一些研究工作的列举可以下面这两篇论文的介绍,由于论文真的写得很好所以在这里我就不再赘述。DOI:10.13878/j.cnki.dqkxxb.20210623003DOI:10.11898/1001-7313.20210101

模式后处理

模式后处理的分支有很多,比如模式输出后订正,它是目前行业内开展得比较流行的一种技术,这个领域主要是对模式输出的结果做二次订正。实践证明这种技术确实可以有效地提高模式预报的质量。当下比较流行的方案是 MOS(Model Output Statistics),它通过结合数值模型的预测和观测历史数据来纠正和优化模型输出。

MOS 的主要思想是:尽管数值模型可能在某些方面存在偏差或误差,但这些偏差往往是可以预测的。例如,如果一个模型在特定条件下系统性地预测温度偏高,那么可以使用 MOS 技术来纠正这种偏差。

类似地,如果将简单的统计订正方法替换成机器学习的算法,也就成了机器学习模式后处理,或者一种比较新兴的说法是 MOML(Model Output Machine Learning)。我所知道的一个比较典型的例子是国内某气象公司就是基于 XGBoost 的方法做模式后订正,还在某全球气象预报评测的结果中获得了不错的成绩。另据报道,在北京冬奥会期间举办的预报测试比赛中,MOML 算法也取得了不错的成绩。由于模式后订正在研究和工程化上成本较低,易于开展和实施,且效果立竿见影,因此有很多公司和团队在这一领域倾注了不少人力物力。

除了后订正以外,机器学习技术还可以在 WRF 模式输出产品的时空降尺度方面提供帮助。得益于深度学习在图像处理领域取得的进步,人们在“图像超分辨率”或者叫“图像去模糊”技术上已经取得了理想的效果。对于模式输出的格点预报这种“类图”数据,尝试借助图片领域的超分辨率技术获取更高空间分辨率的预报产品。此外,基于 GAN 类神经网络可以开发出善于在预报间隔之间“创作”的模型,从而获取更高时间分辨率且高质量的预报产品,例如将3小时预报变为1小时预报甚至10分钟预报,而这一工作原本通常是由线性插值完成的。

相信未来随着算力的提升和观测数据的增加,基于机器学习的模式后订正还有更多的想象空间。

参考文献&延伸阅读

杨淑贤,零丰华,应武杉等.人工智能技术气候预测应用简介[J].大气科学学报,2022,45(05):641-659.DOI:10.13878/j.cnki.dqkxxb.20210623003.

孙健, 曹卓, 李恒, 等. 人工智能技术在数值天气预报中的应用. 应用气象学报, 2021, 32(1): 1-11. DOI:  10.11898/1001-7313.20210101.

Arcucci, R.; Zhu, J.; Hu, S.; Guo, Y.-K. Deep Data Assimilation: Integrating Deep Learning with Data Assimilation. Appl. Sci. 2021, 11, 1114. https://doi.org/10.3390/app11031114

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/169455
 
283 次点击