本申请涉及电力负荷监测技术领域,尤其涉及一种用于电力负荷识别的机器学习模型训练方法及系统。
背景技术:
电力负荷特征是电力负荷从电力系统的电源吸取的有功功率和无功功率随负荷端点的电压及系统频率变化而改变的规律;电力负荷特征是电力系统的重要组成部分;通过电力负荷特征识别用电设备对于智能电网技术的发展有重要作用。
电力负荷识别最为常用的方法为侵入式和非侵入式识别方法。其中,侵入式识别方法需要建立监测系统把传感器安装至各负荷处,这种方法虽然可以直接获得负荷的测量数据,但是安装成本高、安装过程复杂且维护也相对困难;而非侵入式识别方法只需要在电力供给的总入口处安装监测设备即可以对整个系统内的各负荷分解、监测和识别。具体地,非侵入式识别方法是基于电器负荷印记特征提取和识别的;其中,电器负荷印记特征能反映用电设备在运行中的独特的信息,如电压、有功的波形、启动电流等;在设备运行中这些负荷印记特征会重复出现,基于此,我们就可以把用电设备识别出来。
其中,负荷印记特征的设计和提取是整个方法的主要难点;特征设计一般采用较为简单的电流、电压、有功功率和无功功率的稳/暂态特征及其组合。更复杂的方法除了考虑相关信号的时域特征外,还考虑频域特征,通过傅立叶变换、小波变换和谐波分析等数学工具,提取有价值的信号特征,建立匹配数据库,并以此为依据对实时采集的负荷数据进行匹配,检测用电情况。但是,人工设计的信号特征需要人为手动调节参数,存在复杂度和维度较低的问题,往往不能充分反映信号的内在特点和提升不同信号之间的分辨率;同时,传统的匹配算法例如时域的波形匹配,特征点匹配以及谱分析等方法匹配准确率不高,进而用电负荷识别准确率不高,实际应用效果不甚理想。
技术实现要素:
本申请提供了一种用于电力负荷识别的机器学习模型训练方法及系统,以解决现有方法中人工设计的信号特征需要人为手动调节参数从而导致用电负荷识别准确率低的技术问题。
为了解决上述技术问题,本申请实施例公开了如下技术方案:
第一方面,本申请提供的一种用于电力负荷识别的机器学习模型训练方法,、所述方法包括:
获取各个电器的历史电气参数数据集;
清洗各个电器的所述历史电气参数数据集;
将单个电器的清洗后的历史电气参数数据集按照比例划分成训练集、验证集及测试集;
对所述训练集做平衡化处理得到新的训练集;
使用平衡化后新的训练集训练目标电器的机器学习模型的参数,再根据训练集和测试集得到优化模型;
采集用户电力负荷的当前数据,并将所述当前数据输入每个目标电器的优化模型中,分离出电器的工作状态,输出电力负荷的类别结果。
可选的,所述对所述训练集做平衡化处理得到新的训练集,包括:
按一定比例从已清洗的用户数据片段集合中划分出训练集、验证集和测试集;
将数据片段按照是否包含电器开启状态的标准划分为两类;
预设包含开启状态的数据片段目标占比p%,对所有此类片段进行过采样处理,随机多次复制此类片段,使其占比提升至p%;
将增广重组后的数据集作为新的训练集。
可选的,所述获取各个电器的历史电气参数数据集,包括:
将各原始公共数据集的数据格式进行统一构成公共数据集,整合与汇总当今公共数据集得到第一数据集;
在用户总的进线端安装电能表获取一个或多个空间内的总体和单个用电负荷的电气参数得到第二数据集;
根据所述第一数据集和所述第二数据集汇总得到各个电器的历史电气参数数据集。
可选的,所述将各原始公共数据集的数据格式进行统一构成公共数据集,包括:
提取各原始公共数据集中的信息,所述信息包括时间戳、电压、电流、有功功率及无功功率;
以所述时间戳为标志,每个新的时间戳产生一行数据,所述数据包括电压、电流、有功功率及无功功率;
使用元数据描述文件描述各原始公共数据集代表的电路、用电负荷。
可选的,所述清洗各个电器的所述历史电气参数数据集,包括:数据格式的统一、下采样到指定频率、电压归一化。
可选的,所述数据格式的统一,包括:
根据
s[i]表示采样值即瞬时有功功率,c为电力负荷类型,sa为样本数据。
可选的,所述下采样到指定频率,包括:
若采样率低于1hz,则按原有采样率进行记录;
若采样率高于1hz,则将采样率降采样至1hz;
其中,所述将采样率降采样至1hz包括:
使用每1秒间隔采样点的数值,抛弃所有1秒内的其他采样值;
计算相邻1秒钟内原始采样点的平均值作为1秒钟边界数据值;
计算相邻1秒钟内原始采样点的中值作为1秒钟边界数据值。
可选的,所述电压归一化,包括:
根据
powernormalised表示归一化功率值,powerobserved表示测量功率值,voltagenominal表示名义电压值voltageobserved表示测量电压值。
可选的,所述使用平衡化后新的训练集训练目标电器的机器学习模型的参数,再根据训练集和测试集得到优化模型,包括:
使用目标电器新的训练集训练机器学习模型的参数;
将不同训练阶段所得到的不同模型在验证集上验证测试,直至效果最好作为目标电器的对应模型;
利用测试集对目标电器的对应模型进行性能测试,直至性能最优得到目标电器的优化模型。
第二方面,基于上述的一种用于电力负荷识别的机器学习模型训练方法,本申请还提供了一种用于电力负荷识别的机器学习模型训练系统,所述系统包括:
数据获取模块,用于获取各个电器的历史电气参数数据集;
数据清洗模块,用于清洗各个电器的所述历史电气参数数据集;
数据划分模块,用于将单个电器的清洗后的历史电气参数数据集按照比例划分成训练集、验证集及测试集;
数据平衡化模块,用于对所述训练集做平衡化处理得到新的训练集;
模型优化模块,用于使用平衡化后新的训练集训练目标电器的机器学习模型的参数,再根据训练集和测试集得到优化模型;
电力负荷类别输出模块,用于采集用户电力负荷的当前数据,并将所述当前数据输入每个目标电器的优化模型中,分离出电器的工作状态,输出电力负荷的类别结果。
与现有技术相比,本申请的有益效果为:
由上述技术方案可见,本实施例提供的用于电力负荷识别的机器学习模型训练方法及系统以实测的电气参数数据包括电流、电压、有功功率和无功功率等为基础,将基础电气参数数据统一格式、训练及输入机器模型中不断优化,在验证集中不断调整模型的参数从而选择最优模型,同时利用测试集评估模型的表现,以达到最优的效果,便于模型进一步被用于电力负荷的识别系统,本申请中的方法可以根据输入的采样数据,这些数据包括电压、电流、有功功率的波形等,而特定的用电设备有特定的电压、电流、有功功率的波形等,因此可以训练模型跟绝特定的电压、电流、有功功率的波形等识别出正在使用的用电设备,即本申请的机器学习训练方法可以根据电气数据推断出每个用电设备的设备类别,因此本申请提供的用于电力负荷识别的机器学习模型训练方法及系统不需要人为进行手动调节参数,较传统方法相比如时域的波形匹配,特征点匹配以及谱分析等匹配准确率高,本申请可以自主学习并且自动获得识别电力负荷所需要的特征参数,从而提高了模型的适用范围,提高了电力负荷识别的准确率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1为本申请实施例提供的用于电力负荷识别的机器学习模型训练方法的流程示意图;
附图2为本申请实施例提供的用于电力负荷识别的机器学习模型训练系统的结构示意图;
附图3为本申请实施例提供的区域监控总电表与分电表的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
电力负荷印记特征能反映一个用电设备在运行中所体现的独特的反映用电状态的信息,比如电压、有功功率的波形、电流等,在设备运行过程中,这些负荷印记会重复出现,基于此,我们就可以把各个用电设备识别出来。
本申请提供了一种用于电力负荷识别的机器学习模型训练方法,具体地参考附图1,附图1为本申请实施例提供的用于负荷识别的机器学习模型训练方法的流程示意图,所述方法包括:
s110:获取各个电器的历史电气参数数据集。
我们提出利用基础电气参数数据(包括电流、电压、有功功率、无功功率)(如表一所示)的采样、清洗,结合对模型参数的调优(参数包括但不仅限于权重、核函数、维度、学习率、正则化等等),实现机器学习模型的训练,并将训练好的模型存入在特定的、统一的文件格式中,便于模型进一步被用于电力负荷的识别系统。在此训练过程中,本系统不需要人为设计电力负荷的特征参数,从而提高了模型的适用范围,提高了负荷识别的准确率,增加了基础电气参数数据的利用效率。
表一基础电气参数数据
所述获取各个电器的历史电气参数数据集,包括:
将各原始公共数据集的数据格式进行统一构成公共数据集,整合与汇总当今公共数据集得到第一数据集;
在用户总的进线端安装电能表获取一个或多个空间内的总体和单个用电负荷的电气参数得到第二数据集;
根据所述第一数据集和所述第二数据集汇总得到各个电器的历史电气参数数据集。
本发明实施例中采用的原始公共数据集有参考能源分解数据集、来自单个家庭的数据的建筑级电子聚合数据集、来自三个家庭的家庭总功率数据和高频低频数据的smart数据集、来自十个家庭的汇总和分计量功率数据的pecanstreet数据集。由于这些公共数据集来源于不同的大学和机构,每个数据集的读取和识别导致使用完全不同的数据格式,因此需要将各原始公共数据集的数据格式进行统一。具体数据格式统一的步骤如下:
提取各数据集中以下信息,包括时间戳,电压,电流,视在功率,无功功率等具体数据;
以时间戳为标志,每个新的时间戳产生一行数据,数据包括电压,电流,视在功率,无功功率;
时间戳的间隔为1秒,对原数据集中采样间隔低于1秒的数据集采取降采样,获得间隔为1秒的时间戳序列;
使用元数据描述文件(metadata)描述各数据集代表的电路、电器及其总分、连接关系。
我们会具体针对某个空间内的区域进行实时监测任务,该空间内既有整体的电力负荷监控,也有单个用电器设备的监控,以房屋为例,电视,烧水壶,微波炉、冰箱、空调、洗衣机等等都属于单个用电设备,具体参考附图3,图3为本申请实施例提供的区域监控总电表与分电表的结构示意图。
由于在数据测量获得总负荷的暂态和稳态信号中,会存在测量误差的以下几种情况:一是测量装置的不一致性,即对于同一个用电设备,不同的测量装置有不同的测量值;二是传感器由于在压缩、传输原始数据的过程中,会造成数据丢失。正是因为数据采集与传输会造成数据偏差或丢失,所以有必要对数据进行处理以提高负荷识别方法的抗噪能力;三是要研究数据采样的周期对负荷识别的影响,探讨数据采样开销与系统建模复杂度的平衡点。
我们采集的数据集是能源消耗的基础电气参数数据记录,在一定时间范围内使用多套监控仪器设备监测房间或空间内的各项用电器,采取低频和高频两种数据采集模式。低频采集模式采集频率为1hz,而高频采集可以达到10khz至100khz。低频信号主要针对负荷稳态特征进行提取,而高频信号则可以获得负荷暂态特征和高频谐波特性。一般来说,高频信号可以包括更多的负荷用电特征,利于模型的训练和精确度的提升,但也对数据的采集、传输、压缩和处理能力提出了更高的要求,提高了系统的复杂性。在整个研究过程中,我们需要根据实际情况对系统的复杂性和准确性进行取舍。
此外,需要使用单相多功能电能表进行监测,该表采用rs485远程链接监控控制面板上所有的断路器,数据采集每分钟查询一次并且及时链接数据实时采集服务器,我们会采用单相多功能电能表交叉比对电流、电压、功率,此设备的优点是:din35mm导轨安装,具有装卸方便的特点;通讯速率可达9600bps,传输速率快;采用六路开关量输入及输出,满足对测量数据输入及输出的要求;dsp芯片可根据实际需求进行重构和开发,满足实验环境的要求。
在本系统中,第一步需要将电力负荷特征提取与采样,也是本系统的关键点,通过我们长期对一个空间区域内的总电压、电流、功率以及分电压、电流、功率的监测,会得到真实的电力负荷特征的数据集,通过数据集中提供的详细信息,我们能够将实际功率(p)与电流(i)的使用进行比较,由于电压损耗来自于线路首端和尾端的电压差(这与导线的截面积和大小有关),当基波电压达到极值时,表明电压降低,因此,可以使用电容器校正功率因数的方法,功率因数cos(θ)是电路中实际功率(p)和视在功率(s)之间的比率。电源公式:
s=i·v;
p=s·cos(θ),
其中,θ是电压(v)和电流(i)之间的角度。当电压和电流同相时,功率因数为1,当电流超前或滞后电压时,功率因数为零。
我们发现,与电流相比,实际功率的读数具有高度波动(高达10倍)。这是由于仪表使用两个传感器读数,它们可以独立波动以测量实际功率,在与负载相同的导线上测量电流,同时在断路器电源面板上测量电压。在测量断路器电源板顶部与底部的电压时,会出现明显的电压下降的问题。这意味着如果测量单个点处的电压,离变压器越远,读数越不准确。当计算相关联的功率时,这会导致不太准确的功率读数。此外,负载的电阻率(r)由于诸如导线尺寸等因素的不同,也会存在电压下降的问题,但是,电流不受这些问题的影响,不会由于这些因素而下降,据于此,我们得出结论,使用电流读数能够更好地从历史数据中确定负荷状态,以及高精度的准确度。
s120:清洗各个电器的所述历史电气参数数据集。
在得到电力负荷数据的信息以后,电力负荷数据清洗将是本套系统和方法的核心技术,主要包括自动筛选与异常数据清理,实现噪声的辨认与分离,下采样,丢弃率,数据归一化,缺失数据补偿及处理,top-k,错误数据剔除等等。
本系统需要创建数据csv文件,通过采取删除不完整的数据来完成清理数据集的工作如有部分仪器设备数据因不同时间戳存在数据不完整或丢失的情况。当创建完数据集并生成csv文件导入后,数据会驻留在我们的内存数据结构中,该结构可以在整个训练过程中使用。为了解决不同数据集数据格式不统一的问题,我们需要进行几种预处理工作。
我们使用dsp单相多功能电能表进行总体基础电气参数数据(包括电压、电流、有功功率、无功功率等)的采集,同一参数内部的采样数据按照时间顺序排列。以有功功率为例,pi表示电能表在第i个采样时刻点所检测到的电压度数,原始采集的数据按时间顺序排列为有功功率序列pactive={p1,p2,…pi,…},形成电力负荷特征数据采样模块的输出,同时作为电力负荷数据清洗模块的输入。
在数据清洗模块中,我们根据实际的应用需求将电气时序数据下采样到指定频率f,假设频率f在原采样数据中对应5个采样点的间隔周期,则下采样后的有功功率数据序列为p'active={p1,p6,p11,…p5i 1,…}={q1,q2,…qi,…}。再对所得到的相对低频时序数据进行归一化等其他预处理操作,生成能够被模型直接用作训练的连续时序数据。由于电力负荷特征识别模型同时接受多个电气参数输入,但对某一具体电气参数的输入维度有限且为固定长度n,无法一次性将此电气参数的所有连续时序数据全部输入,故采用长度为n的滑动窗口(slidingwindow)方式以步长l不断滑动,每次滑动后截取此电气参数序列中固定长度为n的数据子序列,例如有功功率子序列pi={qin 1,qin 2,…qin n},以此作为电力负荷特征识别模块输入。
不同电器在负荷特征识别模块中有单独对应的深度神经网络模型,数据子序列会同时输入不同电器对应的深度神经网络模型,每个电气参数在同一时间段内的n个采样数值对应到深度神经网络输入层相应的n个节点,经过网络正向传播运算,输出此数据子序列中第m个目标电器工作状态序列sm,i={sm,in 1,sm,in 2,…sm,in n}。状态序列长度为n但不限于n,由模型架构决定。基于每个电器的工作状态可以判断此段序列中所有在使用的电器种类。
具体包括:
(1)统一格式
由于原始数据集格式并不统一,本方法需要提取每个数据集的特征进行评估,为了避免由于不同电器的消耗功率相差太大,对判断产生很大的干扰,需要将数据进行清洗,同时也是归一化的操作,即转化为[0,1]之间的值,s[i]表示采样值即瞬时有功功率,c为电力负荷类型,sa为样本数据,公式如下:
(2)下采样
设备监视器的采样率在数据集中在0.008hz到16khz之间,所以,本系统会使用诸如平均值、模式和中值的聚合函数将数据集下采样到指定频率。
若采样率低于1hz,则按原有采样率进行记录。
若采样率高于1hz,则将采样率降采样至1hz。具体降采样方法包括:
1.使用每1秒间隔采样点的数值,抛弃所有1秒内的其他采样值;
2.计算相邻1秒钟内原始采样点的平均值作为1秒钟边界数据值;
3.计算相邻1秒钟内原始采样点的中值作为1秒钟边界数据值;
(3)电压归一化
由于采集的电压存在波动的情况,例如,同一数据集中显示电压从180-250v变化,而另一个数据集中的电压在118-123v范围内变化。本系统必须考虑这些电压波动带来的影响,因为它们会明显影响功耗。
根据
powernormalised表示归一化功率值,powerobserved表示测量功率值,voltagenominal表示名义电压值voltageobserved表示测量电压值。
(4)top-k
一般来说,我们的识别系统针对排名在前k位(其中k为可调整参数)的大能耗设备而不是所有设备,原因有以下三点,首先,前k位耗电设备已经能对整体电力消耗情况提供大部分的参考信息;其次,这些设备具有最显着的特征,可以认为其余设备仅产生噪声;第三,针对较大占比耗电设备的建模和识别会大大提高数据的可靠性。
在数据清洗的过程中,本系统也会解决数据集的其他常见问题,例如:设备传感器未报告读数、小数据缺失、去除异常数值如观察到的电压超过额定电压的两倍、主电源数据丢失数据等等。
(5)检测间隙
当今很多算法都假设每个数据采集装置的通讯是连续的,然而,实际情况是,有时候会发生数据采集装置断开或发生故障等情况,如果我们设定一个参数值,当发生断开或故障的时间大于设定的参数值,那么,可以认为一个连续电力数据样本中会存在间隙。例如,我们计算相邻采样点时间戳之间的差值,若大于某一个参数如10秒,则认为该数据集中存在间隙。对于存在间隙的数据序列,不可以直接用于系统训练集和测试集,所有的训练数据和测试数据序列必须选取中间无间隙的数据序列。
(6)正常运行时间
正常运行时间是传感器记录的总时间。它是最后一个时间戳,减去第一个时间戳,减去所有存在的间隙后所得到的持续时间。
s130:将单个电器的清洗后的历史电气参数数据集按照比例划分成训练集、验证集及测试集。
本申请中,我们将样本分成独立的三部分:训练集(trainset)、验证集(validationset)和测试集(testset)。其中训练集用来估计模型,验证集用来确定网络结构或者控制模型复杂程度的参数,而测试集则检验最终选择最优的模型的性能如何。我们将训练集、验证集和测试集划分为训练集占总样本的50%,而其它各占25%,三部分都是从我们采集到的电力负荷样本中随机抽取。
训练集用来拟合模型,我们会用实际电力负荷采集和清洗后的数据来建立模型。
我们将电力负荷采集与清洗后的数据集输入进模型中不断学习,通过拟合去寻找模型的最优参数。
模型的效果仅体现了训练数据,但不一定适合同类的其他数据,所以,我们在建模前将数据分成两部分,一部分为训练数据,一部分为验证数据(两部分数据的比例大致为7:3或6:4)。同时,我们也会训练多个模型,这时可以将验证数据输入不同模型进行比较,得出最佳模型。
测试集相较于训练与验证集最大区别在于训练与验证集的数据在模型训练的过程中均会被用到,而测试集,只会在模型最终训练好之后作为性能测试的参考依据。
我们测试模型表现的数据集,根据误差(一般为预测输出与实际输出的不同)来判断一个模型的好坏,本专利中,我们重点会在支持向量机、决策树、主成分分析、lstm长短期记忆网络模型上进行模型的训练,同时,我们也会重点关注模型的loss值的变化以及模型收敛的情况。
s140:对所述训练集做平衡化处理得到新的训练。
由于电器使用(开关状态)的时间不平衡,使得如果直接使用原始的不平衡分布的数据来训练模型会影响其偏斜性,进而导致模型更倾向于做出与数据集中多数类别或状态相同的判断。本申请采用一种创新的训练数据集平衡化方法,显著提升机器学习模型对电力负荷识别的性能,连同创新的数据采集、清洗等方法构建起完整且可商业化实现的电力负荷识别的模型训练系统与方法,实现用于电力负荷识别的机器学习模型的训练,使用机器学习算法通过大量训练数据自动提取电力负荷特征,为进一步实现电力负荷识别系统打下基础。
所述对所述训练集做平衡化处理得到新的训练集,包括:
按一定比例从已清洗的用户数据片段集合中划分出训练集、验证集和测试集;
将数据片段按照是否包含电器开启状态的标准划分为两类;
预设包含开启状态的数据片段目标占比p%,对所有此类片段进行过采样处理,随机多次复制此类片段,使其占比提升至p%;
将增广重组后的数据集作为新的训练集。
本申请提出一种数据集平衡化方法,其核心思想为对训练集进行增广重组,将包含电器开启状态的负荷数据片段进行过采样(oversampling)处理,即多次复制训练集中所有包含电器开启状态的数据片段,并入原训练集,使得包含开启状态的数据片段占比提升至p%,以此作为新的训练集,从中不断抽取数据片段输入模型,通过最优化算法对模型参数进行迭代调优。电力负荷数据集的分布不平衡性问题对几乎所有非惰性机器学习模型都有不可忽视的影响,故此平衡化方法适用多种机器学习模型,对其识别准确率均有显著改善。
s150:使用平衡化后新的训练集训练目标电器的机器学习模型的参数,再根据训练集和测试集得到优化模型。
s160:采集用户电力负荷的当前数据,并将所述当前数据输入每个目标电器的优化模型中,分离出电器的工作状态,输出电力负荷的类别结果。
不同电器在负荷特征识别模块中有单独对应的深度神经网络模型,数据子序列会同时输入不同电器对应的深度神经网络模型,每个电气参数在同一时间段内的n个采样数值对应到深度神经网络输入层相应的n个节点,经过网络正向传播运算,输出此数据子序列中第m个目标电器工作状态序列sm,i={sm,in 1,sm,in 2,…sm,in n}。状态序列长度为n但不限于n,由模型架构决定。基于每个电器的工作状态可以判断此段序列中所有在使用的电器种类。
我们向电力负荷识别模块中输入由前述电力负荷采集和清洗模块处理过的基础电气参数数据(包括电流、电压、有功功率、无功功率)作为输入数据,目标是通过电气数据推断出每个用电设备的设备类别。
所选用的数据和识别方法具体如下:
选取总电路的数据基础电气参数数据(包括电流、电压、有功功率、无功功率);
选取1分钟至5分钟的上述数据,以采样率为1hz为例,则有60至300个采样点;
将上述数据处理成16个数据点作为一个序列的若干序列,其中剔除有间隙的序列;
载入提前训练好的用于电力负荷识别的机器学习模型程序,可以用任何现有的机器学习或神经网络编程框架实现,如tensorflow,keras等等);
将数据序列输入机器学习模型,识别模块输出对应每个时刻采样点的当前设备类别数据(用整数表示,例如1=空调,2=烧水壶,3=洗衣机,4=电灯,等等)。
我们向电力负荷识别模块中输入由前述电力负荷采集和清洗模块处理过的基础电气参数数据包括电流、电压、有功功率、无功功率作为输入数据,目标是通过电气数据推断出每个用电设备的设备类别。
所选用的数据和识别方法具体如下:
选取总电路的数据基础电气参数数据如包括电流、电压、有功功率、无功功率;
选取1分钟至5分钟的上述数据,以采样率为1hz为例,则有60至300个采样点;
将上述数据处理成16个数据点作为一个序列的若干序列,其中剔除有间隙的序列;
载入提前训练好的用于电力负荷识别的机器学习模型程序,可以用任何现有的机器学习或神经网络编程框架实现,如tensorflow,keras等等;
将数据序列输入机器学习模型,识别模块输出对应每个时刻采样点的当前设备类别数据(用整数表示,例如1=空调,2=烧水壶,3=洗衣机,4=电灯,等等)。
基于上述方法的发明构思,本实施例还提供了一种用于电力负荷识别的机器学习模型训练系统,如附图2所示,附图2为本申请实施例提供的用于电力负荷识别的机器学习模型训练系统的结构示意图;所述系统包括:
数据获取模块,用于获取各个电器的历史电气参数数据集;
数据清洗模块,用于清洗各个电器的所述历史电气参数数据集;
数据划分模块,用于将单个电器的清洗后的历史电气参数数据集按照比例划分成训练集、验证集及测试集;
数据平衡化模块,用于对所述训练集做平衡化处理得到新的训练集;
模型优化模块,用于使用平衡化后新的训练集训练目标电器的机器学习模型的参数,再根据训练集和测试集得到优化模型;
电力负荷类别输出模块,用于采集用户电力负荷的当前数据,并将所述当前数据输入每个目标电器的优化模型中,分离出电器的工作状态,输出电力负荷的类别结果。
由上述技术方案可见,本实施例提供的用于电力负荷识别的机器学习模型训练方法及系统以实测的电气参数数据包括电流、电压、有功功率和无功功率等为基础,将基础电气参数数据统一格式、训练及输入机器模型中不断优化,在验证集中不断调整模型的参数从而选择最优模型,同时利用测试集评估模型的表现,以达到最优的效果,便于模型进一步被用于电力负荷的识别系统,本申请中的方法可以根据输入的采样数据,这些数据包括电压、电流、有功功率的波形等,而特定的用电设备有特定的电压、电流、有功功率的波形等,因此可以训练模型跟绝特定的电压、电流、有功功率的波形等识别出正在使用的用电设备,即本申请的机器学习训练方法可以根据电气数据推断出每个用电设备的设备类别,因此本申请提供的用于电力负荷识别的机器学习模型训练方法及系统不需要人为进行手动调节参数,较传统方法相比如时域的波形匹配,特征点匹配以及谱分析等匹配准确率高,本申请可以自主学习并且自动获得识别电力负荷所需要的特征参数,从而提高了模型的适用范围,提高了电力负荷识别的准确率。
由于以上实施方式均是在其他方式之上引用结合进行说明,不同实施例之间均具有相同的部分,本说明书中各个实施例之间相同、相似的部分互相参见即可。在此不再详细阐述。
本领域技术人员在考虑说明书及实践这里发明的公开后,将容易想到本申请的其他实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求的内容指出。
以上所述的本申请实施方式并不构成对本申请保护范围的限定。
1.一种用于电力负荷识别的机器学习模型训练方法,其特征在于,所述方法包括:
获取各个电器的历史电气参数数据集;
清洗各个电器的所述历史电气参数数据集;
将单个电器的清洗后的历史电气参数数据集按照比例划分成训练集、验证集及测试集;
对所述训练集做平衡化处理得到新的训练集;
使用平衡化后新的训练集训练目标电器的机器学习模型的参数,再根据训练集和测试集得到优化模型;
采集用户电力负荷的当前数据,并将所述当前数据输入每个目标电器的优化模型中,分离出电器的工作状态,输出电力负荷的类别结果。
2.根据权利要求1所述的用于电力负荷识别的机器学习模型训练方法,其特征在于,所述对所述训练集做平衡化处理得到新的训练集,包括:
按一定比例从已清洗的用户数据片段集合中划分出训练集、验证集和测试集;
将数据片段按照是否包含电器开启状态的标准划分为两类;
预设包含开启状态的数据片段目标占比p%,对所有此类片段进行过采样处理,随机多次复制此类片段,使其占比提升至p%;
将增广重组后的数据集作为新的训练集。
3.根据权利要求1所述的用于电力负荷识别的机器学习模型训练方法,其特征在于,所述获取各个电器的历史电气参数数据集,包括:
将各原始公共数据集的数据格式进行统一构成公共数据集,整合与汇总当今公共数据集得到第一数据集;
在用户总的进线端安装电能表获取一个或多个空间内的总体和单个用电负荷的电气参数得到第二数据集;
根据所述第一数据集和所述第二数据集汇总得到各个电器的历史电气参数数据集。
4.根据权利要求3所述的用于电力负荷识别的机器学习模型训练方法,其特征在于,所述将各原始公共数据集的数据格式进行统一构成公共数据集,包括:
提取各原始公共数据集中的信息,所述信息包括时间戳、电压、电流、有功功率及无功功率;
以所述时间戳为标志,每个新的时间戳产生一行数据,所述数据包括电压、电流、有功功率及无功功率;
使用元数据描述文件描述各原始公共数据集代表的电路、用电负荷。
5.根据权利要求1所述的用于电力负荷识别的机器学习模型训练方法,其特征在于,所述清洗各个电器的所述历史电气参数数据集,包括:数据格式的统一、下采样到指定频率、电压归一化。
6.根据权利要求5所述的用于电力负荷识别的机器学习模型训练方法,其特征在于,所述数据格式的统一,包括:
根据
s[i]表示采样值即瞬时有功功率,c为电力负荷类型,sa为样本数据。
7.根据权利要求5所述的用于电力负荷识别的机器学习模型训练方法,其特征在于,所述下采样到指定频率,包括:
若采样率低于1hz,则按原有采样率进行记录;
若采样率高于1hz,则将采样率降采样至1hz;
其中,所述将采样率降采样至1hz包括:
使用每1秒间隔采样点的数值,抛弃所有1秒内的其他采样值;
计算相邻1秒钟内原始采样点的平均值作为1秒钟边界数据值;
计算相邻1秒钟内原始采样点的中值作为1秒钟边界数据值。
8.根据权利要求5所述的用于电力负荷识别的机器学习模型训练方法,其特征在于,所述电压归一化,包括:
根据
powernormalised表示归一化功率值,powerobserved表示测量功率值,voltagenominal表示名义电压值voltageobserved表示测量电压值。
9.根据权利要求1所述的用于电力负荷识别的机器学习模型训练方法,其特征在于,所述使用平衡化后新的训练集训练目标电器的机器学习模型的参数,再根据训练集和测试集得到优化模型,包括:
使用目标电器新的训练集训练机器学习模型的参数;
将不同训练阶段所得到的不同模型在验证集上验证测试,直至效果最好作为目标电器的对应模型;
利用测试集对目标电器的对应模型进行性能测试,直至性能最优得到目标电器的优化模型。
10.一种用于电力负荷识别的机器学习模型训练系统,其特征在于,所述系统包括:
数据获取模块,用于获取各个电器的历史电气参数数据集;
数据清洗模块,用于清洗各个电器的所述历史电气参数数据集;
数据划分模块,用于将单个电器的清洗后的历史电气参数数据集按照比例划分成训练集、验证集及测试集;
数据平衡化模块,用于对所述训练集做平衡化处理得到新的训练集;
模型优化模块,用于使用平衡化后新的训练集训练目标电器的机器学习模型的参数,再根据训练集和测试集得到优化模型;
电力负荷类别输出模块,用于采集用户电力负荷的当前数据,并将所述当前数据输入每个目标电器的优化模型中,分离出电器的工作状态,输出电力负荷的类别结果。
技术总结