1. 引言
在现代社会的高速发展的形势下,能源的消耗日益剧增。近几年来能源的巨大需求已经直接或者间接的引发了一系列环境危机。为了保护环境,同时也为了减少对传统能源的依赖,可再生能源作为未来能源短缺的有效解决方案,其重要性和趋势日益凸显。
相较于核能、潮汐能、地热能等其他能源形式,风能以其丰富的储量、可再生性、易于获取的特性以及高度的安全性和可靠性脱颖而出。风力发电技术经过多年的研究与实践,在许多国家已经发展成熟,成为理想的清洁能源选择[1] [2]。然而作为风力发电的动力源的自然风,具有间接性和不可控性,导致风力发电在维持电网电压频率呈现出不稳定性。风速的准确预测有利于电力系统相关部门调整发电计划,提高电网运行的安全可靠性[3] [4]。
目前,风速预测一般有4种分类依据:物理模型、统计方法、机器学习模型和混合模型[5] [6]。在进行物理模型预测的过程中,必须依赖于风速、风向、气压、温度以及地形等气象数据来构建模型。这种方法虽然计算强度大、耗时较长,但因其基于物理原理,通常能够提供较高的预测精度。统计方法主要方法有差分移动平均自回归模型(ARIMA)、卡尔曼滤波以及自回归预测模型等。这些方法以统计学为基础的模型进行模拟,对于简单的时间序列预测表现尚可,但对于风速的非线性特性和波动性进行精确预测,仍存在进一步优化的空间。机器学习模型主要方法有人工神经网络(ANN)、递归神经网络(RNN)和支持向量机模型等。这些模型通过对历史风速数据的分析,在处理风速的非线性回归表现更为出色,并且进一步提高了预测的准确性。针对提高精确度的需求,研究人员已经开始转向混合模型的研究来集成各模型的优点,“分解–预测–重构”方法的模型成为了主要的趋势。与传统模型相比,这种混合模型在增强预测精度方面显示出更加显著的效果,为风速预测开辟了新的方向[7]。有研究[8]探讨了风速时间序列的非线性特性,并开发了一个集成了CEEMDAN、VMD和AdaBoost算法的RT-ELM混合模型。该模型有效地捕捉了风速时间序列的非线性属性,实现了较高的预测准确度。另有研究[9]采用了布谷鸟优化算法对基于CEEMDAN与LSTM的组合模型中的LSTM部分进行了调优,在风速预测的实验中取得了较好的结果。此外,还有研究[10]提出了一个结合了EEMD和GRU模型的风速预测方法,该方法利用EEMD对风速序列进行分解,然后应用GRU模型对分解后的序列进行预测,以提高预测的准确性。
因此,本文基于现有的研究成果,引入一个新的组合预测模型,提出的CEEMDAN-CNN-Transformer混合深度学习模型,通过创新性地整合多种先进算法,全面解决了传统风速预测方法中的关键技术瓶颈。模型首先采用CEEMDAN算法对原始风速时间序列进行精细去噪和分解,有效消除随机波动和噪声干扰;随后,卷积神经网络(CNN)提取局部时空特征,捕捉风速序列的关键模式;最后,Transformer模块通过自注意力机制,准确建模序列间复杂的长期依赖关系。相较于传统单一模型,该混合模型在数据质量提升、特征表达和泛化能力等方面均展现出显著优势,通过多模态深度学习架构有效应对风速数据的非平稳性和高波动性,为风电预测技术的发展提供了新的理论框架和实践路径。
2. 算法和模型
2.1. CEEMDAN算法
CEEMDAN,全称为完全集合经验模态分解(Complete Ensemble Empirical Mode Decomposition with Adaptive Noise),是一种先进的信号处理技术,起源于经典的经验模态分解(EMD)方法,该方法由Huang等人于1998年提出,能够将非线性和非平稳时间序列分解为一系列内在模态函数(IMF),以揭示信号在不同时间尺度上的特性。EMD的扩展版本,集合经验模态分解(EEMD),进一步引入了白噪声以解决模态混叠问题。CEEMDAN算法在此基础上进行了改进,通过在分解过程中向原始信号添加自适应噪声,有效克服了EMD和EEMD中可能遇到的问题。CEEMDAN算法的关键步骤包括:向信号中引入自适应噪声,执行EMD分解以获得IMFs,计算这些IMFs的平均值以提高分解的准确性,然后从原始信号中去除这些IMFs,并重复此过程直至达到预定的停止条件。通过这种方式,CEEMDAN算法能够提供一种更为精确的信号分解方法,适用于处理复杂的非线性和非平稳信号。
CEEMDAN算法的步骤大致如下:
初始化阶段:在原始信号的基础上引入自适应噪声,为信号分解做好准备。
迭代性分解:应用EMD方法对加入了噪声的信号进行分解,以此产生一系列的固有模态函数(IMFs)和残差信号。
条件验证:对分解得到的每个IMF进行评估,确保其满足固有模态函数的定义标准;若不满足,则重新进行迭代分解;若满足,则保留该IMF。
平均化处理:将所有符合条件的IMFs进行平均化,以获得更为稳定和准确的IMF表示。
重复分解过程:持续执行分解和平均化步骤,直至所有IMFs被充分提取,此时的残差通常代表信号的长期趋势成分。
结果合成:将分解得到的各个IMFs与残差信号重新组合,以重建一个在不同时间尺度上具有特征模式的信号,该信号应与原始信号保持一致性。
通过这一连串细致且系统化的步骤,CEEMDAN算法能够将复杂的信号分解为多个具有不同时间尺度的组成部分,为信号的深入分析和处理提供了有效途径。
2.2. CNN卷积神经网络
CNN卷积神经网络是一种专门用来处理具有类似网格结构的数据的神经网络。其特别适合用于处理图像和视频,通过它特殊的结构组成学习图像或者视频数据特征进行分类、识别或者检测任务。
CNN卷积神经网络是受生物视觉系统结构的启发设计而成,模拟了人类视觉系统对视觉信息的处理方式。它主要的原理就是通过由自己定义的卷积层和池化层操作,逐渐提取输入数据中的特征。其中卷积层主要是对输入数据进行特征提取,而池化层通过降采样操作对特征数据进行缩小,从而减少模型的复杂度。
CNN卷积神经网络的结构一般是由多个卷积层、池化层和全连接层组成。在组成卷积神经网络的过程中,卷积层和池化层往往交替出现,最后通过全连接层将处理好的数据映射到指定位置。不同种类的卷积神经网络结构的不同之处就在于它们的深度、宽度、卷积核的大小以及池化方式的选择。
2.3. Transformer
Transformer模型是由Ashish Vaswani等人在2017年提出的一种前沿深度学习架构,彻底改变了序列到序列任务的处理方式,尤其在自然语言处理(NLP)领域表现出色。与传统的循环神经网络(RNN)和长短期记忆网络(LSTM)不同,Transformer模型不依赖于顺序处理,而是通过自注意力机制来并行处理序列中的所有元素。
自注意力机制的关键在于通过计算序列中每个元素与其他元素之间的注意力权重,来捕捉它们之间的复杂依赖关系。给定输入序列X,自注意力机制可表示为:
(1)
其中,
、
、
分别代表查询(Query)、键(Key)和值(Value)矩阵,
是键向量的维度,用于缩放点积以确保梯度的稳定性。Transformer模型进一步采用多头自注意力机制,通过在多个不同的子空间中处理输入序列,增强了模型捕捉信息的能力:
(2)
其中,
表示第h个注意力头的输出,
是输出投影矩阵,
为注意力头的数量。
Transformer模型的计算过程主要包括以下几个步骤:输入数据首先被转换为嵌入向量,并通过加入位置编码来保持词序信息,确保模型能够理解序列中单词的相对位置。这些融合了位置信息的嵌入向量成为模型处理的起点。
随后,模型采用多头自注意力机制,对输入矩阵进行加权处理,依据不同的注意力系数来分配关注度,实现对整个输入矩阵的并行处理。通过这种机制,模型能够在多个不同的表示子空间中捕捉信息,显著提升其表达能力。
Transformer架构由编码器和解码器串接而成,每个都由多层相同的结构堆叠构成,每层都配备了多头自注意力机制和前馈神经网络。编码器对输入序列进行编码,而解码器则利用编码器的输出来逐步构建输出序列。解码器中除了自注意力机制,还特别增加了编码器-解码器注意力层,允许解码器在生成每个输出时,聚焦于输入序列中与之相关的部分,这对于完成如机器翻译等序列到序列任务至关重要。
在解码器的最终阶段,输出通过线性层和softmax函数转换为概率分布,模型依据这个分布预测序列中下一个最可能的单词或字符,实现序列生成的目标。
3. CEEMDAN-CNN-Transformer风速预测模型
3.1. 模型构建思路
风速预测作为可再生能源领域中的关键研究议题,对于风电场的运营效率和电力系统的稳定性具有至关重要的意义。本研究提出的基于CEEMDAN-CNN-Transformer的混合模型,旨在解决传统风速预测方法中存在的特征提取不充分、长期依赖性建模困难以及非线性时间序列预测精度不高等问题。
本文提出的创新模型主要包括三个关键处理阶段:预处理、特征提取与预测。在预处理阶段,采用CEEMDAN算法对原始风速时间序列进行去噪和分解,有效地去除了观测数据中的随机波动和噪声干扰,并将复杂的非线性序列转化为更易于建模的子序列。随后,引入卷积神经网络(CNN)提取局部时空特征,通过多层卷积和池化操作捕捉风速序列中的关键模式和空间特征。最后,Transformer模块负责建模长期时序依赖关系,其自注意力机制能够有效捕获序列中不同时间步长间的复杂交互信息。
与传统单一模型相比,本研究的混合模型具有显著优势:首先,CEEMDAN预处理机制显著提高了数据质量,增强了后续特征提取的准确性;其次,CNN和Transformer的联合使用实现了局部特征和全局语义的协同建模,突破了单一模型在特征表达上的局限性;再者,模型具有较强的泛化能力,可有效应对不同区域、不同气象条件下的风速预测挑战。本研究较传统深度学习模型的优势主要体现在提出了一种针对风速时间序列非平稳特征的多模态深度学习混合模型,通过CEEMDAN精准解构复杂非线性序列,CNN捕获局部动态特征,Transformer建模长期依赖关系,有效解决了传统单一模型在处理风速数据时面临的非平稳性、高波动性和特征提取不充分等问题,显著提高了风速序列预测的精度和鲁棒性。本文提出的混合模型进行短期风速预测的步骤如下具体模型结构如图1所示:
Figure 1. The framework of the CEEMDAN-CNN-Transformer model
图1. CEEMDAN-CNN-Transformer模型整体框架
3.2. 数据来源
数据集来源为2006年至2016年间匈牙利塞格德地区的所测数据,每小时记录一次平均数据,总共包含了96453条数据。其数据是由Darksky.net团队提供,每小时响应中的数据包含了时间、概况、温度、湿度、压力和风速等。
基于9:1的比例,本文把前86,807条数据作为训练样本用来训练出最优的预测模型,其余的数据被用作测试样本。其中,创建训练数据时使用了滑动窗口技术,为了更好地捕捉时间序列中的模式和特征,提取序列中更长的依赖建模,本文把窗口大小提升为96。
3.3. 模型参数设置
参数的选取对提高预测模型的预测精度十分的重要。本文构建的CEEMDAN-CNN-Transformer风速预测模型涉及到的主要参数有:批次量大小(batch_size)、CNN网络结构(conv_archs)、注意力维度(hidden_dim)、Transformer编码层数(layer_num)、多头注意力头数(heads_num)、回数(epoch)等。
其中,批次量大小根据实际情况选取64;CNN网络结构的输入维度为23,卷积核大小为3,整个CNN的架构包含四个卷积层,最终输出通道数为256;Transformer编码层数为2;Transformer注意力维度为512;多头注意力头数根据计算量选取4;回数根据经验选取50。
4. 实验及结果分析
4.1. 评价指标
评价标准的选择对于准确评估模型性能至关重要。在本研究中选择了两种常用的评价指标来衡量风速预测模型的准确性和可靠性。选择的指标包括平均绝对误差(MAE)和均方误差(MSE)。这些指标能够从不同角度反映模型预测值与实际观测值之间的差异。这些指标的计算公式如下:
(3)
(4)
4.2. 预测结果及对比分析
在本次实验中,我们对CEEMDAN-CNN-Transformer、CNN-Transformer、Transformer、Autoformer以及Fedformer五种模型在风速预测任务中的性能进行了对比分析。这些模型均采用相同的实验环境与参数变量设置。通过对比分析,我们发现不同模型在预测精度上存在显著差异,这些差异不仅体现在模型结构上,还体现在数据预处理的效果上。
由图2可以看出:单一的Transformer模型预测效果较差,只能显示序列的大概趋势,预测值误差较大;从预测结果图可以看出,CNN-Transformer模型预测精度明显比单独使用Transformer模型要高;在本研究中,Fedformer模型的表现较Autoformer略胜一筹。但在所有模型中,CEEMDAN-CNN-Transformer模型预测精度最高,这得益于CEEMDAN预处理有效地降低了原始数据中的噪声干扰,并将复杂的风速序列转化为更易于深度学习模型处理的子序列,更适合处理非线性非平稳的序列,并且能通过CNN特征提取,最终取得较好的预测结果。
Figure 2. The prediction results of each model
图2. 各模型的预测结果
本文采用两个评价标准来测试目标模型预测的精度,即平均绝对误差(MAE)和均方误差(MSE)。其中MAE和MSE的数值越小,说明此模型的结果误差越小,精度越高。各个模型的误差评价指标的具体值如表1所示。由此可知:Transformer模型各项误差指标最大,随着采用CEEMDAN预处理和CNN特征提取方法后,各模型的MAE、MSE明显变小。在MSE和MAE上,CEEMDAN-CNN-Transformer模型相对Transformer、CNN-Transformer、Autoformer、Fedformer都有着较大提升;风速时间序列中普遍含有噪声,并且具有非平稳性和多频性,如果直接预测会使得模型的预测会产生较大的误差。CEEMDAN预处理很好地解决了这一问题,有效地提高了模型的预测精度。
CEEMDAN-CNN-Transformer模型在所有参与测试的模型中表现最为卓越,其预测结果与实际观测值最为接近。这一结果归功于CEEMDAN预处理的有效性,其通过自适应噪声增强和集成经验模态分解,显著提高了风速数据的多尺度特征捕捉能力,为后续的深度学习模型提供了更高质量的输入数据。其次,CNN层在特征维度上提取有价值的信息,补偿了Transformer编码器从多元数据集中挖掘信息的有限能力。同时,在不同编码器层之间使用多头注意层能有效地提高预测精度。整体来说,CEEMDAN-CNN-Transformer模型的优异性能得益于CEEMDAN预处理、CNN特征提取和Transformer长期依赖建模三者的有机结合。
综合以上分析,CEEMDAN-CNN-Transformer模型显示出在风速预测任务中的优势,特别适用于处理非平稳性、非线性以及具有复杂多频率特征的风速时间序列数据并能够有效的提供较传统深度学习模型更准确的预测结果。
Table 1. Error evaluation of each model
表1. 各模型的误差评价
预测模型 |
MSE |
MAE |
Transformer |
1.645 |
1.631 |
CNN-Transformer |
1.435 |
1.220 |
Autoformer |
1.124 |
1.151 |
Fedformer |
0.801 |
0.939 |
本文模型 |
0.703 |
0.791 |
5. 结论
本文采用CEEMDAN算法对风速序列进行多尺度分解,并结合CNN和Transformer模型构建了CEEMDAN-CNN-Transformer混合模型,以提高风速预测的准确性。通过实例分析,得出以下结论:
(1) CEEMDAN分解能够有效处理风速序列的非线性、非平稳性及随机性特征,将其分解为多个固有模态函数(IMF),显著增强了时间序列的可预测性。
(2) 实验结果表明,CEEMDAN-CNN-Transformer模型充分利用了风速序列的多尺度特征,有效提升了风速预测的准确度,特别是在捕捉短期时间特征方面表现出色。
未来研究可进一步探索CEEMDAN算法与其他深度学习模型的结合,以适应更广泛的应用场景。同时,研究如何优化模型参数和结构,以提高模型在不同气象条件下的泛化能力和鲁棒性,也是值得深入探讨的方向。
致 谢
本文的完成主要感谢我的导师丁毅涛副教授对我的指导。