APP下载

基于自动机器学习的机场温度预报方法研究

2022-01-14朱国栋孙少明

沙漠与绿洲气象 2021年6期
关键词:机器准确率网格

朱国栋,朱 蕾,王 楠,孙少明,梁 艳

(1.民航新疆空中交通管理局空管中心气象中心,新疆 乌鲁木齐830016;2.民航新疆空中交通管理局培训中心,新疆 乌鲁木齐830016;3.民航新疆空中交通管理局气象服务部,新疆 乌鲁木齐830016)

在民航机场运行中,机场温度是决定航空器配载和起飞降落滑跑距离的重要气象指标。随着机场温度的升高,航空器的起飞全重会逐渐减小,滑跑距离变长,为确保航空器运行的安全,必须对航空器进行减载[1],或者调整起飞计划等待温度降低,这些操作都将会对航空公司运力资源调配造成困难,严重影响航空公司效益和旅客出行体验[2]。

温度作为天气预报中最基本的气象要素,其变化受到诸如季节、日照、天气现象等因子的影响。国内已有研究表明,ECMWF细网格模式2 m温度预报产品对制作乌鲁木齐市未来24和48 h温度预报具有很好的指导意义[3],国内多地采用该产品进行最高、最低温度预测,均取得较好效果[4-6]。结合东北中东部复杂地形条件下,EC模式温度预报产品在山区预报准确率偏低,系统性偏差较大,而通过客观订正方法,可将山区的预报均方根误差由1.48℃降低至平均0.03℃[7]。通过采用一元线性回归、多元回归方程、误差订正以及最优集合订正等方法,并结合本地天气特征,进行温度客观预报[8-11],能较好地改善ECMWF细网格模式直接输出的温度预报效果。除了结合EC数值预报之外,还有结合WRF中尺度模式产品,通过MOS方法改善机场要素预报的效果[12]。

随着近些年机器学习及深度学习方法的快速发展,国内外学者尝试利用支持向量机、人工神经网络、深度学习等方法,构建预测模型,改善温度预测结果[13-25]。但是已有的站点温度预测方法,缺少逐小时的温度预测研究,且未综合考量不同机器学习方法的差异,因此本文根据ECMWF细网格数值模式0~72 h预报产品,引入各层次风、温度、高度及地面风、降水、气压、温度等要素构建模型因子,利用自动机器学习工具包,分别构建深度学习模型[26](Auto-Keras)和常规机器学习模型[27](Auto-sklearn),进行机场逐小时温度预报的预测,经过自动机器学习方法的自动建模和参数寻优,模型改善了数值模式直接输出的站点温度预报,提高了机场逐小时温度预报准确率。

1 资料与研究方法

1.1 资料引用

结合机场气象服务工作的需求,将乌鲁木齐机场逐小时2 m温度作为预报对象。选取2015年1月—2021年3月ECMWF细网格数值预报的预报产品作为因子,包含逐3 h各层次高度、u分量、v分量、温度、相对湿度、垂直速度、散度等要素,以及地面风、温度、露点温度、气压、降水等要素。考虑模式的不稳定和准确性,临近起报时间的预报场准确性和参考性较高,故选取0~72 h内的预报产品进行建模。考虑地面、高空的模式产品网格间距的差异,此处统一选用最近网格点方法,将地面、高空的预报产品中距离乌鲁木齐机场最近网格点的数据抽取出来,并与小时、月份信息共同构成数据集,合计93个因子。

由于EC细网格数值预报产品时间间隔3 h,与机场逐小时温度预报无法一一对应建模,此处将EC细网格数据3 h间隔数据线性插值至1 h,剔除缺测数据后,与机场逐小时温度构建训练样本,合计44 529条样本,为确保足够的训练样本,并预留一定数量的检验样本,将67%的样本(29 835条)用于建模训练和参数寻优,剩余33%的样本(14 694条)用于模型结果的检验。模型训练过程中为防止欠拟合和过拟合,不同的自动机器学习方法采用不同的方法来处理,其中Auto-sklearn方法通过多次尝试模型寻优的时长,防止训练次数过多、或过少,并按比率保留多个机器学习方法,集成获得最优模型。而Auto-Keras则采用K-fold交叉验证,在模型构建过程中从训练样本中抽取20%的数据进行交叉验证,构建最优的深度学习模型。

1.2 自动机器学习方法

