CN110852655A - 带有太阳能供电系统的家庭用电负荷分解系统与分解方法 - Google Patents

带有太阳能供电系统的家庭用电负荷分解系统与分解方法 Download PDF

Info

Publication number
CN110852655A
CN110852655A CN201911211395.9A CN201911211395A CN110852655A CN 110852655 A CN110852655 A CN 110852655A CN 201911211395 A CN201911211395 A CN 201911211395A CN 110852655 A CN110852655 A CN 110852655A
Authority
CN
China
Prior art keywords
data
load
layer
long
neural network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911211395.9A
Other languages
English (en)
Other versions
CN110852655B (zh
Inventor
王俊年
孙嘉轩
于文新
廖璟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan University of Science and Technology
Original Assignee
Hunan University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hunan University of Science and Technology filed Critical Hunan University of Science and Technology
Priority to CN201911211395.9A priority Critical patent/CN110852655B/zh
Publication of CN110852655A publication Critical patent/CN110852655A/zh
Application granted granted Critical
Publication of CN110852655B publication Critical patent/CN110852655B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06315Needs-based resource requirements planning or analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/06Energy or water supply

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Economics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Strategic Management (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Public Health (AREA)
  • Water Supply & Treatment (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Primary Health Care (AREA)
  • Educational Administration (AREA)
  • Development Economics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种带有太阳能供电系统的家庭用电负荷分解方法,包括以下步骤:对数据集的数据进行预处理;将预处理后的数据分为训练数据和测试数据;将训练数据送入到长短期记忆‑循环神经网络,对长短期记忆‑循环神经网络进行训练;将测试数据送入训练好的长短期记忆‑循环神经网络,得到测试结果;评价长短期记忆‑循环神经网络的性能。本发明通过可变输入双向双层LSTM循环神经网络来负荷分解与监测流入太阳能的总功率和激活负荷的功率消耗、操作模式,此方法能有效监测输变电设备已无法承载更多负荷等难题,能使住宅用户知晓不同时段内各种用电负荷的电能使用情况,根据电力公司相应的政策,达到节能降耗、促进电网建设的目的。

Description

带有太阳能供电系统的家庭用电负荷分解系统与分解方法
技术领域
本发明涉及家庭用电领域,特别涉及一种带有太阳能供电系统的家庭用电负荷分解系统与分解方法。
背景技术
随着人们环保意识的增强和政府各项政策的帮助扶持,可再生能源(太阳能光伏、和风能等)发电逐渐增加,有效促进了电力需求侧管理(DSM)的许多应用。但是光伏、风力系统的输出功率极易受环境因素的影响,大规模并网后会对电网造成冲击,所以保持发电和负荷需求之间的逐秒平衡已成为一项具有挑战性的任务,除非使用昂贵的储电服务才可实现电网优化调度和稳定运行。为了避免使用昂贵的储电服务,可引用需求响应(DR)的DSM应用,也称为直接负载控制(DLC)来节省费用,此应用可以在最小储电服务的同时有效利用资源发电,原理是通过DLC改变或减少功率消耗来调整DR值,同时也可通过估算太阳能流入住宅中可用DR值来最小化分配损失。为实现最小化分配损失,有必要监测到家庭内每个负荷的功率消耗,可采用居民电力负荷检测技术(Appliance Load Monitoring,ALM)。
ALM无论在供给侧能源管理还是DSM中都将发挥非常重要的作用,利用ALM可以为用户提供单个用电设备的电能消耗清单,并以此为依据为用户制定个性化节能用电方案,研究表明基于详细的电器消费信息定制的节能方案可以节省超过12%的电能;并且此技术还可以对家庭故障电器进行远程识别和报警,防止故障扩大化;电力公司也可采用此技术对居民电力负荷进行准确预测、合理调度,保证电网安全运行。
ALM分为两大类:非侵入式电力负荷分解方法(NILM)以及侵入式电力负荷分解(ILM)方法。ILM方法是比较传统的方法,造价太昂贵,并且这种方法也很难泛化。因此,研究人员想到了另一种替代方法:NILM方法,它只需入户电表提供一些特征信息(如提供家庭入户电表的总信号信息),再利用算法来估计出每个电器的电能消耗,它的优点是不需要在每个电器上安装各种监测装置,降低了成本,并且随着目前智能电表的广泛使用,这种方法有了数据支撑,基本不影响用户生活。另外,使用ILM方法还有一个弊端,若是想要利用ILM方法的DLC去了解DR活动是需要具有高带宽的双向通信链路,因为它需将不同传感器测量到的负荷消耗功率值一同发送到智能电表上。但使用NILM方法只需具有低带宽的单向链路就能完成,还可将NILM方法载入到智能电表中来检测设备和故障,提高整体的安全性。
在当前的NILM领域中,很少考虑将太阳能电池板安装在居民区中,同时能准确地分解与监测家庭激活负载的运行模式和功耗以及太阳能流入量,也很少有模型能够准确地负荷分解与监测各个负荷的有功功率消耗和在给定时间内监测打开设备和每个打开设备的操作模式和功率消耗水平,若是这一处理无法实现,则无法了解到当前的DR值,运营商就无法计算经济调度,提供保持最低能量储备服务的方案。
发明内容
为了解决上述技术问题,本发明提供一种结构简单的带有太阳能供电系统的家庭用电负荷分解系统,并提供一种算法简单的分解方法。
本发明解决上述问题的技术方案是:一种带有太阳能供电系统的家庭用电负荷分解系统,包括数据预处理模块,用于对数据集进行保存、抽取和分类;数据生成模块,数据生成模块与数据预处理模块相连,用于将数据预处理模块输出的数据分为训练数据和测试数据;长短期记忆-循环神经网络,记为LSTM-RNN,用于定义长短期记忆-循环神经网络的结构、参数、超参数;网络训练模块,网络训练模块与数据生成模块、长短期记忆-循环神经网络相连,网络训练模块将数据生成模块的练数据送入长短期记忆-循环神经网络进行训练,并保存训练后的模型;家庭智能电表数据分解模块,家庭智能电表数据分解模块与网络训练模块相连,用于收集总电表数据,并通过长短期记忆-循环神经网络输出电表数据的分解结果。
上述带有太阳能供电系统的家庭用电负荷分解系统,所述数据预处理模块包括数据分类子模块、数据抽取子模块、数据保存子模块;数据分类子模块包括对数据集中每个家庭中电器的分类和训练集、测试集的分类;数据抽取子模块利用NILMTK工具包得到三种数据:目标电器数据、辅助电器数据、总电表数据,然后将三种数据保存入csv文件,以待后续使用,辅助电器是指除了目标电器之外的其他大功率电器。
上述带有太阳能供电系统的家庭用电负荷分解系统,所述数据生成模块对预处理后的数据进行转换,将其转换成适合于长短期记忆-循环神经网络输入的二维数据,其中转换的文件包括目标电器文件、辅助电器文件和总电表功率文件;再对数据进一步处理,得到作为长短期记忆-循环神经网络输入的数据集,数据集分为训练集和测试集。
上述带有太阳能供电系统的家庭用电负荷分解系统,所述长短期记忆-循环神经网络包括参数及超参数定义子模块、长短期记忆-循环神经网络结构定义子模块;长短期记忆-循环神经网络的定义默认为六层,第一层为输入层,第二层为第一全连接层,第三层为第一双向LSTM层,第四层为第二双向LSTM层,第五层为第二全连接层,第六层为输出层。
一种带有太阳能供电系统的家庭用电负荷分解方法,包括以下步骤:
步骤一:利用数据预处理模块对数据集的数据进行预处理;
步骤二:将预处理后的数据送入数据生成模块,数据生成模块将数据分为训练数据和测试数据;
步骤三:将训练数据送入到长短期记忆-循环神经网络,网络训练模块对长短期记忆-循环神经网络进行训练,并保存训练后的模型;
步骤四:将测试数据送入训练好的长短期记忆-循环神经网络,得到测试结果;
步骤五:评价长短期记忆-循环神经网络的性能。
上述带有太阳能供电系统的家庭用电负荷分解方法,所述步骤一中,数据预处理的过程包括数据获取、根据真实数据生成实验数据、测试负荷的选择、提取用电负荷激活、提取样本数据;其中:
数据获取:采用2014年发布的UK-DALE公开数据集与kaggle官网上下载的公开太阳能数据集作为源数据进行实验;
根据真实数据生成实验数据:由于公开数据集UK-DALE提供家庭数据中没有太阳能板的发电量,采用numpy和pandas将UK-DALE数据集与太阳能数据集进行叠加拟合成网络所需要的输入数据格式,numpy和pandas是python中用于处理数据的两个库;
测试负荷的选择:选择数据集中4种电器作为研究对象:太阳能板、冰箱、洗衣机和洗碗机,这4种电器具有不同复杂性和不同工作周期,并且消耗了整个住宅中的大部分能量;
提取用电负荷激活:超过负荷运行完整周期内的消耗数据表示为一个负荷激活,利用NILMTK工具包提取每个住宅内的负荷激活,NILMTK工具包是一个用于NILM领域的开源工具包,此处用到的是get_activations()函数,此函数可得到数据集中目标负荷为激活状态的所有功率序列;
提取样本数据:数据在输入LSTM-RNN之前被转换为一致的输入格式,每个样本都分段成恒定的宽度M,为1*M的向量,也将此称为窗口,窗口宽度表示LSTM-RNN网络输入的大小,由采样点来定义窗口宽度,采样时间为6s;
获得窗口样本的方式是在一定时间内滑动采样窗口,从数据中提取正负样本,所谓正样本表示包含负荷激活的数据集,占总样本数据的50%,其生成方式为:首先查找负荷的激活状态,然后使用数据采样窗口仅采集包含一个完整激活的数据,并随机滑动复制;而负样本表示不包括任何负荷激活的数据集,其生成方式为:随机选择一个窗口,仅采样不包含目标负荷激活的数据,占总样本数据的25%;随机选择一个窗口,仅采样不包含目标负荷激活但其他负荷激活的数据,占总样本数据的25%。
上述带有太阳能供电系统的家庭用电负荷分解方法,所述步骤二中,数据生成模块进行数据组合与标准化,在合成所有数据之后,把它们分为训练集和测试集,训练集与测试集应该包含正负样本,包含目标负荷所有的可能状态,并且在用于网络训练之前,对数据进行归一化处理。
上述带有太阳能供电系统的家庭用电负荷分解方法,所述步骤三中,长短期记忆-循环神经网络为可变输入双向双层长短期记忆-循环神经网络,在长短期记忆-循环神经网络中,细胞状态ct代表长期记忆,ct会随着不同的时刻传递下去,在t时刻时,输入数据Xt以及之前时间步中传递下来的隐藏状态和记忆状态,经过门机制进行状态更新,得到新的隐藏状态和记忆状态并继续传递下去,LSTM中保存的历史信息受输入门、遗忘门和输出门控制,计算公式如下:
it=σ(Wi·[ht-1,xt]+bi) (1)
ft=σ(Wf·[ht-1,xt]+bf) (2)
Figure BDA0002296021630000061
ot=σ(Wo·[ht-1,xt]+b0) (4)
Figure BDA0002296021630000062
Figure BDA0002296021630000063
其中,xt是t时刻的输入数据,ht是t时刻LSTM单元的输出状态值,
Figure BDA0002296021630000064
是t时刻记忆单元的候选值,ct是t时刻记忆单元的状态值,it是输入门t时刻的状态值,ft是遗忘门t时刻的状态值,ot是输出门t时刻的状态值,Wi、Wf、Wc、Wo分别为输入门、遗忘门、记忆单元、输出门的权值,bi、bf、bc、b0为分别为输入门、遗忘门、记忆单元、输出门的偏置参数,σ为激活函数,tanh表示双曲函数,
Figure BDA0002296021630000065
表示元素间的点积,逐点相乘,记忆单元的状态值由输入门和遗忘门共同调节;
双向双层长短期记忆-循环神经网络中的隐藏状态ht表示为:
Figure BDA0002296021630000066
其中分别是在t时刻LSTM中输入数据的前向和后向的隐藏状态,表示整合操作。
上述带有太阳能供电系统的家庭用电负荷分解方法,所述步骤四中,长短期记忆-循环神经网络的算法步骤为:
第一步:初始化神经单元的细胞状态C0和h0,将预处理后的数据输入第一全连接层,输入形式为每个时间步输入一段数据;
第二步:将第一全连接层输出的数据,输入到第一双向LSTM层的神经元,并进行dropout处理后输出数据;
第三步:按照式(1)、式(2)、式(3)和式(5),分别计算出当前神经单元的遗忘门状态ft、输入门状态it、记忆单元的候选值
Figure BDA0002296021630000071
输出门状态ot
第四步:根据式(4),计算当前神经单元的记忆状态值ct
第五步:根据式(6),计算当前神经单元的输出值ht
第六步:保留ct和ht,并使用到下一时刻的LSTM神经单元计算中;
第七步:重复第三步-第六步,直到向前层、向后层的LSTM神经单元均学习完全部的时间序列,根据式(4)和正、反向神经单元最后的输出
Figure BDA0002296021630000072
计算出ht,进入下一层双向LSTM;
第八步:重复以上步骤,直到第二层双向LSTM层输出非线性数据特征值;
第九步:进入第二全连接层部分,对非线性数据特征进行加权计算,得到隐含层的输出值;
第十步:将隐含层的输出值,输入到输出层,得到预测值yi′。
上述带有太阳能供电系统的家庭用电负荷分解方法,所述步骤五中,对深度学习网络所使用的评价指标包括:F1、精确率precision、召回率recall、准确率accuracy、总功率相对误差relative error in total energy、平均绝对误差mean absolute error,具体计算方法分别如下所示:
Figure BDA0002296021630000081
Figure BDA0002296021630000082
Figure BDA0002296021630000083
Figure BDA0002296021630000085
Figure BDA0002296021630000086
式中,F1为F1分数,PRE为精确率precision的缩写,即表示精确率precision;RE为召回率recall的缩写,即表示召回率recall;
Figure BDA0002296021630000087
与yt分别表示负荷在时间t的真实消耗功率与预测的消耗功率;TP表示负荷在真实数据中打开而在预测中也是打开时的总数;FP表示负荷在真实数据中关闭而在预测中打开时的总数;TN表示负荷在真实数据中关闭而在预测中也是关闭时的总数;FN表示负荷在真实数据中打开而在预测中关闭时的总数;
Figure BDA0002296021630000088
表示训练误差值;E表示真实误差值;P表示真实数据中负荷打开的总数;N表示真实数据中负荷关闭的总数,T表示周期。
本发明的有益效果在于:
1、本发明通过可变输入双向双层LSTM(Long Short-Term Memory,长短期记忆网络)循环神经网络来负荷分解与监测流入太阳能的总功率(太阳能板被视为负功耗设备)和激活负荷的功率消耗、操作模式,此方法能有效监测输变电设备已无法承载更多负荷等难题,能使住宅用户知晓不同时段内各种用电负荷的电能使用情况,根据电力公司相应的政策,达到节能降耗、促进电网建设的目的。
2、本发明对LSTM-RNN的输入形式进行改进,将最初一个时间步的逐个输入改为将时间步分段输入,可减少时间步上的迭代次数,从而可有效缓解在长时间序列上的梯度消失和梯度爆炸的影响能提高网络对复杂状态电器负荷分解与监测的效率和准确率。
3、本发明对数据进行预处理,这样可避免网络无法拟合数据,使网络能够更加准确的预测目标负荷的功率消耗,达到更好的效果。
4、本发明通过实施例结果可得知可变输入双向双层LSTM-RNN是一种具有较好的负荷分解与监测性能的网络,同时也具有较强的抗干扰性,即使对复杂情形下的负荷进行分解与监测也能具有较好的效果。
5、本发明提出的分解方法能准确识别住宅内单个负荷的功率消耗,并且能知晓太阳能对住宅内总有功功率消耗的贡献。这具有重要的实际意义,电网运营商不愿使用DLC正是因为难以估计可用的DR量,但通过本发明所提出的方法能使电网运营商得到估计的家用负荷功率和总太阳能功率,从而可促进电网运营商考虑DLC而减少使用昂贵的储备服务。
附图说明
图1是本发明的分解系统的模块图。
图2是本发明的分解方法的运行流程图。
图3是改进输入形式的LSTM-RNN前后对比示意图。
图4是可变输入双向双层LSTM-RNN模型构建示意图。
图5是Dropout原理示意图。
图6是数据抽取方案示意图。
图7是预测太阳能功率消耗的可变输入LSTM网络示意图。
图8是全天内流入家庭的的净功率流量示意图。
图9是全天内太阳能、冰箱、洗衣机和洗碗机负荷分解与监测的结果图。
图10是负荷分解与监测评价指标比较示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明。
如图1所示,一种带有太阳能供电系统的家庭用电负荷分解系统,包括数据预处理模块,用于对数据集进行保存、抽取和分类;数据生成模块,数据生成模块与数据预处理模块相连,用于将数据预处理模块输出的数据分为训练数据和测试数据;长短期记忆-循环神经网络,记为LSTM-RNN,用于定义长短期记忆-循环神经网络的结构、参数、超参数;网络训练模块,网络训练模块与数据生成模块、长短期记忆-循环神经网络相连,网络训练模块将数据生成模块的练数据送入长短期记忆-循环神经网络进行训练,并保存训练后的模型;家庭智能电表数据分解模块,家庭智能电表数据分解模块与网络训练模块相连,用于收集总电表数据,并通过长短期记忆-循环神经网络输出电表数据的分解结果。
数据预处理模块:包括数据分类子模块、数据抽取子模块、数据保存子模块;数据分类子模块包括对数据集中每个家庭中电器的分类和训练集、测试集的分类;数据抽取子模块利用NILMTK工具包得到三种数据:目标电器数据(需要判断在一段指定时间内是否在使用的电器,本发明可选取多个目标电器)、辅助电器数据(为了让目标电器的识别率更高,所需要的其他大功率电器)、总电表数据(电表的功率读数),然后将三种数据保存入csv文件,以待后续使用。需要注意的是,辅助电器是指除了目标电器之外的其他大功率电器,例如冰箱,洗衣机,洗碗机等,对于每一个辅助电器,都需要生成对应的数据文件。
数据生成模块:对预处理后的数据进行转换,将其转换成适合于长短期记忆-循环神经网络输入的二维数据,其中转换的文件包括目标电器文件、辅助电器文件和总电表功率文件;再对数据进一步处理,得到作为长短期记忆-循环神经网络输入的数据集,数据集分为训练集和测试集需要分开生成,该模块中对于训练集和测试集比例的划分使用者可以自主选择,家庭电表数据量一般都比较大,超过几十万条,建议以99:1来设置;再对多个目标电器某一时间段对应的状态赋值0或1(1表示期间在使用,0表示未在使用),最后再将数据输入tensorflow进行训练和测试。
长短期记忆-循环神经网络:负责LSTM-RNN的定义及搭建,包括参数及超参数定义子模块、长短期记忆-循环神经网络结构定义子模块;长短期记忆-循环神经网络可由使用者自行修改,例如增加网络层数和每层单元数等,以更好的适应自己的数据集的训练。如图4所示,长短期记忆-循环神经网络的定义默认为六层,第一层为输入层(长度依据电器不同而设置不同),第二层为第一全连接层(单元数:128,激活函数:线性),第三层为第一双向LSTM层(单元数:128,加dropout),第四层为第二双向LSTM层(单元数:256,加dropout),第五层为第二全连接层(长度和输入长度相同,激活函数:线性,主要用于负荷分解),第六层为输出层(长度和输入长度相同)。双向LSTM部分由两层双向LSTM组成,为了实现数据的深层次特征挖掘,将两个双向LSTM层叠加起来,通过双层神经网络结构来学习时间序列的深层特征。除了添加双向LSTM层以外,还可以添加全连接层(fully connected layers,FC),全连接层具有良好的非线性映射能力,能对双向LSTM输出的非线性特征进行加权处理,即对这些非线性特征进行组合。但是,随着网络层的增加,模型的训练难度增加、收敛速度变慢,容易出现过拟合等问题,因此使用Dropout策略来解决这些问题。
网络训练模块:该模块主要负责对输入数据进行LSTM-RNN网络的训练并保存网络模型,以便后续预测使用,并且还需读取训练好的网络模型,并对测试集进行测试,输出测试的精确度。
家庭智能电表数据分解模块:该模块负责对输入数据(实际用户的总电表数据)进行分解,通过双向双层LSTM-RNN来输出电表数据的分解结果,可输出各个电器的使用情况和功率消耗值。
如图2所示,一种带有太阳能供电系统的家庭用电负荷分解方法,包括以下步骤:
步骤一:利用数据预处理模块对数据集的数据进行预处理。
本发明对每个目标负荷进行训练,网络的输出是目标负荷的功率需求,每个网络的输入是一个窗口的总功率需求,其窗口的宽度因负荷而异,任意增加或减小窗口的宽度会有损负荷分解与监测的性能。另一方面,确保足够宽度的窗口获取大部分的负荷激活是十分重要的,因此要对所选择的数据集进行预处理。
数据预处理的过程包括数据获取、根据真实数据生成实验数据、测试负荷的选择、提取用电负荷激活、提取样本数据;其中:
数据获取:训练可变输入双向双层LSTM-RNN网络的非侵入式负荷分解与监测需要较高分辨率的负荷功率消耗信息,采用2014年发布的UK-DALE公开数据集与kaggle官网上下载的公开太阳能数据集作为源数据进行实验;
根据真实数据生成实验数据:由于公开数据集UK-DALE提供家庭数据中没有太阳能板的发电量,采用numpy和pandas将UK-DALE数据集与太阳能数据集进行叠加拟合成网络所需要的输入数据格式,numpy和pandas是python中用于处理数据的两个库;需要注意的是,太阳能板属于负有功功率消耗的单独设备,总有功功率等于同一时间内所有开启设备的总有功功率消耗减去流入太阳能板的有功功率,所以当家庭中太阳能的发电功率大于负荷的消耗功率时,总功率的数值会呈现负值现象,这属于正常现象。
测试负荷的选择:选择数据集中4种电器作为研究对象:太阳能板、冰箱、洗衣机和洗碗机,这4种电器具有不同复杂性和不同工作周期,并且消耗了整个住宅中的大部分能量;如太阳能板基本每天都会工作,输出功率极易受环境因素影响,具有高度间歇性、波动性和不确定性;而冰箱、洗衣机、洗碗机在家用电器中均属于复杂电器,具有不同档位操作和较长工作时间。循环神经网络应用于电力负荷分解时,对复杂状态电器负荷分解与监测的准确率总是不高,若是本发明所提出的方法能提高对复杂状态电器分解与监测的准确率,则对减少能量消耗会具有重要意义,也能满足本发明的提出目的。
提取用电负荷激活:超过负荷运行完整周期内的消耗数据表示为一个负荷激活,利用NILMTK工具包提取每个住宅内的负荷激活,NILMTK工具包是一个用于NILM领域的开源工具包,此处用到的是get_activations()函数,此函数可得到数据集中目标负荷为激活状态的所有功率序列;由于每个负荷都有自己的激活模式,因此用于提取不同负荷的激活参数各不相同,提取负荷激活参数详细设置如表1,而太阳能是不存在严重数据不均衡的问题,所以不需要用get_activation()函数进行处理。
表1负荷参数设置
Figure BDA0002296021630000141
提取样本数据:数据在输入LSTM-RNN之前应该被转换为一致的输入格式,每个样本都分段成恒定的宽度M,为1*M的向量,也将此称为窗口,窗口宽度表示LSTM-RNN网络输入的大小,由采样点来定义窗口宽度,采样时间为6s;对于负荷分解与监测结构最好的选择是不同的负荷选择不同的窗口,如果对给定负荷的窗口宽度设置较大,则会损害负荷分解与监测的性能同时也会增加学习的难度,但窗口宽度的设置也不应太小,它必须能提取到完整的负荷激活。
如图6所示,为样本抽取方式。获得窗口样本最直接的方式是在足够的时间内滑动采样窗口,从数据中提取正负样本,所谓正样本表示包含负荷激活的数据集,占总样本数据的50%,其生成方式为:首先查找负荷的激活状态,然后使用数据采样窗口仅采集包含一个完整激活的数据,并随机滑动复制,随机滑动的目的是为了使数据具有泛化性,复制的目的是为了增加负荷激活的数量,防止深度LSTM-RNN网络模型过度拟合;而负样本表示不包括任何负荷激活的数据集,其生成方式为:随机选择一个窗口,仅采样不包含目标负荷激活的数据,占总样本数据的25%;随机选择一个窗口,仅采样不包含目标负荷激活但其他负荷激活的数据,占总样本数据的25%。
步骤二:将预处理后的数据送入数据生成模块,数据生成模块将数据分为训练数据和测试数据。
数据生成模块进行数据组合与标准化,在合成所有数据之后,把它们分为训练集和测试集,训练集与测试集应该包含正负样本,包含目标负荷所有的可能状态,这样才能够区分具有相似特征的负荷,预测出较为正确的目标负荷功率需求的曲线。并且在用于网络训练之前,对数据进行归一化处理,,如果数据没有处理好,再优秀的网络也无法达到所需的效果,所以本发明采用的是较为简单的线性函数归一化,公式如下:
Figure BDA0002296021630000151
实验结果证明这种较为简单的归一化方式也能达到较好的效果,实验时家庭中每个负荷功率峰值和低谷如表2。
表2负荷最高/最低功率
Figure BDA0002296021630000152
在用线性函数归一化进行训练时,最高功率可以选取为多者功率的最高值,最低功率可以选取为多者功率的最低值,统一起见,对每个家用负荷归一化时Xmin为0,Xmax为4000,而对太阳能的归一化时Xmin为0,Xmax为9000,这是对于网络输出标签的归一化,但输出标签的归一化并不是必要条件;输入总电表功率的归一化才是必要条件,总电表功率的峰值不超过9000瓦,因此对输入功率的归一化时Xmin:0,Xmax:9000。
步骤三:将训练数据送入到长短期记忆-循环神经网络,网络训练模块对长短期记忆-循环神经网络进行训练,并保存训练后的模型。
本发明选择的网络为可变输入双向双层的LSTM-RNN,在时间序列中,对于某一时间点的数据来说,除了过去时刻的数据与其相关联外,未来时刻的数据对其同样具有影响力。双向LSTM网络具有的优势是,可以利用时间序列上向前、向后两个时间方向的上下文关系,来学习对时间有长期依赖性的信息,也可回避LSTM在长时间序列上的梯度消失和梯度爆炸问题,并且若将两个双向LSTM层叠加起来,能更好的学习时间序列的深层特征,实现数据深层次的特征挖掘。但当时间步过多的时候,梯度消失的影响会显著增加,为此需减少时间步的迭代,将输入形式由原来的每个时间步输入一个数据改为每个时间步输入一段数据,这样的改进不仅可以减少梯度消失的影响,还可以提高网络对太阳能和复杂状态负荷分解与监测的效率和准确率,因此本发明选用可变输入双向双层LSTM-RNN网络。
长短期记忆-循环神经网络为可变输入双向双层长短期记忆-循环神经网络,在长短期记忆-循环神经网络中,细胞状态ct代表长期记忆,ct会随着不同的时刻传递下去,在t时刻时,输入数据Xt以及之前时间步中传递下来的隐藏状态和记忆状态,经过门机制进行状态更新,得到新的隐藏状态和记忆状态并继续传递下去,LSTM中保存的历史信息受输入门、遗忘门和输出门控制,计算公式如下:
it=σ(Wi·[ht-1,xt]+bi) (1)
ft=σ(Wf·[ht-1,xt]+bf) (2)
Figure BDA0002296021630000161
ot=σ(Wo·[ht-1,xt]+b0) (4)
Figure BDA0002296021630000162
其中,xt是t时刻的输入数据,ht是t时刻LSTM单元的输出状态值,
Figure BDA0002296021630000164
是t时刻记忆单元的候选值,ct是t时刻记忆单元的状态值,it是输入门t时刻的状态值,ft是遗忘门t时刻的状态值,ot是输出门t时刻的状态值,Wi、Wf、Wc、Wo分别为输入门、遗忘门、记忆单元、输出门的权值,bi、bf、bc、b0为分别为输入门、遗忘门、记忆单元、输出门的偏置参数,σ为激活函数,tanh表示双曲函数,
Figure BDA0002296021630000171
表示元素间的点积,逐点相乘,记忆单元的状态值由输入门和遗忘门共同调节;
双向双层长短期记忆-循环神经网络中的隐藏状态ht表示为:
Figure BDA0002296021630000172
其中
Figure BDA0002296021630000173
分别是在t时刻LSTM中输入数据的前向和后向的隐藏状态,
Figure BDA0002296021630000174
表示整合操作。
优化好的网络需达到的要求是:一,当目标负荷在激活时间段,网络的输出波形要尽可能逼近真实负荷的激活波形。二,当目标负荷未在激活时间段,网络的输出波形要尽可能逼近真实负荷的待机功率波形。三,当目标负荷未激活,但其他大功率负荷在激活的时间段,网络要尽可能识别出这不是目标负荷使用造成的总功率增加。
步骤四:将测试数据送入训练好的长短期记忆-循环神经网络,得到测试结果。
长短期记忆-循环神经网络的算法步骤为:
第一步:初始化神经单元的细胞状态C0和h0,将预处理后的数据阱输入层后输入第一全连接层,输入形式为每个时间步输入一段数据;
第二步:将第一全连接层输出的数据,输入到第一双向LSTM层的神经元,并进行dropout处理后输出数据;
第三步:按照式(1)、式(2)、式(3)和式(5),分别计算出当前神经单元的遗忘门状态ft、输入门状态it、记忆单元的候选值
Figure BDA0002296021630000175
输出门状态ot
第四步:根据式(4),计算当前神经单元的记忆状态值ct
第五步:根据式(6),计算当前神经单元的输出值ht
第六步:保留ct和ht,并使用到下一时刻的LSTM神经单元计算中;
第七步:重复第三步-第六步,直到向前层、向后层的LSTM神经单元均学习完全部的时间序列,根据式(4)和正、反向神经单元最后的输出
Figure BDA0002296021630000181
Figure BDA0002296021630000182
计算出ht,进入下一层双向LSTM;
第八步:重复以上步骤,直到第二层双向LSTM层输出非线性数据特征值;
第九步:进入第二全连接层部分,对非线性数据特征进行加权计算,得到隐含层的输出值;
第十步:将隐含层的输出值,输入到输出层,得到预测值yi′。
如图5所示,随着网络层的增加,模型的训练难度增加、收敛速度变慢,容易出现过拟合等问题,因此使用Dropout策略来解决这些问题。Dropout的原理图如5所示,左图为标准的神经网络,右图为采用了Dropout技术的神经网络。Dropout在训练时会让一定比例的隐含层节点失效,这个过程中对失效节点的选择是完全随机的,比例大概在0.5上下调整。如左右图对比所示,左图中所有节点的权重在训练中都会更新,而右图中大约有一半节点的权重没有更新,因此Dropout的原理直观来说就是在训练网络时,以预先设置的概率停止神经单元的输出,部分神经单元的“罢工”意味着每次的网络训练只有一部分数据特征参与,从而防止网络过多地学习训练集的数据特征,这项技术能在模型出现拟合的情况下使用,能大幅度提升准确率,増强系统的质量,达到防止过拟合的目的。
如图3所示,本发明对双向双层LSTM-RNN的输入形式的改进是由原来的每个时间步输入一个数据(如图3a)改为每个时间步输入一段数据(如图3b),这样的改进不仅可以减少梯度消失的影响,还可以提高网络负荷分解与监测的效率和准确率。
为验证改变LSTM-RNN的输入形式会提高网络负荷分解与监测的效率和准确率的假设,在此用实施例1来进行验证说明。进行实验的原因是考虑到不同负荷预测网络的输入长度会不一样,复杂状态的负荷输入序列一般会较长,如冰箱有600个输入功率值,洗衣机和洗碗机都有1300个输入功率值,根据需考虑太阳能流入量的实时性将太阳能设为600个输入功率值。所以LSTM-RNN在时间步上分别迭代了600次、1300次、1300次、600次,可初步假设是因为在LSTM-RNN的时间步上迭代次数过多,才导致网络对复杂状态负荷预测效果不够好。为了证实假设的正确,特意进行MNIST手写数字识别数据集的实验,MNIST是一个拥有50000张训练集图片的数据集,里面共有0到9这10种手写数字图片,每张像素为28*28。如果用LSTM-RNN来进行手写数字识别,将LSTM-RNN的每个时间步输入一行像素,共输入28行,在只有CPU的计算机上几秒钟就可以达到95%以上的识别准确率;但如果每个时间步输入一个像素值,共输入28*28个时间步,网络几乎不能训练。所以实施例1证明输入形式确实大大影响了LSTM-RNN网络的效果。基于上面的简单实验,采取对LSTM-RNN网络的输入形式进行改进,设置参数如表3所示,如太阳能将原先激活时总有功功率600个点依次输入,改为每步输入30个点分20步输入LSTM-RNN。
表3 LSTM-RNN网络输入形式设置
Figure BDA0002296021630000191
步骤五:评价长短期记忆-循环神经网络的性能。
对深度学习网络所使用的评价指标包括:F1、精确率precision、召回率recall、准确率accuracy、总功率相对误差relative error in total energy、平均绝对误差meanabsolute error,具体计算方法分别如下所示:
Figure BDA0002296021630000202
Figure BDA0002296021630000204
Figure BDA0002296021630000205
Figure BDA0002296021630000206
式中,F1为F1分数,PRE为精确率precision的缩写,即表示精确率precision;RE为召回率recall的缩写,即表示召回率recall;
Figure BDA0002296021630000207
与yt分别表示负荷在时间t的真实消耗功率与预测的消耗功率;TP表示负荷在真实数据中打开而在预测中也是打开时的总数;FP表示负荷在真实数据中关闭而在预测中打开时的总数;TN表示负荷在真实数据中关闭而在预测中也是关闭时的总数;FN表示负荷在真实数据中打开而在预测中关闭时的总数;
Figure BDA0002296021630000208
表示训练误差值;E表示真实误差值;P表示真实数据中负荷打开的总数;N表示真实数据中负荷关闭的总数,T表示周期。
如图7所示,是预测太阳能功率消耗的可变输入LSTM-RNN网络,LSTM-RNN输入的是一段时间的总功率序列,输出的是对应时段需要识别负荷的功率消耗序列。
如图8所示,是全天内流入家庭的净功率流量的曲线图,此曲线图能突出显示一天中从正值到负值的总功率波动。当功率处于正值时则说明住宅内有消耗功率、有负荷处于激活状态,而当功率处于负数时则说明太阳能流入的发电量大于住宅负荷激活时的消耗功率。由图可知凌晨0点到7点左右太阳能是没有发电的,住宅内不断的有负荷的激活;而到7点时有多个负荷激活,所以功率消耗马上增加;随后逐渐日出的升起,太阳能板可吸能造电,净功率曲线开始呈现下降的趋势;在7到12点之间间断有大功率负荷的使用,所以会出现长线的间断凸出;由图可得在10点左右,基本是发电功率与负荷消耗功率相等的时候;晌午12点左右是太阳能造电的最大功率时间点;后太阳能造电量逐渐减少所以净功率曲线呈上升趋势;而到16点左右时发电功率与负荷消耗功率开始达到平衡;16点后住宅内的功率消耗也逐渐增大,从净功率曲线可得知都是呈正值激活状态。所以若是想提高太阳能(可再生能源)在当代家庭中的高渗透率,NILM算法在正负净功率流下,能正确估算有功负荷的稳健性是至关重要的。
如图9所示,为实施例2,对太阳能、冰箱、洗衣机和洗碗机进行全天负荷分解与监测的结果图。
图9中(9a)为太阳能的负荷分解与监测的结果,由图可知可变输入双向双层LSTM-RNN对太阳能的估算基本拟合,并且也可得知在凌晨0到7点左右时太阳能板是无功率流入的,所以曲线一直在纵轴0W处呈直线状态;而在7点左右太阳能板开始吸能造电,吸能造电越大,所呈现的功率曲线越是会不断下降;随下降在晌午时期12点左右时达到最大的吸能造电功率点,即也就是全曲线的最低点;而随时间流逝吸能造电逐渐减少,所以在12到17点左右曲线呈上升趋势;至日落时17点左右太阳能板便不再吸能发电,所以曲线又呈纵轴0W的直线状态。由此可知太阳能的吸能造电完全是符合实际情况,日出时吸能造电,日落时停止造电。并且太阳能基本每天都进行工作,可实现长期缓解电力调度和缺电压力,再加之可变输入LSTM-RNN网络能达到较好的负荷分解与监测的效果,能正确得知住宅内大致每日会流入多少太阳能,如此便可同时降低供电成本和用电成本,使供电和用电双方都得到实惠。
图9中(9b)是对复杂负荷冰箱的负荷分解与监测结果,从图形可知在凌晨0到7点多左右冰箱都是低功耗运行,即使冰箱的功耗曲线不断波动但预测也基本准确;而在7点左右,冰箱的真实功率消耗突然增大,而在此突变本实施例2的网络未能预测出来的原因是,从图9全天的净功率流量可得知7点左右也是住宅内所有激活负荷消耗功率值的最高点,可见当其他负荷处于激活状态时,对本实施例2的网络预测目标负荷会存在一定的干扰作用,同理4、11、18点左右的突变网络未能预测出来的原因也是如此;但当突变减小,7到11点左右、之后12到15点、16到18点、20到23点即24点,冰箱又马上处于低功耗无规律运行,并且不同低功耗期间的曲线波动和工作周期也各不相同,但网络还是能较为拟合的预测出来。由图大体波动趋势可得知冰箱的真实功率消耗长时间处于低功耗状态,不同的低功耗状态,消耗功率和工作时间也会不同,并且不定期的会有功率消耗的突变,这与实际情况是一致的,因为使用冰箱时不同的操作会有不同的功率消耗,即使是未使用时冰箱也会根据自身需达到的功能与节能相结合输出特定的功率消耗曲线。所以由此可得知LSTM-RNN网络模型还是具有较好的抗干扰能力,即使随着冰箱功率消耗不断变化和其他负荷激活干扰本实施例2的网络,也能较为准确的进行估算。
图9中(9c)是对复杂负荷洗衣机的负荷分解与监测结果,由图可知从凌晨0到7点时洗衣机一直处于关机状态,位于纵轴为0W的功率消耗值,但本实施例2的网络预测产生波动的原因是在这一段时间内有其他负荷的激活,因此会产生一定的干扰作用,但总体趋势仍是在纵轴为0W左右小幅波动;7点左右是洗衣机在当天的首次激活,激活时长有2小时左右,从图形可得知,7点的突变,本实施例2的网络能很好地预测出趋势,并且突变后的功率也能较为准确的预测;后7到9点长达两小时的激活,功率消耗不断变化,本实施例2的网络的预测也十分拟合;9点时工作结束突变到纵轴0W,本实施例2的网络也可实时的预测出趋势,并下降到0W的真实值;后10、11、12点仍有小段时间的突变,是因为洗衣机有多种功能,不同功能的工作周期和功率消耗值也会不同,但从图形可得知无论是突变还是处于低功耗状态的9到10点、10到11点、11到12点、12点到18点,本实施例2的网络都能达到较好的估算结果;到18点后,洗衣机处于彻底不运行关机状态,本实施例2的网络也能很好的估算出来。由图形大体趋势可判断洗衣机是一个多状态电器,会有多次的起停状态,不同的档位所消耗的功率和时间也会不一样,这与实际生活也是完全符合的。所以即使对于有其他负荷激活的干扰和工作模式多变的复杂负荷洗衣机,LSTM-RNN网络也仍能具有较强的干扰能力和较为准确的负荷分解与监测的准确率。
图9中(9d)是对复杂负荷洗碗机的负荷分解与监测结果,由图可知凌晨0到7点时洗衣机一直处于关机状态,本实施例2的网络预测曲线产生波动的原因是由于其他负荷在此时间段的激活产生了干扰作用;9点左右是洗碗机在当天的首次激活,处于待机状态,消耗功率比较低,待机时长为2.5小时左右;到12点左右洗碗机开始工作,功率消耗突变增长,本实施例2的网络很好的预测出了上升趋势,但此处本实施例2的网络没有较为准确的预测出功率消耗值是因为,12点是太阳能在全天内最大发电量的点,所以网络对洗碗机预测的功率消耗值偏低了些,但洗碗机的工作时长,网络很准确的预测了出来;13点左右工作结束,13到19点都处于待机状态,本实施例2的网络也较为准确的预测出了趋势和功率消耗;而18点左右预测有些许突变,原因是在18点时由于其他大功率负荷的激活,对目标负荷洗碗机的预测产生了一定的干扰作用,但突变一会后网络便很好的恢复过来,可见本实施例2的网络的抗干扰性还是较强的;后在19点洗碗机开启了全天的第二次工作状态,长达2小时左右,网络都较为拟合的预测出了突变趋势、功率消耗和工作周期;随后到21点左右洗碗机工作结束处于关机状态,本实施例2的网络也很好的预测出了趋势和功率消耗;后21到24点一直处于纵轴为0W的功率消耗值。由图可知,无论是洗碗机处于关机、待机还是工作模式,网络都能较为准确的预测出来。
由上可得可变输入双向双层LSTM-RNN不仅能对太阳能进行较为准确的功率分解,还能对住宅中复杂负荷也有着较为准确的分解,所以可变输入双向双层LSTM-RNN是一种进行非侵入式电力负荷分解与监测任务较为可靠的网络。
如图10所示,是本实施例2的网络与2015年Kelly的LSTM-RNN方法和2018年Odysseas等人的滑动窗口方法进行了对比。Odysseas等人提出的以[t-w,t]时间段的总电表功率作为输入,预测t时刻目标电器功率的seq2point方法;Kelly的LSTM-RNN方法与本实施例2的方法的不同之处是未改进输入形式,3种方法负荷分解与监测评价指标比较如下图所示。
由图10中(10a)可得在F1分数上本实施例2的所提出网络F1分数都高于其他两种方法,特别是在太阳能的负荷分解与监测当中本实施例2的所提出网络F1分数为0.98高于seq2point的0.74;负荷冰箱本发明所提出网络的F1分数为0.78高于seq2point的0.53;负荷洗衣机、洗碗机本实施例2的所提出网络的F1分数为0.60和0.61也远高于Kelly的0.03与0.08。
由图10中(10b)可得在精确率上,负荷冰箱Kelly方法与负荷洗碗机seq2point方法的效果比本实施例2的所提出网络效果好,而在其它的负荷比较当中本实施例2的所提出网络精确率都高于其他两种方法,特别是在太阳能的负荷分解与监测当中本实施例2的所提出网络精确率为0.98高于seq2point的0.72;负荷洗衣机、洗碗机本实施例2的所提出网络的精确率为0.44和0.45也远高于Kelly的0.01与0.04。
由图10中(10c)可得在召回率上本实施例2的所提出网络召回率都高于其他两种方法,特别是对于负荷洗衣机、洗碗机本实施例2的所提出网络召回率为0.96和0.93均高于seq2point的0.55和0.43。
由图10中(10d)可得在准确率上,负荷洗衣机seq2point方法的效果比本实施例2的所提出网络效果好,而在其它的负荷比较当中本实施例2的所提出网络准确率都高于其他两种方法,特别是对于负荷洗衣机、洗碗机本实施例2的所提出网络准确率为0.94和0.99远高于Kelly的0.23和0.30。
由图10中(10e)可得在总功率相对误差上本实施例2的所提出网络总功率相对误差都低于其他两种方法,特别是对于负荷洗衣机和负荷洗碗机本实施例2的所提出网络总功率相对误差为0.08和0.10均低于Kelly的0.91和0.87,且本实施例2的所提出网络总功率相对误差的负荷太阳能只有0.01,负荷冰箱只有0.06。
由图10中(10f)可得在平均绝对误差上除了负荷洗碗机seq2point方法的效果比本实施例2的所提出网络效果好一点,但其余的本实施例2的所提出网络平均绝对误差都低于其他两种方法,特别是对于洗衣机和洗碗机本实施例2的所提出网络总功率相对误差为16W和22W均低于Kelly的109W和168W。
由图中对三种方法各评价指标的对比可以看出,本实施例2的提出的可变输入双向双层LSTM-RNN模型进行负荷功率分解比Kelly所用的LSTM循环神经网络效果更好,在对复杂状态负荷的功率预测效果上有极大提升;同时本实施例2的提出的网络架构与较新的seq2point形式的循环神经网络相比,也在多数指标上效果提升明显,所以可表明本实施例2的所提出的LSTM-RNN学习模型进行非侵入式住宅用电负荷分解与监测具有很好的效果,是一种进行非侵入式电力负荷分解与监测任务较为可靠的网络。

Claims (10)

1.一种带有太阳能供电系统的家庭用电负荷分解系统,其特征在于,包括数据预处理模块,用于对数据集进行保存、抽取和分类;数据生成模块,数据生成模块与数据预处理模块相连,用于将数据预处理模块输出的数据分为训练数据和测试数据;长短期记忆-循环神经网络,记为LSTM-RNN,用于定义长短期记忆-循环神经网络的结构、参数、超参数;网络训练模块,网络训练模块与数据生成模块、长短期记忆-循环神经网络相连,网络训练模块将数据生成模块的练数据送入长短期记忆-循环神经网络进行训练,并保存训练后的模型;家庭智能电表数据分解模块,家庭智能电表数据分解模块与网络训练模块相连,用于收集总电表数据,并通过长短期记忆-循环神经网络输出电表数据的分解结果。
2.根据权利要求1所述的带有太阳能供电系统的家庭用电负荷分解系统,其特征在于,所述数据预处理模块包括数据分类子模块、数据抽取子模块、数据保存子模块;数据分类子模块包括对数据集中每个家庭中电器的分类和训练集、测试集的分类;数据抽取子模块利用NILMTK工具包得到三种数据:目标电器数据、辅助电器数据、总电表数据,然后将三种数据保存入csv文件,以待后续使用,辅助电器是指除了目标电器之外的其他大功率电器。
3.根据权利要求2所述的带有太阳能供电系统的家庭用电负荷分解系统,其特征在于,所述数据生成模块对预处理后的数据进行转换,将其转换成适合于长短期记忆-循环神经网络输入的二维数据,其中转换的文件包括目标电器文件、辅助电器文件和总电表功率文件;再对数据进一步处理,得到作为长短期记忆-循环神经网络输入的数据集,数据集分为训练集和测试集。
4.根据权利要求3所述的带有太阳能供电系统的家庭用电负荷分解系统,其特征在于,所述长短期记忆-循环神经网络包括参数及超参数定义子模块、长短期记忆-循环神经网络结构定义子模块;长短期记忆-循环神经网络的定义默认为六层,第一层为输入层,第二层为第一全连接层,第三层为第一双向LSTM层,第四层为第二双向LSTM层,第五层为第二全连接层,第六层为输出层。
5.一种基于权利要求4中所述的非侵入式负荷分解系统的带有太阳能供电系统的家庭用电负荷分解方法,包括以下步骤:
步骤一:利用数据预处理模块对数据集的数据进行预处理;
步骤二:将预处理后的数据送入数据生成模块,数据生成模块将数据分为训练数据和测试数据;
步骤三:将训练数据送入到长短期记忆-循环神经网络,网络训练模块对长短期记忆-循环神经网络进行训练,并保存训练后的模型;
步骤四:将测试数据送入训练好的长短期记忆-循环神经网络,得到测试结果;
步骤五:评价长短期记忆-循环神经网络的性能。
6.根据权利要求5所述的带有太阳能供电系统的家庭用电负荷分解方法,其特征在于:所述步骤一中,数据预处理的过程包括数据获取、根据真实数据生成实验数据、测试负荷的选择、提取用电负荷激活、提取样本数据;其中:
数据获取:采用2014年发布的UK-DALE公开数据集与kaggle官网上下载的公开太阳能数据集作为源数据进行实验;
根据真实数据生成实验数据:由于公开数据集UK-DALE提供家庭数据中没有太阳能板的发电量,采用numpy和pandas将UK-DALE数据集与太阳能数据集进行叠加拟合成网络所需要的输入数据格式,numpy和pandas是python中用于处理数据的两个库;
测试负荷的选择:选择数据集中4种电器作为研究对象:太阳能板、冰箱、洗衣机和洗碗机,这4种电器具有不同复杂性和不同工作周期,并且消耗了整个住宅中的大部分能量;
提取用电负荷激活:超过负荷运行完整周期内的消耗数据表示为一个负荷激活,利用NILMTK工具包提取每个住宅内的负荷激活,NILMTK工具包是一个用于NILM领域的开源工具包,此处用到的是get_activations()函数,此函数可得到数据集中目标负荷为激活状态的所有功率序列;
提取样本数据:数据在输入LSTM-RNN之前被转换为一致的输入格式,每个样本都分段成恒定的宽度M,为1*M的向量,也将此称为窗口,窗口宽度表示LSTM-RNN网络输入的大小,由采样点来定义窗口宽度,采样时间为6s;
获得窗口样本的方式是在一定时间内滑动采样窗口,从数据中提取正负样本,所谓正样本表示包含负荷激活的数据集,占总样本数据的50%,其生成方式为:首先查找负荷的激活状态,然后使用数据采样窗口仅采集包含一个完整激活的数据,并随机滑动复制;而负样本表示不包括任何负荷激活的数据集,其生成方式为:随机选择一个窗口,仅采样不包含目标负荷激活的数据,占总样本数据的25%;随机选择一个窗口,仅采样不包含目标负荷激活但其他负荷激活的数据,占总样本数据的25%。
7.根据权利要求6所述的带有太阳能供电系统的家庭用电负荷分解方法,其特征在于:所述步骤二中,数据生成模块进行数据组合与标准化,在合成所有数据之后,把它们分为训练集和测试集,训练集与测试集应该包含正负样本,包含目标负荷所有的可能状态,并且在用于网络训练之前,对数据进行归一化处理。
8.根据权利要求7所述的带有太阳能供电系统的家庭用电负荷分解方法,其特征在于:所述步骤三中,长短期记忆-循环神经网络为可变输入双向双层长短期记忆-循环神经网络,在长短期记忆-循环神经网络中,细胞状态ct代表长期记忆,ct会随着不同的时刻传递下去,在t时刻时,输入数据Xt以及之前时间步中传递下来的隐藏状态和记忆状态,经过门机制进行状态更新,得到新的隐藏状态和记忆状态并继续传递下去,LSTM中保存的历史信息受输入门、遗忘门和输出门控制,计算公式如下:
it=σ(Wi·[ht-1,xt]+bi) (1)
ft=σ(Wf·[ht-1,xt]+bf) (2)
ot=σ(Wo·[ht-1,xt]+b0) (4)
Figure FDA0002296021620000042
Figure FDA0002296021620000043
其中,xt是t时刻的输入数据,ht是t时刻LSTM单元的输出状态值,
Figure FDA0002296021620000044
是t时刻记忆单元的候选值,ct是t时刻记忆单元的状态值,it是输入门t时刻的状态值,ft是遗忘门t时刻的状态值,ot是输出门t时刻的状态值,Wi、Wf、Wc、Wo分别为输入门、遗忘门、记忆单元、输出门的权值,bi、bf、bc、b0为分别为输入门、遗忘门、记忆单元、输出门的偏置参数,σ为激活函数,tanh表示双曲函数,
Figure FDA0002296021620000045
表示元素间的点积,逐点相乘,记忆单元的状态值由输入门和遗忘门共同调节;
双向双层长短期记忆-循环神经网络中的隐藏状态ht表示为:
其中分别是在t时刻LSTM中输入数据的前向和后向的隐藏状态,
Figure FDA0002296021620000053
表示整合操作。
9.根据权利要求8所述的带有太阳能供电系统的家庭用电负荷分解方法,其特征在于:所述步骤四中,长短期记忆-循环神经网络的算法步骤为:
第一步:初始化神经单元的细胞状态C0和h0,将预处理后的数据输入第一全连接层,输入形式为每个时间步输入一段数据;
第二步:将第一全连接层输出的数据,输入到第一双向LSTM层的神经元,并进行dropout处理后输出数据;
第三步:按照式(1)、式(2)、式(3)和式(5),分别计算出当前神经单元的遗忘门状态ft、输入门状态it、记忆单元的候选值
Figure FDA0002296021620000054
输出门状态ot
第四步:根据式(4),计算当前神经单元的记忆状态值ct
第五步:根据式(6),计算当前神经单元的输出值ht
第六步:保留ct和ht,并使用到下一时刻的LSTM神经单元计算中;
第七步:重复第三步-第六步,直到向前层、向后层的LSTM神经单元均学习完全部的时间序列,根据式(4)和正、反向神经单元最后的输出
Figure FDA0002296021620000055
Figure FDA0002296021620000056
计算出ht,进入下一层双向LSTM;
第八步:重复以上步骤,直到第二层双向LSTM层输出非线性数据特征值;
第九步:进入第二全连接层部分,对非线性数据特征进行加权计算,得到隐含层的输出值;
第十步:将隐含层的输出值,输入到输出层,得到预测值yi′。
10.根据权利要求9所述的带有太阳能供电系统的家庭用电负荷分解方法,其特征在于:所述步骤五中,对深度学习网络所使用的评价指标包括:F1、精确率precision、召回率recall、准确率accuracy、总功率相对误差relative error in total energy、平均绝对误差mean absolute error,具体计算方法分别如下所示:
Figure FDA0002296021620000061
Figure FDA0002296021620000062
Figure FDA0002296021620000063
Figure FDA0002296021620000064
Figure FDA0002296021620000066
式中,F1为F1分数,PRE为精确率precision的缩写,即表示精确率precision;RE为召回率recall的缩写,即表示召回率recall;
Figure FDA0002296021620000067
与yt分别表示负荷在时间t的真实消耗功率与预测的消耗功率;TP表示负荷在真实数据中打开而在预测中也是打开时的总数;FP表示负荷在真实数据中关闭而在预测中打开时的总数;TN表示负荷在真实数据中关闭而在预测中也是关闭时的总数;FN表示负荷在真实数据中打开而在预测中关闭时的总数;
Figure FDA0002296021620000068
表示训练误差值;E表示真实误差值;P表示真实数据中负荷打开的总数;N表示真实数据中负荷关闭的总数,T表示周期。
CN201911211395.9A 2019-11-29 2019-11-29 带有太阳能供电系统的家庭用电负荷分解系统与分解方法 Active CN110852655B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911211395.9A CN110852655B (zh) 2019-11-29 2019-11-29 带有太阳能供电系统的家庭用电负荷分解系统与分解方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911211395.9A CN110852655B (zh) 2019-11-29 2019-11-29 带有太阳能供电系统的家庭用电负荷分解系统与分解方法

Publications (2)

Publication Number Publication Date
CN110852655A true CN110852655A (zh) 2020-02-28
CN110852655B CN110852655B (zh) 2023-08-15

Family

ID=69607524

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911211395.9A Active CN110852655B (zh) 2019-11-29 2019-11-29 带有太阳能供电系统的家庭用电负荷分解系统与分解方法

Country Status (1)

Country Link
CN (1) CN110852655B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111342471A (zh) * 2020-03-02 2020-06-26 华北电力大学 一种基于机器学习的家庭产消者功率优化管理方法
CN111415270A (zh) * 2020-03-03 2020-07-14 浙江万胜智能科技股份有限公司 一种基于lstm学习的电力负荷智能识别方法
CN112487785A (zh) * 2020-12-14 2021-03-12 北京声智科技有限公司 基于rnn的语言模型的训练方法及相关装置
CN112613542A (zh) * 2020-12-14 2021-04-06 国网甘肃省电力公司营销服务中心 一种基于双向lstm的企业除污设备负荷辨识方法
CN112734137A (zh) * 2021-01-27 2021-04-30 国网电力科学研究院武汉能效测评有限公司 基于智能电表数据的短期楼宇电力负荷预测方法及系统
CN113011628A (zh) * 2020-12-14 2021-06-22 同济大学 基于拓扑结构和时间卷积网络的电力负荷预测方法
CN113094931A (zh) * 2021-04-29 2021-07-09 杭州电力设备制造有限公司 一种非侵入式负荷分解方法、装置及设备
CN113177636A (zh) * 2021-05-08 2021-07-27 中国电子科技集团公司第二十九研究所 一种基于多约束条件的网络动态路由方法及系统
CN113884809A (zh) * 2021-09-28 2022-01-04 国网黑龙江省电力有限公司 一种基于神经网络的二次设备故障定位方法及系统
CN113901726A (zh) * 2021-10-27 2022-01-07 国网西藏电力有限公司拉萨供电公司 基于seq2point模型的非侵入式负荷分解方法
CN115099349A (zh) * 2022-06-30 2022-09-23 国网江苏省电力有限公司信息通信分公司 一种非侵入式负荷实时分解方法及系统
CN116192665A (zh) * 2022-12-27 2023-05-30 中移动信息技术有限公司 数据处理方法、装置、计算机设备及存储介质
CN116361709A (zh) * 2023-03-31 2023-06-30 山东省计算中心(国家超级计算济南中心) 一种自适应电力负荷识别方法与设备
TWI810750B (zh) * 2021-12-20 2023-08-01 國立成功大學 太陽能發電預測方法
CN116663434A (zh) * 2023-07-31 2023-08-29 江铃汽车股份有限公司 一种基于lstm深度神经网络的整车载荷分解方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014113756A2 (en) * 2013-01-18 2014-07-24 Myenersave, Inc. Applications of non-intrusive load monitoring and solar energy disaggregation
US20150142347A1 (en) * 2013-11-15 2015-05-21 Rahul Mohan Solar Energy Disaggregation Techniques for Whole-House Energy Consumption Data
CN107122790A (zh) * 2017-03-15 2017-09-01 华北电力大学 基于混合神经网络和集成学习的非侵入式负荷识别算法
CN109685314A (zh) * 2018-11-20 2019-04-26 中国电力科学研究院有限公司 一种基于长短期记忆网络的非侵入负荷分解方法和系统
CN110188826A (zh) * 2019-05-31 2019-08-30 湖南科技大学 基于智能电表数据的家用电器运行状态非侵入式检测方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014113756A2 (en) * 2013-01-18 2014-07-24 Myenersave, Inc. Applications of non-intrusive load monitoring and solar energy disaggregation
US20140207298A1 (en) * 2013-01-18 2014-07-24 Abhay Gupta Applications of Non-Intrusive Load Monitoring and Solar Energy Disaggregation
US20150142347A1 (en) * 2013-11-15 2015-05-21 Rahul Mohan Solar Energy Disaggregation Techniques for Whole-House Energy Consumption Data
CN107122790A (zh) * 2017-03-15 2017-09-01 华北电力大学 基于混合神经网络和集成学习的非侵入式负荷识别算法
CN109685314A (zh) * 2018-11-20 2019-04-26 中国电力科学研究院有限公司 一种基于长短期记忆网络的非侵入负荷分解方法和系统
CN110188826A (zh) * 2019-05-31 2019-08-30 湖南科技大学 基于智能电表数据的家用电器运行状态非侵入式检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ODYSSEAS KRYSTALAKOS,CHRISTOFOROS NALMPANTIS,DIMITRIS VRAKAS: "Sliding Window Approach for Online Energy Disaggregation Using Artificial Neural Networks" *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111342471A (zh) * 2020-03-02 2020-06-26 华北电力大学 一种基于机器学习的家庭产消者功率优化管理方法
CN111342471B (zh) * 2020-03-02 2023-12-29 华北电力大学 一种基于机器学习的家庭产消者功率优化管理方法
CN111415270A (zh) * 2020-03-03 2020-07-14 浙江万胜智能科技股份有限公司 一种基于lstm学习的电力负荷智能识别方法
CN112487785A (zh) * 2020-12-14 2021-03-12 北京声智科技有限公司 基于rnn的语言模型的训练方法及相关装置
CN112613542A (zh) * 2020-12-14 2021-04-06 国网甘肃省电力公司营销服务中心 一种基于双向lstm的企业除污设备负荷辨识方法
CN113011628A (zh) * 2020-12-14 2021-06-22 同济大学 基于拓扑结构和时间卷积网络的电力负荷预测方法
CN112613542B (zh) * 2020-12-14 2024-01-12 国网甘肃省电力公司营销服务中心 一种基于双向lstm的企业除污设备负荷辨识方法
CN112734137A (zh) * 2021-01-27 2021-04-30 国网电力科学研究院武汉能效测评有限公司 基于智能电表数据的短期楼宇电力负荷预测方法及系统
CN113094931B (zh) * 2021-04-29 2022-04-22 杭州电力设备制造有限公司 一种非侵入式负荷分解方法、装置及设备
CN113094931A (zh) * 2021-04-29 2021-07-09 杭州电力设备制造有限公司 一种非侵入式负荷分解方法、装置及设备
CN113177636A (zh) * 2021-05-08 2021-07-27 中国电子科技集团公司第二十九研究所 一种基于多约束条件的网络动态路由方法及系统
CN113884809A (zh) * 2021-09-28 2022-01-04 国网黑龙江省电力有限公司 一种基于神经网络的二次设备故障定位方法及系统
CN113901726A (zh) * 2021-10-27 2022-01-07 国网西藏电力有限公司拉萨供电公司 基于seq2point模型的非侵入式负荷分解方法
CN113901726B (zh) * 2021-10-27 2024-06-21 国网西藏电力有限公司拉萨供电公司 基于seq2point模型的非侵入式负荷分解方法
TWI810750B (zh) * 2021-12-20 2023-08-01 國立成功大學 太陽能發電預測方法
CN115099349A (zh) * 2022-06-30 2022-09-23 国网江苏省电力有限公司信息通信分公司 一种非侵入式负荷实时分解方法及系统
CN116192665A (zh) * 2022-12-27 2023-05-30 中移动信息技术有限公司 数据处理方法、装置、计算机设备及存储介质
CN116361709A (zh) * 2023-03-31 2023-06-30 山东省计算中心(国家超级计算济南中心) 一种自适应电力负荷识别方法与设备
CN116361709B (zh) * 2023-03-31 2023-10-31 山东省计算中心(国家超级计算济南中心) 一种自适应电力负荷识别方法与设备
CN116663434A (zh) * 2023-07-31 2023-08-29 江铃汽车股份有限公司 一种基于lstm深度神经网络的整车载荷分解方法
CN116663434B (zh) * 2023-07-31 2023-12-05 江铃汽车股份有限公司 一种基于lstm深度神经网络的整车载荷分解方法

Also Published As

Publication number Publication date
CN110852655B (zh) 2023-08-15

Similar Documents

Publication Publication Date Title
CN110852655A (zh) 带有太阳能供电系统的家庭用电负荷分解系统与分解方法
CN111612651B (zh) 一种基于长短期记忆网络的异常电量数据检测方法
CN109345409A (zh) 一种基于宽带载波的居民用户综合能效管理方法
CN110309984B (zh) 一种非侵入式负荷识别与短期用户行为预测方法
de Diego-Otón et al. Recurrent LSTM architecture for appliance identification in non-intrusive load monitoring
Langevin et al. Efficient deep generative model for short-term household load forecasting using non-intrusive load monitoring
Li et al. A sustainable and user-behavior-aware cyber-physical system for home energy management
Akbar et al. A novel non-intrusive load monitoring technique using semi-supervised deep learning framework for smart grid
Wang et al. Adaptive modeling for non-intrusive load monitoring
Liu et al. Learning task-aware energy disaggregation: a federated approach
CN116845990B (zh) 基于双向变流器的协调控制方法、控制器及系统
CN117477614A (zh) 光伏储能系统的容量配置方法、装置、设备及存储介质
Zhang et al. Research on wind power prediction based on time series
CN106655266B (zh) 一种接入新能源的地区电网可灵活调节电源配置方法
Pan et al. Research on non-intrusive load decomposition model based on parallel multi-scale attention mechanism and its application in smart grid
Azzam et al. Low-frequency load identification using CNN-BiLSTM attention mechanism
Sun et al. Power load disaggregation of households with solar panels based on an improved long short-term memory network
Singh et al. A preliminary study towards conceptualization and implementation of a load learning model for smart automated demand response
Singh et al. Grey Wolf Optimization Based CNN-LSTM Network for the Prediction of Energy Consumption in Smart Home Environment
Liang et al. Synthesis of realistic load data: adversarial networks for learning and generating residential load patterns
Shen et al. Aiot-empowered smart grid energy management with distributed control and non-intrusive load monitoring
Zhou et al. Long-term cost planning of data-driven wind-storage hybrid systems
Lv et al. Quantitative Analysis Model of User's Electrical Behavior for Smart Grid
Xu et al. Study on the Prediction of Consumer Electricity Consumption Based on Hybrid Model
CN117291756B (zh) 一种储能设备配置调整方法、装置和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant