
一种基于集成学习lscp算法的台区户变关系纠查方法及系统
技术领域
1.本发明属于电力配电领域,涉及户变关系辨识,具体为一种基于集成学习lscp算法的台区户变关系纠查方法。
背景技术:2.配电线路的改造升级使台区的户变关系变动频繁,若配电系统的台区户变信息更新不及时或人工更新时录入错误,会使系统内台区户变关系出现错误,影响电网的运维检修,以及造成营销系统中台区总表与用户表计量数据不一致,台区线损出现异常,影响台区的精益化管理。
3.为解决户变关系错误造成台区线损异常等问题,需要对台区进行户变关系的纠查,将户变关系错误的用户识别出来并进行更正。传统的工程方法有瞬时停电法、脉冲电流法等,需要人工现场核查,准确性和效率都较低,不符合配网的智能化发展目标。因此,亟需提出一种新的户变关系纠查方法,满足准确率和智能化的要求,助力配网的数字化转型。
4.现有技术文件1(cn114021430 a)提出一种基于电量和电压信息融合的户变关系辨识方法,根据台区总表电量和用户电量守恒,构建台区用电量参数化模型;利用随机梯度迭代和学习率自调整方法建立台区用电量参数化模型的全局最优解的求解过程,对用户与台区的隶属关系进行初步辨识;采用基于滑动时间窗的多次判断方法,将台区历史数据划分为多个具有不同起始日期的时间窗,进行多次求解,将多次求解结果取并集,得到户变隶属关系,即初步户变识别结果;由户变关系正常用户的电压数据构成训练样本;用一类支持向量机的方法,学习台区户变关系正常用户的电压特征,构建户变关系识别模型,对台区当前档案中的所有用户进行户变识别,得到其中户变关系档案错误的用户,实现对台区户变关系的正确辨识。现有技术文件1的不足之处在于:在处理电压数据时,仅使用了一种基于一类支持向量机的识别方法,导致户变关系识别准确率不高。
技术实现要素:5.为解决现有技术中存在的不足,本发明的目的在于,提供一种基于集成学习lscp(local selective combination in parallel outlier ensembles)算法的台区户变关系纠查方法及系统,使用局部选择组合的并行集成异常检测算法lscp,并将4种经典的异常检测算法作为基异常检测器,对台区内用户电压曲线差异性进行精准检测,实现台区户变关系的纠查。同时,通过计算线损率实现lscp算法中关键输入参数的确定,提高算法的实用性。
6.本发明采用如下的技术方案。
7.一种基于集成学习lscp算法的台区户变关系纠查方法,包括以下步骤:
8.步骤1,采集多个台区n天内的台区运行数据;
9.步骤2,基于多个基异常检测器和台区运行数据计算台区内用户的异常分数以构建户变关系纠查模型;
10.步骤3,户变关系纠查模型筛选台区内户变关系正常用户并根据户变关系正常用户的运行数据计算台区线损率以确定该模型的最佳输入参数;
11.步骤4,在所述户变关系纠查模型中输入最佳输入参数,得到台区内户变关系错误用户。
12.台区运行数据包括:台区内所有用户的日用电量和电压读数、台区内供电变压器日用电量和电压读数。
13.户变关系纠查模型包括多个基异常检测器,其中基异常检测器用于判断台区内用户的户变关系。
14.户变关系纠查模型的构建过程包括:
15.s1、输入台区内所有用户的电压读数,并利用多个基异常检测器计算各用户电压读数的异常分数;
16.s2、将异常分数最高的用户判定为户变关系错误用户,其余用户被判定为户变关系正常用户。
17.s1还包括训练基异常检测器:将台区内所有用户的电压读数分别输入r个基异常检测器计算得到r个该用户电压读数的局部异常分数,并建立局部异常分数矩阵,分别计算该矩阵内数据与局部异常分数的最大值之间的相关性,筛选出相关性最大的x个基异常检测器。
18.构建过程还包括:利用筛选出的x个基异常检测器,计算得到第i个台区内用户xi的x个异常分数,将x个异常分数的平均值作为该用户的异常分数。
19.台区内所有用户的异常分数构成异常分数集s,异常分数集s中分数高的前y个数据视为台区内户变关系错误用户的个数,其中:y=n
×
c,式中,n为台区内用户总数,c为异常数据比例,通过异常数据比例c,控制台区内户变关系错误用户的个数y。
20.筛选出的基异常检测器包括孤立森林、oc-svm、copod和离群因子检测算法lof;
21.采用皮尔逊相关系数计算所述矩阵内数据与局部异常分数的最大值之间的相关性。
22.步骤3还包括:
23.步骤301,将异常数据比例在区间(0,0.1]每隔1/n进行遍历取值,得到多个异常数据比例值,其中n为台区内用户总数;
24.步骤302,将异常数据比例值输入至户变关系纠查模型以得到台区内户变关系正常用户和台区内户变关系错误用户;
25.步骤303,选用台区内户变关系正常用户的日用电量之和计算台区线损率,并设置最低线损率阈值;
26.步骤304,判断台区线损率是否低于最低线损阈值,如果否,则认为存在户变关系错误用户的漏查并执行步骤305,如果是则取值下一个异常数据比例值并循环执行步骤302;
27.步骤305,判断所述台区线损率是否为最小台区线损率,如果否,则取值下一个异常数据比例值并循环执行步骤302,如果是,则该台区线损率所对应的异常数据比例值为最佳输入参数。
28.台区线损率的计算方式如下:
[0029][0030]
最低线损阈值的取值范围是[-2%,5%]。
[0031]
得到台区内户变关系错误用户后,还人工核实户变关系错误用户,更新系统户变关系档案。
[0032]
一种基于集成学习lscp算法的台区户变关系纠查方法的一种基于集成学习lscp算法的台区户变关系纠查系统,包括:
[0033]
数据采集模块,用于采集台区运行数据:台区内所有用户的日用电量和电压读数、台区内供电变压器日用电量和电压读数;
[0034]
模型搭建模块:用于根据多种异常检测算法和台区运行数据构建户变关系纠查模型;
[0035]
数据计算模块:用于计算台区内用户电压读数的局部异常分数、异常分数、台区线损率和矩阵内数据与局部异常分数的最大值之间的相关性;
[0036]
算法筛选模块:用于根据数据计算模块的计算结果筛选出于基异常检测器;
[0037]
输出模块:用于根据模型的输出结果得到台区内户变关系错误用户。
[0038]
本发明的有益效果在于,与现有技术相比,本发明结合了多个异常检测模型,实现对数据不同角度的检测,加强对数据特征的学习,以获得更好的性能和可靠性,加强了纠查结果的稳定性和准确性,将具有集成框架的异常检测方法应用到户变关系的辨识纠查中。本发明能够以现有的用电信息系统、营销系统等的实际台区运行数据为依据,利用一种基于局部选择组合的并行集成异常检测算法来进行户变关系纠查,计算出某一台区内户变关系错误的用户,在系统层面明确现场核查的方向。
[0039]
本发明的有益效果还包括:
[0040]
(1)本发明从线损率的角度对算法关键输入参数进行优化确定,避免人为设置参数影响户变关系纠查结果,同时也增加结果的可靠性和准确性,进一步提高本文提出的户变关系纠查算法的实用性。
[0041]
(2)基于本发明中的方法,针对大量台区通过控制异常数据比例控制异常数据的个数,即户变关系错误用户个数,可以精准地判断出户变关系错误的用户列表,再基于实际工程检修人员的逐户排查,核查出具体的错误用户,有效降低现场核查的工作量,提高现场核查的效率,节约了核查成本。
附图说明
[0042]
图1为本发明中一种基于集成学习lscp算法的台区户变关系纠查方法流程示意图;
[0043]
图2为本发明中集成异常检测算法lscp的总体框架;
[0044]
图3为本发明户变关系纠查模型最佳输入参数确定的流程图。
具体实施方式
[0045]
下面结合附图对本技术作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本技术的保护范围。
[0046]
图1为本发明中一种基于集成学习lscp算法的台区户变关系纠查方法流程示意图。如图1所示包括以下步骤:
[0047]
步骤1,采集多个台区n天内的台区运行数据;其中台区运行数据包括:台区内所有用户的日用电量和电压读数、台区内供电变压器日用电量和电压读数。
[0048]
步骤2,基于多个基异常检测器和台区运行数据计算台区内用户的异常分数以构建户变关系纠查模型;
[0049]
户变关系纠查模型户变关系纠查模型包括多个基异常检测器,其中基异常检测器用于判断台区内用户的户变关系。
[0050]
其构建过程包括:
[0051]
s1、输入台区内所有用户的电压读数,并利用多个基异常检测器计算各用户电压读数的异常分数;
[0052]
s2、将异常分数最高的用户判定为户变关系错误用户,其余用户被判定为户变关系正常用户。
[0053]
具体地,训练基异常检测器:将台区内所有用户的电压读数分别输入r个基异常检测器计算得到r个该用户电压读数的局部异常分数,并建立局部异常分数矩阵,分别计算该矩阵内数据与局部异常分数的最大值之间的相关性,筛选出相关性最大的x个基异常检测器。
[0054]
利用筛选出的x个基异常检测器,计算得到第i个台区内用户xi的x个异常分数,将x个异常分数的平均值作为该用户的异常分数。筛选出的基异常检测器包括孤立森林、oc-svm、copod和离群因子检测算法lof;采用皮尔逊相关系数计算所述矩阵内数据与局部异常分数的最大值之间的相关性。
[0055]
台区内所有用户的异常分数构成异常分数集s,异常分数集s中分数高的前y个数据视为台区内户变关系错误用户的个数,其中:y=n
×
c,式中,n为台区内用户总数,c为异常数据比例,通过异常数据比例c,控制台区内户变关系错误用户的个数y。
[0056]
步骤3,户变关系纠查模型筛选台区内户变关系正常用户并根据户变关系正常用户的运行数据计算台区线损率以确定该模型的最佳输入参数,具体包括:
[0057]
步骤301,将异常数据比例在区间(0,0.1]每隔1/n进行遍历取值,得到多个异常数据比例值,其n为台区内用户总数;
[0058]
步骤302,将异常数据比例值输入至户变关系纠查模型以得到台区内户变关系正常用户和台区内户变关系错误用户;
[0059]
步骤303,选用台区内户变关系正常用户的日用电量之和计算台区线损率,并设置最低线损率阈值;
[0060]
步骤304,判断台区线损率是否低于最低线损阈值,如果否,则认为存在户变关系错误用户的漏查并执行步骤305,如果是则取值下一个异常数据比例值并循环执行步骤202;
[0061]
步骤305,判断所述台区线损率是否为最小台区线损率,如果否,则取值下一个异
常数据比例值并循环执行步骤202,如果是,则该台区线损率所对应的异常数据比例值为最佳输入参数。其中台区线损率的计算方式如下:
[0062][0063]
最低线损阈值的取值范围是[-2%,5%]。
[0064]
步骤4,在所述户变关系纠查模型中输入最佳输入参数,得到台区内户变关系错误用户。
[0065]
得到台区内户变关系错误用户后,还人工核实户变关系错误用户,更新系统户变关系档案。
[0066]
图2是集成异常检测算法lscp的总体框架。lscp是由多个异常检测算法并行集成、完全无监督的异常检测算法。lscp算法的特点是:
①
多个基异常检测模型之间独立计算,并行执行判断;
②
根据基异常检测模型的表现,动态选择组合基模型;
③
随机采样数据不同维度的子序列构建特征样本子空间,强调数据的局部异常;
④
支持组合异构的基异常检测模型,也支持组合同构的基异常检测模型。组合异构模型可以让模型具有多样性,组合同构模型,通过设置不同的超参,也能实现多样性。lscp算法对异常数据检测的具体流程包括以下步骤。
[0067]
输入待检测数据集x∈rn×d,该待检测数据集为台区内所有用户的电压读数,基异常检测器为c={c1,c2,
…cr
},对r个基异常检测器进行训练,得到异常分数矩阵o(x)∈rn×r。
[0068]
o(x)=[c1(x),c2(x),
…
,cr(x)]
ꢀꢀꢀ
(1)
[0069]
对于每一个数据xi∈xxi∈r1×d,进行随机采样,构建维的特征子序列xi′
,得到数据集x的一组特征子空间。
[0070]
在特征子空间中,计算xi与xi′
的欧式距离,利用k近邻法(knn),得到与xi′
距离最近的k个近邻样本。进行t组随机采样,得到t组特征子空间,在数据xi的特征子空间的近邻样本中,将出现次数超过t/2的样本,作为xi的局部空间ψi。
[0071][0072]
每个数据xi的局部空间的基数b不一样,即其中包含的样本数量不同。
[0073]
得到数据xi的局部空间后,利用基异常检测器,得到xi的局部异常分数o(ψi)∈rb×r。假设xi的局部空间中包含10个数据样本,通过r个基异常检测器计算局部空间的异常分数,得到一个10
×
r维的局部异常分数矩阵o(ψi)。
[0074]
将r个基异常检测器得分的最大值作为数据样本的伪目标target,则数据xi的伪目标为target(xi),其计算方式如下:
[0075]
target(xi)=f(o(ψi))
max
ꢀꢀꢀ
(3)
[0076]
计算局部异常分数矩阵o(ψi)与数据xi的伪目标target(ψi)之间的皮尔逊相关系数(pearson correlation coefficient),选择局部异常分数矩阵o(ψi)中与伪目标最相似的x个局部异常分数,将计算出这x个局部异常分数的基异常检测器作为户变关系纠查模型的基异常检测器。
[0077]
利用选择的x个基异常检测器,计算数据xi的异常分数,得到一个异常分数矩阵o(xi)∈r
x
×1,并将这x个异常分数的平均值作为xi的异常分数s,其中
[0078]
s=f
avg
(o(xi))
ꢀꢀꢀ
(4)
[0079]
通过上述方法计算得到待检测数据集x中所有数据的异常分数,并得到一个异常分数集s(s∈rn×1)后,通过输入异常数据比例c,控制数据集中的异常数据的个数y,y即为台区内户变关系错误的用户个数,异常分数s中分数高的前y个数据视为异常数据。
[0080]
y=n
×cꢀꢀꢀ
(5)
[0081]
式中n为数据集中样本数量,即台区内用户总数,c为异常数据比例。
[0082]
为提升集成模型的可靠性和稳定性,本文对lscp算法组合异构基异常检测模型,使用四种经典的异常检测算法作为基异常检测器,分别为孤立森林(isolation forest)、oc-svm(one-class support vector machine)、copod(copula-based outlier detection)、lof(local outlier factor)。实现对数据异常不同角度的检测,加强对数据差异特征的学习。
[0083]
孤立森林是基于划分的思想实现数据的异常检测,对数据集进行划分,其中样本划分的次数越少,表示其越容易被孤立,该样本的异常程度越高。oc-svm是针对不均衡样本提出的一种异常数据检测算法,通过将原始数据通过核函数映射到高维空间,使正常数据和异常数据有明显的差异,构建超平面将两者分离。copod是基于统计的方法实现异常检测,针对多维数据和数据分布的多样性,计算数据每个点的尾端概率,并计算分布的偏度来修正数据的尾端概率,实现对数据的异常程度的估计。lof是基于密度的思想,通过比较每个点和其邻域点的密度来进行异常检测,而且lof算法通过点的第k邻域计算密度,不会造成因数据密度分散情况不同的异常误判。
[0084]
为了避免用户的随机用电行为对户变关系纠查的影响,以及使户变关系正常用户和错误用户电压曲线之间的差异性放大,本技术选择台区内用户两天的电压数据作为输入。
[0085]
不同台区用户之间的电压数据存在差异,表现出不同的趋势和特征,且台区内户变关系错误的用户占比很小,可以将台区户变关系纠查问题定义为不均衡样本的异常数据检测。为了结果的准确性和可靠性,本文采用具有集成框架的lscp异常检测算法进行户变关系纠查。
[0086]
基于lscp算法的台区户变关系纠查方法的原理为:输入台区用户的电压数据,利用lscp算法,对电压数据的异常趋势进行精准检测,判断电压数据的异常程度,得到各用户电压数据的异常分数。将数据异常分数最高的个别用户判定为户变关系错误用户,输出为1。其余用户被判定为户变关系正常用户,输出为0。使用lscp算法进行户变关系纠查时,可调整的参数如下表1:
[0087]
表1lscp算法参数说明
[0088][0089]
调整异常数据比例,可改变输出的户变关系错误用户的个数;调整knn近邻样本个数、随机采样次数、随机采样最低维度、随机采样最高维度、特征空间样本次数阈值,可改变数据的局部空间。
[0090]
异常数据比例控制输出异常数据的个数,即户变关系错误用户个数,是户变关系纠查算法的关键输入参数。在对台区户变关系进行纠查时,台区户变关系错误用户的比例是未知的。对于海量台区,若将异常数据比例设置为固定值,将会影响计算结果的准确性和效率。本文尝试从线损率的角度对算法关键输入参数进行优化确定,避免人为设置参数影响户变关系纠查结果,同时也增加结果的可靠性和准确性,进一步提高本文提出的户变关系纠查算法的实用性。
[0091]
台区和用户的电量关系,理论上有:
[0092][0093]
式中,p是台区总表用电量,p(i)是用户i用电量,n是台区用户数量。
[0094]
实际上,由于台区内存在线损:
[0095][0096]
根据供电公司规定,台区线损率正常一个范围内波动。台区系统档案内若存在户变关系错误的用户,会造成营销的计量系统中台区总用电量台区小于用户电量之和,如式(8)。
[0097][0098]
因此,本实施例利用台区线损率确定户变关系纠查模型的最佳输入参数,其确定过程如附图3所示:
[0099]
步骤301,将异常数据比例在区间(0,0.1]每隔1/n进行遍历取值,得到多个异常数据比例值,其n为台区内用户总数;
[0100]
步骤302,将异常数据比例值输入至户变关系纠查模型以得到台区内户变关系正常用户和台区内户变关系错误用户;
[0101]
步骤303,选用台区内户变关系正常用户的日用电量之和计算台区线损率,并设置最低线损率阈值;
[0102]
步骤304,判断台区线损率是否低于最低线损阈值,如果否,则认为存在户变关系错误用户的漏查并执行步骤305,如果是则取值下一个异常数据比例值并循环执行步骤202;
[0103]
步骤305,判断所述台区线损率是否为最小台区线损率,如果否,则取值下一个异常数据比例值并循环执行步骤202,如果是,则该台区线损率所对应的异常数据比例值为最佳输入参数。其中台区线损率的计算方式如下:
[0104][0105]
最低线损阈值的取值范围是[-2%,5%]。
[0106]
输入不同异常数据比例值,利用lscp算法进行计算,得到户变关系错误用户的编号,确定台区户变关系正常的用户。本实施例将异常数据比例在区间(0,0.1]每隔0.01进行遍历取值,原因是本具体实施例模拟场景中台区用户个数在100左右,间隔为0.01时,每次输出户变关系错误用户个数大约加1。若取0.005,将会使计算量增大;取0.02,参数变化过大,难以找到最优参数。
[0107]
考虑台区正常运行时存在线损,设置最低线损率阈值,最低线损率阈值可根据系统历史线损记录或实际台区特点进行设定。
[0108]
根据不同输入参数计算得到的线损率,若低于最低线损阈值线损,认为存在户变关系错误用户的漏查。在增加输入异常数据比例值时,输出户变关系错误用户的个数增加,可能会出现将户变关系正常用户误判为错误用户,这样将导致台区用户用电量之和进一步减少,台区线损率增大。因此,在最低线损阈值的基础上,选用最小线损率所对应的输入值作为最优参数。
[0109]
本实施例的基于集成学习lscp算法的台区户变关系纠查方法的具体实现步骤可以总结为如下:
[0110]
从用采系统中采集台区运行数据,包括电压数据和日总用电量数据。将异常数据比例在区间(0,0.1]内每隔0.01进行遍历取值,使用lscp算法进行户变关系纠查,得到户变关系正常的用户,计算台区线损率,确定满足条件的值,得到最佳输入参数。输入最佳参数,使用lscp算法进行户变关系纠查,得到台区内户变关系错误用户。工作人员现场核实户变关系错误用户,及时更新系统户变关系档案。
[0111]
本实施例还提供一种基于上述台区户变关系纠查方法的基于lscp算法的台区户变关系纠查系统,具体包括:
[0112]
数据采集模块,用于采集台区运行数据:台区内所有用户的日用电量和电压读数、台区内供电变压器日用电量和电压读数;
[0113]
模型搭建模块,用于根据多种异常检测算法和台区运行数据构建户变关系纠查模型;
[0114]
数据计算模块,用于计算台区内用户电压读数的局部异常分数、异常分数、台区线损率和矩阵内数据与局部异常分数的最大值之间的相关性;
[0115]
算法筛选模块,用于根据数据计算模块的计算结果筛选出于基异常检测器;
[0116]
输出模块,用于根据模型的输出结果得到台区内户变关系错误用户。
[0117]
为了验证本文方法的普适性和可靠性,在模拟场景下,对6个台区,利用两天的电压数据对台区户变关系进行纠查,测试结果如表2。
[0118]
表2模拟场景下的测试结果
[0119][0120]
在表2中,台区5的查全率为80%、查准率为98.71%,漏查了1个户变关系错误的用户,其余5个台区的查全率和查准率均为100%。但是对于台区5,若使用2天以上的电压数据进行计算时,查全率和查准率依然可以达到100%。在实际应用中,为了更高的准确率和可靠性,在台区电压数据比较充足的情况下,可以采用2天以上的电压数据进行计算。因此,本发明在台区户变关系辨识纠查中具有很高的准确性和适用性,可以很好地适应海量台区户变关系纠查的实际应用。
[0121]
本发明的有益效果在于,与现有技术相比,本发明结合了多个异常检测模型,实现对数据不同角度的检测,加强对数据特征的学习,以获得更好的性能和可靠性,加强了纠查结果的稳定性和准确性,将具有集成框架的异常检测方法应用到户变关系的辨识纠查中。本发明能够以现有的用电信息系统、营销系统等的实际台区运行数据为依据,利用一种基于局部选择组合的并行集成异常检测算法来进行户变关系纠查,计算出某一台区内户变关系错误的用户,在系统层面明确现场核查的方向。
[0122]
本发明的有益效果还包括:
[0123]
(1)本发明从线损率的角度对算法关键输入参数进行优化确定,避免人为设置参数影响户变关系纠查结果,同时也增加结果的可靠性和准确性,进一步提高本文提出的户变关系纠查算法的实用性。
[0124]
(2)基于本发明中的方法,针对大量台区通过控制异常数据比例控制异常数据的个数,即户变关系错误用户个数,可以精准地判断出户变关系错误的用户列表,再基于实际工程检修人员的逐户排查,核查出具体的错误用户,有效降低现场核查的工作量,提高现场核查的效率,节约了核查成本。本发明申请人结合说明书附图对本发明的实施示例做了详细的说明与描述,但是本领域技术人员应该理解,以上实施示例仅为本发明的优选实施方案,详尽的说明只是为了帮助读者更好地理解本发明精神,而并非对本发明保护范围的限制,相反,任何基于本发明的发明精神所作的任何改进或修饰都应当落在本发明的保护范围之内。