一种基于transformer模型的用户用电量预测方法

专利查询3月前  39



1.本发明涉及电力计量行业数据管控的技术领域应用,具体涉及一种基于transformer模型的用户用电量预测方法。


背景技术:

2.随着电力用户的不断增加和电网业务的不断扩展,智能电网建设需要真正高效、有效的智能技术应用才能得到实质性发展。用电量作为用户的主要用电信息是智能电网建设的重要指标,掌握用户的用电量规律,对用电数据作出精准预测可以帮助规划电力建设,发挥智能电网的辅助决策作用。
3.目前常用的用电量预测方法例如使用自回归或者lstm模型,都是针对短期用电量进行预测,其实用价值不高。使用这些方法进行长期用电量预测,存在长时序数据的信息丢失问题。
4.transformer模型是2017年google提出的一种基于encoder-decoder和self-attention的结构模型,取代了以往的rnn网络结构,可以获得较好的长序列数据预测效果。但用电量数据具有长序列、多维度、体量大的特点,传统的transformer模型对于这类数据的处理往往会出现数据维度过高导致计算量复杂且信息提取效果瓶颈的问题。


技术实现要素:

5.要克服现有技术的上述缺点,提供一种基于transformer模型的用户用电量预测方法。
6.本发明提出了一种基于稀疏注意力和门控机制的transformer用电量预测模型,该模型对传统多头自注意力进行稀疏计算,只将注意力分数排名前若干位的作为有效注意力,改变传统的使用全局注意力的方式,输入层采用多类型用电量时序数据,对每一种类型数据分别采用门控机制,为输入数据中的变量按照贡献度赋予不同的计算权重,同时门控机制还可以为模型中的数据进行必要的非线性处理以充分利用数据信息,实现对用户用电量的精准预测。
7.本发明解决其技术问题是采取以下技术方案实现的:
8.一种基于transformer模型的用户用电量预测方法,包括以下步骤:
9.步骤(1):输入层多变量输入:用户用电量往往受多因素影响,使用多种合适的变量作为输入提取时间特征,可以提高用电量预测的准确度。本发明在输入层采用多类型变量作为输入,将输入的用电量时序数据分为三类,分别是静态变量、过去已知输入和未来可推测的输入,其中静态变量包括地域变量和行业变量,这部分数据和时间无关;过去已知时间序列输入,属于动态时变变量,包括用电量、负荷和温度;未来已知的时间序列输入,属于动态时不变变量,包括周末、节假日等变量。
10.步骤(2):使用grn门控机制对输入变量进行权重计算:针对用电量预测模型训练过程,训练数据集采用变量较多,理论上较为丰富的数据变量可以使得模型获得更为全面
的特征信息,但实际中模型训练效果一部分由训练数据集的数据质量影响。本发明将所有静态的、过去的和将来的输入都使用不同的独立门控机制,计算出t时刻所有历史输入变量的平面化向量采用门控残差模块grn对模型输入数据的各变量数据根据贡献度赋予不同的权重,权重计算如下公式所示:
[0011][0012]
步骤(3):采用稀疏注意力进行特征提取:传统的transformer模型中注意力计算采用全量计算,即对当前数据的注意力计算,需要用到输入序列中周围所有的数据,这种传统方法往往使计算维度增大、且有些无用信息也参与到计算过程中。本发明基于传统自我注意力的缩放点积运算,对三元组输入(query,key,value),执行点积运算,生成注意力得分如下公式所示:
[0013][0014]
基于得分越高表明相关性越高的假设,我们对得分p的值进行评估。假设选取排名前k个分数作为有效分数,得到queryi和keyj的分数集合p,对集合p进行排序,排名前k的分数保留,否则将分数设为无穷小,如下所示:
[0015][0016]
步骤(4):门控残差模块动态处理数据信息:为了能获取到变量的信息,通常需要对该变量进行非线性处理,并通过掌握非线性处理程度来改变变量信息提取程度。本发明采用门控线性单元gtu和标准化归一处理构建门控残差grn模块,动态处理数据信息,公式如下:
[0017]
grn
ω
(x)=layernorm(x+gtu
ω
(θ))
ꢀꢀꢀ
(4)
[0018]
θ=elu(xw’ω
+a)
ꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0019][0020]
步骤(5):使用门控残差模块和稀疏注意力构建三层解码器:解码器负责根据提取到的静态变量和时间变量特征,计算得到用电量输出值。本发明使用门控残差网络和稀疏注意力构建三层解码器结构,中间层应用稀疏注意力计算时间特征序列数据注意力,上下两层使用门控残差网络,上层主要对静态数据进行信息集中,下层网络对注意力层的输出进行非线性处理,简化得到模型输出φ~(t,n):
[0021]
φ(t,n)=grn
φ
(d(t,n))
ꢀꢀꢀ
(7)
[0022][0023]
本发明专利将稀疏注意力和门控机制相结合,构造transformer长时间序列用电量数据预测模型,进一步提高了transformer模型的长序列信息提取能力和计算速度。
[0024]
本发明的优点和积极效果是:
[0025]
本发明采用静态变量、过去已知变量、未来可知变量作为模型输入变量,对各类型
变量分别采用门控机制根据变量信息贡献度为变量赋权重,通过transformer稀疏注意力编码器提取时间特征,将稀疏注意力和门控机制相结合构造三层解码器结构,对时间序列数据进行解码,预测出精准的用电量值,提高了transformer模型的长序列信息提取能力和计算速度。
附图说明
[0026]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0027]
图1为本发明实施例的一种基于transformer模型的用户用电量预测方法的实施流程图;
[0028]
图2为本发明实施例的一种基于transformer模型的用户用电量预测模型结构图;
[0029]
图3为本发明实施例的一种基于transformer模型的用户用电量预测模型变量组成图;
[0030]
图4为本发明实施例的一种基于transformer模型的用户用电量预测展示图。
具体实施方式
[0031]
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0032]
图1为本发明实施例的一种基于transformer模型的用户用电量预测方法的实施流程图。该流程图表示了使用transformer用电量预测模型进行用电量预测的步骤。利用本发明专利所述的用电量预测模型,以静态变量、过去已知变量、未来可知变量作为输入,经过门控机制的信息选择和稀疏注意力的特征提取,提高了信息相关性,达到精准用电量预测的目的,根据用电量预测值对故障数据进行检测并清洗故障数据。
[0033]
该实施流程图1包括以下步骤:
[0034]
步骤1:采用静态变量、过去已知输入和未来可推测的输入,其中静态变量包括地域变量和行业变量,这部分数据和时间无关;过去已知时间序列输入,属于动态时变变量,包括用电量、负荷和温度;未来已知的时间序列输入,属于动态时不变变量,包括周末、节假日等变量。多层次的输入变量可以帮助模型充分获取时间特征。
[0035]
步骤2:受限于数据质量,并不是所有变量都会对模型训练产生积极影响,每种类型的变量都会被送入对应的门控机制,经过门控机制对其信息贡献度进行计算,赋予变量不同的权重,以此来保留有用数据信息,抑制低质量甚至无效的数据进入网络。
[0036]
步骤3:经过信息筛选的用电量时序数据进入编码器提取时间特征,编码器中采用多头稀疏注意力,对当前时刻注意力,通过计算周围时刻数据的注意力分数,选取分数前k位的数据作为有效关联数据,目的是为了进一步集中有用信息,减少注意力过程中的注意力发散。
[0037]
步骤4:门控残差网络动态处理数据信息:为了能获取到变量的信息,通常需要对该变量进行非线性处理,并通过掌握非线性处理程度来改变变量信息提取程度。本发明基于门控线性单元来使得模型可以通过门控残差网络控制对输入变量的贡献度
[0038]
步骤5:基于门控残差网络和稀疏注意力构造三层解码器结构,中间层应用稀疏注意力计算时间特征序列数据注意力,上下两层使用门控残差网络,上层主要对静态数据进行信息集中,下层网络对注意力层的输出进行非线性处理,简化模型输出。
[0039]
图2为本发明实施例的一种基于transformer模型的用电量预测模型结构图,具体过程为:
[0040]
1.如图3所示,采用静态变量、过去已知时序变量和未来可推测变量作为输入,其中静态变量包括地域变量和行业变量,这部分数据和时间无关;过去已知时间序列输入,属于动态时变变量,包括用电量、负荷和温度;未来已知的时间序列输入,属于动态时不变变量,包括周末、节假日等变量。并设置在t时刻输入为量,包括周末、节假日等变量。并设置在t时刻输入为输出是相应的预测序列其中表示t时刻第i个输入变量的值,表示t时刻第i个预测出的值。
[0041]
2.所有静态的、过去的和将来的输入都使用不同的独立门控机制。让表示t时刻第i个输入变量,是t时刻所有历史输入变量的平面化向量。
[0042]
对于t时刻,我们将每个变量在t时刻的输入数据送入自己的grn:
[0043][0044]
其中是变量i处理后的特征向量,权重在所有时刻都是共享的。将ρ
t
送人grn门控残差网络,通过softmax层生成可变选择权重:
[0045][0046]
其中是可变选择权重的向量。
[0047]
得到t时刻经过门控机制的输出变量:
[0048][0049]
3.基于传统自我注意力的缩放点积运算,对三元组输入(query,key,value),执行点积运算,生成注意力得分如下所示:
[0050][0051]
基于得分越高表明相关性越高的假设,00000我们对得分p的值进行评估。假设选取排名前k个分数作为有效分数,得到queryi和keyj的分数集合p,对集合p进行排序,排名前k的分数保留,否则将分数设为无穷小,如下所示:
[0052][0053]
由于排名在k后的分数被设为无穷小,因此需要使用softmax函数将其归一化近似为0,归一化注意力分数为:
[0054]
a=softmax(p~(q,k))
ꢀꢀꢀꢀ
(11)
[0055]
自我注意c的输出表示可以计算如下:
[0056]
c=av
ꢀꢀꢀꢀꢀꢀꢀ
(12)
[0057]
4.基于门控线性单元gtu和标准归一化处理,构建门控残差网络组件,按需对数据进行非线性处理,以获取有用信息,抑制无效信息:
[0058]
grn
ω
(x)=layernorm(x+gtu
ω
(θ))
ꢀꢀ
(4)
[0059]
θ=elu(xw’ω
+a)
ꢀꢀꢀꢀ
(5)
[0060][0061]
其中x指原始输入量,elu是指数线性单元激活函数,是中间层,layernorm是标准归一化层,ω是用于表示共享权重的指数。gtu为门控线性单元,tanh为正切函数,σ(.)是sigmoid激活函数,是权重和偏差,是元素级乘积,d
model
是隐藏层大小。
[0062]
5.基于门控残差网络和稀疏注意力构造三层解码器结构,中间层应用稀疏注意力计算时间特征序列数据注意力,上下两层使用门控残差网络,上层主要对静态数据进行信息集中,下层网络对注意力层的输出进行非线性处理,简化模型输出。
[0063]
具体地,首先在上层静态信息处理层接受静态变量以及时间变量。其中时间变量由编码器输出和门控选择输出加权归一组成,将送入历史时间变量编码器,将送入未来时间变量编码器。然后,生成一组统一的时间特征,用作解码器本身的输入-由表示,则上层静态信息处理层表示为θ(t,n):
[0064][0065][0066]
其中s是静态变量,表示编码器变量,x
~t
表示门控机制处理后的数据,n表示位置。
[0067]
然后进行稀疏注意力计算,对于所有的上层静态信息处理层输入
[0068]
ζ(t)=[θ(t,-k),...,θ(t,-τ)]
t
ꢀꢀꢀ
(15)
[0069]
注意力计算为:d(t)=sparsemultihead(θ(t),θ(t),θ(t))(16)
[0070]
最后,对稀疏注意力层的输出进行采用grn进行非线性处理并与时间融合解码器输入加权归一,得到预测值φ~(t,n):
[0071]
φ(t,n)=grn
φ
(d(t,n))
ꢀꢀꢀꢀ
(7)
[0072]
[0073]
图4为本发明专利在具体的实施流程中,在模型训练完成后对测试数据进行识别的一种展示方案。
[0074]
本专利所述用电量模型采用近4年的百万条用电量数据、日期、时长、位置、行业、温度等数据作为训练数据,以6:2:2的比例对数据集进行划分,其中60%作为训练集,20%的验证集和测试集。为避免用户数据分布不均,本实验的训练集、验证集和测试集均包括了所有用户,比例区间划分以距离起始日期的天数进行区间划分,对用电量预测模型进行多轮训练,选用loss误差、真实用电量和预测用电量拟合曲线、预测准确率和箱线图作为预测效果的评价标准。其中loss误差通过计算真实用电量和预测值的差值并取平均值得出,准确率由预测正确值占全部预测数据的比值计算得到,箱线图则从最小值、下四分位数、中位数、上四分位数、最大值对误差数据的分布进行展示。从图4可知,预测用电量和真实用电量的曲线重合度较高,预测准确度在91.1%,表明预测精准度较高;从误差曲线图可知,误差波动稳定在0-0.4之间,平均误差在,表明模型的预测效果较稳定,据此达到达到较好的数据清洗效果。
[0075]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0076]
本发明应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

