基于神经网络弹性权重固化的建筑用能负荷实时预测方法

文档序号:24820927发布日期:2021-04-27 14:40阅读:135来源:国知局
基于神经网络弹性权重固化的建筑用能负荷实时预测方法

1.本发明属于建筑用能负荷预测领域,涉及基于神经网络的黑箱建模技术和基于弹性权重固化(elastic weight consolidation)的持续学习(continual learning) 技术,具体涉及一种基于神经网络弹性权重固化的建筑用能负荷实时预测方法。


背景技术:

2.准确的建筑用能负荷预测对于中央空调系统、照明系统等建筑机电系统的优化运行和故障诊断至关重要。随着楼宇自动化系统的普及,大量的建筑用能负荷数据得以离线保存和实时获取,从而为基于神经网络的建筑用能负荷预测技术提供了可靠的数据来源。大量研究表明,神经网络(bp神经网络、递归神经网络、卷积神经网络等)在建筑用能负荷预测任务上具有通用性和高准确性。但是,神经网络的泛化能力较弱。随着建筑性能衰减、人员变动、室内装修、季节更替等因素,建筑用能规律会逐渐或者显著发生变化。此时,基于某一固定历史数据训练得到的神经网络无法满足建筑用能负荷长期准确预测的需求。
3.为了解决以上问题,需要定期对神经网络进行重新训练,从而保证其能适应建筑用能规律的变化。累积训练和滑动窗训练是两种传统的定期训练方法。累积训练通过持续收集实时获取的新数据来不断扩充历史数据集,并定期使用扩充后的历史数据集对神经网络进行重新训练。此方法可以保证神经网络能够适应建筑用能规律的变化,但是由于需要不断收集新数据来扩充历史数据集,导致数据储存成本和神经网络训练时间会随着历史数据集的增长而增加。滑动窗训练通过设定某一时间间隔(滑动窗),每次只保存固定时间间隔内的数据,并定期使用这些数据对模型进行重新训练。此方法可以大大降低数据存储成本和神经网络训练时间,但是由于训练数据有限,会导致神经网络无法学习到滑动窗以外的建筑历史用能规律。


技术实现要素:

4.本发明旨在使用弹性权重固化技术使得神经网络每次重新训练只需要使用实时采集获取的新数据,并保证重新训练过程不会导致其遗忘之前通过历史数据学习到的用能规律。
5.有鉴于此,本发明基于神经网络弹性权重固化的建筑用能负荷实时预测方法包括以下基本操作步骤:
6.步骤1为模型离线训练,具体步骤如下:
7.第1

1步,获取历史的建筑用能负荷数据;
8.第1

2步,对所述建筑用能负荷数据进行预处理,剔除所述建筑用能负荷数据中的异常值和缺失值,同时对所述建筑用能负荷数据进行归一化处理,得到预处理后的历史数据;
9.第1

3步,选择与建筑用能负荷最为相关的变量作为神经网络模型的输入,以建筑用能负荷作为神经网络模型的输出,以构建用于实时预测建筑用能负荷的神经网络;
10.第1

4步,对神经网络的超参数进行优化,得到一组最优的超参数取值;
11.第1

5步,将所述历史数据以一定比例随机划分为训练集和验证集,在训练集上使用随机梯度下降算法对神经网络中包括权重和偏置在内的参数进行训练,以保证其在验证集上的精度;
12.第1

6步,计算所述神经网络中的每个参数的重要性,任意第i个参数θ
i
的重要程度i
i
用所述神经网络的损失函数对所述参数的二阶导数衡量,计算公式为:
[0013][0014]
式中,d1是所述历史数据,|d1|是所述历史数据中采样点的数量,l(d,θ
i
)是所述神经网络在所述历史数据的一个采样点d上的损失;
[0015]
步骤2为模型实时微调,具体步骤如下:
[0016]
第2

1步,获取从神经网络模型离线训练或模型实时微调操作完成后固定时间间隔内的实时建筑用能负荷数据;
[0017]
第2

2步,对所述实时建筑用能负荷数据进行预处理,剔除所述实时建筑用能负荷数据中的异常值和缺失值,同时对所述实时建筑用能负荷数据进行归一化处理,得到预处理后的实时数据;其中,该步骤中的归一化范围与第1

