一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种用于配电终端异常检测的模型建立方法及装置与流程

2022-06-08 11:20:33 来源:中国专利 TAG:


1.本发明涉及配电异常检测领域,尤其涉及一种用于配电终端异常检测的模型建立方法及装置。


背景技术:

2.在配电网系统中,随着配电网自动化的大规模建设,其终端设备更迭快、数量多、信息量大,配网终端接入验收工作几何级数增加,配电终端的异常检测技术值得研究。
3.异常检测主要的目的是找到脱离整体数据分布的部分数据,将其定义为异常点。扩展到时间序列领域后,异常检测又发展出了集体异常与新颖点检测两个分支。异常检测涉及的领域很多,如医疗、数据安全、网络入侵、欺诈、航空等,并且广泛应用于离散数据、图形数据和时间序列中,对配电终端进行异常检测即异常检测在时间序列领域的一种应用。
4.在机器学习出现之前,异常检测相关的研究都是基于概率分布统计方法,随着异常检测研究的不断推进,基于聚类的异常检测技术相关的研究逐渐增多。聚类方法是无监督学习方法的一种,聚类思想考虑使用欧氏距离来衡量数据间的相似性,并将相似性高的数据进行聚集,形成一个簇,从而对数据进行分组操作。
5.例如,专利文献cn113344134a公开了一种低压配电监控终端数据采集异常检测方法,首先采集低压配电终端的数据样本并构建数据集,然后基于z-score标准化方法对数据集进行标准化并清洗,再通过基于密度的聚类算法对预先处理好的低压配电终端的数据样本进行聚类分析,从而得到异常数据样本,进而通过异常数据样本的个数判断低压配电终端是否为数据采集异常。
6.该方案采用密度聚类算法,在对数据进行聚类后,可以对簇的规模和密度进行判定,能够在数据存在异常簇时进行检测,但是该方案应用于大数据处理中时,由于采用的数据是无标注数据,因此存在泛用性问题及性能问题,配电终端异常检测准确度不够,检测方法可靠性差。


技术实现要素:

