基于内核时变回归模型的电能预测分析与研究

2023-12-18 08:58王大鹏刘荣权钟佳晨
现代电子技术 2023年24期
关键词:时变电能负荷

田 野, 王大鹏, 刘荣权, 钟佳晨

(1.国电南瑞南京控制系统有限公司, 江苏 南京 211106;2.国网内蒙古东部电力有限公司供电服务监管与支持中心, 内蒙古 通辽 028000;3.南京农业大学 人工智能学院, 江苏 南京 210095)

0 引 言

随着 “双碳”发展目标的提出,新型电力系统以新能源为主体,在降低碳排放领域有着明显特征和优势。但由于源荷不确定性以及低碳诉求,电网结构和运行模式也面临新的问题[1-2]。以电力系统消费侧为例,能源设备的电能配置容量由用能比例、用户需求等因素决定,如不能对其精细化预测和控制,很可能出现电力资源浪费、用户体验下降等问题,最终影响系统业务的营销增长[2]。因此,对电能负荷预测进行研究分析对于优化电力负荷调度、改进电网结构进而实现“双碳”目标具有重要意义。

数据驱动技术在能源负荷预测问题中应用广泛[3-4],从技术角度可以分为两类,即传统方法和现代方法。其中,传统方法包括回归分析法[5]、时间序列法[6]和灰色模型法[7-8]。在相关研究中,苏振宇等提出了一种结合季节调节和Holt-Winters 方法的月度负荷预测方法,实现了较高的预测精度[9]。李震等提出了一种基于数据驱动线性聚类和自回归积分滑动平均法进行长期电力负荷预测的方法,解决了负荷波动大导致的长期负荷预测精度低的问题[10]。

现有方法包括人工神经网络[11-14]、模糊控制、支持向量机[15]和组合模型。J.Munkhammar 等使用马尔科夫链混合分配模型(MCM)对澳大利亚住宅用电量进行超短期预测,取得了很好的效果[16]。徐先峰等提出了一种多层Bi-LSTM 的Seq2seq 深度学习模型(BL-Seq2seq),实现了短期用电负荷预测[17]。但是,这些方法的局限性在于无法应用于数据周期较长的场景中。为此,魏明奎等采用BFGS-FA 优化的分数阶灰色预测模型对中长期负荷进行预测。该方法利用BFGS-FA 寻优算法对分数阶灰色预测模型进行优化,最后得到最优阶数的分数阶灰色预测模型[18]。

综上,从现有的应用场景来看,绝大多数对于电力负荷的预测方法都是应用于短期内的电力变化数据,通常为某一地区在几个月内的负荷数据。这样的数据通常周期性较短且变化的幅度较小,在使用现有方法进行拟合时往往能够获得不错的效果。但是如果电力数据的周期变长,同时其中峰值低估的变化幅度也变大,则现有的许多方法效果会有所下降。

现有的大多数方法中使用的核函数往往是预先设定好的,这样的设计依赖于较强的先验知识以及较大的数据量,单一的核函数无法很好地匹配多变的应用情况,导致只有与该核函数预设参数较为匹配的数据能够被很好的拟合。此外,这些方法的可解释性与操作性门槛较高,进一步限制了其大范围的推广和使用。

对于周期长、变化幅度大的电能数据,需要所使用的方法能够对使用的核函数进行自适应选择,使其能够根据应用场景的数据特点来进行匹配。因此,本文采用基于内核时变回归模型(Kernel-based Time-varying Regression Model, KTR)[19],该模型将时间序列视为局部趋势、季节性和附加回归量的加法组合,这三个分量的系数都随时间变化。其使用核回归产生时变系数,用贝叶斯框架合并实验结果,从而拟合用电数据曲线。实验结果与对比分析证明了本文方法在电能负荷预测上的可行性以及准确性方面的明显优势。

1 电能预测相关原理

1.1 KTR 预测原理

传统的线性回归方法通常拟合出一维直线,核回归则可以将低维的数据上升到高维,利用核函数作为权重函数来建立非线性回归模型。而内核时变回归模型(Kernel-based Time-varying Regression Model, KTR)[19]则是在核回归的基础上,将时间序列作为自变量参数从而更好地获取因变量随时间变化的关系。本文将贝叶斯建模和核回归的思想结合在一起,目的是更好地结合试验结果对因变量与时间自变量之间的关系加以解释。

基础的回归函数会将预测值表现为与自变量参数相关的收益递减函数形式。现有的方法中较为常见的是用公式(1)来描述电能负荷预测:

式中:xt,p是回归变量,在本文的研究中指不同的测量日期;y^t是电能负荷的测量值;g是一个表现时间序列的过程;f指变化趋势函数;P是回归变量的个数;T是时间点的个数。本文在拟合的过程中需要对函数f进行选择,使得y^t的可解释性增强,同时可以分解为不同的驱动因素。为使公式更加直观,可将其描述为如下形式:

式中:elt是非周期上的变化趋势;而est则是周期性的变化趋势;βt,p是特定节点的时间变化系数。

但是,传统的方法在应对时间周期过长的数据时,因为计算过于冗杂导致效率不高,计算开销较大。为此,本文使用KTR 模型对电能进行预测。

