王 婧 李衣长 叶凌锋
(1.福建省气象信息中心,福建 福州 350001;2.福建省三明市气象局,福建 三明 365000;3.福建省气象科学研究所,福建 福州 350001)
随着气象事业的快速发展,国家建设了大量的气象观测站,使得气象数据的数据量和维度逐年提升[1]。伴随着数据量与维度的不断增加,气象数据的质量控制(简称质控)问题逐渐凸显[2]。气象数据的质量控制影响着天气预报的准确性与可靠性[3-4],且气象数据异常值对科研领域也有较大影响[5]。因此,对气象数据进行质量控制极为重要。
传统的质控系统使用气候极值、数值变化率等统计学指标,应用广泛。贾宁等[6]利用传统质控方法完成了气象数据的可疑性、变化率等简单检查;任芝花等[7]建立了基于台站级、省级、国家级的三级质量控制流程。传统质控方法在针对具体站点的问题上缺乏灵敏度,在要素之间关联性的使用上不够深入,造成质控工作量大、效率低、不够灵活等问题[8-9]。大量专家学者对此提出了不少改进方案,田云红等[10]依据台站历史数据对气象观测数值的界限值和时间一致性进行更精确的判断;韩格格等[11]使用改进Apriori算法关联气象数据进行质量控制。近年来,数据挖掘算法应用广泛,其中轻量级梯度提升算法(LightGBM)具有准确性高、训练速度快和支持分布式等特点,可以快速处理海量数据,挖掘数据之间的关系,建立数据模型[12-14]。王予涵等[15]使用LightGBM算法预测用户购买行为;胡澜等[16]使用该算法对风力发电机进行故障诊断;余东昌等[17]运用该算法构建能见度预测模型。LightGBM算法在各领域的应用证明了其明显的优势,然而目前LightGBM算法较少应用于气象数据质量控制。故本文选取了2019—2021年福州市国家观测站点采集的气象数据,以气温数据为例,通过LightGBM算法进行数据质量控制,并将结果与传统的变化率判断法进行对比,验证LightGBM算法在气象数据质量控制方面的可行性与可靠性。
本文选取福州市2019—2021年的国家观测站点的气象数据,绘制每个月平均温度的变化趋势图(图1)。从图1可知,福州气温1—3月温度较低,7—8月的月平均温度在30℃左右,温度数据呈周期性变化。
图1 福州市气温变化趋势图
福州市国家观测站有关气象地面观测数据的维度较多,包括温度(气温)、地温、地面温度、草面温度、相对湿度、海平面气压、气压、能见度、风向、风速、辐射照度、降水等维度。从图2可知,气象数值呈周期性变化且数据维度之间存在一定的关联性,例如白天气温高、夜间低;能见度与气温呈正相关性,而相对湿度、海平面气压与温度则呈负相关性。
计算气温与各类数据之间的斯皮尔曼相关系数,可以获取气温与各类数据之间的相关性情况(表1),从表1可知,气温与地温、草面温度是强相关关系,与时间、相对湿度和海平面气压是强相关和中等程度相关。不同维度数据之间存在相关性,表明利用多种不同维度的数据完成对某一维度数据的简单预测是可行的。
图2 气象要素数值变化趋势图
表1 气象要素相关性分析(0.4中等程度相关以上)
轻量级梯度提升算法LightGBM是改进的梯度提升算法[18-19],具有存占用低、准确性高、训练速度快等优势,在预测、搜索等任务上应用广泛且表现优异,可以快速处理海量数据,挖掘数据之间的关系[20-21]。
从基于LightGBM的气象数据质量控制算法流程看(见图3),首先使用气象原始数据D和初始化权重训练并获得弱学习器,根据弱学习器的误差调整权重,重复训练获得n个弱学习器,将n个弱学习器的结果加权组合,再综合查全率和查准率选取阈值,最后获得气象数据质量控制的检测模型。
将LightGBM算法引入气象数据质控中,能够充分发挥算法与多维气象数据的优势,有效利用多维度数据之间存在的相关性,完成对某种气象要素的预测,达到质量控制的目的。
图3 基于LightGBM的质控算法流程图
气象数据质量控制的本质是时间序列的异常检测,常见的时间序列异常有4种类型:(a)附加性异常;(b)革新性异常;(c)暂时性异常;(d)移位性异常,如图4所示。模拟4种异常数值,并将异常值叠加在气象数值中,结果如图5所示。其中,左列是四种类型的异常值,右列实线是原始数据,虚线是叠加模拟异常值后的模拟数据。加入异常值的气象数据将作为算法的测试集,用于检测算法效果和性能。
(a)附加性异常 (b)革新性异常 (c)暂时性异常(d)移位性异常
图5 四种气象异常数值模拟
①查准率(P)是指预测为正样本的结果中真正样本所占的比例。
(1)
式(1)中,TP是真正样本个数,FP是假正样本个数。
②查全率(R)是指在实际的正样本中,被算法预测为正样本所占的比例。
(2)
式(2)中,TP是真正样本个数,FN是假反样本个数。
③F1数值:查准率和查全率评价的角度不同,而F1数值可以同时考虑查准率和查全率。
(3)
式3中,P是查准率,R是查全率,β是权重参数,参数可根据需求设置,例如本文的气象数据质量控制,我们更注重查全率,可以将β值设置为大于1的值,这样F1得分将更倾向于查全率。
以福州市2019年1月—2021年9月的国家观测站点各个气象要素作为LightGBM算法的训练集,以2021年10—12月数据为测试集。算法通过不断训练迭代获得模型。
表2是面对4种类型的异常值,变化率判断法与基于LightGBM算法的质控方法的查准率P、查全率R和F1的数值,其中a代表变化率判断法,b代表LightGBM判断法。从图6可以看出,面对4种类型的异常值,基于LightGBM算法的质控方法优于变化率质控方法,特别是面对第一种附加性异常值时表现突出。
表2 算法结果分析
图6 算法结果柱状图
可以使用P-R曲线来直观地评估算法的性能,从图7中可以看出,当查准率P相同时,LightGBM算法的查全率R大于变化率判断的质控方法;当查全率R相同时,LightGBM算法的查准率P明显大于变化率判断法,说明基于LightGBM算法的质控方法泛化能力更好,性能优于变化率判断法。
(a)变化率判断法(b)LightGBM质控法
使用综合考虑查全率和查准率的F1数值选取阈值,当阈值取2.7时,LightGBM质控方法的F1值最高。由图8可知,LightGBM算法预测结果与真实值基本吻合,当数值落在阈值带以外时,算法判断为异常值,可见该算法能轻易地将异常值区分出来,LightGBM算法质控方法精准度高、针对性强、灵活性高。
图8 基于LightGBM算法的质控展示图
本文使用2019—2021年福州市国家观测站点采集的气象数据,以气温数据为例进行LightGBM算法的质量控制研究。首先,简单分析了气象地面观测数据各维度与气温之间的相关性,发现利用不同维度之间的相关性完成数据质控是可行的。其次,引入LightGBM算法并利用各维度数据的相关性完成了气温的数据质量控制,最后,通过查全率、查准率与F1数值,对比LightGBM质控法与传统变化率判法的质控结果,得出以下结论。
①针对4种典型的时间序列异常情况,基于LightGBM算法的质控方法能检测出气象数据中的异常值,特别是面对附加性异常值时表现突出,变化率判断法查全率96.7%,新方法达98.9%,其质控的准确性高、效果好。
②根据P-R曲线直观地评估算法的性能,当查全率R相同时,LightGBM算法的查准率P明显大于变化率判断的质控方法,可见基于LightGBM算法的质控方法泛化能力更好,性能优于变化率判断的质控方法。
③综合考虑查全率和查准率LightGBM算法阈值选取比变化率判断法的质控方法更精确,针对性强,灵活性高。