CN117233869B - 一种基于GRU-BiTCN的站点短期风速预测方法 - Google Patents

一种基于GRU-BiTCN的站点短期风速预测方法 Download PDF

Info

Publication number
CN117233869B
CN117233869B CN202311516084.XA CN202311516084A CN117233869B CN 117233869 B CN117233869 B CN 117233869B CN 202311516084 A CN202311516084 A CN 202311516084A CN 117233869 B CN117233869 B CN 117233869B
Authority
CN
China
Prior art keywords
layer
data
gru
time
historical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311516084.XA
Other languages
English (en)
Other versions
CN117233869A (zh
Inventor
夏景明
朱祺炜
谈玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Information Science and Technology
Original Assignee
Nanjing University of Information Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Information Science and Technology filed Critical Nanjing University of Information Science and Technology
Priority to CN202311516084.XA priority Critical patent/CN117233869B/zh
Publication of CN117233869A publication Critical patent/CN117233869A/zh
Application granted granted Critical
Publication of CN117233869B publication Critical patent/CN117233869B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于GRU‑BiTCN的站点短期风速预测方法,包括:获取设定时间窗口内的待预测目标站点的站点历史气象数据、待预测目标站点周围个格点的格点历史气象数据,以及获取设定时间窗口内的各格点的地形历史数据;对获取到的站点历史气象数据、格点历史气象数据和地形历史数据进行归一化处理;将归一化后的格点历史气象数据和归一化后的地形历史数据进行拼接,得到第一拼接数据;将第一拼接数据按照时间步长划分成多个批次,按照时间顺序,将多个批次依次输入至训练好的GRU‑BiTCN模型中,同时将归一化后的站点历史气象数据输入至训练好的GRU‑BiTCN模型中,由训练好的GRU‑BiTCN模型输出在设定时间窗口后一个时间步长时,待预测目标站点的风速预测值。

Description

一种基于GRU-BiTCN的站点短期风速预测方法
技术领域
本发明属于风速预测技术领域,具体为一种基于GRU-BiTCN的站点短期风速预测方法。
背景技术
风速预测是气象预报中不可或缺的一环,为了预测风速,通常通过创建气象站点获取当地风速实际数据,然后研究风速的统计规律。为了能得到准确的风速预测结果,通常需要对风速建模,但对风速建模较为困难,原因在于:风的形成、风速的变化、风向的变化受很多因素的影响,如气象要素、地形因素、地球自转甚至是人类建筑的影响,因此目前使用的风速预测模型效果均不理想。
发明内容
发明目的:为解决现有风速预测模型效果不理想的问题,本发明提出了一种基于GRU-BiTCN的站点短期风速预测方法。
技术方案:一种基于GRU-BiTCN的站点短期风速预测方法,包括以下步骤:
步骤1:获取设定时间窗口内的待预测目标站点的站点历史气象数据,获取设定时间窗口内的待预测目标站点周围n×n个格点的格点历史气象数据,以及获取设定时间窗口内的各格点的地形历史数据;
步骤2:对步骤1获取到的站点历史气象数据、格点历史气象数据和地形历史数据进行归一化处理;
步骤3:将归一化后的格点历史气象数据和归一化后的地形历史数据进行拼接,得到第一拼接数据;将第一拼接数据按照时间步长划分成多个批次,按照时间顺序,将多个批次依次输入至训练好的GRU-BiTCN模型中,同时将归一化后的站点历史气象数据输入至训练好的GRU-BiTCN模型中,由训练好的GRU-BiTCN模型输出在设定时间窗口后一个时间步长时,待预测目标站点的风速预测值;
所述时间窗口与时间步长满足:一个时间窗口内有连续的k个时间步长;所述在设定时间窗口后时,待预测目标站点的风速预测值表示第k+1个时间步长时,待预测目标站点的风速预测值;
其中,所述的GRU-BiTCN模型包括:
多层GRU模型,用于从第一拼接数据中提取时空相关性特征;
卷积再处理模块,用于对多层GRU模型的输出进行卷积再处理;
数据拼接模块,用于将卷积再处理模块的输出与归一化后的站点历史气象数据进行拼接,得到第二拼接数据;
BiTCN模块,用于从第二拼接数据中提取正向时间序列对应的时间特征和反向时间序列对应的时间特征;
双向特征融合模块,用于对BiTCN模块输出的时间特征进行双向特征融合,得到在设定时间窗口后一个时间步长时,待预测目标站点的风速预测值。
进一步的,所述站点历史气象数据包括:站点历史气压数据、站点历史风向数据、站点历史温度数据和站点历史风速数据;
所述格点历史气象数据为由格点历史温度数据、格点历史u向风速数据、格点历史v向风速数据、格点历史气压数据、格点历史湿度数据和格点历史高植被叶面指数数据按照时间步长叠加得到;
所述地形历史数据为由历史海拔数据、历史坡度数据和历史坡向数据按照时间步长叠加得到。
进一步的,所述多层GRU模型包括3层GRU和3层Dropout;在每层GRU后设置一层Dropout;
每层GRU均由g个GRU模型构成;
对于第一层GRU,其中的第一个GRU模型的输入为第一拼接数据的第一批次数据,第二个GRU模型的输入为第一个GRU模型输出的隐状态和第一拼接数据的第二批次数据,以此类推;
对于第二层GRU,其中的第g个GRU模型的输入为第一层GRU中第g个GRU模型输出的隐状态;
以此类推,对于第三层GRU,其中的第g个GRU模型的输入为第二层GRU中第g个GRU模型输出的隐状态;第三层GRU中第g个GRU模型的输出作为多层GRU模型的输出,得到第一拼接数据中的时空相关性特征;
在每个所述GRU模型中均包括重置门和更新门;
所述重置门表示为:
Rt=σ(XtWxr+Ht-1Whr+br) (4)
式中,Xt表示第t个时间步长的输入数据,Wxr表示Xt的重置门权值参数,Ht-1表示第t-1个时间步长的隐状态,所述隐状态表示输入数据的时空相关性特征,Whr表示Ht-1的重置门权重参数,br表示重置门的偏置参数,σ(·)表示sigmoid激活函数;t≤k;
所述更新门表示为:
Zt=σ(XtWxz+Ht-1Whz+bz) (5)
式中,Wxz表示Xt的更新门权值参数,Whz表示Ht-1的更新门权重参数,bz表示更新门的偏置参数;
在每个GRU模型中进行以下计算步骤:
通过将第t-1个时间步长的隐状态Ht-1与重置门结合,按照下式计算得到第t个时间步长的候选隐状态
式中,Wxh、Whh分别表示Xt的权重参数和(Rt⊙Ht-1)的权重参数,bh表示计算候选隐状态的偏置参数,tanh(·)表示tanh非线性激活函数,⊙表示Hadamard积;
利用第t-1个时间步长的隐状态Ht_1和第t个时间步长的候选隐状态计算得到第t个时间步长的隐状态Ht
式中,Zt表示第t个时间步长的更新门;
将第t个时间步长的隐状态Ht作为下一个GRU模型的输入,以及作为下一层GRU中对应的GRU模型的输入。
进一步的,所述卷积再处理模块按照以下步骤构建得到:
采用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU的卷积层构建卷积再处理模块的第一层;
采用2×2的最大池化,步长为2,无零填充的池化层构建卷积再处理模块的第二层;
采用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU的卷积层构建卷积再处理模块的第三层;
采用2×2的最大池化,步长为2,无零填充的池化层构建卷积再处理模块的第四层;
采用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU的卷积层构建卷积再处理模块的第五层;
采用2×2的最大池化,步长为2,无零填充的池化层构建卷积再处理模块的第六层;
采用全连接层构建卷积再处理模块的第七层,用于将卷积再处理模块的第六层的输出展平为一个向量,并连接到50个神经元上;
采用全连接层构建卷积再处理模块的第八层,用于将卷积再处理模块的第七层的输出连接到9个神经元上;
采用softmax函数构建卷积再处理模块的输出层。
进一步的,所述BiTCN模块包括第一TCN模块和第二TCN模块;
所述第二拼接数据作为第一TCN模块的输入,该第一TCN模块输出正向时间序列对应的时间特征;
将第二拼接数据按照时间序列进行反转,得到的数据作为第二TCN模块的输入,该第二TCN模块输出反向时间序列对应的时间特征。
进一步的,第一TCN模块和第二TCN模块均由h个残差块构成;前一个残差块的输出作为后一个残差块的输入;
每个所述残差块均包括第一子模块和第二子模块;所述第一子模块的结构和第二子模块的结构相同,均包括依次连接的膨胀因果卷积层、权重归一化层、非线性映射层和正则化层;
所述膨胀因果卷积层均按照以下步骤构建得到:
采用因果卷积核大小为1×2,膨胀因子为1,步长为1,零填充大小为1的隐藏层构建膨胀因果卷积层的第一层;
采用因果卷积核大小为1×2,膨胀因子为2,步长为1,零填充大小为2的隐藏层构建膨胀因果卷积层的第二层;
采用因果卷积核大小为1×2,膨胀因子为4,步长为1,零填充大小为4的隐藏层构建膨胀因果卷积层的第三层;
采用因果卷积核大小为1×2,膨胀因子为8,步长为1,零填充大小为8的隐藏层构建膨胀因果卷积层的第四层。
进一步的,对于每个残差块而言,仅当输入通道数量与膨胀因果卷积层的输出通道数量不一致时,将残差块的输入经1×1卷积后与膨胀因果卷积层的输出拼接,作为该残差块的输出。
进一步的,所述双向特征融合模块包括双向叠加层、平均池化层和dense层;
所述双向叠加层,用于将BiTCN模块输出的时间特征进行双向叠加,得到两个张量;
所述平均池化层,用于对双向叠加层输出的两个张量进行压缩;
所述dense层,用于在平均池化层输出的基础上,得到在设定时间窗口后一个时间步长时,待预测目标站点的风速预测值。
进一步的,所述训练好的GRU-BiTCN模型,按照以下训练步骤得到:
S100:获取多个时间窗口内的目标站点的站点历史气象数据、目标站点周围n×n个格点的格点历史气象数据,以及各格点的地形历史数据;对获取到的站点历史气象数据、格点历史气象数据和地形历史数据进行归一化处理;将归一化后的格点历史气象数据和归一化后的地形历史数据进行拼接,得到第一拼接数据;将第一拼接数据和归一化后的站点历史气象数据作为样本数据;所述目标站点包括待预测目标站点和多个位于所述待预测目标站点周围的辅助站点;
S200:对于任意一个时间窗口,获取在该时间窗口后一个时间步长的风速,将该风速作为该时间窗口的样本数据的标签;
S300:采用样本数据和对应的标签,构建样本集;将样本集划分成训练集和测试集;
S400:采用训练集对GRU-BiTCN模型进行训练,得到用于预测在时间窗口后一个时间步长的风速的GRU-BiTCN模型;
S500:采用测试集对经过S400训练的GRU-BiTCN模型进行测试,得到训练好的GRU-BiTCN模型;
其中,多个位于所述待预测目标站点周围的辅助站点按照以下步骤确定得到:
选取待预测目标站点周围的可用站点,以及获取待预测目标站点周围的可用站点的历史风速;
按照待预测目标站点周围的可用站点的历史风速与待预测目标站点的历史风速之间的距离等级加权皮尔逊相关系数,按照距离等级加权皮尔逊相关系数大小,选取多个符合要求的可用站点作为辅助站点;
所述距离等级加权皮尔逊相关系数按照以下公式计算得到:
其中,λd表示距离等级系数,xa表示待预测目标站点在a时刻的风速序列,表示待预测目标站点的风速序列均值;ya表示可用站点在a时刻的风速序列,/>表示可用站点的风速序列均值,A表示总时刻。
进一步的,双向叠加层中,所述将BiTCN模块输出的时间特征进行双向叠加,得到两个张量,具体包括:
将正向时间序列对应的时间特征记为序列1,将序列1按时间顺序反转得到序列2,将序列1和序列2上下拼接,得到一张量;
将反向时间序列对应的时间特征记为序列3,将序列3按时间顺序反转得到序列4,将序列3和序列4上下拼接,得到另一张量。
有益效果:本发明与现有技术相比,具有以下优点:
(1)本发明方法考虑风速实际受到的多因素影响,将地形数据和格点气象数据结合,并利用多层GRU模型提取时间和空间特征,将地形、气象要素的格点数据特征和实际站点的气象数据拼接作为预测模型的输入,就R2指标而言,相比于未采用格点数据的情况提升了大约8%;
(2)本发明方法采用卷积再处理模块使格点气象数据和站点气象数据以合理的方式拼接,在处理数据维度的同时,最大程度上保证了原本地形数据、气象要素格点数据的特征;
(3)本发明方法在模型搭建上采用混合模型的形式,多层GRU模型可以很好地提取时空相关性特征;BiTCN模块可以进一步获取时间特征,而且相比于原始TCN模块和BiLSTM模块,BiTCN模块在预测精度上表现更好,就R2指标而言,高于TCN模块和BiLSTM模块的预测结果约3%-5%;
(4)采用本发明方法搭建的模型,该模型的最后利用双向特征融合模块并采用池化-全连接的结构降低误差,提升性能;
(5)本发明方法采用更优的方案处理风速以及多种相关因素,结合多层GRU模型提取更加深层次、多元的时空相关性特征,采用双向TCN模块处理时间序列以提高站点的预测精度。
附图说明
图1为GRU模型结构图;
图2为本发明的流程示意图;
图3为本发明的TCN模块结构图;
图4为本发明与实际风速、其他风速预测模型的预测结果对比图。
具体实施方式
现结合附图和实施例进一步阐述本发明的技术方案。
本实施例提出了一种基于GRU-BiTCN的站点短期风速预测方法,利用前10个小时的历史风速数据,预测得到第11个小时的风速。如图2所示,本实施例方法主要包括以下步骤:
步骤1:获取待预测目标站点的站点历史气象数据和获取辅助站点的站点历史气象数据。具体操作包括:
在本实施例中,以地处美国丹佛市郊外地区,东经-104.5°,北纬39.8°的站点作为待预测目标站点,以该待预测目标站点为中心,其周围650km*650km范围内存在238个站点,其中可用站点共计113个。
从美国国家海洋和大气管理局(NOAA)提供的每日气象观测数据中获取待预测目标站点和各有用站点在2016至2018年1-3月的站点历史气象数据,时间步长为1小时,站点历史气象数据中的气象要素包括露点温度、温度、气压、风向、风速、云量、1小时降雨量和6小时降雨量。根据皮尔逊相关系数,计算站点历史气象数据中风速和其余气象要素之间的相关性,根据计算结果,最终确定站点历史气象数据中的气象要素为气压、风向、温度和风速,即站点历史气象数据包括站点气压数据、站点风向数据、站点温度数据和站点风速数据。
计算可用站点的风速与待预测目标站点的风速之间的距离等级加权皮尔逊相关系数,根据计算结果,从可用站点中选取多个辅助站点,本实施例最后确定了49个辅助站点。距离等级加权皮尔逊相关系数的计算公式如下:
其中,λd表示距离等级系数,xa表示待预测目标站点在a时刻的风速序列,表示待预测目标站点的风速序列均值;ya表示可用站点在a时刻的风速序列,/>表示可用站点的风速序列均值,A表示总时刻,本实施例的距离等级系数λd是对各可用站点与待预测目标站点之间的距离按从大到小的顺序进行排序,根据排序定义得到。
步骤2:获取格点历史气象数据。具体操作包括:
在本实施例中,采用ERA5再分析数据集,以待预测目标站点所在坐标为中心,采集65*65格点历史气象数据,格点历史气象数据中的气象要素主要对应:温度、u向风速、v向风速、气压、湿度和高植被叶面指数;即格点历史气象数据包括格点历史温度数据、格点历史u向风速数据、格点历史v向风速数据、格点历史气压数据、格点历史湿度数据和格点历史高植被叶面指数数据。本实施例的时间步长为1小时,因此将格点历史气象数据按照时间步长进行叠加处理,例如,将5点的6种格点历史气象数据进行叠加,将6点的6种历史格点气象数据进行叠加,每个时间点的历史格点数据维度为(6,65,65)。ERA5再分析数据集是由欧洲中期天气中心发布的再分析数据集,一般被认作是真实数据。
步骤3:获取各格点的地形历史数据。具体操作包括:
在本实施例中,地形历史数据主要包括历史海拔数据、历史坡度数据和历史坡向数据,将地形历史数据按照时间步长进行叠加处理,例如,将5点的3种历史地形数据进行叠加,将6点的3种历史地形数据进行叠加,每个时间点的历史地形数据维度为(3,65,65)。
步骤4:处理站点历史气象数据,此处的站点历史气象数据指的是待预测目标站点的站点历史气象数据和辅助站点的站点历史气象数据。在本实施例中,对站点历史气象数据进行填补处理,填补处理为采用式(2)示出的线性插值法填补站点历史气象数据中的缺失值。
式中,x表示缺失值所在的时间位置,y表示待填补的缺失值,x0和y0分别表示缺失值所在时刻的前一时刻及其值,x1和y1分别表示缺失值所在时刻的后一时刻及其值。
步骤5:按照式(3),对站点历史气象数据中的站点历史气压数据、站点历史风向数据、站点历史温度数据和站点历史风速数据,对格点历史气象数据中的站点历史温度数据、站点历史u向风速数据、站点历史v向风速数据、站点历史气压数据、站点历史湿度数据和站点历史高植被叶面指数数据,对各格点的地形历史数据中的历史海拔数据、历史坡度数据和历史坡向数据进行归一化处理,将上述数据转换到0-1之间,进行本步骤的目的是消除各维数据间数量级差别,避免因为输入输出数据数量级差别较大而造成网络预测误差较大的情况发生。
式中,Xnorm表示归一化后的结果,X为原始数据,Xmin表示该要素的最小值,Xmax表示该要素的最大值。当X为站点历史气象数据中的站点历史气压数据时,那么Xmin指的是站点历史气象数据中的站点历史气压数据的最小值,Xmax指的是站点历史气象数据中的站点历史气压数据的最大值。
步骤6:对归一化后的各格点的地形历史数据和归一化后的格点历史气象数据进行拼接,得到第一拼接数据;此时每个时间点的数据维度为(9,65,65)。
步骤7:构建GRU-BiTCN模型。如图2所示,本实施例的GRU-BiTCN模型包括:多层GRU模型、卷积再处理模块、BiTCN模块和双向特征融合模块。
现结合各附图对本实施例的GRU-BiTCN模型做进一步说明。
本实施例的多层GRU模型用于通过3层GRU的运算来提取时间窗口内的时空相关性特征,并降低后续处理的维度大小,此处的时间窗口为10小时,该多层GRU模型主要包括:3层GRU和3层Dropout。
每一层GRU均包括10个GRU模型,对于第一层GRU,第一个GRU模型用于接收时间窗口中第一个时间步长的数据,并输出第一个时间步长的数据对应的隐状态,将该隐状态以及第二个时间步长的数据传递至第二个GRU模型;以此类推。对于第二层GRU,该层10个GRU模型的输入为上一层与之对应的GRU模型输出的隐状态H00~H09;以此类推。
在每层GRU后都包含一层Dropout,用于正则化,防止网络过拟合。
现对上述提及到的GRU模型做进一步说明。
如图1所示,GRU模型是门控循环网络模型,每个GRU模型均只包含两个门,分别为重置门和更新门,重置门用于决定如何把新的输入与之前的记忆结合,有助于捕捉序列中的短期依赖关系,更新门用来决定之前的记忆有多少起作用,有助于捕捉序列中的长期依赖关系。
重置门的计算公式表示为:
Rt=σ(XtWxr+Ht-1Whr+br) (4)
式中,Xt表示重置门的输入数据;Ht-1表示第t-1个时间步长的隐状态,隐状态为从输入数据中获取的时空相关性特征,Wxr、Whr分别表示Xt、Ht-1的重置门权重参数,br表示重置门的偏置参数,σ(·)表示sigmoid激活函数。t≤10。
更新门的计算公式表示为:
Zt=σ(XtWxz+Ht-1Whz+bz) (5)
式中,Wxz、Whz分别表示Xt、Ht-1的更新门权重参数,bz表示更新门的偏置参数;
将第t-1个时间步长的隐状态Ht-1与重置门结合,计算得到第t个时间步长的候选隐状态候选隐状态的计算公式为:
式中,Wxh、Whh分别表示Xt的权重参数和(Rt⊙Ht-1)的权重参数,bh为计算候选隐状态的偏置参数,tanh(·)表示tanh非线性激活函数,通过使用tanh非线性激活函数来保证候选隐状态的值在-1到1之间,⊙表示Hadamard积。
按照式(7)计算得到第t个时间步长的隐状态Ht,即从第t个时间步长数据中获取到的时空相关性特征,该第t个时间步长的隐状态Ht为当前GRU模型的输出,其计算公式为:
式中,Zt表示第t个时间步长的更新门;
第三层GRU的最后一个GRU模型的隐状态H29,维度为(9,65,65),包含范围内时空相关性特征。
本实施例的卷积再处理模块用于将多层GRU模型的输出进行降维,以及将多层GRU模型的输出转换成可与归一化后的站点历史气象数据拼接的形式,利于后续与归一化后的站点历史气象数据进行拼接,实现进一步提取全局特征。
本实施例的卷积再处理模块主要包括:
第一层为卷积层,该卷积层使用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU;
第二层为池化层,该池化层使用2×2的最大池化,步长为2,无零填充;
第三层为卷积层,该卷积层使用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU;
第四层为池化层,该池化层使用2×2的最大池化,步长为2,无零填充;
第五层为卷积层,该卷积层使用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU;
第六层为池化层,该池化层使用2×2的最大池化,步长为2,无零填充;
第七层为全连接层,将前一层的输出展平为一个向量,并连接到50个神经元上;
第八层为全连接层,将前一层的输出连接到9个神经元上;
第九层为输出层,使用softmax函数作为输出层。
本实施例的BiTCN模块为双向时间卷积神经网络,构建BiTCN模块的目的在于:传统TCN模块具有时间因果性,即只考虑过去的气象数据,不关心未来气象数据,但是实际上风速的情况较为复杂,且存在传播过程中的时间滞后性,通过构建BiTCN模块,可以实现从过去和未来双向获取风速的变化情况,能更好地进行风速预测。
本实施例的BiTCN模块包括正向TCN模块和反向TCN模块,一个正向处理序列,一个反向处理序列,处理完毕后将两个TCN模块的输出输入到双向特征融合模块。
对于正向TCN模块和反向TCN模块而言,均由多个残差块构成,如图3所示,每个残差块均包括:两层膨胀因果卷积、两层权重归一化层weightNorm、两层非线性映射ReLU、两层正则化层Dropout和可选的1×1卷积。当输入的通道数量和膨胀因果卷积的输出通道不一致时,通过1×1的卷积保证残差连接有效。
因果卷积无法获取未来的数据序列,也就是说在j时刻输出的值只和j之前时刻相关,这是严格约束的时间序列结构。膨胀卷积也称空洞卷积,在标准的卷积中增加空洞,以这样的方式增加感受野,如此卷积的输出会包含较大范围的信息。
引入参数kk和d,k代表内核大小,d为膨胀因子,且膨胀因子d逐层以2的指数增加。因为采用了膨胀卷积,所以在每一层膨胀因果卷积层都需要填充0,填充大小为(kk-1)×d。
本实施例的每层膨胀因果卷积,均包括:
第一层隐藏层,因果卷积核大小为1×2,膨胀因子为1,步长为1;
第二层隐藏层,因果卷积核大小为1×2,膨胀因子为2,步长为1;
第三层隐藏层,因果卷积核为1×2,膨胀因子为4,步长为1;
第四层隐藏层,因果卷积核为1×2,膨胀因子为8,步长为1。
本实施例的双向特征融合模块主要包含双向叠加层、平均池化层和dense层。将正向TCN模块和反向TCN模块输出的结果输入到双向特征融合模块中,经过双向叠加层输出两个维度为(2,10)的张量;分别进入平均池化层,过滤器大小为2×1,步幅为1,输出维度为(1,10);最后进入dense层,输出数据尺寸为1×1。本实施例使用的双向叠加层具体操作包括:将正向TCN模块输出的结果复制得到序列1,将该序列1按时间顺序反转得到序列2;将序列1和序列2上下叠在一起,输出维度为(2,10)的张量,此处的叠实则是拼接操作,同样的,将反向TCN模块输出的结果复制得到序列3,将该序列3按时间顺序反转得到序列4;将序列3和序列4上下叠在一起,输出维度为(2,10)的张量。本实施例的GRU-BiTCN模型结构可以使得每个位置的特征能够考虑到序列中前后的信息。
步骤8:本实施例的时间窗口为10小时,因此将第一拼接数据按照时间步长为1小时划分成10个批次,按照时间顺序,将10个批次依次输入至训练好的GRU-BiTCN模型中,具体的,将10个批次依次输入至第一层GRU的10个GRU模型中,第一个GRU模型接收第一个时间步长的数据,并输出第一个时间步长的数据对应的隐状态,将该隐状态以及第二个时间步长的数据传递至第二个GRU模型;以此类推。对于第二层GRU,该层10个GRU模型的输入为上一层与之对应的GRU模型输出的隐状态H00~H09;以此类推。取多个时间窗口的第一拼接数据和归一化后的站点历史气象数据作为样本数据。对于任意一个时间窗口,获取在该时间窗口后一个时间步长的风速,即第11个小时的风速,将第11个小时的风速作为该时间窗口的样本数据的标签;采用样本数据和对应的标签,得到6498组样本,将样本按照80%训练集,20%测试集进行划分;
采用训练集对步骤7构建的GRU-BiTCN模型进行训练,即通过前10个小时的数据来预测未来1小时的风速大小。在本实施例中,使用Adam优化器训练模型,学习率为0.001,进行参数调优。损失函数为均方根误差RMSE,公式为:
式中,n表示样本数量,i表示样本序号,Y表示样本真实标签,Y'表示预测值,RMSE值越小说明预测结果越好。
采用训练完毕的GRU-BiTCN模型对测试集数据进行预测,判断GRU-BiTCN模型的模型精度。
步骤9:获取待预测目标站点的前10个小时的站点历史气象数据,获取待预测目标站点周围的65*65个格点的前10个小时的格点历史气象数据,以及获取各格点的前10个小时的地形历史数据;
步骤10:对步骤9获取到的站点历史气象数据、格点历史气象数据和地形历史数据进行归一化处理;
步骤11:将归一化后的格点历史气象数据和归一化后的地形历史数据进行拼接,得到第一拼接数据;将第一拼接数据按照时间窗口划分成10个批次,每个批次的时间步长为1小时;按照时间顺序,各批次拼接数据依次输入至训练好的GRU-BiTCN模型中,同时将归一化后的站点历史气象数据输入至训练好的GRU-BiTCN模型中,由训练好的GRU-BiTCN模型输出未来1小时待预测目标站点的风速预测值。具体的,在GRU-BiTCN模型中,多层GRU模型的输出进入卷积再处理模块中,将归一化后的站点历史气象数据与卷积再处理模块的输出进行拼接,而后输入至BiTCN模块中,BiTCN模块输出正向时间序列对应的时间特征和反向时间序列对应的时间特征,双向特征融合模块对BiTCN模块输出的时间特征进行双向特征融合,得到未来1小时待预测目标站点的风速预测值。
图4示出了本发明方法和其他预测方法的比较结果。case1中仅采用站点历史气象数据,忽略所有格点历史气象数据;case2仅采用单层GRU模型,其余不做改变;case3数据不变,BiTCN模块改为TCN;case4数据不变,BiTCN模块改为BiLSTM模型。由图4可知,本发明方法R2指标普遍相较预测方法有所提升,全局气象要素、地形要素对于预测风速影响最大,不可忽视;TCN模块本身对于预测序列具有较好的性能,但对比双向结构的网络模型,如BiLSTM或BiTCN可以进一步提升预测精度。
本发明提出的一种基于时间、空间多要素预测站点短期风速的深度学习方法,在数据方面,包含较大地理范围内的多气象要素、地形因素的格点数据,以及可用站点数据;通过计算待预测目标站点风速和其余气象要素之间相关性,对于站点气象要素进行筛选,消除掉无关因素的影响并且对于多特征数据起到降维的作用。对于格点而言,站点的数量在这个地理范围内是较少的,无法有效转化成可信、偏差结果较小的格点数据,所以在本发明中将全局的格点数据输入到多层GRU模型中,获取到在一个时间窗口内,整片区域的一个时空相关性特征,类似于边界条件的作用,它可以有效地提高预测精度;TCN模块是较为优秀的处理时间序列的模型,但是由于TCN模块中因果卷积的特点,它无法考虑未来的信息,故建立BiTCN模块,将全局特征与站点数据按照时间正向与反向的结果进入到BiTCN模块,捕捉风速变化的情况和潜在因素;双向特征融合模块是将正向TCN模块的输出结果和反向TCN模块的输出结果进一步处理,经过平均池化层一定程度上消除因模型随机性带来的误差。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (9)

1.一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:包括以下步骤:
步骤1:获取设定时间窗口内的待预测目标站点的站点历史气象数据,获取设定时间窗口内的待预测目标站点周围n×n个格点的格点历史气象数据,以及获取设定时间窗口内的各格点的地形历史数据;
步骤2:对步骤1获取到的站点历史气象数据、格点历史气象数据和地形历史数据进行归一化处理;
步骤3:将归一化后的格点历史气象数据和归一化后的地形历史数据进行拼接,得到第一拼接数据;将第一拼接数据按照时间步长划分成多个批次,按照时间顺序,将多个批次依次输入至训练好的GRU-BiTCN模型中,同时将归一化后的站点历史气象数据输入至训练好的GRU-BiTCN模型中,由训练好的GRU-BiTCN模型输出在设定时间窗口后一个时间步长时,待预测目标站点的风速预测值;
所述时间窗口与时间步长满足:一个时间窗口内有连续的k个时间步长;所述在设定时间窗口后时,待预测目标站点的风速预测值表示第k+1个时间步长时,待预测目标站点的风速预测值;
其中,所述的GRU-BiTCN模型包括:
多层GRU模型,用于从第一拼接数据中提取时空相关性特征;
卷积再处理模块,用于对多层GRU模型的输出进行卷积再处理;
数据拼接模块,用于将卷积再处理模块的输出与归一化后的站点历史气象数据进行拼接,得到第二拼接数据;
BiTCN模块,用于从第二拼接数据中提取正向时间序列对应的时间特征和反向时间序列对应的时间特征;
双向特征融合模块,用于对BiTCN模块输出的时间特征进行双向特征融合,得到在设定时间窗口后一个时间步长时,待预测目标站点的风速预测值;
所述多层GRU模型包括3层GRU和3层Dropout;在每层GRU后设置一层Dropout;
每层GRU均由g个GRU模型构成;
对于第一层GRU,其中的第一个GRU模型的输入为第一拼接数据的第一批次数据,第二个GRU模型的输入为第一个GRU模型输出的隐状态和第一拼接数据的第二批次数据,以此类推;
对于第二层GRU,其中的第g个GRU模型的输入为第一层GRU中第g个GRU模型输出的隐状态;
以此类推,对于第三层GRU,其中的第g个GRU模型的输入为第二层GRU中第g个GRU模型输出的隐状态;第三层GRU中第g个GRU模型的输出作为多层GRU模型的输出,得到第一拼接数据中的时空相关性特征;
在每个所述GRU模型中均包括重置门和更新门;
所述重置门表示为:
Rt=σ(XtWxr+Ht-1Whr+br) (4)
式中,Xt表示第t个时间步长的输入数据,Wxr表示Xt的重置门权值参数,Ht-1表示第t-1个时间步长的隐状态,所述隐状态表示输入数据的时空相关性特征,Whr表示Ht-1的重置门权重参数,br表示重置门的偏置参数,σ(·)表示sigmoid激活函数;t≤k;
所述更新门表示为:
Zt=σ(XtWxz+Ht-1Whz+bz) (5)
式中,Wxz表示Xt的更新门权值参数,Whz表示Ht-1的更新门权重参数,bz表示更新门的偏置参数;
在每个GRU模型中进行以下计算步骤:
通过将第t-1个时间步长的隐状态Ht-1与重置门结合,按照下式计算得到第t个时间步长的候选隐状态
式中,Wxh、Whh分别表示Xt的权重参数和(Rt⊙Ht-1)的权重参数,bh表示计算候选隐状态的偏置参数,tanh(·)表示tanh非线性激活函数,⊙表示Hadamard积;
利用第t-1个时间步长的隐状态Ht-1和第t个时间步长的候选隐状态计算得到第t个时间步长的隐状态Ht
式中,Zt表示第t个时间步长的更新门;
将第t个时间步长的隐状态Ht作为下一个GRU模型的输入,以及作为下一层GRU中对应的GRU模型的输入。
2.根据权利要求1所述的一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:所述站点历史气象数据包括:站点历史气压数据、站点历史风向数据、站点历史温度数据和站点历史风速数据;
所述格点历史气象数据为由格点历史温度数据、格点历史u向风速数据、格点历史v向风速数据、格点历史气压数据、格点历史湿度数据和格点历史高植被叶面指数数据按照时间步长叠加得到;
所述地形历史数据为由历史海拔数据、历史坡度数据和历史坡向数据按照时间步长叠加得到。
3.根据权利要求1所述的一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:所述卷积再处理模块按照以下步骤构建得到:
采用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU的卷积层构建卷积再处理模块的第一层;
采用2×2的最大池化,步长为2,无零填充的池化层构建卷积再处理模块的第二层;
采用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU的卷积层构建卷积再处理模块的第三层;
采用2×2的最大池化,步长为2,无零填充的池化层构建卷积再处理模块的第四层;
采用3×3的卷积核,步长为1,零填充为1,激活函数为ReLU的卷积层构建卷积再处理模块的第五层;
采用2×2的最大池化,步长为2,无零填充的池化层构建卷积再处理模块的第六层;
采用全连接层构建卷积再处理模块的第七层,用于将卷积再处理模块的第六层的输出展平为一个向量,并连接到50个神经元上;
采用全连接层构建卷积再处理模块的第八层,用于将卷积再处理模块的第七层的输出连接到9个神经元上;
采用softmax函数构建卷积再处理模块的输出层。
4.根据权利要求1所述的一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:所述BiTCN模块包括第一TCN模块和第二TCN模块;
所述第二拼接数据作为第一TCN模块的输入,该第一TCN模块输出正向时间序列对应的时间特征;
将第二拼接数据按照时间序列进行反转,得到的数据作为第二TCN模块的输入,该第二TCN模块输出反向时间序列对应的时间特征。
5.根据权利要求4所述的一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:第一TCN模块和第二TCN模块均由h个残差块构成;前一个残差块的输出作为后一个残差块的输入;
每个所述残差块均包括第一子模块和第二子模块;所述第一子模块的结构和第二子模块的结构相同,均包括依次连接的膨胀因果卷积层、权重归一化层、非线性映射层和正则化层;
所述膨胀因果卷积层均按照以下步骤构建得到:
采用因果卷积核大小为1×2,膨胀因子为1,步长为1,零填充大小为1的隐藏层构建膨胀因果卷积层的第一层;
采用因果卷积核大小为1×2,膨胀因子为2,步长为1,零填充大小为2的隐藏层构建膨胀因果卷积层的第二层;
采用因果卷积核大小为1×2,膨胀因子为4,步长为1,零填充大小为4的隐藏层构建膨胀因果卷积层的第三层;
采用因果卷积核大小为1×2,膨胀因子为8,步长为1,零填充大小为8的隐藏层构建膨胀因果卷积层的第四层。
6.根据权利要求5所述的一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:对于每个残差块而言,仅当输入通道数量与膨胀因果卷积层的输出通道数量不一致时,将残差块的输入经1×1卷积后与膨胀因果卷积层的输出拼接,作为该残差块的输出。
7.根据权利要求1所述的一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:所述双向特征融合模块包括双向叠加层、平均池化层和dense层;
所述双向叠加层,用于将BiTCN模块输出的时间特征进行双向叠加,得到两个张量;
所述平均池化层,用于对双向叠加层输出的两个张量进行压缩;
所述dense层,用于在平均池化层输出的基础上,得到在设定时间窗口后一个时间步长时,待预测目标站点的风速预测值。
8.根据权利要求1所述的一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:所述训练好的GRU-BiTCN模型,按照以下训练步骤得到:
S100:获取多个时间窗口内的目标站点的站点历史气象数据、目标站点周围n×n个格点的格点历史气象数据,以及各格点的地形历史数据;对获取到的站点历史气象数据、格点历史气象数据和地形历史数据进行归一化处理;将归一化后的格点历史气象数据和归一化后的地形历史数据进行拼接,得到第一拼接数据;将第一拼接数据和归一化后的站点历史气象数据作为样本数据;所述目标站点包括待预测目标站点和多个位于所述待预测目标站点周围的辅助站点;
S200:对于任意一个时间窗口,获取在该时间窗口后一个时间步长的风速,将该风速作为该时间窗口的样本数据的标签;
S300:采用样本数据和对应的标签,构建样本集;将样本集划分成训练集和测试集;
S400:采用训练集对GRU-BiTCN模型进行训练,得到用于预测在时间窗口后一个时间步长的风速的GRU-BiTCN模型;
S500:采用测试集对经过S400训练的GRU-BiTCN模型进行测试,得到训练好的GRU-BiTCN模型;
其中,多个位于所述待预测目标站点周围的辅助站点按照以下步骤确定得到:
选取待预测目标站点周围的可用站点,以及获取待预测目标站点周围的可用站点的历史风速;
按照待预测目标站点周围的可用站点的历史风速与待预测目标站点的历史风速之间的距离等级加权皮尔逊相关系数,按照距离等级加权皮尔逊相关系数大小,选取多个符合要求的可用站点作为辅助站点;
所述距离等级加权皮尔逊相关系数按照以下公式计算得到:
其中,λd表示距离等级系数,xa表示待预测目标站点在a时刻的风速序列,表示待预测目标站点的风速序列均值;ya表示可用站点在a时刻的风速序列,/>表示可用站点的风速序列均值,A表示总时刻。
9.根据权利要求7所述的一种基于GRU-BiTCN的站点短期风速预测方法,其特征在于:双向叠加层中,所述将BiTCN模块输出的时间特征进行双向叠加,得到两个张量,具体包括:
将正向时间序列对应的时间特征记为序列1,将序列1按时间顺序反转得到序列2,将序列1和序列2上下拼接,得到一张量;
将反向时间序列对应的时间特征记为序列3,将序列3按时间顺序反转得到序列4,将序列3和序列4上下拼接,得到另一张量。
CN202311516084.XA 2023-11-15 2023-11-15 一种基于GRU-BiTCN的站点短期风速预测方法 Active CN117233869B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311516084.XA CN117233869B (zh) 2023-11-15 2023-11-15 一种基于GRU-BiTCN的站点短期风速预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311516084.XA CN117233869B (zh) 2023-11-15 2023-11-15 一种基于GRU-BiTCN的站点短期风速预测方法

Publications (2)

Publication Number Publication Date
CN117233869A CN117233869A (zh) 2023-12-15
CN117233869B true CN117233869B (zh) 2024-02-23

Family

ID=89089786

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311516084.XA Active CN117233869B (zh) 2023-11-15 2023-11-15 一种基于GRU-BiTCN的站点短期风速预测方法

Country Status (1)

Country Link
CN (1) CN117233869B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117910658A (zh) * 2024-03-15 2024-04-19 北京和利时系统工程有限公司 一种降水量预测方法、模型的训练与修正方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112308336A (zh) * 2020-11-18 2021-02-02 浙江大学 一种基于多步时序预测的高速铁路大风限速动态处置方法
CN112884134A (zh) * 2021-04-01 2021-06-01 山西云芯新一代信息技术研究院有限公司 面向地震震相识别的基于时域的卷积神经网络模型及应用
CN114330094A (zh) * 2021-11-18 2022-04-12 国家电网有限公司 一种基于tcn-gru联合模型的风电功率短期预测方法
WO2022100021A1 (zh) * 2020-11-16 2022-05-19 远景能源有限公司 基于风机相互预警的虚拟激光雷达系统及方法
CN115618734A (zh) * 2022-10-26 2023-01-17 东南大学 一种基于集成学习的风机短期出力预测方法
CN116341763A (zh) * 2023-05-23 2023-06-27 西南交通大学 一种空气质量预测方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022100021A1 (zh) * 2020-11-16 2022-05-19 远景能源有限公司 基于风机相互预警的虚拟激光雷达系统及方法
CN112308336A (zh) * 2020-11-18 2021-02-02 浙江大学 一种基于多步时序预测的高速铁路大风限速动态处置方法
CN112884134A (zh) * 2021-04-01 2021-06-01 山西云芯新一代信息技术研究院有限公司 面向地震震相识别的基于时域的卷积神经网络模型及应用
CN114330094A (zh) * 2021-11-18 2022-04-12 国家电网有限公司 一种基于tcn-gru联合模型的风电功率短期预测方法
CN115618734A (zh) * 2022-10-26 2023-01-17 东南大学 一种基于集成学习的风机短期出力预测方法
CN116341763A (zh) * 2023-05-23 2023-06-27 西南交通大学 一种空气质量预测方法

Also Published As

Publication number Publication date
CN117233869A (zh) 2023-12-15

Similar Documents

Publication Publication Date Title
CN111738111A (zh) 基于多分支级联空洞空间金字塔的高分辨遥感图像的道路提取方法
CN117233869B (zh) 一种基于GRU-BiTCN的站点短期风速预测方法
CN112949550B (zh) 一种基于深度学习的水体识别方法、系统和介质
CN115223063B (zh) 基于深度学习的无人机遥感小麦新品种倒伏面积提取方法及系统
CN113610286B (zh) 顾及时空相关性和气象因素的pm2.5浓度预测方法及装置
CN116415730A (zh) 一种预测水位的融合自注意力机制时空深度学习模型
CN115393690A (zh) 一种轻量化神经网络的空对地观测多目标识别方法
CN116844041A (zh) 一种基于双向卷积时间自注意力机制的耕地提取方法
Abdalla et al. Deep learning weather forecasting techniques: literature survey
CN111242028A (zh) 基于U-Net的遥感图像地物分割方法
CN114385611A (zh) 一种基于人工智能算法和知识图谱的降水预测方法和系统
CN112668711B (zh) 基于深度学习的洪水流量预测方法、装置和电子设备
CN114550014A (zh) 道路分割方法及计算机装置
CN112200355B (zh) 一种滑坡的预测方法、装置、设备和存储介质
CN113591608A (zh) 一种基于深度学习的高分辨率遥感影像不透水面提取方法
CN114065996A (zh) 基于变分自编码学习的交通流预测方法
CN117436653A (zh) 一种网约车出行需求的预测模型构建方法和预测方法
CN111368843B (zh) 一种基于语义分割的冰上湖提取的方法
CN112990354A (zh) 一种构建用于风速预测的深度卷积回归网络的方法及装置
CN117494034A (zh) 基于交通拥堵指数和多源数据融合的空气质量预测方法
CN116152206A (zh) 一种光伏输出功率预测方法、终端设备及存储介质
CN113344290B (zh) 基于U-Net网络的次季节降水气象预报订正方法
CN111325384B (zh) 一种结合统计特征和卷积神经网络模型的ndvi预测方法
Jonnalagadda et al. Spatial-Temporal Forecast of the probability distribution of Oceanic Nino Index for various lead times.
CN116449460B (zh) 基于卷积UNet和迁移学习的区域月降水预测方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant