一种应用于河流水位预测数据的特征选择分解方法转让专利

申请号 : CN201711330726.1

文献号 : CN107992447B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨拥军管杰

申请人 : 电子科技大学

摘要 :

本发明公开了一种应用于河流水位预测数据的特征选择分解方法,为了得到最适合作为模型输入的特征,本发明引入LASSO回归对原始输入集进行特征选择,并整合MODWT对选择得到的特征进行成分分解,并采用多元线性回归作为基础模型测试LASSO‑MODWT的性能。测试表明,基于LASSO‑MODWT的特征选择分解方法有利于提高河流水位预测模型的性能和模型解释能力。

权利要求 :

1.一种应用于河流水位预测数据的特征选择分解方法,其特征在于,包括以下步骤:S1、采集影响目标预测站点水位的水文要素;

S2、根据各水文要素,基于信息理论构建特征集;

S3、基于相关性分析对特征集中的各特征引入滞后量,构建原始输入集;

S4、对原始输入集进行标准化处理;

S5、基于LASSO对标准化处理后的输入集进行特征选择;

S6、基于MODWT对特征选择后的输入集进行特征分解,得到经LASSO-MODWT优化后的输入集;

所述步骤S5具体包括以下分步骤:

S51、将标准化处理后的输入集作为模型输入,将预测目标站点的水位数据集作为模型输出,构建LASSO回归模型;

S52、对LASSO回归模型进行训练,采用网格搜索法对LASSO回归的参数λ进行寻优,寻找最优参数;

S53、采用具有最优参数的LASSO回归模型对输入集中的特征进行评分,评分标准为LASSO回归得到的回归系数,选择LASSO回归系数为正的特征继续保留在输入集中,将LASSO回归系数为0或为负的特征从输入集中去除,实现对输入集的特征选择。

2.根据权利要求1所述的特征选择分解方法,其特征在于,所述步骤S1中影响目标预测站点水位的水文要素包括目标站点的当前水位信息、上游流域水位信息和沿途降雨量。

3.根据权利要求1所述的特征选择分解方法,其特征在于,所述步骤S2具体为:分别计算各水文要素与预测目标之间的最大信息系数MIC,分析其与预测目标之间关系的强度,将与预测目标间的MIC值大于设定阈值的水文要素作为输入特征,构建特征集。

4.根据权利要求3所述的特征选择分解方法,其特征在于,所述最大信息系数MIC的计算公式为:其中X、Y为两个随机变量,B为分割限制,取数据总量的0.6或0.55次方,MIC[X;Y]表示X和Y之间的最大信息系数,I[X;Y]表示X和Y之间的互信息,计算公式为:其中p(X)和p(Y)分别表示X、Y的概率密度分布函数,p(X,Y)表示X、Y的联合概率密度分布函数。

5.根据权利要求3所述的特征选择分解方法,其特征在于,所述步骤S3具体为:针对特征集中目标站点的当前水位信息,采用偏自相关函数PACF确定滞后量,针对特征集中的其它输入特征,采用互相关系数分析确定滞后量;对于每一个滞后量,如果其与预测目标之间呈现明确的统计相关性,即达到95%的置信区间,则将该滞后量添加到输入集中,从而构建原始输入集。

6.根据权利要求1所述的特征选择分解方法,其特征在于,所述步骤S4具体为:采用最小-最大值标准化处理方法对原始输入集进行标准化处理,将原始输入集缩放到[0,1]区间内,处理公式为:其中xi,norm为标准化后的数据值,xi表示原始输入集中第i个需要标准化的数据项,Nmin和Nmax分别为缩放的最小值和最大值,即为0和1,xmin和xmax分别为原始输入集中的最小值和最大值。

7.根据权利要求1所述的特征选择分解方法,其特征在于,所述步骤S6具体为:采用MODWT模型对特征选择后的输入集进行特征分解,将所有特征分解得到的小波系数集用于构建优化后的输入集。

8.根据权利要求7所述的特征选择分解方法,其特征在于,所述特征分解的公式为:其中f(t)为特征分解得到的小波系数, 为进行M层分解时对原信号的平滑近似子波,Wm(t)为原信号在m层的分解子波,m=1,2,...,M,M为最小分解层数,计算公式为:M=int[log(N)]                          (5)其中N为特征选择后的输入集长度,int[·]为向上取整函数。

9.根据权利要求7所述的特征选择分解方法,其特征在于,所述MODWT模型采用Daubechies小波基。

说明书 :

一种应用于河流水位预测数据的特征选择分解方法

技术领域