2步中的归一化范围保持一致;
[0018]
第2

3步,选取与第1

3步相同变量作为神经网络模型的输入;
[0019]
第2

4步,选取从第1

4步优化得到的最优的超参数取值作为模型的超参数取值;
[0020]
第2

5步,在所述实时数据上使用随机梯度下降算法对当前神经网络中包括权重和偏置在内的参数进行微调,所述微调过程中使用弹性权重固化技术对损失函数进行约束,计算公式为:
[0021][0022]
式中,l为所述微调过程中的损失函数,l
new
为神经网络在所述实时数据上的损失函数,λ为约束调节因子,i
i
为参数重要程度,θ
i,new
为所需学习的参数值,θ
i,old
为已经学得的参数值;
[0023]
第2

6步,基于所述实时数据,重新计算微调后的神经网络中每个参数的重要程度,对任意第i个参数θ
i
的重要程度i
i,new
重新计算,计算公式为:
[0024][0025]
式中,d2是所述实时数据,|d2|是所述实时数据中采样点的数量,l(d,θ
i
)是微调后的神经网络在所述实时数据的一个采样点d上的损失;
[0026]
取重新计算得到的重要程度i
i,new
与原始重要程度i
i,old
中的最大值,更新所述参数θ
i
的重要程度i
i
,计算公式如下:
[0027]
i
i
=max(i
i,new,
i
i,old
)
[0028]
第2

7步,每隔固定时间间隔,重复第2

1步至第2

6步,实现对神经网络中参数的持续更新,得到实时更新的网络模型,以实时预测建筑用能负荷。
[0029]
作为优选,所述建筑用能负荷包括冷负荷、热负荷和电力负荷。
[0030]
作为优选,所述建筑用能负荷数据通过楼宇自动化系统获取。
[0031]
作为优选,所述第1

2步中,使用箱形图识别所述建筑用能负荷数据中存在的异常值,剔除包含异常值或者缺失值的数据,然后使用最大最小规范化方法对所述建筑用能负荷数据进行归一化。
[0032]
作为优选,与所述建筑用能负荷最为相关的变量包括室外空气温度、室外空气相对湿度、历史负荷和时间变量。
[0033]
作为优选,所述第1

4步中,使用交叉验证和网格搜索方法对神经网络的超参数进行寻优。
[0034]
进一步的,所述超参数包括隐藏层数、隐藏层内神经元个数和激活函数。
[0035]
作为优选,所述第1

5步中,历史数据中80%的数据作为训练集,20%的数据作为验证集。
[0036]
作为优选,所述精度指标包括可决系数、均方根误差和平均绝对误差。
[0037]
作为优选,所述固定时间间隔为一周。
[0038]
与现有方法相比,本发明所述的基于神经网络弹性权重固化的建筑用能负荷实时预测方法具有的优势在于:
[0039]
与传统的累积训练方法相比,该方法不需要对历史数据进行储存和扩充,每次微调仅需保存某一固定时间间隔(滑动窗)内的数据,从而降低了数据储存成本和神经网络训练时间。与传统的滑动窗训练方法相比,该方法可以保证神经网络在微调的过程中不会遗忘从历史数据上学习到的用能规律。该发明可以持续对神经网络进行低储存成本的快速微调,并保证微调过程中不会遗忘已经学习到的用能规律,从而实现准确可靠的建筑用能负荷实时预测。
[0040]
也就是说,本发明通过引入弹性权重固化技术,可以仅用新获取的数据对神经网络进行微调,并且保证在微调过程中不会遗忘从历史数据中学习到的用能规律,从而克服累积训练和滑动窗训练的不足,既不需要对历史数据进行储存和扩充,又能保留从历史数据上学习到的用能规律。
附图说明
[0041]
图1为本发明提供的预测方法的流程图。
[0042]
图2和图3为两种不同情况下神经网络损失函数l(d,θ
i
)与参数θ
i
的关系曲线。
[0043]
图4为弹性权重固化技术的原理图。
具体实施方式
[0044]
下面结合附图对本发明的实施例作详细说明,本实施例在本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下属实施例。
[0045]
如图1所示,为本发明提供的基于神经网络弹性权重固化的建筑用能负荷实时预测方法,该实时预测方法包括模型离线训练和模型实时微调两个步骤。其中,模型离线训练步骤包含六个子步骤,依次为建筑用能负荷历史数据获取、数据预处理、模型输入选择、模型超参数寻优、模型参数训练和参数重要性计算。模型实时微调步骤包含六个子步骤,依次
为建筑用能负荷实时数据获取、数据预处理、保持模型输入一致、保持模型超参数一致、使用弹性权重固化对模型进行微调和参数重要性更新。模型微调以滑动窗的形式定期进行,从而保证模型能适应建筑用能规律的变化。
[0046]
步骤1为模型离线训练,该步骤旨在使用建筑用能负荷历史数据训练一个神经网络模型,并计算该模型参数的重要程度,具体步骤如下:
[0047]
第1