KTR 模型是在贝叶斯框架下基于内核的时变回归模型,其核心在于:将回归系数表示为局部潜在变量的加权和,使用潜在变量来定义模型系数的平滑时变表示,而这些平滑表示形式是核平滑[19]。与典型的动态线性模型相比,KTR 模型有着更少的参数,因此有着更快的计算速度。

KTR 模型将公式两边取对数,可以将其表示为:

1.2 时变系数回归

以回归项为例,KTR 模型定义了一个潜在变量bjp作为第p个回归量在时间tj时的回归系数,p= 1,2,…,P,j= 1,2,…,J,tj∈{ }1,2,…,T。对于每个回归量,共有J个潜在变量,可以将bjp视为第p个回归量分布在tj处的一个节点。因此,第p个回归量的回归系数就可以表示为J个局部潜在变量的加权和,第p个回归量的回归系数为:

其次,KTR 模型使用基于时间的权重函数,本文中使用t和tj距离的加权函数可以更好地获取t和tj时间点上数据的关系,公式如下:

式中k(·,·)为核函数,分母为标准化节点的权值。

根据实际数据集中的不同,数据特征选择的核函数不同。对于趋势和周期性变化,本文所选用的核函数为:

式中ρ是scale 参数。

将方程改写成矩阵形式,即:

式中:B为T×p的系数矩阵(元素为βt,j);K是T×J的内核矩阵(元素为wj(t));b是J×P的节点矩阵(元素为bjp)。

因此,回归项的公式为:

式中:Bt=(βt,1,βt,2,…,βt,p)和Xt是回归或协变量矩阵的第t行。

同时,在KTR 模型中,局部趋势、周期性和回归项的区别不大,因此都有类似的表达形式。则对于趋势部分,有:

对于周期性成分,有:

式中:Xt,seas表示由傅里叶级数导出的季节协变量矩阵第t行。

1.3 贝叶斯框架

除了时变系数回归之外,KTR 模型同样使用贝叶斯框架和可设置的后验进行后验采样,估计局部节点参数(b、blev和bseas),目的是对拟合结果的可能性加以数量化的评价,使得在长期数据中进行预测更加精准,避免过拟合的情况发生。对于趋势和周期性成分,使用拉普拉斯先验(Laplace Prior)对相邻节点建模,即:

式中:初始值b0,lev和bseas可以从均值为0 的拉普拉斯分布中采样。

而对于回归,KTR 模型设计了一个两层的层次结果来获得更稳健的采样,即:

式中:上标“+”表示折叠的正态分布(系数符号的正限制)。

模型训练过程中,先对潜在变量先验进行采样获得潜在变量采样,然后使用随机变分推断(Stochastic Variational Inference, SVI)[20]估计潜在变量后验,之后继续上述的采样估计得到节点系数后验,最后利用公式(6)~式(8)得到时变系数lt、st、rt的估计值,并最终在测试集上进行检验。

2 处理流程设计

基于内核时变回归模型的电能预测主要分为实验预处理、超参数选择、模型训练三部分,处理步骤如图1所示。为了避免原始数据中的缺失或异常值影响模型训练的精度,首先需要对数据进行预处理,该过程包括异常值处理、填充缺失值和对数化。本文的预处理步骤为:

图1 基于KTR 的用电数据预测处理流程

1) 原始数据存在因为记录误差导致的错误数据,会影响整体数据趋势的变化,所以需要将出错的数据删除或置0,防止实验结果被错误的极端数据所影响。

2) 由于设备故障等原因导致的数据缺失也会影响模型的拟合,在填充缺失数据的过程中,本文选择后项数据填充的方法,将数据的后一个应用于前列则更能体现数据的连续性。

3) 少数时间段的数据变化幅度会高于平均变化幅度,使得整体趋势的预测受到影响。为了减少该影响,本文对现有的数据进行对数化,缩小数据的绝对数值,将后续复杂的乘法运算转变为加法运算,降低了运算的难度。

在获取经过预处理的完整数据集后,需要进行超参数选择实验,确定在模型训练中所使用的最优参数。由于本实验数据只有电能负荷数据,没有其他回归量,因此需要考虑的参数只有分段数(level segments)和迭代次数(steps)。

为了确保获取参数的可靠性,本研究使用回溯测试,递增每次的训练集数量,同时测试集数量保持不变。本文设定起始窗口天数为380,每次扩展天数为120,预测天数为20。从完整的数据集中随机选择一名用户的用电量数据作为实验数据,在实验的过程中,每一代分别计算SMAPE,并且判断该值是否为当前最优,最终选定获取最优SMAPE 的参数作为正式模型训练时的参数。确定超参数之后便获得了正式训练所需要的分段数以及迭代次数,将该参数输入KTR 模型中,同时从所有完整数据集中随机选取10 个用户的用电量数据分别进行训练。对每个用户数据训练所得到的模型进行测试,最终对10 个用户的测试SMAPE 值求平均作为预测结果。

3 实验结果与分析

3.1 实验环境与评价指标