[0001] 本发明属于水位预测技术领域,具体涉及一种应用于河流水位预测数据的特征选择分解方法的设计。

背景技术

[0002] 水位预测对于防洪减灾、水资源利用和分配管理有着极为重要的作用。一个稳健的水位预测模型可以为相关决策者提供未来水位的变化情况,及时掌握潜在的水文灾害,从而更早的进行相关预警部署。在水位预测领域,由于影响水位因素的多维性和复杂性,模型系统的潜在输入量之间往往呈现非线性动态关系和多种相关性。另外输入量的个数一般较大,尤其是引入各变量的滞后量后会急剧的增加特征的维数和计算复杂度,但是这些变量中实际上包含大量重复信息和噪声成分。为了降低模型的运算复杂度,提高模型的灵活性和解释力,需要从原始的高维数据集中选择包含最小冗余度的有效特征,从而构建一个具备伸缩性的更简洁、更反映真实水位变化规律的模型。
[0003] LASSO是由1996年Robert Tibshirani首次提出,全称Least absolute shrinkage and selection operator。该方法是一种压缩估计,它通过构造一个罚函数得到一个较为精炼的模型,使得它压缩一些系数,同时设定一些系数为零。因此保留了子集收缩的优点,是一种处理具有复共线性数据的有偏估计。LASSO的基本思想是在回归系数的绝对值之和小于等于一个常数的约束条件下,使残差平方和RSS最小化,从而能够产生某些严格为0的回归系数,得到压缩特征后具有解释能力的模型。
[0004] 离散小波变换(DWT)在许多集成小波的模型中得到了广泛的应用,可以得到数据的详细频谱信息,诸如周期性、局部变化特性、随机性和突变性。但是由于其具有抽取效应,该效应会在模型构建阶段引入潜在的信息缺失从而会在预测时产生偏差。另外DWT的小波变换系数结果与小波变换的起始位置有关,从而带来了一定的偶然性。
[0005] 基于DWT的上述缺陷,相关人员进一步提出了最大重叠离散小波变换(MODWT,maximum overlap discrete wavelet transform)作为特征分解的方法。MODWT是一种线性过滤操作,可以较好的解决抽取效应,通过MODWT,可以得到与观测值同维数的多维小波系数。另外,小波变换的结果与变换的起点位置无关,可以用于不同样本大小数据的变换。总的来说,MODWT可以用提取输入信号的不同频段成分,从而获得更为丰富的信息,揭示数据潜在的变化规律。

发明内容

