楼主: 能者818
1442 48

[量化金融] 预测欧洲日前电价:以下因素的重要性 [推广有奖]

11
可人4 在职认证  发表于 2022-6-1 06:38:38
深度学习和DNN在过去十年中,神经网络领域经历了一些重大的创新,这些创新导致了当今所谓的深度学习[30]。具体而言,深度一词指的是,由于近年来的新发展,我们现在可以训练不同的神经网络配置,其深度不仅限于单个隐藏层(如传统的多层感知器),而且系统地显示出更好的泛化能力【30】。虽然存在不同的DNN体系结构,例如卷积网络或递归网络,但在本文中,我们考虑了标准DNN,即具有多个隐藏层的多层感知器。3.2.1. X表示=[X,…,xn]>∈ RN网络输入,按Y=[Y,Y,…,ym]>∈ Rmtheoutput of the network,by NK the number of neuronsof the kthhidden layer,and by zk=[zk1,…,zknk]>the state vector in the kthhidden layer,一个具有两个隐藏层的通用神经网络可以如图1所示。在这种表示法中,模型的参数由一组权重W表示,该权重在网络的不同神经元之间建立映射连接【30】。3.2.2. 估计模型权重的过程通常称为训练。特别是,给定一个训练集ST=(Xk,Yk)Nk=1,有N个数据点,xx。。。xnzz。。。z1nzz。。。z2nyy。。。yHiddenLayerHiddenLayerInputLayerOutPutlayer。。。图1:DNN示例。网络训练是通过解决具有以下结构的一般优化问题来完成的:minimizeWNXk=1gkYk,F(Xk,W),(1) 式中:Rn→ Rmis是神经网络图,GK是问题特定的代价函数,例如欧几里德范数或平均交叉熵。解决(1)的传统方法包括梯度下降法或Levenberg–Marquardt算法[1]。

12
kedemingshi 在职认证  发表于 2022-6-1 06:38:41
然而,虽然这些方法在小型网络中效果很好,但它们在DNN中显示出计算和可伸缩性问题。尤其是,DNN更好的替代方案是随机梯度下降及其所有变体【39】。需要注意的是,(1)是我们希望最小化的实际问题的近似值。特别是,在理想情况下,我们将最小化底层数据分布的成本函数w.r.t;然而,由于分布未知,必须通过最小化有限训练集上的成本函数来近似问题。这与神经网络尤其相关,其中模型可能过拟合,在训练集中表现良好,但在测试集(即数据分布不同的集)表现不佳。为了避免这种情况,通常结合正则化技术对网络进行训练,例如提前停止,并使用样本外数据来评估性能【30】。3.2.3. 网络超参数除了权重外,网络还有几个参数需要在训练过程之前选择。典型参数包括隐层神经元数量、隐层数量、激活函数类型或随机梯度下降法的学习率。为了将它们与主要参数(即网络权重)区分开来,它们被称为网络超参数。3.3. 超参数选择为了选择模型超参数,电价预测领域的论文传统上定义了许多配置,并选择了性能最好的配置【7、14、27、32、34】。另一种常见的方法是使用进化优化算法来选择最佳网络配置【40】。

13
kedemingshi 在职认证  发表于 2022-6-1 06:38:43
然而,虽然这些方法可能在某些条件下有效,但它们也有一些缺陷。特别是,虽然FirstMethod实现了快速决策,但它不能提供超参数的最佳选择。类似地,虽然第二种方法优化了选择,但它在超参数空间中计算了大量的点。因此,如果要评估的函数代价高昂,例如,在生成DNN时,第二种方法需要大量的计算时间。解决这些问题的另一种方法是贝叶斯优化(Bayesianoptimization)[41],这是一系列优化黑盒函数的算法,与进化优化技术相比,它需要更少的函数评估。特别是,他们的工作原理是依次评估函数空间中的新样本,通过使用先前探索的样本中获得的信息作为先验信念来绘制新样本。在此基础上,它们减少了评估样本点的数量,并导致更高效的优化。3.3.1. 超参数优化我们考虑一种在机器学习社区中广泛使用的贝叶斯优化算法。特别是,我们使用了树结构Parzen估计器(TPE)[42],这是一种序列模型优化方法家族中的优化算法[43]。基于序列模型的优化算法的基本原理是,通过迭代估计函数的近似值,并使用近似值的局部极小值展开函数空间,来优化黑箱函数,例如,作为超参数函数的神经网络的性能。在任何给定的迭代i中,该算法在一个新的点θi上评估黑箱函数。接下来,通过将之前采样的点与获得的函数评估值进行拟合,估计黑箱函数的近似值M。

