1.简介
负荷预测是智能电网的主要研究领域之一,可以根据其目标预测范围从几分钟到几年进行分类。其中,短期负荷预测(STLF)专注于预测未来数小时或数天的负荷,由于其在需求侧管理、储能运行、调峰等方面的广泛适用性,在智能电网中备受关注。智能电网的主要特征之一是双向通信,这打破了发电和消费之间的界限。通过部署先进的计量基础设施(AMI)可以实现双向通信,这是许多智能电网服务的先决条件,如需求响应(DR)、目标动态电价、负载监测、停电检测和恢复、客户信息系统等[1,2]. 然而,发电和消费边界的瓦解增加了电网的复杂性。现在,消费者可以利用可再生能源发电,如光伏电池和风力涡轮机。此外,通过使用储能系统(ESS),用户可以积极塑造其电力需求。除了这些变化之外,电力市场的放松管制和私有化产生了与传统市场不同的方面。在文献中,负荷预测对于解除管制的电力市场中的电力行业至关重要。此外,准确的电力负荷预测模型对电力公司的运营和规划也至关重要[三]. 此外,DR被视为根据放松管制下的新范式操作系统的租赁昂贵资源之一[4]因此,预测灾难恢复资源在灾难恢复市场中非常重要。我们还注意到,准确的需求预测可以鼓励客户参与灾难恢复计划,并从公用事业公司获得金钱奖励[5]. 与此同时,在放松管制的零售市场中,各种终端用户服务,如客户负荷管理,都需要负荷预测来吸引更多的客户。这些特征意味着消费者的作用将比以往更加重要,因此,预测范围从宏观转向微观。 从经典的时间序列分析到最近的机器学习方法,在预测模型方面有许多研究活动。时间序列分析[6],是最流行的负荷预测方法之一,包括自回归综合移动平均(ARIMA)、指数平滑和卡尔曼滤波器。在[7,8],作者开发了一个双季节霍尔特-温特斯模型(指数平滑),该模型的结果优于ARIMA或神经网络等其他模型。 负荷预测的另一个分支是使用人工神经网络(ANN)模型[9,10]. 由于ANN可以对非线性进行建模,因此它被广泛用于各种预测应用。例如,基于ANN的STLF模型在[11]. 众所周知,网络结构在人工神经网络中起着重要作用,因为有关模型的特征信息,包括预测周期或使用的变量,都反映在神经网络的结构中。最常见的人工神经网络类型是多层感知器(MLP),它使用以前的负荷数据(例如[12,13])。到目前为止,文献中已经发表了许多人工神经网络模型,并显示了足够的预测结果。在[14]提出了一种基于人工神经网络的家庭小时负荷预测模型。在[15]在实时电价市场中,电价被视为负荷预测的输入参数。此外,神经网络模型可以与其他方法相结合:模糊逻辑[16],小波变换[17]或两者兼而有之[18]. 一些文献在训练神经网络时使用了不同的方法。在[19]提出了一种连续遗传算法来训练基于神经网络的STLF模型。其他类型的神经网络,如自组织映射(SOM),也用于预测和分类[20]. 在[5,21]基于SOM和K-means聚类的两阶段自适应预测模型用于建筑物和公寓数据集。 深度神经网络(DNN)是一种比MLP的典型三层结构具有更多层次的人工神经网络。深层结构提高了神经网络的特征提取能力。最近,物联网(IoT)和大数据的发展使得DNN能够在不同的研究领域中被采用。然而,据我们所知,基于DNN的电力负荷预测模型很少;英寸[22],DNN用于时间序列风预测,DNN结合判别预训练方法用于年电力负荷的时间序列预测[23]. 在[24]采用深度信念网络(DBN)作为集成学习的一部分。他们对DBN的时间序列预测结果进行了支持向量回归。我们的方法与上述方法的不同之处在于:(1)我们对个人需求侧水平的各种类型的负荷消耗数据采用了DNN预测模型;(2) 我们预测未来一天的日负荷情况;(3) 我们比较了两种不同的DNN:受限Boltzmann机(RBM)预训练方法和带校正线性单元的DNN(ReLU)。 我们将主要贡献总结如下。首先,我们将深度学习应用于需求方STLF,并提出了一个基于DNN的STLF框架。具体来说,我们通过两种不同的方式训练DNN:预训练RBM和使用ReLU而不进行预训练。使用ReLU,DNN可以很容易地进行训练,并且比具有一个隐藏层的浅层神经网络(SNN)性能更好。其次,我们仔细研究了使用客户负载数据训练DNN的问题。考虑到神经网络的规模,如果可用的单个负荷数据量相对较小,则在DNN训练过程中可能会出现过度拟合。我们的实验结果表明,DNN可以用客户的三年负荷数据进行很好的训练。第三,我们使用需求侧级别的各种负载数据库和聚合案例测试基于DNN的STLF模型。DNN模型针对40个大型工业客户和韩国高使用率客户的总消费量进行培训。我们将DNN预测结果与典型的三层SNN、季节ARIMA和双季节霍尔特-温特斯(DSHW)模型进行了比较。数值结果表明,基于DNN的STLF模型的平均绝对百分比误差(MAPE)和相对均方根误差(RRMSE)比SNN低17%和22%,比DSHW低9%和29%。
本文的其余部分组织如下。在第2节,将介绍基本的ANN和DNN。在第3节,我们提出了一个基于DNN的框架,预测模型的实现问题将在第4节实验结果和结论将在第5节和第6节分别是。 2.方法
近年来,DNN在声学建模、自然语言处理和图像识别等领域取得了巨大的进展。由于训练DNN存在梯度消失、过拟合和计算能力不足等问题,ANN的布局仍然很浅。2006年,Hinton等人发表了一篇关于深度学习的开创性论文[25]此后,深度学习迅速发展。DNN具有许多隐藏层,能够从训练数据中捕获高度抽象的特征。由于影响负荷模式形状的各种因素之间的负荷曲线具有非线性特征,因此使用DNN作为预测模型是合理的。在本文中,我们采用两种不同的DNN模型来学习天气变量、日期和个人客户以前的消费之间的复杂关系。然后,DNN根据过去的观测结果,对24小时负荷曲线进行日前预测。 2.1. 人工神经网络
人工神经元是模仿中枢神经系统生物神经元的数学模型。它根据输入信号显示非线性反应。图1显示了人工神经元的结构,并根据输入解释了神经元的非线性反应机制。 人工神经元由输入、偏置、权重、输出和激活函数组成。典型的神经元j个数量为n个输入如所示图1根据激活函数的形状,输出可以理解为反应强度或神经元的开启概率。 人工神经网络是一个由连接的人工神经元组成的系统,它能够对任意非线性函数建模[26]. 人工神经网络的典型结构基于多层感知器(MLP),如图2MLP具有三层结构;输入层、隐藏层和输出层。每一层都由没有层内连接的神经元组成。然而,在层之间,神经元之间存在全加权连接。MLP的要素如下。通过使用上标我为了表示层,输出向量层的我是:哪里表示非线性矢量激活函数,和分别表示权重矩阵和偏差向量。该结构意味着MLP可以通过调整层之间的权重矩阵来操纵输入空间。建立MLP的主要过程是计算适当的权重矩阵,从而产生与给定数据对应的期望输出。采用反向传播(BP)算法更新权重矩阵,以最小化目标值与MLP生成值之间的误差。然后,更新者:哪里η表示学习率和E类是错误。可以由链式法则导出[27]. 在BP算法中,误差信号δ向后传播以进行计算在SNN中,δ很好地传播到输入层。然而,在DNN中,由于饱和区的典型激活函数梯度为零,δ当它向输入层传播时,也会变为零。这种训练DNN的问题称为消失梯度,这使得训练DNN变得困难。
2.2. 深度神经网络
我们采用了两种技巧来克服训练深层结构的困难。
2.2.1. RBM预培训
第一种方法是通过堆叠RBM对DNN进行预训练,即DBN[25]. 此外,无监督的预训练会使网络达到更好的局部极小值,从而支持更好的泛化[28]. RBM是一个只有两层的神经网络,称为可见层和隐藏层。典型的RBM在每个层中都有二进制节点,表示为和分别是。对于任何对,存在双向连接,但没有层内连接。具有特定构型由其能量决定形式如下:哪里是一个标准化因子。带偏置矢量用于可见,用于隐藏和权重矩阵之间和,RBM的能量定义为[29]: 由于不存在层内连接,可见层和隐藏层的状态在条件上相互独立。因此,条件分布和是:哪里和是可见节点和隐藏节点的数量。那么,特定节点开启的概率为:哪里和代表j个-矩阵的第h列向量然后对RBM进行训练,以使超过给定的训练数据。对比发散算法是众所周知的更新算法。它的性能k个-步进吉布斯采样生成给定训练数据的重建图像并进行更新具有:哪里ϵ是学习率,尖括号是下标分布下的期望值[29]. 几何上,是降低/增加训练/重建数据能量的方向。 RBM预训练方法使用已经用给定数据训练过的堆叠RBM的权重初始化DNN。RBM堆叠过程如所述图3首先,用培训数据对成果管理制进行培训。然后,从前一个RBM的隐藏层训练其上层RBM。下层RBM的隐层成为其新的上层RBM的可见层。这样,学习和堆叠过程迭代,直到其具有所需的网络结构。在无监督RBM预训练后,利用BP算法进行监督微调。由于网络已经知道给定训练数据的特征,预训练方法有助于训练DNN。 2.2.2. ReLU公司
另一种训练DNN的方法比预训练简单得多:使用ReLUs代替典型的乙状结肠单位[30]. ReLU有整流器作为激活功能,如图4.由于整流器的梯度为1,如果否则为0,错误信号δ当DNN向后传播到最低层时,它仍然是活的,并且可以用BP算法很好地训练DNN,而不需要消失梯度问题。此外,由于ReLU的梯度特性,使用ReLU在训练时间上具有优势。 3.拟议框架
在本节中,我们使用DNN描述了拟议的负荷预测框架,如图5该框架基于数据库中的知识发现(KDD)过程。图5可分为三个主要部分:数据处理模块、DNN训练模块和DNN预测模块。 3.1. 数据处理
的上部图5显示了数据处理模块。首先,我们获取了韩国电力公司(KEPCO)提供的需求侧小时负荷数据。根据韩国标准工业分类(KSIC),数据库中的每个客户都有关于时间、耗电量、省份和行业类别的信息。客户包括其所在省和行业类别的主要电力承包商。与大规模总用电量不同,需求侧负荷表现出不同的负荷模式。在本研究中,我们从KSIC中选择了八个具有代表性的行业类别,每个类别有五个随机选择的客户。图6显示了八个选定类别的标准化消耗的箱形和须形图。每个客户都接受了当地天气参数的培训,具体取决于他/她的位置;图7显示了训练和测试期间三年内五个天气参数的示例。请注意,由于韩国是一个小国,并且位于中纬度温带气候区,因此天气参数大致类似于图7跨客户。 每个类别的代表性荷载模式可以通过中间值推断出来,中间值绘制为框中的红线。例如,图6a的典型负荷模式是白天增加,午餐时间除外,晚上减少。我们还使用天气数据预测负荷曲线。从国家气候数据服务系统(NCDSS)的区域气象数据库中,对相关分析结果进行检验后,我们选择了五个参数。日平均温度、湿度、太阳辐射、云量和风速被用作输入数据。 接下来,负荷和天气数据将经历数据预处理步骤。数据预处理包括数据清理、规范化和结构更改。我们发现负载测量有一些缺陷数据,例如缺失值和零测量负载。用以前的平均载荷替换缺陷。数据清理后,所有负载和天气数据都将使用最大值进行规范化。如果训练数据具有大的值,则权重矩阵需要非常小,以使加权和在中所述的S形激活函数的适当输入范围内图4然而,权重较小,难以使用BP算法,因此我们首先对数据库进行规范化,并对预测结果进行非规范化,以获得有效的负荷预测。 预处理的第三部分是将给定的数据库重组为训练数据和测试数据。训练数据包含神经网络的输入变量和期望输出,即用于计算预测误差的标签。例如,日负荷预测模型的标签是24小时标准化负荷曲线。输入变量可以是影响电力消耗的任何参数。输入数据包括过去的用电量、目标日期、季节、月份和日期指示器的天气参数。带有时间窗口索引n个这决定了之前预测用电量的周期,训练数据的组成如所述表1. 在实验中,我们侧重于预测工作日的负荷曲线。因此,从表1,周末数据不包括在输入中。此外,我们选择窗口中的天数,,以使用前一周同一工作日之前的过去负荷数据来反映每周的季节性。因此,共有133个输入用于预测。 测试数据与训练数据具有相同的结构。这用于评估建议的预测模型的准确性。通过将测试数据替换为目标预测日期的过去观测值,很容易获得实际预测。我们从训练数据中构造验证数据,并利用验证错误作为选择适当参数的指标。
3.2. 培训和预测
通过数据处理模块获取测试和训练数据后,训练数据进入位于左下方的DNN训练模块图5。DNN培训模块是该框架的主要部分,其实现细节如所示第4节我们首先确定DNN的结构,例如,隐藏层和神经元的数量。输入层和输出层中的神经元数量分别固定到训练数据的维度和预测负载分布的周期。输出层中的每个神经元生成特定小时的预测值。创建DNN后,我们选择一种方法来训练DNN(RBM预训练或ReLU),DNN学习负荷曲线和过去观测值之间的非线性关系。 框架的最后一部分是预测模块。我们用培训数据培训DNN;DNN结构是固定的,然后,我们使用经过训练的DNN来预测测试日期。对于没有周末的三周测试日,预测日期d日,输入取自天数到然后,d日更改自到因此,我们的模型像一个滑动窗口一样逐一预测日负荷曲线。当然,我们的模型可以通过批量再培训进行修改,以便在运行时进行更新;当有新数据可供培训时,定期使用相同的程序对DNN进行再培训,例如每隔几周进行一次。
DNN根据中列出的输入参数提供目标预测日期的24小时负荷表1由于神经元完全连接n个天(实验中为五天)影响每个输出值。因此,我们的模型在训练期间学习日间负荷和日间负荷的非线性关系,并基于训练的关系预测下一整天。通过测试数据评估预测模型的准确性。MAPE和RRMSE用于误差测量。 4.DNN的实施
我们使用带有“darch”包的R构造DNN[31]并对各种客户的用电数据进行培训。 4.1. 数据的大小
如果负荷数据的大小有限,使用DNN作为预测模型可能会出现一些问题。DNN在具有庞大训练数据库的图像识别和语音识别方面表现出卓越的性能。例如,2014年的ImageNet大规模视觉识别挑战有40多万张训练图像。对于大量的培训数据,不需要使用预培训。然而,由于最近才开始收集需求侧负荷数据,因此负荷预测数据的数量有限。除节假日外,我们可以获得三年内每个客户大约750个每日负荷曲线。有几种可能的方法可以增加训练数据的大小,例如添加扭曲的数据[32],用于图像分类,或使用具有类似负载状况的其他客户的培训数据。然而,无法保证使用其他客户的数据进行培训有助于更好的预测。相反,DNN中的参数数量可能超过训练数据。这个与规模相关的问题可能会导致过度拟合,记忆整个训练数据,而不是学习。因此,我们需要考虑合适的DNN结构和过拟合。 4.2. DNN的结构
DNN的结构主要由层和神经元的数量决定。输入神经元和输出神经元的数量由训练数据和预测周期自动确定。在[19],作者使用启发式方法选择隐藏神经元的数量。他们逐渐增加了神经元的数量,并比较了误差。启发式可能适用于典型的三层MLP,因为只有两种可能的操作:增加或减少。然而,在DNN的情况下,测试所有可能的层和神经元组合是不可行的,因为我们不仅需要考虑隐藏层的宽度,还需要考虑深度。因此,我们通过反复试验来确定结构,每层增加或减少50个神经元,最后,选择四个隐藏层和每层150个神经元。隐藏层具有用于RBM预训练或ReLU的S形单元,输出层具有用于构建负载预测的线性单元。建议的DNN结构在图8在实验中,我们使用微备份和弹性反向传播训练DNN[33]. 此外,我们对没有非营业日的DNN进行培训,以关注营业日的负荷情况,并使用五个时间窗口。 4.3. 解决过度拟合
通过观察描述错误率的学习曲线,可以识别过度拟合。纪元是网络一次性学习所有训练数据的时间段。当发生过拟合时,存在一个测试误差开始增加而训练误差仍然减少的点。这意味着模型会记住给定的训练数据,但在实际情况下无法很好地预测。因此,使用复杂预测模型进行过多训练会导致泛化效果不佳。有几种方法可以防止过盈,例如漏水[34]或提前停止。然而,当我们观察DNN预测模型的学习曲线时,我们没有观察到过度拟合的发生;在预训练和ReLU模型中,随着训练误差的增加,测试误差也逐渐减小。客户学习曲线的示例如所示图9。由于客户有不同的学习曲线,我们应用k个-折叠交叉验证以确定停止标准。从这项研究来看,用电量数据的大小似乎不那么重要,但可能需要使用不同的网络结构和/或在以后有更多数据可用时进行进一步验证。 另一个有趣的地方是,RBM模型的训练误差大多首先下降,其次是没有预训练的DNN模型和ReLU模型,如所示图10这意味着使用RBM进行预训练可以加快收敛速度,因为从更好的初始权重开始。然而,随着培训的继续,所有三个模型的误差最终接近相似的值。 5.实验结果和案例研究
在本节中,给出了用DNN进行STLF的实验结果。MAPE和RRMSE用于衡量每日预测的准确性,每日MAPE和RRMSE定义为:哪里和表示实际和预测小时消耗量我分别为和T型是一天中的时间单位数。指每日数值的平均值。实验的重点是预测工作日的负荷曲线。将DNN的预测结果与SNN、季节ARIMA(我们用ARIMA表示其余结果的季节ARIMA)和DSHW模型进行比较,以验证DNN作为单个客户的预测模型。我们使用了DSHW,而不是双季节ARIMA,它在[8]. 为过去八周的每个每日负荷预测创建时间序列模型(季节ARIMA和DSHW)[7]. 5.1. 情况1:单荷载类型
我们首先给出了一个选定客户的结果,并分析了四季的预测结果。位于釜山的客户属于网络业务类别,具有典型的季节性变化的日常负载模式。图11显示了客户2012年至2014年的用电量。夏季负荷显著增加,冬季白天负荷略有增加。最大、平均和最小小时用电量分别为2667、1642和641 kWh。我们预测每个季度中期三周的负荷情况。季节性预测见图12。将在框中缩放每日负荷曲线。具有每日季节性的ARIMA显示出最差的预测;它们的荷载形状与实际荷载有点相似,但ARIMA不能反映最近的趋势。DSHW模型考虑了每日和每周的季节性。它显示出比ARIMA模型更好的准确性。然而,DSHW有时会显示异常模式,如图12b、 这似乎是过去异常消费的印记。相比之下,两种DNN模型的预测结果比ARIMA和DSHW模型更稳定。当实际预测与DNN预测之间存在差距时,其他模型显示出更大的差距。然而,很难找到相反的情况。 在所有四个季节,DNN预测都很好地遵循了最近的趋势和实际负荷模式。所有季节的平均误差如所示表2可以看出,两个DNN预测模型总体上比SNN、DSHW和ARIMA模型显示出更好的准确性。在MAPE和RRMSE方面,经过预训练的DNN平均准确率最高,分别为3.2%和4.1%。MAPE与SNN相比下降了27%,与DSHW相比下降了12%。由于ARIMA预测的平均差距,DNN的MAPE远低于ARIMA,即下降69%。此外,DNN模型预测良好,不受季节变化的影响。 5.2. 情况2:各种荷载类型
为了确定拟议DNN的一般性能,我们将DNN应用于一组大型负载数据库,其中有八个行业类别(公共管理、零售业务、研发服务、网络业务、医疗保健、车辆和拖车制造业、电子元件和计算机制造业以及其他制造业),在每个类别中随机选择五名客户。我们的目标是预测2014年9月13日至12月19日10周的日负荷情况。考虑到案例1中ARIMA的结果高度不准确以及模型选择的负担,我们在案例2中排除了ARIMA。
40个客户的错误结果如所示表3.MAPE和RRMSE用于误差测量,MAPE大于100%的异常天数不计入结果中。如表所示,尽管SNN或DSHW有时比DNN显示出更好的结果,但两个DNN模型都显示出准确的预测结果。总的来说,与SNN和DSHW相比,含有ReLU的DNN的平均MAPE分别降低了17%和9%。RRMSE的下降幅度更大:分别比SNN和DSHW低22%和29%。为了进一步分析,我们比较了整个客户的日常错误。图13a、 b表示每日RRMSE和MAPE的累积分布函数(CDF)。就RRMSE和MAPE CDF而言,这两种DNN模型始终优于SNN模型。由于DNN具有更强的计算能力,因此这个结果可能并不令人惊讶。与DSHW相比,两种DNN模型和DSHW在小误差区表现出相似的性能。然而,存在一个交叉点,超过该交叉点,DNN将超过DSHW模型。大致来说,当误差小于3%时,DSHW的性能优于DNN,但此后,DNN开始优于DSHW;DNN预测更可靠,即使负载不确定且预测误差较大。这些结果表明了DNN模型的鲁棒性。在两个DNN模型之间,准确性没有显著差异。由于RBM预训练模型需要更多的计算能力和时间,因此使用带有ReLU的DNN进行客户负荷预测将是一个更好的选择。 5.3. 案例3:总荷载
从案例2中,每个客户的平均错误率约为10%。人们可能会认为误差高于文献中的结果[9,23]. 不同的是,以前的研究主要集中在大规模的负荷消耗上,例如变电站或电力系统的负荷消耗。应该注意的是,个别水平的负荷预测显示出更高的误差,高达30%[35]. 通过汇总客户的用电量,误差显著降低。图14代表三年的累计负载,拥有500多个高使用率客户。GW机组的负荷消耗不同,可以观察到每周的季节性。图15描述了五个模型的预测结果。通过加总,在案例2的同一时期,DNN和ReLU的平均MAPE分别为2.27%和2.19%。相比之下,SNN、DSWH和ARIMA的MAPE平均分别为2.55%、2.98%和3.29%。平均MAPE和RRMSE如所述表4结果证实,聚合通过减少固有的可变性,有助于减少预测误差[35],并且所提出的DNN模型也适用于大规模负载消耗。 6.结论
本文将深度学习应用于需求侧STLF,提出了一个基于DNN的STLF框架。该框架包括数据处理、DNN训练和DNN预测步骤,并基于天气、日期和过去的用电量预测24小时日负荷模式。具体来说,我们比较了两种不同的DNN;预培训RBM和使用ReLU,无需预培训。然后,我们调查了训练DNN的问题,例如过拟合。我们的大量实验表明,两种建议的方法,即带有预训练的DNN和带有ReLU的DNN,可以使用最多三年的客户负载数据进行良好的训练,而不会过拟合。最后,我们将提出的框架应用于大规模的客户数据集。DNN模型针对40个主要工业客户进行了培训,与ARIMA、SNN和DSHW等其他预测模型相比,表现出更好的性能。数值结果表明,基于DNN的STLF模型的MAPE和RRMSE比SNN少17%和22%,比DSHW少9%和29%。我们发现,带有ReLU的DNN易于训练,并显示出准确和稳健的预测,因此,它可以首次应用于需求侧STLF模型。
本文的结果可以在几个方向上进一步推广。我们目前正在收集全国范围的数据,因此,预计在有大数据可用时,将更好地培训DNN。然后,可以探索更好的DNN结构,例如,将卷积神经网络视为时间序列预测模型。此外,分析DNN准确的条件(例如,负荷类型、负荷模式、日期等)有助于为个别客户选择合适的预测模型。
虽然我们广泛的实验结果不一定能保证DNN优于所有其他预测模型,但我们的研究在某种意义上是有意义的,它为STLF的DNN研究提供了启示。