1步,通过楼宇自动化系统获取历史的建筑用能负荷数据,其中,建筑用能负荷包括冷负荷、热负荷和电力负荷。
[0048]
第1

2步,使用箱形图识别上述建筑用能负荷数据中存在的异常值,剔除包含异常值或者缺失值的数据,然后使用最大最小规范化方法对上述建筑用能负荷数据进行归一化处理,得到预处理后的历史数据。
[0049]
第1

3步,选取与建筑用能负荷最相关的变量作为神经网络模型的输入,最相关的变量包括室外空气温度、室外空气相对湿度、历史负荷和时间变量(预测负荷位于一天中的第几小时、一周中的第几天、一年中的第几月、是否节假日)。同时,以建筑用能负荷作为神经网络模型的输出,来构建用于实时预测建筑用能负荷的神经网络。
[0050]
第1

4步,使用交叉验证和网格搜索方法对神经网络的超参数(包括隐藏层数、隐藏层内神经元个数、激活函数)进行寻优,得到一组最优的超参数取值。
[0051]
第1

5步,将历史数据集随机划分为训练集和验证集,在本实施例中,可以将历史数据中80%的数据作为训练集,20%的数据作为验证集。在训练集上使用随机梯度下降算法训练神经网络中的参数(包括权重和偏置),保证其在验证集上有较高的精度,模型精度用常见精度指标进行评价,包括可决系数、均方根误差、平均绝对误差。
[0052]
第1

6步,计算该神经网络中的每个参数的重要性。某个参数θ
i
对神经网络的影响程度可用损失函数在某样本点d下对该参数的二阶导数衡量。举例来说,若某样本点d下的损失函数l(d,θ
i
)与参数θ
i
的关系曲线如图2所示,当θ
i
取值为 a时,其微小的变化将会引起损失函数巨大的变化,从而导致神经网络遗忘从该样本点上学习到的知识,这意味该参数在后续更新过程中不应大幅变化。反之,若某样本点d下的损失函数l(d,θ
i
)与参数θ
i
的关系曲线如图3所示,当θ
i
取值为 b时,其发生较大的变化不会引起损失函数的显著变化,这意味该参数在后续更新过程中可以有较大幅度的变化。这一规律可以通过损失函数l(d,θ
i
)在该样本点下对该参数的二阶导数进行描述,若该参数在当前取值处的二阶导数较大,则该参数变化对损失函数的影响较大(图2),反之,该参数变化对损失函数的影响较小(图3)。考虑实际训练过程中会有多个样本点,任意第i个参数θ
i
的重要程度i
i
用该神经网络的损失函数(选用均方差损失)在所有样本点下对该参数的二阶导数的平均值衡量,如下式所示:
[0053][0054]
式中,d1是历史数据,|d1|是历史数据中采样点的数量,l(d,θ
i
)是神经网络在历史数据的一个采样点d上的损失。
[0055]
步骤2为模型实时微调,该步骤旨在使用实时获取的数据对神经网络进行微调,从而保证神经网络能够适应建筑用能规律的变化,具体步骤如下:
[0056]
第2