14
能者818 在职认证  发表于 2022-6-1 06:38:47
然后,通过数值优化M选择下一个采样点θi+1,并开始下一次迭代。最后,在执行了最大次数的迭代之后,该算法会选择最佳配置。算法1代表用于超参数选择的基于顺序模型的优化算法的一个示例。算法1超参数优化1:过程SMBO(T,θ)2:θi← θ3:H← 4: 对于i=1,T do5:pi← 列车网络(θi)6:H← H∪(pi,θi)7:如果i<T,那么8:Mi(θ)← 估算模型(H)9:θi← argmaxθMi(θ)10:结束if11:结束for12:θ*← BestHyperparameters(H)13:返回θ*14: 结束程序3.3.2。超参数分析超参数优化后的可选步骤是执行超参数重要性分析。特别是,虽然已经获得了最佳超参数配置,但还不知道每个超参数对整体性能的贡献有多大。为了避免不必要的模型复杂性,研究这一点特别相关;e、 g.虽然神经元的最佳数量可能很大,但减少神经元数量可能几乎不会影响性能。【44】中提出了进行此类分析的函数ANOVA方法,其中介绍了一种基于随机林和函数ANOVA的新方法。特别地,[44]考虑了具有域Θ,…,的z超参数的一般情况,定义了以下概念:o超参数集z={1,…,z}超参数空间Θ:Θ×。×Θz.o超参数实例化θ=[θ,…,θz]>。o超参数子集U={U,…,uq} Zand关联的部分超参数实例化θU=[θU。

15
大多数88 在职认证  发表于 2022-6-1 06:38:50
,θuq]>。然后,给定一个集合H=(θk,pk)Tk=1对于超参数实现,提出的方法将arandom森林模型MRF(θ)作为超参数向量θ的函数来构建性能p的预测值。然后,使用MRF,该方法定义一个边际性能预测因子^a(θU),作为任何部分超参数实例化θU性能的预测者。特别是,给定子集U Z、 当U的超参数固定在θU时,^a(θU)提供了跨超参数空间Z\\U的平均性能估计。最后,使用边际性能预测器^a(θU),该算法执行FunctionalNova分析来估计每个超参数的重要性。特别是,通过V定义整个性能的总方差,算法将V划分为子集U的单个方差贡献之和 Z到V:V=XUZVU,(2),其中Vu是子集U对总方差的贡献。然后,根据子集对总性能方差的贡献计算每个子集U的重要性FU:FU=VUV。(3) 对于超参数重要性的特殊情况,该算法只计算由单个超参数组成的每个子集U={i}的fu。如【44】所述,我们将单个超参数的方差贡献fu称为主要影响,将其余超参数的方差贡献fu称为相互作用影响。值得注意的是,除了重要性FU外,该算法还为每个部分超参数实例化θU提供了边际性能^a(θU)的预测及其标准偏差σθU的估计。3.4。性能指标为了评估所提出模型的准确性,我们需要一个性能指标。在本文中,如下文所述,我们使用对称平均绝对百分比误差(sMAPE)[45]。给定实输出的向量Y=[Y,…,yN]>和向量^Y=[^Y。

16
可人4 在职认证  发表于 2022-6-1 06:38:53
,^yN]>对于预测输出,sMAPE度量可计算为:sMAPE=NNXk=1 | yk- ^yk |(| yk |+| yk |)/2。(4) 选择sMAPE而不是更传统的MAPE的原因是,MAPE受到不同问题的影响【45】。特别是对于我们的应用程序,MAPE对接近零的值变得敏感。当输出yi接近零时,对应的MAPE贡献变得非常大,并且它支配最终值。3.5. Diebold Mariano(DM)测试上述sMAPE指标仅提供了一种评估,即对于数据使用,哪个模型具有更好的准确性。虽然amodel的准确性可以更高,但性能上的差异还不足以证明该模型确实更好。为了评估预测准确度性能差异的统计重要性,常用的工具是DieboldMariano检验[46]。给定一个要预测的时间序列向量Y=[Y,…,yN]>,两个预测模型MandM,以及相关的预测误差εM=[εM,…,εMN]>和εM=[εM,…,εMN]>,THDM测试根据误差损失函数L(εMik)评估性能精度是否存在显著差异。特别是,DM测试建立了一个损失差分函数:DM,Mk=L(εMk)- L(εMk),(5),然后,它测试两个模型具有相同精度的无效假设,即相同的预期损失,与模型具有不同精度的替代假设,即:双边DDM测试(H:e(dM,Mk)=0,H:e(dM,Mk)6=0,(6),其中e代表预期值。

17
能者818 在职认证  发表于 2022-6-1 06:38:56
与标准双侧检验类似,单侧DM检验可以通过检验无效假设来建立,即Mis的准确度等于或低于Mversus的准确度。MBEENG准确度更好的替代假设:单侧DDM检验(H:E(DM,Mk)≥ 0,H:E(dM,Mk)<0。(7) 虽然损失函数L可以自由选择,但它可以确保由此产生的损失差异保持不变。通常使用的损失函数为:L(εMik)=εMik | p,(8),其中通常为p∈ {1, 2}.4、数据本节介绍了本研究使用的数据。4.1. 数据选择和动机一般来说,在查看日前预测文献时,许多输入被提议作为有意义的解释变量,例如温度、天然气和煤炭价格、电网负荷、可用发电量或天气【1】。为了进行选择,我们试图确保所选数据不仅与价格动态相关,而且符合一些最低要求。更具体地说,我们只选择对大多数欧洲市场免费提供的数据,以便提议的模型可以轻松出口到其他欧盟市场。此外,我们确保数据代表市场整合,即来自两个相互连接的市场。特别是,我们选择2010年1月1日至2016年11月31日为研究时间范围,并考虑以下数据:1。EPEX比利时和PEX法国电力交易所的日前价格。它们分别表示为pB和pF。比利时和法国电网负荷和发电容量的日前预测。与其他欧洲市场一样,在输电系统运营商(TSO)的网站上可以在投标截止日期之前获得这些预测:比利时的ELIA和法国的RTE。比利时分别表示为Lb和Gb,法国分别表示为Lf和Gf。3.

18
kedemingshi 在职认证  发表于 2022-6-1 06:38:59
指定时间范围内的公共假日日历HF和HBinFrance以及比利时。虽然可以说,不同的天气数据也很容易获取,对预测也很重要,但在我们的研究中,我们决定忽略它们,主要原因有两个:1。TSO提供的电网负荷和发电量预测中已经间接考虑了天气因素。特别是,发电量预测必须考虑有关风速和太阳辐射的天气信息。同样,负荷预测还需要考虑温度和其他天气变量,以获得用电量。天气数据是局部现象,因此,它们在一个国家的不同地区可能会有很大的差异。因此,与电网负荷或发电数据不同,在给定的时间间隔内,不可能选择单一的温度值或任何其他天气数据。4.2. 数据处理需要注意的是,使用的数据基本上未经处理。特别是,当我们打算预测和检测峰值时,价格异常值并没有消除。唯一的数据转换是每年的aprice插值和消除,分别对应于夏令时导致的缺失值和额外值。此外,在使用实际价格计算所有度量和测试的同时,神经网络的训练是使用归一化到区间的数据进行的[-1, 1].最后一步是必要的,因为输入特征具有非常不同的范围;因此,如果数据不规范化,训练时间就会增加,最终的结果是网络显示的性能总体上更差【47】。4.3. 数据划分为了进行不同的实验,我们将数据分为三组:1。培训集(2010年1月1日至2014年11月31日):这些数据用于培训和评估不同的模型。2.

19
可人4 在职认证  发表于 2022-6-1 06:39:02
验证集(2014年11月1日至2015年11月31日):一年的数据用于进行早期停止,以确保模型不会过度拟合,并选择最佳超参数和特征。3、测试集(2015年11月1日至2016年11月31日):在模型估计过程中的任何步骤都不使用一年的数据,作为样本数据集,用于比较和评估模型。4.4. 数据访问为了再现性,我们只使用公开可用的数据。特别是,负荷和发电日前预测可在法国和比利时RTE【48】和Elia【49】的网页上找到。就价格而言,可从ENTSO Etransparency平台获取【50】。建模框架在本节中,提出了两种不同的模型,以将市场整合纳入日前预测。这两个模型彼此相似,因为它们都试图预测全套日前价格。然而,它们在预测的价格数量和类型上存在差异;特别是,虽然第一个模型预测单一市场的日前价格,但第二个模型将双市场预测合并到一个模型中。5.1. 单一市场日前预测员预测日前价格的基本模型使用DNN来预测一组24日前价格。5.1.1. 概念构思基于【20】的结果,我们选择了一个具有两个隐藏层的DNN作为预测模型。将模型输入定义为相关数据x=[x,…,xn]>∈ R第d天可用- 1在本地和邻近市场,让nand和nbe分别计算第一和第二隐藏层的神经元数量,p=[p,p,…,p]>∈ r对于要预测的24天aheadprices集合,建议的模型如图2.5.1.2所示。

20
可人4 在职认证  发表于 2022-6-1 06:39:05
模型参数DNN的参数由建立网络不同神经元之间映射关系的权重集表示:xx。。。xnzzz。。。Z1NZZ。。。z2npp。。。PhidEndLayerHiddenLayerInputLayerOutPutlayer。。。图2:DNN预测日前价格Wi,i:输入x和第一隐藏层神经元i之间的权重向量Wh,i:第二隐层神经元i和第二隐层神经元i之间的权重向量Wo,i:第二隐藏层和输出价格向量p之间的权重向量。obk=[bk1,…,bknk]>:kthhidden层中的biasweights向量,k=1,2。obo=[bo,1…,bo,24]>:输出层中的偏差向量。5.1.3. 模型方程使用上述定义,神经网络的方程可定义为:z1i=f1iW> i,i·X+b1i, 对于i=1。n、 (9a)z2i=f2iW> h,i·z+b2i, 对于i=1。n、 (9b)pi=fo,iW> o,i·z+bo,i, 对于i=1。24,(9c)其中f1i和f2i分别代表第一和第二隐藏层神经元i的激活功能,其中fo,ii代表输出层神经元i的激活功能。5.1.4. 网络结构选择直线单元【51】作为两个隐藏层的激活函数。然而,由于价格是实数,因此输出层没有使用activationfunction。要选择网络输入的维数n和隐藏层的维数与否,需要执行特征选择和超参数优化。5.1.5. 训练通过最小化平均绝对误差来训练DNN。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2026-1-10 04:36