[0006] 本发明的目的是为了降低现有水位预测模型的运算复杂度,同时提高现有水位预测模型的灵活性和解释力,提出了一种应用于河流水位预测数据的特征选择分解方法。
[0007] 本发明的技术方案为:一种应用于河流水位预测数据的特征选择分解方法,包括以下步骤:
[0008] S1、采集影响目标预测站点水位的水文要素(目标站点的当前水位信息、上游流域水位信息和沿途降雨量等)。
[0009] S2、根据各水文要素,基于信息理论构建特征集。
[0010] S3、基于相关性分析对特征集中的各特征引入滞后量,构建原始输入集。
[0011] S4、对原始输入集进行标准化处理。
[0012] S5、基于LASSO对标准化处理后的输入集进行特征选择。
[0013] S6、基于MODWT对特征选择后的输入集进行特征分解,得到经LASSO-MODWT优化后的输入集。
[0014] 本发明的有益效果是:本发明采用LASSO回归对原始输入集进行特征选择,并整合MODWT对选择得到的特征进行成分分解,使得对河流水位的预测性能有显著提升,有利于提高河流水位预测模型的性能和模型解释能力。
[0015] 进一步地,步骤S2具体为:分别计算各水文要素与预测目标之间的最大信息系数MIC,分析其与预测目标之间关系的强度,将与预测目标间的MIC值大于设定阈值的水文要素作为输入特征,构建特征集。
[0016] 最大信息系数MIC的计算公式为:
[0017]
[0018] 其中X、Y为两个随机变量,B为分割限制,取数据总量的0.6或0.55次方,MIC[X;Y]表示X和Y之间的最大信息系数,I[X;Y]表示X和Y之间的互信息,计算公式为:
[0019]
[0020] 其中p(X)和p(Y)分别表示X、Y的概率密度分布函数,p(X,Y)表示X、Y的联合概率密度分布函数。
[0021] 上述进一步方案的有益效果为:采用最大信息系数MIC分析各水文要素与预测目标之间的关系强度,将与预测目标间具有较强关系的因素作为输入特征,构建特征集。
[0022] 进一步地,步骤S3具体为:针对特征集中目标站点的当前水位信息,采用偏自相关函数PACF确定滞后量,针对特征集中的其它输入特征,采用互相关系数分析确定滞后量;对于每一个滞后量,如果其与预测目标之间呈现明确的统计相关性,即达到95%的置信区间,则将该滞后量添加到输入集中,从而构建原始输入集。
[0023] 上述进一步方案的有益效果为:由于预测目标河流水位信息是时间序列,从而构建原始输入集时应考虑引入滞后量的影响。
[0024] 进一步地,步骤S4具体为:采用最小-最大值标准化处理方法对原始输入集进行标准化处理,将原始输入集缩放到[0,1]区间内,处理公式为:
[0025]
[0026] 其中xi,norm为标准化后的数据值,xi表示原始输入集中第i需要标准化的数据项,Nmin和Nmax分别为缩放的最小值和最大值,即为0和1,xmin和xmax分别为原始输入集中的最小值和最大值。
[0027] 上述进一步方案的有益效果为:由于不同输入数据具有不同的量纲,为了可以采用同样的标准对原始输入集进行评估,需要对原始输入集进行标准化处理,实现无量纲化,将原始输入集缩放到[0,1]区间内。
[0028] 进一步地,步骤S5具体包括以下分步骤:
[0029] S51、将标准化处理后的输入集作为模型输入,将预测目标站点的水位数据集作为模型输出,构建LASSO回归模型。
[0030] S52、对LASSO回归模型进行训练,采用网格搜索法对LASSO回归的参数λ进行寻优,寻找最优参数。
[0031] S53、采用具有最优参数的LASSO回归模型对输入集中的特征进行评分,评分标准为LASSO回归得到的回归系数,选择LASSO回归系数为正的特征继续保留在输入集中,将LASSO回归系数为0或为负的特征从输入集中去除,实现对输入集的特征选择。
[0032] 上述进一步方案的有益效果为:经过LASSO对标准化处理后的输入集进行特征选择后,能在大幅减少模型输入参数的前提下提高预测准确度。
[0033] 进一步地,步骤S6具体为:采用MODWT模型对特征选择后的输入集进行特征分解,将所有特征分解得到的小波系数集用于构建优化后的输入集。
[0034] 其中特征分解的公式为:
[0035]
[0036] 其中f(t)为特征分解得到的小波系数, 为进行M层分解时对原信号的平滑近似子波,Wm(t)为原信号在m层的分解子波,m=1,2,...,M,M为最小分解层数,计算公式为:
[0037] M=int[log(N)]                          (5)
[0038] 其中N为特征选择后的输入集长度,int[·]为向上取整函数。
[0039] 上述进一步方案的有益效果为:采用MODWT模型对特征选择后的输入集进行特征分解能明显提高河流水位预测的精度。
[0040] 进一步地,MODWT模型采用Daubechies小波基。
[0041] 上述进一步方案的有益效果为:建立基于MODWT的模型时需要选择合适的小波基函数,由于当前没有一个明确的通用基函数选择标准,也并没有相关文献说明选择何种基函数能得到最好的模型效果,理论上不同应用场景适合不同的基函数,考虑到水文预测适合用不规则的小波基,本发明采用Daubechies小波基,它广泛应用与水文预测领域。

附图说明

[0042] 图1所示为本发明实施例提供的一种应用于河流水位预测数据的特征选择分解方法流程图。
[0043] 图2所示为本发明实施例提供的采用db3形式的Daubechies小波基对WL_CS进行DMDWT得到的结果对比图。
[0044] 图3所示为本发明实施例提供的三小时预测不同输入集预测值及真实值对比图。
[0045] 图4所示为本发明实施例提供的三小时预测不同输入集预测值与真实值散点图。

具体实施方式

