基于支持向量机的富平县大气蒸发量数据预测研究

2022-08-05 06:54牛岩郭超
农业与技术 2022年14期
关键词:富平县蒸发量预测值

牛岩郭超

(1.陕西地建土地工程技术研究院有限责任公司,陕西 西安 710075;2.陕西省土地工程建设集团有限责任公司,陕西 西安 710075;3.自然资源部退化及未利用土地整治工程重点实验室,陕西 西安 710075)

引言

大气蒸发量是指在一定时段内,水分经蒸发而散布到空中的量,通常用蒸发掉水层厚度的毫米数表示,水面水分蒸发量和土壤水分蒸发量分别用不同的蒸发器进行测定[1,2]。一般,温度、风速与蒸发量呈正相关,湿度、气压与蒸发量呈负相关。土壤蒸发量和水面蒸发量的测定,在农业生产和水文工作上非常重要。雨量稀少、地下水源及流入径流水量不多的地区,如果蒸发量很大,极易发生干旱[3]。蒸发量在估算陆地蒸发、作物需水和作物水分平衡等方面具有重要的应用价值。进行蒸发量变化的研究,对深入了解气候变化、探讨水分循环变化规律具有十分重要的意义[4,5]。

我国国土面积963×104km2,共有2474个国家级地面气象站,覆盖率较低,且现有气象站数据存在蒸发量缺测现象。以山西省太原市为例,太原市内有7个国家级气象站,仅太原站具有连续的日蒸发量数据,因此正确认识水面蒸发量与气象因子之间的关系,建立适用于我国地区的区域性的水面蒸发计算模型,对水资源利用等都具有十分重要的现实意义[6-9]。

本文将机器学习及人工智能应用于大气蒸发量数据预测问题上,以富平县2016年气象数据和大气蒸发量数据作为研究对象,应用支持向量机(SVM)建立二者的关系模型,并对模型进行验证。通过本文研究,可为大气蒸发量数据预测问题提供可行方法。

1 研究方法及数据背景

1.1 SVM的原理及计算机实现

机器学习研究的是计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能。20世纪90年代,俄罗斯数学家Vapnik等提出了支持向量机(Support Vector Machines,SVM)[10,11]的概念,SVM是一种根据统计学习理论发展出的基于数据的机器学习方法,具有结构简单、适应性好、全局最优、训练速度快和泛化能力强等优点。可以说,20世纪90年代以来统计学习理论越来越受到重视,很大程度上是因为SVM的发展[10-12]。SVM的成功包括解决数据分类问题和解决回归问题2方面的关键技术[13-15],本文所采用的SVM的关键技术就是回归问题的应用,应用粒子群算法[16]提供的交互检验功能对SVM重要参数进行算法寻优。

LIBSVM是台湾大学林智仁教授等开发设计的一个简单、易于使用和快速有效的SVM模式识别与回归的软件包,目前,LIBSVM拥有数十种语言版本,C、Matlab、Java版本较为常用。本文采用Matlab进行SVM的计算机实现。

1.2 数据背景

本文所用气象数据和大气蒸发量数据来自于富平中试基地气象监测站和小型蒸发器2016年监测数据,监测日期从2016年1月13日—12月7日,气象数据每间隔2h采集1次,指标包括气压(inHg)、太阳辐射(W·m-2)、温度(℉)和湿度(%),蒸发量(mm)数据每日采集1次。本文以每日气压平均值、太阳辐射最大值、最高温度、最低温度、平均湿度和蒸发量数据作为研究对象,详细监测数据见表1。

表1 2016年富平县气象数据及蒸发量数据

富平中试基地位于陕西省中部富平县,富平县地处E108°57′~109°26′,N34°42′~35°06′,是关中平原和陕北高原的过渡地带,属于渭北黄土高原沟壑区,总土地面积为1233km2。富平县属暖温带半干旱型大陆性季风气候,总体气候特征为光照充足、气候温和、降水适中、雨热同期、四季分明。年均气温13.1℃,日照时数2472h,无霜期为225d,光热资源丰富。年均降水量533.2mm,季节空间分布不均,7—9月3个月达282mm,占总量的53%,且多以暴雨形式出现,冬季仅15.8mm,空间上由北向南递减,南北相差122.7mm,气象灾害有干旱、大风、冰雹、连阴雨、霜冻、干热风、暴雨,是限制富平县气候资源充分利用的主要气象因素,以多年出现的气象天数统计,干旱78%,连阴雨13%,大风6%,干热风2%,冰雹0.6%,暴雨0.3%,霜冻0.2%。

2 结果与分析