在给定的数据集中实现最佳的预测模型,传统的机器学习方法需要数据预处理和清洗、选择和构建合适的特征、选择合适的模型、优化模型超参数、机器学习模型后流程处理等,这些任务的处理通常非常复杂,一般非机器学习专家无法处理,随着越来越多的模型不断被开发出来,如何选择合适的模型变得越来越困难,并且参数调优需要遍历所有可能的值,这些都需要大量的人工操作,进而导致流程效率低,难于管理。

自动机器学习(AutoML)的任务是使所有这些步骤(或至少其中一些步骤)自动化[26],消除常规的操作顺序和模型的手动枚举,隐藏建模过程中大量的数学问题和代码编写过程,简化气象领域中应用机器学习方法的流程,将机器学习专家的经验固化,利用最优的数据科学实践,减少人工对机器学习过程的参与,帮助非机器学习专家轻松处理任务,在确保预测准确性的基础上提高建模效率。

目前,许多商业公司也在积极发展自动机器学习平台的开发,例如微软Azure Automated ML、谷歌的AutoML,通过购买公有云平台的算力和机器学习算法,即可快速构建机器学习业务流程。同时机器学习开源社区,也积极借鉴商业公司成熟的算法,推出各类开源的自动机器学习工具,例如基于贝叶斯优化和自动集成构造的Auto-sklearn,以及利用神经网络架构搜索的Auto-Keras深度自动学习工具。考虑到气象历史建模数据体量和系统设计成本,本文选取Auto-sklearn和Auto-Keras两种成熟的开源工具包来构建自动机器学习,并利用本地CPU、GPU资源进行建模运算。

1.2.1Auto-sklearn自动机器学习方法

Auto-sklean是基于Auto-Weka的组合算法选择和超参数优化问题的定义,采用与微软Azure Automated ML相同的思路构建的,同时选择一个学习算法和设置其超参数的问题。主要区别是将两个额外的步骤合并到主进程中,首先是元学习步骤,最后是自动化集成构造步骤[27]。

图1 Auto-sklearn自动机器学习方法示意图

该方法使用元特征来描述数据集,包括简单的、信息论的和统计的元特征,如数据点的数量、特征和分类,以及数据偏度和目标的熵。利用这些信息,选择k个采样点作为贝叶斯优化的初始采样点。在完成贝叶斯优化之后,构建一个由所有尝试过的模型组成的集成模型。这一步的思路是将训练每个模型所做的努力都存储下来。没有抛弃这些模型而选择更好的模型,而是将它们存储起来,最终构建出一个集成模型。这种自动集成构造方法避免了陷入单个超参数的设置中,因此鲁棒性更强且不容易过拟合。使用集成选择(这个贪婪过程从空集成开始,迭代地添加能够最大化集成验证性能的模型)来构建集成模型。

结合基于EC细网格数值预报产品建立的训练样本,使用Auto-sklearn工具包进行模型训练,Auto-sklearn方法无需关注参数设置和模型选择,仅需要通过设置不同的运行时间,让算法在给定的时间内,尽可能尝试更多的模型和参数方案,进而得到其中最优的集成模型(表1)。

表1 Auto-sklearn自动机器学习的最优集成模型

1.2.2Auto-Keras自动深度学习方法

Auto-Keras使用一个通过循环训练的RNN控制器,对候选架构(即子模型)进行采样,然后对其进行训练,以测量其在期望任务中的性能[28]。接着,控制器使用性能作为指导信号,以找到更有前景的架构。然而神经架构搜索在计算上非常昂贵、耗时。为了解决这个问题,Auto-Keras使用了高效神经架构搜索(ENAS)。ENAS采用类似于迁移学习的概念,在特定任务上为特定模型学习的参数可以用于其他任务上的模型。因此,ENAS迫使所有生成的子模型共享权值,从而刻意防止从头开始训练每一个子模型。ENAS不仅可以在子模型之间共享参数,还能够获得非常强的性能。

本文使用Nvidia P6000 GPU进行Auto-Keras的模型构建和运算加速,解决神经架构搜索的计算耗时问题。结合整体计算资源和建模时效性,设置Auto-Keras方法构建100种组合进行模型训练,通过训练最终获得最优的深度学习模型(表2)。

表2 Auto-Keras自动深度学习的最优模型及参数

1.2.3机器学习方法

为了综合衡量自动机器学习方法的预测能力,本文引入机器学习方法的决策树回归进行对比,考虑到单决策树功能过于简单,且容易出现过拟合现象,此处采用迭代决策树(GBRT)[29]和随机森林(RF)[30,31]方法构建多决策树进行机场温度的回归预测。

1.3 检验方法

