1.一种基于Transformer模型的光伏功率预测方法,其特征在于,所述方法包括:基于Transformer模型构建光伏功率预测模型,所述光伏功率预测模型包括卷积层、位置编码层、编码器组、解码器组和激活输出层,所述位置编码层对输入到所述位置编码层的数据进行位置编码,所述卷积层统一输入到所述卷积层的数据的维度;
获取历史数据输入所述光伏功率预测模型的卷积层和位置编码层、通过所述卷积层和所述位置编码层的输出相加后得到第一历史初始数据并输送至所述编码器组中,所述编码器组计算所述第一历史初始数据得到第二历史初始数据输送至所述解码器组中,所述历史数据为待预测日之前的预定天数内的每一天的历史环境数据和对应的历史功率数据;
获取当前环境数据输入所述光伏功率预测模型的卷积层和位置编码层、通过所述卷积层和所述位置编码层的输出相加后得到第一当前初始数据并输送至所述解码器组中,所述解码器组根据第一当前初始数据和所述第二历史初始数据得到初始目标数据输送至所述激活输出层,所述当前环境数据为待预测日的环境数据;
将所述激活输出层的输出作为待预测日的当前功率数据;
去除所述Transformer模型的遮掩层,固定输入序列长度;将每一个残差块中的层归一化层前置,统一所述输入序列的数据分布;通过前馈神经网络层实现非线性全连接层输出。
2.根据权利要求1所述的方法,其特征在于,所述编码器组包括多个依次串联连接的编码器,所述编码器组中的第一编码器获取第一历史初始数据、最后一个编码器输出第二历史初始数据;
每个所述编码器包括从输入到输出依次连接的第一层归一化层、第一多头注意力层、第二层归一化层和第一前馈神经网络层,第一层归一化层的输入数据还输入到所述第二层归一化层,所述第二层归一化层的输入数据还与所述第一前馈神经网络层的输出数据一起作为所述编码器的输出。
3.根据权利要求1所述的方法,其特征在于,所述解码器组包括多个依次串联连接的解码器,所述解码器组中的第一解码器获取第一当前初始数据、最后一个解码器输出初始目标数据,每个所述解码器包括三个层归一化层、两个多头注意力层和第二前馈神经网络层;
每个所述解码器包括从输入到输出依次连接的第三层归一化层、第二多头注意力层、第四层归一化层、第三多头注意力层、第五层归一化层和第二前馈神经网络层,所述第三层归一化层的输入数据还输入到所述第四层归一化层,所述第三多头注意力层获取所述第四层归一化层的输出数据和所述编码器组的输出数据,所述第四层归一化层的输入数据还输入到所述第五层归一化层,所述第五层归一化层的输入数据还与第二前馈神经网络层的输出数据一起作为所述解码器的输出。
4.根据权利要求1所述的方法,其特征在于,输入到所述位置编码层的历史环境数据和当前环境数据所包含的环境数据种类相同,所述对输入到所述位置编码层的数据进行位置编码,包括:通过位置编码函数PE()对输入到位置编码层的第n个环境数据种类的数据进行位置编码,位置编码函数PE()的表达式为:
2n/d
PE(pos,2n)=sin(pos/10000 );
2n/d
PE(pos,2n+1)=cos(pos/10000 );
其中,pos为历史数据和当前环境数据采集的日期,d表示卷积层的卷积核数量。
5.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:每个层归一化层对每个层归一化层的输入数据进行归一化处理得到均值为0和方差1的数据分布;
在多头注意力层中将输入到多头注意力层的数据进行转换得到查询矩阵Q、键矩阵K和值矩阵V;
对查询矩阵Q、键矩阵K和值矩阵V进行矩阵计算处理。
6.根据权利要求5所述的方法,其特征在于,所述对查询矩阵Q、键矩阵K和值矩阵V进行矩阵计算处理,包括:将查询矩阵Q、键矩阵K和值矩阵V的最后一个维度分为h份矩阵,利用注意力机制函数对查询矩阵Q、键矩阵K和值矩阵V的每一份进行点乘注意力处理得到一个注意力头;
对h个注意力头进行加权拼接处理。
7.根据权利要求6所述的方法,其特征在于,所述利用注意力机制函数对查询矩阵Q、键矩阵K和值矩阵V的每一份进行点乘注意力处理得到一个注意力头,包括:Q K V
其中,Wi、Wi、Wi分别表示查询矩阵Q、键矩阵K和值矩阵V的第i个注意力头headi的权重矩阵,i≤h,T表示矩阵转置,Qi、Ki和Vi分别表示查询矩阵、键矩阵和值矩阵的最后一个维度的第i个矩阵,dk表示查询矩阵Q和键矩阵K的维度,Attention()表示注意力机制函数,Softmax()表示归一化指数函数,其表达式为:其中,a和m为参数,a≤C,m≤C,zm为第m个数据点的输出值,za表示第a个数据点的输出值,C为数据点的总个数。
8.根据权利要求6所述的方法,其特征在于,所述对h个注意力头进行加权拼接处理,包括:O
MultiHead(Q,K,V)=Concat(head1,…,headh)W;
其中,MultiHead(Q,K,V)表示加权拼接处理后的输出值,Concat()表示对每个注意力O头在最后一个维度的拼接,W表示线性拼接变换矩阵。
9.根据权利要求2或3所述的方法,其特征在于,每个前馈神经网络层的计算公式为:FFN(x1)=max(0,x1Win+bin)Wout+bout;
其中,FFN(x1)表示前馈神经网络层的输出结果,x1表示前馈神经网络层的输入数据,Win和Wout表示前馈神经网络层输入和输出的权重矩阵,bin和bout表示前馈神经网络层输入和输出的偏置矩阵。
10.根据权利要求1所述的方法,其特征在于,所述激活输出层的计算公式为:O(x2)=tanh(x2W+b);
其中,O(x2)表示功率预测值,x2表示初始目标数据,W表示激活输出层的权重矩阵,b表示激活输出层的偏置矩阵。