技术特征:
1.一种基于transformer模型的用户用电量预测方法,其特征在于,步骤如下:步骤(1)输入层多变量输入,具体包括:在输入层采用多类型变量作为输入,将输入的用电量时序数据分为三类,分别是静态变量、过去已知输入和未来可推测的输入,其中静态变量包括地域变量和行业变量,这部分数据和时间无关;过去已知时间序列输入,属于动态时变变量,包括用电量、负荷和温度;未来已知的时间序列输入,属于动态时不变变量,包括周末、节假日等变量。步骤(2)使用grn门控机制对输入变量进行权重计算,具体包括:将所有静态的、过去的和将来的输入都使用不同的独立门控机制,计算出t时刻所有历史输入变量的平面化向量采用门控残差模块grn对模型输入数据的各变量数据根据贡献度赋予不同的权重,权重计算如下公式所示:步骤(3)采用稀疏注意力进行特征提取,具体包括:基于传统自我注意力的缩放点积运算,对三元组输入(query,key,value),执行点积运算,生成注意力得分如下所示:基于得分越高表明相关性越高的假设,我们对得分p的值进行评估。假设选取排名前k个分数作为有效分数,得到query
i
和key
j
的分数集合p,对集合p进行排序,排名前k的分数保留,否则将分数设为无穷小,如下所示:步骤(4)门控残差模块动态处理数据信息,具体包括:为了能获取到变量的信息,采用门控线性单元gtu和标准化归一处理构建门控残差grn模块,动态处理数据信息,公式如下:grn
ω
(x)=layernorm(x+gtu
ω
(θ))
ꢀꢀ
(4)θ=elu(xw’ω
+a)
ꢀꢀꢀꢀ
(5)步骤(5)使用门控残差模块和稀疏注意力构建三层解码器,具体包括:使用门控残差网络和稀疏注意力构建三层解码器结构,中间层应用稀疏注意力计算时间特征序列数据注意力,上下两层使用门控残差网络,上层主要对静态数据进行信息集中,下层网络对注意力层的输出进行非线性处理,简化得到模型输出φ~(t,n):φ(t,n)=grn
φ
(d(t,n))
ꢀꢀꢀꢀ
(7)。

技术总结
本发明公开了一种基于transformer模型的用电量预测方法,步骤如下:步骤(1):确定用于预测用电量的特征变量,包括静态变量、过去已知的动态时变变量和未来可推测的变量动态时不变变量;步骤(2):采用门控机制对输入的多个变量依据信息贡献度进行权重计算,以提高有用变量的利用率;步骤(3):采用稀疏注意力对输入数据进行特征提取;步骤(4):采用门控残差网络对数据集中的数据根据情况选择进行线性或者非线性处理;步骤(5):采用多头稀疏注意力构建解码器,依据输入特征对用电量数据进行预测。本发明提供的一种基于transformer的用电量预测方法,可以在输入端对训练数据中的不可靠数据进行抑制,对有用信息进行集中,可以在模型训练过程中动态调节信息的利用率,以此提高模型的训练效果,达到较好的用电量预测效果。达到较好的用电量预测效果。达到较好的用电量预测效果。


技术研发人员:王鑫 宗珂 王霖 梁勇杰 闫昆鹏
受保护的技术使用者:浙江工业大学
技术研发日:2021.11.25
技术公布日:2022/3/8

最新回复(0)