2.1 样本确定

采用SVM进行数据训练及预测首先需要确定训练学习样本及预测检验样本。训练学习样本用于SVM进行学习训练以确定自变量和因变量之间的模型,预测检验样本用于模型的验证及误差分析。本文采用Matlab随机函数随机确定15个序号,对应的数据作为预测检验样本,其余315组数据作为训练学习样本。预测检验样本见表2。

表2 预测检验样本

2.2 SVM数据训练及预测

利用SVM进行数据学习训练时,在参数的选取上具有高度依赖性,对核函数的选取和惩罚因子的设定都有着极高的要求,同时,针对不同的数据集,需要设定不同的参数来契合数据集[17,18]。

为了解决SVM参数设定的问题,将粒子群算法与SVM相结合,利用粒子群算法的粒子游走来优化SVM的参数[19,20]。此过程在Matlab中实现,优化结果见图1。优化得到的最佳c值为3.64,最佳g值为0.01,参数c为惩罚系数,即对误差的宽容度,值越高说明越能容忍出现误差,g为核函数参数。

图1 粒子群算法优化SVM参数结果图

确定了训练学习样本、预测检验样本及SVM参数后,应用SVMsvmtrain函数对训练学习样本进行训练得到模型,其中训练学习样本的气压平均值、太阳辐射最大值、最高温度、最低温度、平均湿度作为自变量,大气蒸发量作为因变量。应用SVM的svmpredict函数对预测检验样本进行预测,得到大气蒸发量的预测值,并对15组检验学习样本的蒸发量理论值和预测值进行误差分析,预测结果及相对误差见表3。

表3 检验样本的预测值和相对误差表

2.3 结果分析

图2为15组预测检验样本理论值与预测值对比图,图3为15组预测检验样本预测值与理论值相对误差分布图。

图2 15组预测检验样本理论值、预测值对比图

图3 15组预测检验样本相对误差分布图

综合图2、图3可以看出,应用SVM对大气蒸发量进行预测,得到的预测值与理论值趋势线基本吻合。15组数据的相对误差都在30%以内,其中60%的预测检验样本(9组)相对误差小于10%,87%的预测检验样本(13组)相对误差小于20%,仅有2组预测检验样本相对误差达到20.22%和25.25%。目前预测值精度分级[21]的一般原则见表4,表中MAPE为平均绝对百分比误差,计算公式:

表4 一般预测精度划分表

式中,n为样本数据个数;pi为相对百分比误差,%。

由表3数据计算得出,15组预测检验样本平均绝对百分比误差(MAPE)为9.95%<10%,说明预测模型属于高精度预测。

3 结论与讨论

大气蒸发量数据对于水资源利用问题有很重要的参考意义。在日常监测工作中,由于极端天气或设备问题会导致数据缺测现象。本文针对此问题,提出应用支持向量机预测大气蒸发量的方法。通过本文的研究,得出以下结论。

应用支持向量机建立包括气压、太阳辐射、温度和湿度在内的气象因子和大气蒸发量之间的关系模型,对15组数据进行预测,并与实际观测值进行对比,结果显示,15组数据的相对误差都在30%以内,其中60%的预测检验样本(9组)相对误差小于10%,87%的预测检验样本(13组)相对误差小于20%,仅有2组预测检验样本相对误差达到20.22%和25.25%。

应用粒子群算法对支持向量机内置参数c和g进行优化,得到最佳c值为3.64,最佳g值为0.01。

用平均绝对百分比误差(MAPE)对预测结果进行评价,结果显示15组检验样本的平均绝对百分比误差为9.95%,根据一般预测精度划分表得出预测模型属于高精度预测水平。

结论显示,提出的应用支持向量机预测大气蒸发量的方法可行且有效,这对水利工程设计、农林牧业土壤改良、土壤水分调节、灌溉定额制定以及研究水分资源、制定气候区划等方面都具有重要的意义。在今后的工作中,还将针对样本的选择范围以及支持向量机参数优化的方法进行进一步深入研究。

猜你喜欢
富平县蒸发量预测值
加拿大农业部下调2021/22年度油菜籽和小麦产量预测值
±800kV直流输电工程合成电场夏季实测值与预测值比对分析
新球场
法电再次修订2020年核发电量预测值
晒秋
1958—2013年沽源县蒸发量变化特征分析
1981—2010年菏泽市定陶区蒸发量变化特征分析
新疆民丰县地表水面蒸发量分析
达孜县夏秋季大小型蒸发量特征、影响因子与差异分析
富平县2015年生物磷钾肥(液体剂型)在大棚黄瓜上施用效果调查