KNN方法在贵州晴雨预报中的试验
2010-11-07周明飞刘还珠
周明飞,熊 伟,刘还珠
(1.贵州省气象台,贵州 贵阳 550002;2.国家气象中心,北京 100081)
KNN方法在贵州晴雨预报中的试验
周明飞1,熊 伟1,刘还珠2
(1.贵州省气象台,贵州 贵阳 550002;2.国家气象中心,北京 100081)
使用 2003—2007年 T213数值预报产品和贵州省 08-08时日降水量资料,建立了贵州省 9个站的 KNN晴雨预报模型,并对 2008年进行了预报试验。在搜索 K邻近域的过程中,与传统的 KNN方法相比,求取了不同类别的 K值,即 K+、K-,使该方法选择的最邻近域中的 K值取得更为合理。通过对历史资料的反复交叉验证求取了最优的 K+、K-值组合。最后对 2008年贵州省 9个站进行预报试验并评估。预报评估结果表明:KNN方法总体上降低了预报空报率,提高了晴雨预报的TS评分和预报准确率,特别是对 24h和 48h,KNN方法在对贵州降水预报的数值预报解释应用中有一定的效果。
K邻近域;晴雨预报;数值预报产品
1 引言
贵州是一个降水比较丰富的省份,因此降水预报在贵州省是一项重要的常规预报,而在降水预报中,由于降水要素本身非连续和非正态分布的特点,以及贵州特殊的地形环境,目前贵州的降水客观预报没有较好的技术方法。本文尝试将 KNN(K—NearestNeighbor)方法应用到贵州的晴雨预报中。KNN(K—NearestNeighbor)非参数估计技术[1]是近几年来在数值预报释用中颇为重要的一种方法,它是基于范例进行推理的人工智能领域中发展较快的一种求解问题技术,利用过去的范例或经验来解决当前问题的类比推理方法,亦称为相似方法。由于气象要素样本较长,并且获取资料较为及时,使得 KNN技术得以在天气预报,特别是在定性要素的判别中发挥作用。该方法不需要建立预报方程,直接根据训练数据 (历史天气样本)建立概率天气预报的 K近邻非参数估计仿真模型,利用训练数据中蕴含的输入输出关系进行预报,可以避免统计方法的一些弊病和概率密度估计误差的影响[2]。邵明轩等[3]曾用非参数估计技术预报风的研究,表明该方法在天气预报中具有一定的实际参考使用价值。曾晓青等[4]利用基于交叉验证技术的 KNN方法在降水预报中采取了不同的 K+、K-,这较好的弥补了 KNN方法的缺陷,试验表明:K+和 K-为最佳邻近域组合的 KNN方法在降水预报中有较好效果。在贵州一年中降水日数较多,其正负样本较为平衡,这个特性能很好的满足 KNN方法的要求。陈豫英等[2]基于聚类天气分型的 KNN方法在风预报中的应用,在做 KNN之前先进行了聚类分型,聚类分型后根据不同的天气背景提取不同的预报因子这更有利于预报的准确性,进一步提高了宁夏地区风的预报效果。本文尝试将改进的 KNN方法应用于贵州降水的晴雨预报中。
2 资料与加工
本文利用国家气象中心 2003—2007年逐日的T213数值预报产品作为基本因子资料。所使用的T213数值预报产品包括 15层 7个预报时效 (00、12、24、36、48、60、72h)格点场中的 14个基本气象要素。利用这些基本气象要素通过动力诊断得出反映降水的物理量,然后利用双线性插值的方法将这些基本要素和扩充物理量插值到对应的站点上,建立起所需要的站点因子库,这大大增加了可挑选的因子信息量。实况数据集是采用MEOFIS系统中的历史实况库及贵州省历史资料库,取 2003—2007年逐日 08时到次日 08时的 24h降水量。
根据预报的要素选择因子,将历史的资料预报要素与所有的其它气象要素做相关分析、逐步回归然后做 F检验,选取出相关最好的 10~20个气象要素作为预报因子。
3 预报方法
本文中的方法引用自文献[2]和文献[4]中改进的 KNN方法,在此做简单介绍和特点介绍。
K最近邻 (K-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。该方法的思路是:如果一个样本在特征空间中的 K个最相似 (即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。KNN算法中,所选择的邻居都是已经正确分类的对象。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。KNN方法虽然从原理上也依赖于极限定理,但在类别决策时,只与极少量的相邻样本有关。由于 KNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,KNN方法较其他方法更为适合。该算法在分类时有个主要的不足是,当样本不平衡时,如一个类的样本容量很大,而其他类样本容量很小时,有可能导致当输入一个新样本时,该样本的 K个邻居中大容量类的样本占多数。因此可以采用权值的方法 (和该样本距离小的邻居权值大)来改进。在本文中采用改进的 KNN方法,与传统的 KNN方法相比,不同的类别取不同的 K值,可以在一定程度上弥补 KNN方法的这个缺陷。
在晴雨预报中,实验进行有无降水预报,故分为 2个类,有降水的为正样本,无降水的为负样本。其中寻找邻居的方法采用欧氏距离作为相似判据。
式 (1)中,Di∈R,i=1,2,…,n;这样 n个样本数可得到 n个距离,按距离依次排序,选择第 K个作为待预报数据的判断标准,凡小于该距离的样本,就作为待预报的最近邻域[4]。
接着是确定 K的值,此为改进的 KNN方法与传统 KNN方法的区别,传统的 KNN方法仅采取一个K值来进行类别的判定,而改进的 KNN方法采用不同的类别有不同的 K值。在本文中仅有 2个类别,有无降水即为正负样本,故取 2个 K值,即 K+、K-。
式 (2)中,n+为训练样本中的正样本数 (有降水日数),n-为训练样本中的负样本数 (无降水日数)。K+为正样本的 K值,K-为负样本的 K值。对于不同站点的正样本数根据自身在总体样本中的比例而确定 K值,使正负样本的 K值具有不同的权重,即对样本数少的类别权重更大,而样本数多的类别权重相对较小。通过这样处理,KNN方法选择的最邻近域中的 K值更为合理。
采用历史资料对 K值进行反复交叉验证,最后得出确定的 K值,取 4个标准:准确率 (全体样本)、正样本的概括率、TS评分和空报率。
判别标准通过历史资料反复实验得出,预报时,大于该值预报有降水,小于则预报无降水。
4 试验结果分析
利用 2003—2007年 T213资料和实况降水资料作为训练样本集,采用 2008年降水实况做预报检验。选取毕节、遵义、铜仁、都匀、安顺、凯里、六盘水、贵阳、兴义作为预报站点。分别对这 9个站的24h、48h、72h有无降水的预报做试验评估。为考察KNN方法在贵州省降水预报中的价值,本文将 T213模式预报的格点降水量插值到相应的站点上与KNN方法的预报结果进行比较。其中 T213格点插值到站点的权重函数采用与距离的平方成反比。
如图 1所示:①从 TS评分来看,24h和 48h的晴雨预报,9个站应用 KNN方法后均比直接采用T213降水量插值到站点的 TS评分高,在 72h的晴雨预报中,遵义、铜仁、凯里等 3站的晴雨预报 TS评分,KNN方法较 T213降水量的低,查看该 3个站的2008年有降水天数,3个站正样本均较其它几个站少。对 2008年正样本数和 72h的 KNN方法预报TS评分做相关分析,相关系数达 0.69。总的来看,采用 KNN方法对数值预报进行解释应用以后能提高 TS评分,尤其是在 24h和 48h。
②从空报率来看,9个站 24h、48h和 72h的晴雨预报,KNN方法的预报比 T213降水量预报空报率有明显降低。
图 1 2008年贵州省各站晴雨预报的 TS评分 (a)、空报率 (b)、漏报率 (c)和正确率 (d)
③从漏报率来看,24h的预报,T213降水预报 9个站均无漏报,而 KNN方法 9个站分别有 0.09到0.14的漏报率,48~72h,采用 K NN方法的漏报率也略比 T213降水预报偏高。分析发现 T213降水量预报,几乎在所有可能降雨的天气形势下均报有降水,故其漏报率很低,尤其是在 24h预报中没有漏报,而其空报率非常高。
④从正确率来看,9个站采用 KNN方法以后在晴雨预报中正确率有明显提高。
5 小结
总的看来,在晴雨预报的试验中,采用 KNN方法对数值预报进行解释应用后,虽然出现了一些漏报率,但明显的减少了空报率,使得 TS评分和准确率有明显提高。因此认为 KNN方法的数值解释应用在贵州降水预报中有一定效果。
结合 2008年中 9个站的正样本数和 TS评分、正确率进行分析,发现仍然是在正样本数较多的站TS评分和正确率较高。在 72h的预报中,采用 KNN方法预报得出的 TS评分和准确率结果的优势不如24h和 48h大,T213降水量的预报和 KNN方法均与正样本数的相关性很大,相关系数达到 0.74和0.69,说明在 72h的预报,KNN方法的结果更依赖于模式的结果以及正样本数的多少。因此采用KNN方法做数值预报解释应用更适合短期内和正样本数较多的天气要素的预报。改进的 KNN方法采用取不同的 K+、K-,一定程度上弥补了一些因正负样本分布不均造成的缺陷,在 24h和 48h有较好效果,但从 72h的预报来看,效果不及前两个时效。由于作者采用的资料为全年的降水资料,而造成不同季节降水的环流背景有所不同,以后工作中可进行环流分型并对降水进行分级后再采用 KNN方法进行预报试验,这都将在下一步工作中进行。
[1] Cover T M,Hart P E.Nearest neighbor pattern classification[J].IEEE Trans on Inf Theory,1967,13:21-27.
[2] 陈豫英,刘还珠,陈楠,等 .基于聚类天气分型的 KNN方法在风预报中的应用[J].应用气象学报,2008,19(5):564-572.
[3] 邵明轩,刘还珠,窦以文 .用非参数估计技术预报风的研究[J].应用气象学报,2006,17(增刊):125-129.
[4] 曾晓青,邵明轩,王式功,等 .基于交叉验证技术的 KNN方法在降水预报中的试验[J].应用气象学报,2008,19(4):471-478.
[5] 涂小萍,赵声蓉,曾晓青,等 .KNN方法在 11—3月中国近海测站日最大风速预报中的应用[J].气象,2008,34(6):67-73.
[6] 车军辉,李德生,李玉华 .数值预报产品释用业务系统历史数据存储与检索[J].应用气象学报,2006,17(增刊):152-156.
P456
B
1003-6598(2010)06-0003-03
2010-04-15
周明飞 (1984-),女,助工,主要从事短期天气预报工作。