社区所有版块导航
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学习  »  机器学习算法

基于深度学习模型预测西北太平洋热带气旋路径

气象学家 • 1 年前 • 497 次点击  

  第一时间获取气象科研资讯

气象学家公众号交流群

加入


      导读:在2021年底,我有幸与中科院大气物理研究所的一位研究伙伴合作,致力于研究如何准确预测台风路径。我扮演的角色只是分享使用长短时记忆网络(LSTM)进行PM2.5预测的经验(参见百度KDD Cup 2022paddle赛道10th基线代码详解),解释其中的细节,并分享了与台风相关的多篇文献。在这个研究中,有关于Gated Recurrent Unit(GRU)和卷积神经网络(CNN)的结构组合、网络搭建,以及如何引入气象环境场信息,这些都是我合作伙伴的创新亮点。这篇论文花费了近半年的时间来完成,经历了长达4个月的审稿过程。在这个过程中,得到了许多老师和同学的宝贵帮助与支持。最终,我们的研究成果被中科院1区期刊《Geoscientific Model Development(GMD)》接收并出版(https://doi.org/10.5194/gmd-16-2167-2023)。在下文中,我将简要介绍本文的亮点,并分享在未来科研中使用人工智能处理气象数据的经验,以供大家学习和借鉴。我们也欢迎长期合作的伙伴们与我们联系。

      本文的摘要:
      热带气旋(TC)是最严重的气象灾害之一,快速、准确的路径预报对于防灾减灾至关重要。由于TC轨迹受到多种因素(导向流、下垫面热结构、大气环流)的影响,其轨迹呈现出高度复杂的非线性行为。深度学习在模拟非线性系统方面具有许多优势。本文基于深度学习技术,探讨了1979年至2021年西北太平洋热带气旋的运动情况,分为训练集(1979-2014年)、验证集(2015-2018年)和测试集(2019-2021年) ,我们创建 6-72 小时的 TC 轨迹预报。
仅使用历史轨迹数据作为输入来评估所使用的以下三种循环神经网络的预测:循环神经网络(RNN)、长短期记忆(LSTM)和门控循环单元(GRU)模型。GRU 方法表现最好;为了进一步提高预测精度,提出了一种结合 GRU 和卷积神经网络(CNN)的模型(称为 GRU_CNN)来捕获随时间变化的特征。通过添加转向流、海面温度和气旋周围位势高度的再分析数据,我们可以提取足够的历史轨迹特征和三维空间特征信息。结果表明,GRU_CNN 优于其他没有 CNN 层的深度学习模型。此外,通过控制实验分析额外的三个环境因素,可以得出结论,热带气旋的历史转向流起着关键作用,特别是对于24小时内的短期预测,而海面温度和位势高度可以逐渐改善24小时–72 小时预报。6小时和12小时的平均距离误差分别为17.22和43.90公里。与中央气象台6 h和12 h预报结果(27.57 km和59.09 km)相比,本文提出的模型适用于TC路径的短期预报。

      其次是本文的实验设计:
      我们的目标是利用前24小时的轨迹数据和周围环境场来预测接下来6-72小时的TC运动。我们探索1979-2021年西北太平洋TC运动,以当前TC中心为参考点,以未来6-72 h的经纬度变化为定量预测变量。由于最预报小时为72小时,输入序列时间长度为24小时,因此去除持续时间超过96小时的TC。根据输入-预测序列长度的滑动窗口获得的所有样本按时间顺序分为以下三组:训练集(1979-2014)、验证集(2015-2018)和测试集(2019-2021) 。有36 473个样本,其中90%经过训练,其余10%经过验证;使用2019年至2021年的49台TC进行测试,测试样本数为2095个。

     所用到的模型框架:
     
1.RNN 可以使用具有自反馈的神经元处理任意长度的序列,其特点是有意设计用于保存历史信息的架构特征,显示出处理顺序数据的卓越能力(Graves 等人,2013 年;Bathla,2020 年;Wang 和 Fu,2020 年) 。然而,简单的 RNN 很难处理序列的长期依赖性;当序列长度超过一定阈值时,信息可能在传输过程中消失,导致预测精度出现较大偏差。Hochreiter和Schmidhuber(1997)提出的LSTM网络可以避免标准RNN中出现的梯度消失和爆炸现象。而 GRU (Cho et al, 2014) 是基于 LSTM 的改进和优化的神经网络,它具有更快的收敛速度并保持接近 LSTM 的准确度水平。
      2.
CNN 可以通过处理输入模式并从上到下、从左到右转换相同的卷积核来自动提取特征。空间关系随着神经元的分布而固定,神经元的局部连接和权重共享通过减少参数数量来降低训练复杂度。Lecun 等人 (1998) 首先使用 CNN 进行平均池化和 tanh 激活函数的手写字符识别。Krizhevsky 等人(2012)在 ImageNet 竞赛中提出了 AlexNet 模型,使用 ReLU 函数代替传统的 tanh 函数引入非线性并解决网络较深时激活函数的梯度消失问题,采用最大池化避免平均池化的模糊效果。Ioffe 和 Szegedy (2015) 将批量归一化应用于图像分类模型,显著加速了深度网络的训练,并且批量归一化有助于缓解梯度爆炸或消失的问题。
      3.由于数据源的差异,必须开发一个新的模型,使用 Keras 深度学习框架将四种信息源集成到神经网络中。具体模型结构如图2所示。3D气象数据叠加在位势高度(气压水平)上,因此CNN的输入数据由多个三维矩阵组成;也就是说,图1中浅灰色阴影区域的面积表示CNN模型的3D张量输入层。灰色实心箭头表示在时间维度处理中应用于一系列张量的 TimeDistributed 层。此外,CNN 采用交替卷积层(Conv 层)和最大池层(MaxPool 层)的典型架构。空心黑色箭头表示 CNN 网络末端将三维数据转换为一维向量(1D 向量)的扁平层,斜线填充的箭头表示网络框架中的全连接层(Dense 层)。所有隐藏层都配备了批量归一化,本文采用ReLU作为激活函数。图2中深灰色阴影区域的面积是TC(2D张量输入层)的二维轨迹数据,其中x j i 表示第j个时间戳处第i个特征的输入值(i ∈ (1 , n), j ∈ (1,t)),并将它们输入到 GRU 中。该模型基于 Adam 优化器,并使用预测值和实际值之间的 RMSE 作为损失函数进行训练。由于风场、压力场、海表温度和过去的轨迹数据之间的特性不同,神经网络需要不同的学习率。因此,模型中每个分支的参数可以用相同的任务来训练,然后可以将分支融合成一个网络(Concat层);也就是说,红色虚线箭头表示将多个向量合并为一个向量。最终将其与全连接层的输出拼接起来;此后,可以稍微调整参数。表1列出了网络框架中各层的输入和输出大小,包括卷积核大小、步幅和通道数。

图1 GRU_CNN的模型框架和网络结构

表 1. GRU_CNN 的各层架构

      实验结果展示:
      表2比较了GRU_CNN和各种深度学习模型的结果,以平均绝对距离误差的形式显示了预测结果。很明显,GRU_CNN 在长期预测方面具有绝对优势。
与标准 RNN 以及 CLIPER 和 BP 两种传统方法相比,它们可以更好地预测 TC 的中长期轨迹。GRU_CNN 比没有 CNN 的模型更准确。6、24、48和72 h的平均距离误差分别为17.22、106.16、281.52和502.71 km。与Huang等人(2022)提出的NMSTN方法相比,误差也有所减小。此外,虽然长期预报与数值预报结果存在较大差异,但平均距离预报结果优于中央气象台(CMO)提供的短期预报结果,包括6小时( 27.57 公里)和 12 小时(59.09 公里)预报。
      如图2所示,三个RNN在48和72小时预测的最大距离误差分别超过500和1000公里。 RNN中仅考虑TC的轨迹特征而忽略外部大气环境特征会导致TC轨迹预测的不稳定。 GRU_CNN模型预测的最大值和平均值的误差均显著降低。

表2 多种深度学习模型预测的平均绝对距离误差(km)比较。粗体值突出了最佳性能


图 2. 三种循环神经网络(RNN、LSTM、GRU)和本文方法(GRU_CNN)创建 6-72 小时预测(间隔 6 小时)的绝对平均距离箱线图

      实验结果展示:
      
表3结果表明,GRU+UV表现最好,其次是GRU+pressure,最后是GRU+SST,表明导向流在TC预报中起主导作用,特别是在短期<24 h预报中。仅添加转向流的预报结果与GRU_CNN的预报结果接近,而48和72 h的结果说明海温和位势高度对TC长期预报轨迹的影响逐渐增大

图 3. 热带气旋FAXAI (2019)的预报轨迹 

表 3 结合不同环境特征的轨迹数据比较RMSE是经纬度的均方根误差,距离是平均绝对距离误差(km)

      不足与展望:
     随着预测时间超过24小时,模型的准确性呈下降趋势。气旋历史转向流在提高短期预报准确性方面发挥了显著作用,然而,在长期预测中,海温和位势高度因素具有特殊的影响,被认为是拓宽和改进预测的关键路径。此外,深度学习模型在热带气旋路径预测中的应用表现出卓越的能力,能够准确预测突然转向北或西北的台风,尽管在异常轨迹的情况下,可能存在相当大的距离误差,这可能归因于我们研究中天气分析数据的缺乏。长期以来,气旋预测一直是气象领域的一项巨大挑战。随着未来科技的不断进步,气象数据的获取变得更加便捷,气象数据库也逐渐扩大。同时,深度学习模型展现出了出色的灵活性,能够轻松扩展。未来的方向将包括整合更多数据源,提取更多有价值的特征,以进一步提高深度学习模型的预测准确性。此外,未来工作将考虑引入更多的模型预测变量,以提供更多有用的信息,例如气旋的强度、降雨量和风速等。
      除此之外,关于数据和代码可用性方面,GMD期刊要求完整上传可供其他研究者进行复现和改进,这里我也将链接放在这里,大家自取:https://doi.org/10.5281/zenodo.7454324到目前为止,下载量达16次:

      审稿人提出值得思考的问题:我想建议作者在介绍数值天气预报、统计模型和深度学习的优点和局限性时更加小心,避免对非深度学习方法的潜在偏见。例如,第 49-50 行表示 NWP 模型存在“方法限制”,需要“大量计算”。需要界定这些限制。如此众多的计算的计算性能是否不可接受?这份手稿中呈现的工作当然是高效的,可以在几秒钟内给出结果。但是 NWP 模型需要多长时间?然后作者提到“物理大气机制的准确数学描述”。NWP 模型并不总是准确的,可能涉及许多近似值和参数化。作者可能试图传达这样的信息:数值天气预报模型需要描述物理过程,而不是从数据中学习的机器学习方法。但这不是限制,它是不同建模方法的属性。     
       我们是这么回答的:
感谢您的宝贵建议。我们同意审稿人的观点,即这些陈述可能存在潜在偏见。第 49-50 行“需要大量的计算,对大气物理机制准确的描述,以及精准的初始条件。”修改为“依赖高性能计算机且需要精确初始条件的方法存在局限性”。然而,由于计算机性能、模式分辨率以及所选区域的大小不同,数值模型预测的运行时间很难确定。
     未来利用人工智能研究的建议和思考:1.针对未来气象数据的外推任务,构建良好的模型框架较单一模型网络架构效果要好2.数据集的构建要求特征洗干净,引入气象环境信息越丰富外推预报的效果可能会更好。3.深度学习网络架构能否完全替代NWP模型预报台风路径的参数化结构,即完全不需要NWP进行预报,从代码实现角度上难度多大?另一种思考,在NWP预报台风路径的基础上,再做订正,效果是否比现有预报外推更好?






声明:欢迎转载、转发本号原创内容,可留言区留言或者后台联系小编(微信:gavin7675)进行授权。气象学家公众号转载信息旨在传播交流,其内容由作者负责,不代表本号观点。文中部分图片来源于网络,如涉及作品内容、版权和其他问题,请后台联系小编处理。


往期推荐

 获取ERA5-Land陆面高分辨率再分析数据(32TB)

 1942-2022年中国地面气象站观测数据免费分享

 获取全球GPM降水数据,半小时/逐日(4TB)

 获取1998-2019 TRMM 3B42逐日降水数据

★  获取最新版本CMIP6降尺度数据集30TB

★ 获取ERA5常用变量再分析数据26TB

 EC数据商店推出Python在线处理工具箱

★ EC打造实用气象Python工具Metview

★ 机器学习简介及在短临天气预警中的应用

★ Nature-地球系统科学领域的深度学习及理解

★ 采用神经网络与深度学习来预报降水、温度

★ 灵魂拷问:ChatGPT对气象人的饭碗是福是祸?

★ 气象局是做啥的?气象局的薪水多少?

★  一位气象学家尝试ChatGPT复现Nature子刊的研究,他真的会面临失业吗?!


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