由于每种方法都有各自的优缺点,Auto-sklearn主要应用于回归、分类任务,计算量较少,实现成本较低,Auto-Keras则使用神经架构搜索和强化学习,构建更复杂的深度神经网络模型,但计算量巨大,实现成本较高。为了综合考量不同自动机器学习方法的差异,并与传统的集成学习方法、数值模式2 m温度进行对比,分析不同的方法下温度预测效果的差异。本文使用平均绝对误差(MAE)、预报准确率[32]来判定模型对机场温度的回归预测效果,具体公式为:

2 预测效果分析

2.1 模型预测总体效果对比

通过使用EC细网格2 m温度、自动机器学习方法以及常规机器学习方法,分析乌鲁木齐机场温度预测的平均绝对误差可知,EC细网格2 m温度直接输出的乌鲁木齐机场温度平均绝对误差为1.68℃,误差相对较大,通过机器学习方法构建的预测模型,能够改善模式直接输出的温度预报,GBRT方法的平均绝对误差改善至1.44℃,而采用自动机器学习方法的Auto-Keras和Auto-sklearn预测乌鲁木齐机场温度效果更好,其中Auto-sklearn模型的平均绝对误差最低,达到1.35℃。

通过分析乌鲁木齐机场温度的预报准确率可以看到,EC细网格2 m温度的预报准确率(≤2℃)为67.09%,预报准确率(≤1℃)为40.21%,机器学习方法构建的模型均能够提升预报准确率,其中Auto-sklearn模型的预报准确率(≤2℃)最高,达到77.84%,Auto-Keras模型的预报准确率(≤1℃)则达到49.67%,而常规的机器学习方法GBRT和RF的预报准确率则低于自动机器学习方法,具体结果见表3。

表3 不同方法预测乌鲁木齐机场温度的误差统计

通过模型总体预测效果可以看到,自动机器学习方法通过自动构建模型和参数寻优,能够改善模式直接输出的温度预测结果,且预测效果优于传统的机器学习方法;但是考虑到自动机器学习方法需要利用大量的资源进行模型和参数的遍历和尝试,相对传统机器学习方法更加耗时,在实际业务建模中,需要预留充足的计算资源来提高建模工作的效率。

2.2 模型预测效果的月度差异

2.2.1平均绝对误差分析

通过分析2020年1月—2021年2月乌鲁木齐机场逐月温度的平均绝对误差得到,EC细网格预测的温度平均绝对误差存在明显的月度变化,2月、4—6月以及11月误差较小,维持在1.5℃左右,其余月份误差均>1.7℃,12月误差最大(2.28℃),由此可见,EC模式输出的温度预测在12月—次年1月平均绝对误差较大,4—6月平均绝对误差较小。

4种机器学习方法均能够改善模式直接输出的温度预测结果见表4,其中4—11月误差最小,平均绝对误差均维持在1.2℃左右,Auto-sklearn模型在5月达到最低,为0.97℃;针对冬季12月的温度,Auto-Keras模型改善效果明显,平均绝对误差仅为1.79℃;1月不同模型的预测效果差异较大,Auto-Keras模型预测效果与EC模式基本持平,其余模型预测效果均比EC模式差,平均绝对误差比EC模式偏大0.1~0.2℃;2月机器学习方法则没有明显改善模式输出的温度预测效果。

表4 乌鲁木齐机场温度逐月平均绝对误差/℃

通过平均绝对误差的月度对比分析发现,针对不同季节下乌鲁木齐机场温度,Auto-sklearn模型在4—5月、7月、9—10月平均绝对误差最小,Auto-Keras模型在冬季12月平均绝对误差最小;但是在1、2月,机器学习方法并没有改善模式输出的温度预报效果,上述机器学习模型的平均绝对误差均超过了EC模式,因此不同月份的温度预报,需要综合考虑EC模式直接输出及不同机器学习方法预测的结果。

2.2.2预报准确率分析

通过分析2020年1月—2021年2月逐月的乌鲁木齐机场温度预报准确率得到,EC细网格预测的机场温度预报准确率有明显的月季变化,11月预报准确率(≤2℃)最高为80.94%,4—6月预报准确率(≤2℃)相对较高,维持在75%左右,其余月份的预报准确率(≤2℃)相对较低,预报准确率(≤2℃)维持在60%~65%,12月最低,仅有48.38%,12月—次年1月,模式直接输出的温度预报效果较差。