7.本发明提供了一种用于配电终端异常检测的模型建立方法及装置,同时采用有标记数据和无标记数据,基于重构模型与预测模型的集成学习方式对配电终端监控信息系统进行异常检测,模型泛化能力强,检测准确度高,可靠性强。
8.一种用于配电终端异常检测的模型建立方法,包括:
9.采集配电终端的状态数据;
10.对所述状态数据进行预处理,获得训练集和测试集;
11.根据所述训练集对预先建立的重构模型和预测模型分别进行训练;
12.将所述测试集输入至训练后的重构模型,获得重构数据;
13.将所述重构数据输入至训练后的预测模型,获得异常检测结果。
14.进一步地,对所述状态数据进行预处理,包括:
15.对所述状态数据进行归一化处理;
16.分别对各个归一化的状态数据进行分段处理,得到分段状态数据;
17.将所述分段状态数据进行划分,获得训练集和测试集。
18.进一步地,所述重构模型的输入维度与预测模型的输入维度相同,所述重构模型的输出维度与所述预测模型的输出维度相同。
19.进一步地,根据所述训练集对预先建立的重构模型和预测模型分别进行训练,包括:
20.对所述重构模型和预测模型分别进行参数初始化,并设置最大迭代次数、隐藏层数和神经元个数;
21.将所述训练集分别输入至所述重构模型和预测模型中进行一次训练直到所述重构模型和预测模型收敛;
22.调整所述预测模型的损失函数的超参数,根据所述训练集对所述预测模型进行二次训练直到收敛。
23.进一步地,所述训练集中的数据包括有标记的分段状态数据和无标记的分段状态数据。
24.进一步地,所述预测模型的损失函数为:
[0025][0026]
其中,m表示无标记的分段状态数据的数量,n表示有标记的分段状态数据的数量,γ为超参数,si表示训练集中第i个分段状态数据,表示分段状态数据对应的重构数据,表示有标记的分段状态数据,j表示第j个有标记的分段状态数据,表示有标记的分段状态数据对应的重构数据,y
si
表示有标记的分段状态数据的异常数据标识,y
si
=1表示有标记的分段状态数据为正常数据,y
si
=0表示有标记的分段状态数据为异常数据,表示训练集中第i个分段状态数据的预测误差,表示有标记的分段状态数据的预测误差。。
[0027]
进一步地,根据所述训练集对所述预测模型进行二次训练直到收敛之后,还包括:
[0028]
调整所述训练集中的有标记数据的占比,形成有标记数据不同占比的多个训练集对所述重构模型和预测模型进行再次训练,直到所述重构模型和预测模型收敛,并保存重构模型和预测模型的参数。
[0029]
进一步地,将所述重构数据输入至训练后的预测模型,获得异常检测结果之后,还包括:
[0030]
计算所述异常检测结果的预测结果误差。
[0031]
进一步地,所述预测结果误差通过以下公式进行计算:
[0032][0033]
其中,pi为预测结果误差,ri为测试集中第i个分段状态数据,为第i个分段状态数据对应的预测输出,l为分段状态数据的长度。
[0034]
一种用于配电终端异常检测的模型建立装置,包括:
[0035]
采集模块,用于采集配电终端的状态数据;
[0036]
预处理模块,用于对所述状态数据进行预处理,获得训练集和测试集;
[0037]
训练模块,用于根据所述训练集对预先建立的重构模型和预测模型分别进行训练;
[0038]
重构模块,用于将所述测试集输入至训练后的重构模型,获得重构数据;
[0039]
检测模块,用于将所述重构数据输入至训练后的预测模型,获得异常检测结果。
[0040]
本发明提供的用于配电终端异常检测的模型建立方法及装置,至少包括如下有益效果:
[0041]
(1)将重构模型和预测模型进行集成学习,先对数据进行重构,再对重构结果进行预测,用最终得到的预测结果进行异常分析,模型分类器之间彼此形成纠错的作用,模型泛用性更强、准确度更高。
[0042]
(2)同时采用有标记数据和无标记数据对模型进行训练,既能克服有标记数据标记成本高的问题,又能克服无标记数据检测精确低的问题,得到的模型检测准确度高,可靠性强,且模型训练成本可控。
[0043]
(3)训练过程中对误差函数的超参数及数据集标记比重进行调整,得到多个训练模型参数文件,为异常检测工作减轻了工作负担,提高了异常检测的准确率。
附图说明
[0044]
图1为本发明提供的用于配电终端异常检测的模型建立方法一种实施例的流程图。
[0045]
图2为本发明提供的方法中模型训练方法一种实施例的流程图。
[0046]
图3为本发明提供的用于配电终端异常检测的模型建立装置一种实施例的结构示意图。
[0047]
附图标记:1-采集模块,2-预处理模块,3-训练模块,4-重构模块,5-检测模块。
具体实施方式
[0048]
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案做详细的说明。
[0049]
参考图1,在一些实施例中,提供一种用于配电终端异常检测的模型建立方法,包括:
[0050]
s1、采集配电终端的状态数据;
[0051]
s2、对所述状态数据进行预处理,获得训练集和测试集;
[0052]
s3、根据所述训练集对预先建立的重构模型和预测模型分别进行训练;
[0053]
s4、将所述测试集输入至训练后的重构模型,获得重构数据;
[0054]
s5、将所述重构数据输入至训练后的预测模型,获得异常检测结果。
[0055]
具体地,步骤s1中,配电终端的状态数据为时间序列数据。时间序列相较于传统离散数据具有以下两个特殊性:其一,时间序列除去时间依赖性,数据间还可能存在趋势突变和季节性等;其二,时间序列的标记成本较高,因为时间序列的异常判定需要对其进行上下文分析对比,因此手动进行时间序列标记是很具有挑战性且高成本的工作。
[0056]
步骤s2中,对所述状态数据进行预处理,包括:
[0057]
s21、对所述状态数据进行归一化处理;
[0058]
s22、分别对各个归一化的状态数据进行分段处理,得到分段状态数据;
[0059]
s23、将所述分段状态数据进行划分,获得训练集和测试集。
[0060]
具体地,步骤s21中,将步骤s1中得到的状态数据表示为t={x1,x2,

,xn},其中数据的最大值为x
max
,最小值为x
min
。由于不同时间段的时间序列数据取值范围不同,为了避免数据单位不一致导致的数据分布学习能力下降,在一些实施例中,采用min-max标准化的方式对所有状态数据的取值范围进行归一化,归一化采用的转换函数通过以下公式表示:
[0061][0062]
其中,t