1步,通过楼宇自动化系统获取从神经网络模型离线训练或模型实时微调操
作完成后固定时间间隔内(如一周内)的实时建筑用能负荷数据。若是神经网络只经过步骤1的模型离线训练,则获取的是从神经网络模型离线训练操作后固定时间间隔内的实时建筑用能负荷数据,在此之后,均是获取从神经网络模型实时微调操作完成后固定时间间隔内的实时建筑用能负荷数据。
[0057]
第2

2步,使用箱形图方法识别实时建筑用能负荷数据中存在的异常值,剔除包含异常值或者缺失值的数据,然后使用最大最小规范化对实时建筑用能负荷数据进行归一化,得到预处理后的实时数据。其中,该步骤中的归一化范围与第 1

2步中的归一化范围保持一致。
[0058]
第2

3步,选取第1

3步选择的神经网络输入变量作为模型的输入,即选取与第1

3步相同变量作为神经网络模型的输入。
[0059]
第2

4步,选取第1

4步优化得到的神经网络超参数取值作为模型超参数取值,即选取从第1

4步优化得到的最优的超参数取值作为模型的超参数取值。
[0060]
第2

5步,在实时数据上使用随机梯度下降算法对当前神经网络的权重和偏置进行微调。微调过程中使用弹性权重固化技术对损失函数进行约束来控制权重和偏置的学习方向。对损失函数进行约束是神经网络中最常见的控制权重和偏置学习方向的方法,其效果在许多案例中均已得到了验证,例如最常见的l2正则便是通过在损失函数后加一项权重的l2范数(所有权重平方和再开方)来约束权重的学习方向。通过l2正则,可以控制易导致模型过拟合的权重的学习方向,使其取值尽可能为0,而避免模型过拟合。本发明中采用的弹性权重固化技术和 l2正则类似,也是一种对损失函数进行约束的方法。其核心思想如图4所示,在实时训练数据上训练神经网络的参数时,通过对损失函数增加约束的方式,控制参数的学习方向,让参数解落在历史训练数据和实时训练数据上损失函数均较低的解空间内,从而使得其在历史训练数据和实时训练数据上均取得较低的损失函数。其约束的形式如下式所示:
[0061][0062]
式中,l为微调过程中的损失函数,l
new
为神经网络在实时数据上的损失函数,λ为约束调节因子(若认为历史数据中学习得到的用能规律比较重要,该值可以选取得较大,反之,若认为历史数据中学习得到的用能规律比较不重要,该值可以选取得较小),i
i
为参数重要程度,θ
i,new
为所需学习的参数值,θ
i,old
为已经学得的参数值。引入λ∑
i
i
i

i,new

θ
i,old
)2作为约束项可以保证在实时训练数据上训练神经网络时,对该神经网络在历史训练数据上的损失函数影响较大的参数不会被显著改变,因为若这些参数发生显著改变,神经网络的损失函数将会急剧增加。通过这一约束,最终可以保证神经网络在实时训练数据上训练时不会遗忘已经从历史训练数据上学习到的知识。该方法的效果已经在图像识别领域得到了验证,谷歌deepmind团队构建了多个不同的图像识别数据集,依次用神经网络弹性权重固化技术对这些数据集进行学习,研究证明采用弹性权重技术后,神经网络可以在不遗忘已经学习到的图像识别知识的基础上,不断学习新的图像识别知识。
[0063]
第2

6步,基于实时数据,重新计算微调后的神经网络的每个参数的重要程度,对任意第i个参数θ
i
的重要程度i
i,new
重新计算,公式如下:
[0064][0065]
式中,d2是实时数据,|d2|是实时数据中采样点的数量,l(d,θ
i
)是微调后的神经网络在实时数据的一个采样点d上的损失。
[0066]
取重新计算得到的重要程度i
i,new
与原始重要程度i
i,old
中的最大值,更新参数θ
i
的重要程度i
i
,如下式所示:
[0067]
i
i
=max(i
i,new,
i
i,old
)
[0068]
第2

7步,每隔固定时间间隔(如一周)重复第2

1步至第2

6步,实现对神经网络参数的持续更新,得到实时更新的网络模型,以实时预测建筑用能负荷。
[0069]
以上所述的实施例只是本发明的一种较佳的方案,然其并非用以限制本发明。有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型。因此凡采取等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1