机器学习方法构建的模型则能够直接改善预报准确率,4—10月的预报准确率(≤2℃)均超过80%,大幅提升模式直接预报温度的准确率;1—3月的预报准确率(≤2℃)相对较差,且变化范围较大,为57%~75%,12月的预报准确率最差为50%~60%(图2)。3—10月各类模型的预报准确率均有大幅提升,2、11月的预报准确率提升不明显,基本持平模式直接输出的预报准确率,1、12月Auto-sklearn、GBRT、RF模型预测准确率低于模式直接输出的预报准确率,仅有Auto-Keras模型能够维持或略微改善模式直接输出的结果。

图2 逐月不同方法预测乌鲁木齐机场温度的预报准确率差异(温度误差≤2℃)

2.3 不同温度区间的预测效果分析

乌鲁木齐机场2020年1月—2021年2月平均温度为7.97℃,最低温度为-26℃,最高温度为40℃,温度变化区间大,其中90%的温度记录分布在-20~30℃,为考量不同温度的预测效果,将温度按照10℃量级进行划分,分析不同温度下的预测效果。

从表5可知,EC细网格预测机场温度的平均绝对误差大部分为1.7℃左右,其中30~40℃平均绝对误差最小,为1.19℃,因温度≥40℃区间样本数量仅为4个,故不单独分析该温度区间的平均绝对误差。

表5 不同温度范围内机场温度预测的平均绝对误差/℃

机器学习方法构建的模型能够改善模式直接输出的温度预测结果,但是在不同温度区间下,不同的模型预测效果差别显著。20~40℃平均绝对误差稳定维持在1℃左右,且不同的模型预测效果差异较小;-10~20℃平均绝对误差在1.2~1.4℃,Autosklearn模型预测的效果最优,Auto-Keras模型预测效果最差为1.4℃;-30~-10℃平均绝对误差偏大,Auto-Keras模型预测的效果优于数值模式直接输出的温度预报,其余模型均出现平均绝对误差大于数值模式直接输出的温度预报。Auto-Keras模型预测的效果整体优于数值模式直接输出的结果,机场温度≥0℃Auto-sklearn模型预测效果更好,Auto-Keras模型预测效果在机场温度<0℃情况下更好,常规机器学习方法GBRT和RF虽然能够改善模式直接输出结果,但是整体预测效果不如自动机器学习方法构建的模型。

3 结论和讨论

本文基于EC细网格模式直接输出的乌鲁木齐机场2 m温度预报产品,运用自动机器学习方法,简化常规的机器学习方法中的模型选择和参数寻优过程,降低气象技术人员运用机器学习、深度学习的难度,通过构建Auto-sklearn机器学习模型和Auto-Keras深度学习模型,改善模式直接输出的预报产品。

(1)Auto-Keras模型和Auto-sklearn模型将温度平均绝对误差由模式直接输出的1.7℃降低至1.4℃左右,并且预测效果优于GBRT和RF方法手动参数调优的模型,自动机器学习方法获得的模型能够提升温度预报的平均绝对误差。

(2)构建的模型均能够大幅提升4—10月的预报准确率,其中Auto-sklearn模型的预报准确率(≤2℃)在4—10月稳定在85%以上,效果优于其余模型,但是在1、12月Auto-sklearn、GBRT、RF模型预测准确率低于模式直接输出的预报准确率,仅有Auto-Keras模型能够维持或略微改善模式直接输出的结果。

(3)机场温度≥0℃时,Auto-sklearn模型预测效果较好,Auto-Keras模型预测效果在机场温度<0℃情况下更好,常规机器学习方法GBRT和RF虽然能够改善模式直接输出结果,但是整体预测效果不如自动机器学习方法构建的模型。

自动机器学习方法的训练样本基于EC细网格数值模式产品,因此模型预测的效果依赖于数值模式产品本身的准确性,在冬季低温情况下,数值模式输出的产品,尤其是低空及地面的物理量预测准确性较差,进而导致模型在冬季的温度预测效果较差。为提升冬季低温预测效果,后续将对比EC细网格、GRAPES以及区域中尺度数值模式,并优化站点数据插值方法,分析相关产品的温度预测结果,通过选取预测性能更优的数值预报产品作为训练样本,改善温度预测的准确性。

另外,不同机器学习方法底层实现算法的区别,也导致模型预测效果存在差异,为弥补不同方法缺陷,改善温度预测结果,后续将结合机器学习工具的改进,引入更多适合温度回归预测的模型方法,通过综合应用多种机器学习方法进行温度预测,提高预报产品的稳定性和准确性。

猜你喜欢

机器准确率网格
机器狗
机器狗
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
追逐
未来机器城
高速公路车牌识别标识站准确率验证法
重叠网格装配中的一种改进ADT搜索方法