为归一化后的数据集,xi为第i个状态数据的原始值,为第i个状态数据归一化后的数值,x
max
为状态数据中的最大值,x
min
为状态数据中的最小值,n为状态数据的数据总数。
[0063]
步骤s22中,由于时间序列数据具有长持续性,因此对归一化的状态数据进行分段处理,将一条长时间序列分为很多条长度较短的时间片段。在一些实施例中,分段操作采用滑动窗口将时间序列数据进行分段,具体为,取长度为k的滑动窗口,将滑动步长设置为1,将归一化的状态数据t

进行分段操作,得到分段状态数据。
[0064]
其中,所述分段状态数据通过以下公式表示:
[0065]
s={(si,ri,yi),(s2,y2,y2),......,(s
n-k
,r
n-k
,y
n-k
)};
[0066]
其中,si为第i个分段状态数据,ri为第i个分段状态数据的预测数据(经预测模型预测输出后获得),yi为第i个数据段的异常标记,n为分段状态数据的总数,k为滑动窗口的长度,s为归一化后的状态数据。
[0067]
在一些实施例中,根据状态数据的标记情况,对所述分段状态数据进行标记,具体为:当状态数据无标记时,将分段状态数据标记为1;当所述状态数据有标记时,分段状态数据标记为源数据集中的对应标记。
[0068]
步骤s3中,所述重构模型的输入维度与预测模型的输入维度相同,所述重构模型的输出维度与所述预测模型的输出维度相同,使得重构模型的输出能够作为预测模型的输入。
[0069]
在一些实施例中,所述重构模型采用ss-lstm-aae(semi-supervised autoencoder based on lstm and attention mechanism基于lstm和注意机制的半监督自动编码器)模型,所述预测模型采用半监督的lstm预测模型,即ss-lstm-pre(semi-supervised lstm prediction model)模型,对以上两个模型进行集成,得到基于集成学习的半监督异常检测模型,使用少量的标记数据对大量无标记数据进行分析。将ss-lstm-aae模型的输入、输出维度和ss-lstm-pre模型的输入维度进行统一。
[0070]
其中,半监督异常检测模型指采用半监督学习方式的检测模型。通过训练过程是否依赖于数据本身的标记这一特点,机器学习方法分为监督学习、无监督学习和半监督学习三种。监督学习利用自身带有标记的数据来进行模型训练,通过训练来调整分类器的参数,使分类器达到最佳性能。在监督学习中,每组实例数据都需要包含一个输入数据与一个期望输出的数据,监督学习方法通过分析这样的实例数据来学习输入到输出的映射,使模型可以对任何有效输入都能输出其映射的输出,模型准确度高,但进行数据标记所消耗的
人力和时间成本也较高;无监督学习不依赖于数据的标记,不是学习输入到输出的映射,而是去学习数据本身的分布特点,将相似的数据聚集在一起,将没有标签的数据分为很多个组合,从而达到分类的目的,对维度过高或过低的数据很难实现分类,准确度不足。半监督学习使用少量的标记数据对基于大量无标记数据进行分析,是监督学习和无监督学习应用在时间序列数据中的一种折中选择。
[0071]
其中,重构模型和预测模型中采用lstm自动编码器。自动编码器是一种基于半监督学习方法中用于提取数据中有效特征的神经网络,通过训练网络,自动编码器可以在不受到数据噪声影响的情况下进行数据编码的学习。自动编码器一般通过数据降维来对数据进行简化,除此之外,自动编码器还可以通过解码器对数据编码进行重构,从而生成一个与原输入数据很相似的数据,并通过模型的不断训练,使得最终的输出数据与原数据之间的误差尽可能接近零。自动编码器是一种特殊的人工神经网络,通过设置相同网络结构的编码器和解码器,使得编码器可以对输入数据进行数据编码提取有效的数据特征后,解码器可以对压缩后的数据特征进行还原并尽可能的还原为原来的特征。自动编码器需要能够尽可能的寻找到原输入数据的主要特征将其压缩进最终的数据中,从而实现对原数据的高度复现。此处提供的重构模型和预测模型,均采用lstm自动编码器。
[0072]
其中,集成学习指将多个弱分类器进行集成,形成一个泛用性更强、准确度更高的强分类器。当一个弱分类器输出了错误的结果时,可以通过其余的弱分类器输出正确的结果来进行错误纠正。根据集成所要达成的目标来区分,集成学习包括用于减小方差的bagging方法、用于减小偏差的boosting方法和用于改进预测效果的stacking方法。本实施例采用ss-lstm-aae模型与ss-lstm-pre模型进行集成,形成一个基于集成学习的半监督异常检测模型ss-lstm-paae。
[0073]
参考图2,在一些实施例中,根据所述训练集对预先建立的重构模型和预测模型分别进行训练,包括:
[0074]
s31、对所述重构模型和预测模型分别进行参数初始化,并设置最大迭代次数、隐藏层数和神经元个数;
[0075]
s32、将所述训练集分别输入至所述重构模型和预测模型中进行一次训练直到所述重构模型和预测模型收敛;
[0076]
s33、调整所述预测模型的损失函数的超参数,根据所述训练集对所述预测模型进行二次训练直到收敛。
[0077]
在一些实施例中,训练集中的数据包括有标记的分段状态数据和无标记的分段状态数据。
[0078]
其中,一次训练为基础训练,将训练集输入ss-lstm-aae模型和ss-lstm-pre模型分别进行模型训练直到模型收敛,作为一种优选的实施方式,模型收敛的条件为每一轮训练后的模型的损失函数的变化值小于预设值,将训练得到的模型参数保存,作为一次训练得到的模型参数。
[0079]
所述重构模型的损失函数为:
[0080][0081]
其中,t表示时间步长,l表示滑动窗口的长度,si表示训练集中第i个分段状态数据,表示对应于分段状态数据si的重构数据,表示训练集中第i个分段状态数据的预测误差,xj表示训练集中第i个分段状态数据si中的第j个数据段,表示第j个数据段的重构数据;
[0082]
所述预测模型的损失函数为:
[0083][0084]
其中,m表示无标记的分段状态数据的数量,n表示有标记的分段状态数据的数量,γ为超参数,si表示训练集中第i个分段状态数据,表示分段状态数据对应的重构数据,表示有标记的分段状态数据,j表示第j个有标记的分段状态数据,表示有标记的分段状态数据对应的重构数据,y
si
表示有标记的分段状态数据的异常数据标识,y
si
=1表示有标记的分段状态数据为正常数据,y
si
=0表示有标记的分段状态数据为异常数据,表示训练集中第i个分段状态数据的预测误差,表示有标记的分段状态数据的预测误差。
[0085]
二次训练中,调整预测模型的损失函数中的超参数γ,目的是调整标记权重。
[0086]
步骤s33之后,还包括:调整所述训练集中的有标记数据的占比,形成有标记数据不同占比的多个训练集对所述重构模型和预测模型进行再次训练,直到所述重构模型和预测模型收敛,并保存重构模型和预测模型的参数。
[0087]
在一些实施例中,调整所述训练集中的有标记数据的占比,形成20%有标记数据占比、30%有标记数据占比和50%有标记数据占比的三个分段状态数据训练集,再将上述训练集输入重构模型,对所述重构模型和预测模型进行再次训练,直到所述重构模型和预测模型收敛,并保存重构模型和预测模型的参数。至此完成模型的训练。
[0088]
步骤s4中,在一些具体实施例中,将ss-lstm-aae模型作为ss-lstm-paae模型的第一部分,将测试集输入到ss-lstm-aae模型中,输出经过ss-lstm-aae模型重构后的结果,经过ss-lstm-aae模型重构后的结果为重构数据。
[0089]
步骤s5中,在一些具体实施例中,将ss-lstm-pre模型作为ss-lstm-paae模型的第二部分,将经过ss-lstm-aae模型重构后的结果作为ss-lstm-pre模型的输入进行预测操作,最终输出ss-lstm-pre模型的预测结果,即预测数据。预测数据为ss-lstm-paae模型的最终输出结果。
[0090]
在一些实施例中,ss-lstm-pre模型包括lstm层和全连接层。
[0091]
将所述重构数据输入至训练后的预测模型,获得异常检测结果之后,还包括:计算所述异常检测结果的预测结果误差。所述预测结果误差通过以下公式进行计算:
[0092][0093]
其中,pi为预测结果误差,ri为测试集中第i个分段状态数据,为第i个分段状态数据对应的预测输出,l为分段状态数据的长度。
[0094]
预测结果误差用于评估模型的准确性。
[0095]
参考图3,在一些实施例中,提供一种用于配电终端异常检测的模型建立装置,包括:
[0096]
采集模块1,用于采集配电终端的状态数据;
[0097]
预处理模块2,用于对所述状态数据进行预处理,获得训练集和测试集;
[0098]
训练模块3,用于根据所述训练集对预先建立的重构模型和预测模型分别进行训练;
[0099]
重构模块4,用于将所述测试集输入至训练后的重构模型,获得重构数据;
[0100]
检测模块5,用于将所述重构数据输入至训练后的预测模型,获得异常检测结果。
[0101]
进一步地,所述预处理模块2还用于:
[0102]
对所述状态数据进行归一化处理;
[0103]
分别对各个归一化的状态数据进行分段处理,得到分段状态数据;
[0104]
将所述分段状态数据进行划分,获得训练集和测试集。
[0105]
其中,归一化采用的转换函数通过以下公式表示:
[0106][0107]
其中,xi为第i个状态数据的原始值,为第i个状态数据归一化后的数值,x
max
为状态数据中的最大值,x
min
为状态数据中的最小值,n为状态数据的数据总数。
[0108]
其中,所述分段状态数据通过以下公式表示:
[0109]
s={(si,ri,yi),(s2,y2,y2),......,(s
n-k
,r
n-k
,y
n-k
)};
[0110]
其中,si为第i个分段状态数据,ri为第i个分段状态数据的预测数据(经预测模型预测输出后获得),yi为第i个数据段的异常标记,n为分段状态数据的总数,k为滑动窗口的长度,s为归一化后的状态数据。
[0111]
所述训练模块3中,所述重构模型的输入维度与预测模型的输入维度相同,所述重构模型的输出维度与所述预测模型的输出维度相同。
[0112]
所述训练模块3还用于:
[0113]
对所述重构模型和预测模型分别进行参数初始化,并设置最大迭代次数、隐藏层数和神经元个数;
[0114]
将所述训练集分别输入至所述重构模型和预测模型中进行一次训练直到所述重构模型和预测模型收敛;
[0115]
调整所述预测模型的损失函数的超参数,根据所述训练集对所述预测模型进行二次训练直到收敛。
[0116]
其中,所述训练集中的数据包括有标记的分段状态数据和无标记的分段状态数据。
[0117]
其中,所述重构模型的损失函数为:
[0118][0119]
其中,t表示时间步长,l表示滑动窗口的长度,si表示训练集中第i个分段状态数据,表示对应于分段状态数据si的重构数据,表示训练集中第i个分段状态数据的预测误差,,xj表示训练集中第i个分段状态数据si中的第j个数据段,表示第j个数据段的重构数据;
[0120]
所述预测模型的损失函数为:
[0121][0122]
其中,m表示无标记的分段状态数据的数量,n表示有标记的分段状态数据的数量,γ为超参数,si表示训练集中第i个分段状态数据,表示分段状态数据对应的重构数据,表示有标记的分段状态数据,j表示第j个有标记的分段状态数据,表示有标记的分段状态数据对应的重构数据,y
si
表示有标记的分段状态数据的异常数据标识,y
si
=1表示有标记的分段状态数据为正常数据,y
si
=0表示有标记的分段状态数据为异常数据,表示训练集中第i个分段状态数据的预测误差,表示有标记的分段状态数据的预测误差。
[0123]
所述训练模块3还用于:
[0124]
调整所述训练集中的有标记数据的占比,形成有标记数据不同占比的多个训练集对所述重构模型和预测模型进行再次训练,直到所述重构模型和预测模型收敛,并保存重构模型和预测模型的参数。
[0125]
所述检测模块5还用于计算所述异常检测结果的预测结果误差。
[0126]
所述预测结果误差通过以下公式进行计算:
[0127][0128]
其中,pi为预测结果误差,ri为测试集中第i个分段状态数据,为第i个分段状态数据对应的预测输出,l为分段状态数据的长度。
[0129]
本实施例提供的基于集成学习的配电终端异常检测方法及装置,将重构模型和预测模型进行集成学习,先对数据进行重构,再对重构结果进行预测,用最终得到的预测结果进行异常分析,模型分类器之间彼此形成纠错的作用,模型泛用性更强、准确度更高;同时采用有标记数据和无标记数据对模型进行训练,既能克服有标记数据标记成本高的问题,又能克服无标记数据检测精确低的问题,得到的模型检测准确度高,可靠性强,且模型训练成本可控;训练过程中对误差函数的超参数及数据集标记比重进行调整,得到多个训练模型参数文件,为异常检测工作减轻了工作负担,提高了异常检测的准确率。
[0130]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献