本 文 的 实 验 硬 件 环 境 为 Intel Core i9 -12900K , 4 900 MHz;内 存 为32 GB; NVIDIA GeForce RTX 3060 Ti (8 GB)。软件环境为Windows 10操作系统,编程语言为Python 3.7。

本文使用对称平均绝对百分比误差(Symmetric Mean Absolute Percentage Error, SMAPE)作为指标来衡量模型预测的准确度,SMAPE 的计算公式如下:

式中:y^i是样本预测值;yi是样本真实值;n是样本数量。SMAPE 越小表示预测得越准确。

3.2 数据预处理

本文用于实验测试的数据来源于电网,包含42 372个用户的用电量数据,电能负荷数据按天统计,范围从2014 年1 月1 日—2016 年9 月9 日,共1 036 天。数 据集 按 照8∶2 划 分,即80% 作 为 训 练 集, 20% 作 为 测试集。

数据存在缺失值过多的情况,图2 为样本缺失数据示例。由于数据具有时序性,因此本文使用后向填充,使用缺失值后面的第1 个观测值进行填补。同时,为了避免填充数据过多而影响预测效果,最终选择以10 为界限,删除连续的缺失值数大于10 的样本。

为了缩小数据的绝对数值同时避免伪回归,消除异方差,让数据更加符合正态分布,本实验对数据进行对数处理,处理前后效果分别如图3 和图4 所示。观察可知,取对数后的数据波动变小,样本的异方差程度显著降低。

图3 处理前的电能时间序列图

图4 处理后的电能时间序列图

3.3 超参数选择

由于存在时间先后的问题,时间序列数据不能简单地使用交叉验证,会出现一些时序特征交叉的情况,如用未来的数据去预测过去的数据。因此,本文使用基于时间的交叉验证进行超参数优化选择。基于时间序列的交叉验证有扩展和滚动两种窗口,本文选择扩展窗口,即训练开始日期固定,结束日期向前扩展。对于其他参数,本文设定起始窗口为380(以天为单位),每次扩展120,预测20,基于回溯的超参数最优化选择如图5 所示。

图5 基于回溯的超参数最优化结果

由于本实验数据只有电能负荷数据,没有其他回归量,因此本文的KTR 模型的参数在分段数(level segments)和迭代次数(steps)上考虑优化。其中,分段数选择10、20、30、40,迭代次数选择301、601、901、1 201。然后使用回溯测试进行超参数选择,结果如表1 所示,表中黑色加粗处为最优参数行。

表1 超参数选择结果

由表1 结果可以看出,最佳参数为(30,1 201),此时的预测SMAPE 值为10.29%。

3.4 模型结果与评估

使用超参数优化得到的最佳参数(30,1 201)构建KTR 模型;然后使用与上文相同的回溯测试参数(扩展窗口,起始窗口380,每次扩展120,预测20)对时间序列进行交叉验证。本文给出最后一个模型的拟合效果,如图6 所示,其中黑点表示原始的电能负荷数据,灰色的线是使用KTR 模型拟合得到的曲线,灰色的区域是置信区间,表示预测的上下界,竖着的虚线将数据集划分为训练集和测试集,左侧为训练集,右侧为测试集。经实验计算可得,总体的电能量数据预测值和原始值的SMAPE 值为8.46%,模型拟合效果较好。

图6 KTR 模型预测整体拟合效果

本文将KTR 模型与业内常用的Prophet[21]和SARIMA 模型进行了对比。Prophet 是Facebook 开源的基于STL 分解思想的时序预测模型,具有速度快、可解释性强等优点。

SARIMA 模型全称为季节性差分自回归滑动平均模型,通过对时间序列进行变换和拟合来建模,对数据的平稳性有着很高的要求。

实验使用SMAPE 作为评价标准,随机选取10 组样本,取10 组平均值作为最终的SMAPE。对于每组样本,训练集和测试集的划分比例为3∶2,即预测步长h为100,每个模型的参数设置基本一致。不同模型平均SMAPE 比较结果如表2 所示。从表2 结果可以看出,本文模型的预测精度优于其他两种模型。

表2 模型平均SMAPE 比较 %

4 结 语

本文基于KTR 模型实现了对电能负荷时间序列的预测,并验证了该模型在电能负荷预测的可行性和准确性。通过基于时间的交叉验证,本文得到了模型在数据集上的最佳参数;然后使用该最佳参数建立模型,对电能负荷时序数据进行拟合预测,最终的模型SMAPE 值达到8.46%,具有较高的预测精度。此外。将本文模型与Prophet 和SARIMA 模型进行对比分析,结果证明本文模型的预测精度更佳。最后,通过真实电能负荷时序数据的拟合预测结果,验证了本文方法在优化电力负荷调度工作、提升电力服务质量方面是切实可行的。

猜你喜欢
时变电能负荷
苹果皮可以产生电能
电能的生产和运输
海风吹来的电能
澎湃电能 助力“四大攻坚”
基于时变Copula的股票市场相关性分析
基于时变Copula的股票市场相关性分析
烟气轮机复合故障时变退化特征提取
防止过负荷时距离保护误动新判据
主动降负荷才是正经事
负荷跟踪运行下反应堆一回路控制系统仿真与验证