[0046] 现在将参考附图来详细描述本发明的示例性实施方式。应当理解,附图中示出和描述的实施方式仅仅是示例性的,意在阐释本发明的原理和精神,而并非限制本发明的范围。
[0047] 本发明实施例提供了一种应用于河流水位预测数据的特征选择分解方法,如图1所示,包括以下步骤S1-S6:
[0048] S1、采集影响目标预测站点水位的水文要素(包括目标站点的当前水位信息、上游流域水位信息和沿途降雨量等水文要素)。
[0049] 本发明实施例中,以赤水河中下游的水位变化趋势为例,目的在于预测赤水站未来3小时和6小时的水位情况。采用的数据由赤水河中下游沿岸自动监测站在2015和2016年5~10月期间采集,涉及到的相关站点信息见表1示。由于数据是逐小时采集存储的,从而总共有8834个数据点。在数据采集和存储过程中不可避免会有缺失,分析发现缺失数据为WL_MT 2015-10-09 02~2015-10-14 07共126项数据,利用pandas的对数据进行插值补齐。
[0050] 表1
[0051]代号 参数含义 监测站 数据类型 采集周期
WL_CS 赤水站水位 赤水站 水位 逐小时
WL_EL 二郎站水位 二郎站 水位 逐小时
WL_MT 茅台站水位 茅台站 水位 逐小时
RF_CS 赤水站降雨量 赤水站 降雨量 逐小时
RF_XS 习水站降雨量 习水站 降雨量 逐小时
[0052] S2、根据各水文要素,基于信息理论构建特征集。
[0053] 分别计算各水文要素与预测目标之间的最大信息系数MIC,分析其与预测目标之间关系的强度,将与预测目标间的MIC值大于设定阈值的水文要素(即与预测目标间具有较强关系的水文要素)作为输入特征,构建特征集。
[0054] 最大信息系数MIC的计算公式为:
[0055]
[0056] 其中X、Y为两个随机变量,B为分割限制,决定了X、Y离散分割的上限,一般取数据总量的0.6或0.55次方,MIC[X;Y]表示X和Y之间的最大信息系数,I[X;Y]表示X和Y之间的互信息,计算公式为:
[0057]
[0058] 其中p(X)和p(Y)分别表示X、Y的概率密度分布函数,p(X,Y)表示X、Y的联合概率密度分布函数。
[0059] 本发明实施例中,特征集总共有5个特征,包含如下内容:(1)三个水文监测站赤水站、茅台站、二郎站水位数据(代号为WL_CS、WL_MT、WL_EL);(2)两个气象监测站赤水站、习水站降雨量数据(代号为RF_CS、RF_XS)。
[0060] S3、基于相关性分析对特征集中的各特征引入滞后量,构建原始输入集。
[0061] 由于预测目标河流水位信息是时间序列,从而构建原始输入集时应考虑引入滞后量的影响。本发明实施例中,针对特征集中目标站点的当前水位信息,采用偏自相关函数PACF确定滞后量,针对特征集中的其它输入特征,采用互相关系数分析确定滞后量;对于每一个滞后量,如果其与预测目标之间呈现明确的统计相关性(即达到95%的置信区间),则将该滞后量添加到输入集中,从而构建原始输入集。偏自相关函数PACF与互相关系数分析方法均为本领域常用的相关性分析方法,在此不再赘述。
[0062] 本发明实施例中,通过相关性分析对各特征引入滞后量后3h预测原始输入集的特征个数为221个,6h预测为229个。
[0063] S4、对原始输入集进行标准化处理。
[0064] 由于不同输入数据具有不同的量纲,为了可以采用同样的标准对原始输入集进行评估,需要对原始输入集进行标准化处理,实现无量纲化。本发明实施例中,采用最小-最大值标准化处理方法(Min-Max Scaler)对原始输入集进行标准化处理,将原始输入集缩放到[0,1]区间内,处理公式为:
[0065]
[0066] 其中xi,norm为标准化后的数据值,xi表示原始输入集中第i需要标准化的数据项,Nmin和Nmax分别为缩放的最小值和最大值,即为0和1,xmin和xmax分别为原始输入集中的最小值和最大值。
[0067] S5、基于LASSO对标准化处理后的输入集进行特征选择。
[0068] 为了精简输入集,选择出最适合作为输入的特征,本发明实施例中对元素输入集基于LASSO回归进行特征选择。由于其引入L1正则项作为惩罚项,可以将多余特征的回归系数压缩为0,从而基于LASSO回归的特征选择是一种稀疏特征选择方法。
[0069] 步骤S5具体包括以下分步骤S51-S53:
[0070] S51、将标准化处理后的输入集作为模型输入,将预测目标站点的水位数据集作为模型输出,构建LASSO回归模型。
[0071] S52、对LASSO回归模型进行训练,采用网格搜索法对LASSO回归的参数λ进行寻优,寻找最优参数。
[0072] S53、采用具有最优参数的LASSO回归模型对输入集中的特征进行评分,评分标准为LASSO回归得到的回归系数,选择LASSO回归系数为正的特征继续保留在输入集中,将LASSO回归系数为0或为负的特征从输入集中去除,实现对输入集的特征选择。
[0073] 本发明实施例中,经过基于LASSO的特征选择后3h预测的特征为49个,6h预测的特征为88个。可以看出两种预测场景下都大幅减少了输入特征的个数,进而降低了模型构建的复杂度。
[0074] S6、基于MODWT对特征选择后的输入集进行特征分解,得到经LASSO-MODWT优化后的输入集。
[0075] 采用MODWT模型对特征选择后的输入集进行特征分解,将所有特征分解得到的小波系数集用于构建优化后的输入集。
[0076] 其中特征分解的公式为:
[0077]
[0078] 其中f(t)为特征分解得到的小波系数, 为进行M层分解时对原信号的平滑近似子波,Wm(t)为原信号在m层的分解子波,m=1,2,...,M,M为最小分解层数,计算公式为:
[0079] M=int[log(N)]                         (5)
[0080] 其中N为特征选择后的输入集长度,int[·]为向上取整函数。
[0081] 本发明实施例中的有效输入集为8678条,故MODWT的最小分解层数为:M=log(8678)=3.93,取整为M=4,本发明实施例中取M=4和M=5两种情况进行试验。
[0082] 尽管MODWT作为一个多分辨率特征识别工具已经被证明具有诸多优势,但是在建立基于MODWT的模型时面临的一个挑战是选择合适的小波基函数,由于当前没有一个明确的通用基函数选择标准,也并没有相关文献说明选择何种基函数能得到最好的模型效果,理论上不同应用场景适合不同的基函数。考虑到水文预测适合用不规则的小波基,本发明实施例采用Daubechies小波基,它广泛应用与水文预测领域。本发明实施例中采用db2、db3和db4三种形式的小波基进行对比测试,寻求最适合用于赤水河水位预测的小波基。
[0083] 图2所示是采用db3形式的Daubechies小波基对WL_CS进行DMDWT得到的结果,从上到下的6张子图分别为原始信号波形、平滑近似波形(A4)和四层DMDWT分解系数(d1,d2,d3,d4)。为降低运算复杂度,本发明实施例只对由LASSO评分最重要的WL_CS这一特征进行分解,将分解后得到的小波系数作为新特征加入输入集(4层、5层分解分别为5维、6维系数),此时3小时预测特征为53个,6小时预测特征为92个。
[0084] 由于没有通用的用于评估水文预测模型性能的单一指标,本发明实施例通过纳什效率系数ENS、均方根误差RMSE和平均绝对误差MAE三种统计学指数对预测性能进行综合评判。
[0085] (1)纳什效率系数ENS:
[0086]
[0087] (2)均方根误差RMSE:
[0088]
[0089] (3)平均绝对误差MAE:
[0090]
[0091] 其中,SWLOBS为实测水位SWLFOR为通过模型预测得到的水位,N为数据点个数,为实测水位的总体均值。
[0092] 本发明实施例中,分别将基于相关性分析得到的原始输入集、经过基于LASSO的特征选择的输入集和经过LASSO-MODWT优化后的输入集作为多元线性回归模型的输入用于预测赤水站3小时候和6小时的水位数据,进而评估LASSO-MODWT特征选择分解方法的性能。表2是不同输入集对于预测赤水站3小时和6小时水位的性能对比。从表2可以看出,不管是对于3小时预测还是6小时预测,经过基于LASSO的特征选择后能在大幅减少模型输入参数的前提下提高预测准确度;而集成MODWT后能明显提高预测精度,并且对于3小时预测和6小时预测都有很好的表现。
[0093] 表2
[0094]
[0095] 图3为不同输入集对赤水站2016年8月期间3小时水位预测结果及真实值的对比,图4为三种输入集预测值与真实值散点图。可以看出,经过LASSO-MODWT特征选择分解后,相对于原始输入集的预测结果,LASSO-W-MLR的预测值与真实值的逼近度更高,模型性能更为稳定。从而可以说明LASSO-MODWT特征选择分解方法可以显著提升赤水河水位预测模型的精度和稳定性。
[0096] 为了进一步研究不同小波基类型对赤水河水位预测性能的影响,本发明实施例中分别对db2、db3、db4三种小波和level4、level5两种分解层数进行仿真,表3是采用不同小波基和分解层数进行3h预测和6h预测的性能结果。从表3可以看出,采用db2小波基和5层小波分解在赤水河水位预测模型中能够得到更优的预测性能。该结果进一步说明了不同应用场景适合采用不同的小波基,在实际建模过程中,应当结合具体需求进行论证尝试,找到最合适的小波基和分解层数,从而提高模型准确度。
[0097] 表3
[0098]
[0099] 本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。