发明内容
针现有技术的不足,本发明提出了一种反窃电方法及系统,其能够推动反窃电技术研究和预警防控能力提升,进而全面提升国网公司的综合反窃电侦查能力。
本发明解决其技术问题采取的技术方案是:
一方面,本发明实施例提供的一种反窃电方法,包括以下步骤:
筛选出窃电样本,对已有窃电类别进行分类并对已有窃电样本和正常样本进行类别标记;
排除正常样本形成疑似窃电样本集,并进行类别标记;
针对疑似窃电样本集构建基于GRU算法的疑似窃电识别模型;
将疑似窃电样本集数据输入疑似窃电识别模型,输出二分类的疑似窃电样本与疑似正常样本;
根据疑似窃电识别模型输出结果与疑似窃电样本集的类别标记计算其识别准确率,并对模型参数进行反馈调整;
根据调整后的模型参数确定自适应类识别的反窃电防御模拟模型;
利用反窃电防御模拟模型对用户用电实时数据进行反窃电检测。
作为本实施例一种可能的实现方式,所述排除正常样本形成疑似窃电样本集并进行类别标记的过程为:采用半监督k-NNM算法将部分标记的历史采集样本集进行聚类划分,排除与标记正常样本聚类的样本后,形成疑似窃电样本集,疑似窃电样本集包含部分标记窃电样本聚类的样本集和无标记样本的聚类样本集,将与有标记窃电样本聚类的样本集进行疑似窃电类别标记。
作为本实施例一种可能的实现方式,所述采用半监督k-NNM算法将部分标记的历史采集样本集进行聚类划分过程具体包括以下步骤:
31,在初始化阶段,基于历史采集的特征样本集为B′={b1′,b2′,…,bg′,…,b′G}及样本集内包含的有标记特征样本{bh′…}∈B,将有标记的特征样本归类,共计有k个类别则分为k+1个聚类,第k+1~k+a类为判别失败类,将样本聚类所得簇划分为C={c1,c2,…,ck,ck+1};
32,计算每个无标记样本bi′一对一对应有标记样本bj′的距离,采用多维空间余弦相似度算法计算历史采集样本间的相似度:
其中,m∈(1,2,…,M),M为特征数,选取cosθgh小于设定阈值L的样本bg′归入对应分类簇
Cr=Cr∪{bg′},r∈{1,2,…,k+a} (2)
对于未归入对应类的样本,将其归于第k+1~k+a类;
33,对第k+1~k+a类内的样本数据进行均值识别:
其中,是聚类簇Cr的均值向量;
34,计算每个第k+1~k+a类无标记样本bg′与各聚类簇均值向量ur的距离 l′gr=||bg′-ur||2,选取l′gr的最小的值r=arg minr∈{1,2,…,k+1}lgr,将样本bg′归入该簇 Cr=Cr∪{bg′},r∈{1,2,…,k};
35,计算更新后的各聚类簇的均值向量ur与聚类分割阈值γ、z,并计算本轮的平方误差E,如果所有ur均未更新,则停止迭代,分类结果作为样本归类输出,转至步骤37;
36,如果存在ur更新的数据,迭代次数w=w+1,
①如果w<W,则返回步骤34,W为迭代次数阈值,
②如果w=W,则选取首次归类和历次迭代平方误差E的最小值作为样本归类输出;
37,根据样本归类输出,完成无标记样本的批量数据聚类与划分,并将与已标记正常样本聚类的样本数据剔除,形成高风险窃电样本集。
作为本实施例一种可能的实现方式,所述针对疑似窃电样本集构建基于GRU算法的疑似窃电识别模型的过程为:
基于历史采集样本集,提取标记的窃电样本集和正常用电样本集,针对窃电样本特征数据关联复杂且用电数据存在时序规律,采用GRU算法构建疑似窃电识别模型,通过对高风险窃电样本集进行窃电行为特征数据挖掘,以时间序列特征为输入,以神经网络提取并保留窃电样本用电数据的历史轨迹,并以实际正负样本的识别准确率构建损失函数,通过梯度下降对模型参数进行调整。
作为本实施例一种可能的实现方式,所述采用GRU算法构建疑似窃电识别模型的过程为:
基于高风险窃电样本集构建深度学习框架;
设定优化函数;
构建窃电识别模型,采用优化函数对输入层、隐藏层和输出层进行赋值;
基于窃电样本和正常样本数据,采用梯度下降法对窃电识别模型进行训练;
将训练后的窃电识别模型作为疑似窃电识别模型。
作为本实施例一种可能的实现方式,所述根据疑似窃电识别模型的识别准确率对模型参数进行反馈调整的过程为:
如果识别准确率小于准确率阈值,则进行参数反馈调整,调节半监督k-NNM 的标记样本数据,将窃电样本识别验证数据反馈至疑似窃电识别模型,采用损失函数调节模型参数,如果识别准确率大于等于准确率阈值,则进入下一步。
作为本实施例一种可能的实现方式,所述反窃电方法还包括以下步骤:
对用户用电样本数据进行预处理,并将预处理后数据存入历史样本数据库。
作为本实施例一种可能的实现方式,所述对用户用电样本数据进行预处理的过程为:通过用电信息采集系统收集各类典型用户用电数据样本,并以典型用户用电行为数据作为历史采集样本集,数据集包括用户窃电相关的各类特征数据,采用同一样本众数的方式进行缺失数据修复,并进行数据去噪、删除离群点和数据去冗余处理。
另一方面,本发明实施例提供的一种反窃电系统,包括:
样本筛选模块,用于筛选出窃电样本,对已有窃电类别进行分类并对已有窃电样本和正常样本进行类别标记;
疑似窃电样本样本模块,用于排除正常样本形成疑似窃电样本集,并进行类别标记;
模型构建模块,用于针对疑似窃电样本集构建基于GRU算法的疑似窃电识别模型;
疑似窃电识别模型模块,用于将疑似窃电样本集数据输入疑似窃电识别模型,输出二分类的疑似窃电样本与疑似正常样本;
参数反馈调整模块,用于根据疑似窃电识别模型输出结果与疑似窃电样本集的类别标记计算其识别准确率,并对模型参数进行反馈调整;
反窃电防御模拟模型确定模块,用于根据调整后的模型参数确定自适应类识别的反窃电防御模拟模型;
反窃电检测模块,用于利用反窃电防御模拟模型对用户用电实时数据进行反窃电检测。
作为本实施例一种可能的实现方式,所述疑似窃电样本样本模块包括:
聚类划分模块,用于采用半监督k-NNM算法将部分标记的历史采集样本集进行聚类划分,排除与标记正常样本聚类的样本后,形成疑似窃电样本集;
疑似窃电类别标记模块,用于将与有标记窃电样本聚类的样本集进行疑似窃电类别标记。
作为本实施例一种可能的实现方式,所述聚类划分模块包括:
样本聚类模块,用于在初始化阶段,基于历史采集的特征样本集为 B′={b1′,b2′,…,bg′,…,b′G}及样本集内包含的有标记特征样本{bh′…}∈B,将有标记的特征样本归类,共计有k个类别则分为k+1个聚类,第k+1~k+a类为判别失败类,将样本聚类所得簇划分为C={c1,c2,…,ck,ck+1};
相似度计算模块,用于计算每个无标记样本bi′一对一对应有标记样本bj′的距离,采用多维空间余弦相似度算法计算历史采集样本间的相似度:
其中,m∈(1,2,…,M),M为特征数,选取cosθgh小于设定阈值L的样本bg′归入对应分类簇
Cr=Cr∪{bg′},r∈{1,2,…,k+a} (2)
对于未归入对应类的样本,将其归于第k+1~k+a类;
均值识别模块,用于对第k+1~k+a类内的样本数据进行均值识别:
其中,是聚类簇Cr的均值向量;
均值向量计算模块,用于计算每个第k+1~k+a类无标记样本bg′与各聚类簇均值向量ur的距离l′gr=||bg′-ur||2,选取l′gr的最小的值r=arg minr∈{1,2,…,k+1}lgr,将样本bg′归入该簇Cr=Cr∪{bg′},r∈{1,2,…,k};
样本归类输出模块,用于计算更新后的各聚类簇的均值向量ur与聚类分割阈值γ、z,并计算本轮的平方误差E,如果所有ur均未更新,则停止迭代,本轮分类结果作为样本归类输出;
迭代模块,用于存在ur更新的数据时,迭代次数加1后如果小于迭代次数阈值则继续迭代,否则选取首次归类和历次迭代平方误差E的最小值作为样本归类输出;
高风险窃电样本集形成模块,用于根据样本归类输出,完成无标记样本的批量数据聚类与划分,并将与已标记正常样本聚类的样本数据剔除,形成高风险窃电样本集。
作为本实施例一种可能的实现方式,所述模型构建模块包括:
样本集提取模块,用于基于历史采集样本集,提取标记的窃电样本集和正常用电样本集;
GRU模块,用于针对窃电样本特征数据关联复杂且用电数据存在时序规律,采用GRU算法构建疑似窃电识别模型;
参数调整模块,用于通过对高风险窃电样本集进行窃电行为特征数据挖掘,以时间序列特征为输入,以神经网络提取并保留窃电样本用电数据的历史轨迹,并以实际正负样本的识别准确率构建损失函数,通过梯度下降对模型参数进行调整。
作为本实施例一种可能的实现方式,所述参数反馈调整模块,用于进行如下参数反馈调整:
如果识别准确率小于准确率阈值,则进行参数反馈调整,调节半监督k-NNM 的标记样本数据,将窃电样本识别验证数据反馈至疑似窃电识别模型,采用损失函数调节模型参数,如果识别准确率大于等于准确率阈值,则不对模型参数进行反馈调整。
作为本实施例一种可能的实现方式,所述的反窃电系统还包括:
数据预处理模块,用于对用户用电样本数据进行预处理,并将预处理后数据存入历史样本数据库。
作为本实施例一种可能的实现方式,所述数据预处理模块包括:
历史样本集采集模块,用于通过用电信息采集系统收集各类典型用户用电数据样本,并以典型用户用电行为数据作为历史采集样本集;
预处理模块,用于采用同一样本众数的方式进行缺失数据修复,并进行数据去噪、删除离群点和数据去冗余处理。
本发明实施例的技术方案可以具有的有益效果如下:
本发明实施例的技术方案在对历史采集数据预处理的基础上进行部分正负样本标记,采用半监督k-NNM算法对实现窃电类与正常类的划分,生成高风险疑似窃电样本类,随后采用GRU(Gated Recurrent Unit,门控循环单元)算法构建二分类的疑似窃电识别模型,保证即使在新窃电类别无标注的情况下,仍可基于窃电规律加以识别,提高了反窃电识别几率。
本发明基于少量的可用标签数据作为实验的仿真数据集,同时,基于反窃电实验用例样本数据采用机器学习算法实现窃电数据分析与处理,推动了反窃电技术研究和预警防控能力提升,进而全面提升了国网公司的综合反窃电侦查能力。
具体实施方式
下面结合附图与实施例对本发明做进一步说明:
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例1
图1是根据一示例性实施例示出的一种反窃电方法流程图。如图1所示,本发明实施例提供的一种反窃电方法,包括以下步骤:
步骤1:对用户用电样本数据进行预处理,并将预处理后数据存入历史样本数据库。通过用电信息采集系统收集各类典型用户用电数据样本,并以典型用户用电行为数据作为历史采集样本集,数据集包括用户窃电相关的各类特征数据,采用同一样本众数的方式进行缺失数据修复,并进行数据去噪、删除离群点和数据去冗余处理。
步骤2:筛选出窃电样本,对已有窃电类别进行分类并对已有窃电样本和正常样本进行类别标记。基于历史采集样本集筛选出窃电样本,对已有窃电类别进行分类,并对已有窃电样本和正常样本进行部分类别标记。
步骤3:排除正常样本形成疑似窃电样本集,并进行类别标记。针对部分标记的历史采集样本集,采用半监督k-NNM算法将其聚类划分,排除与标记正常样本聚类的样本后,形成疑似窃电样本集,疑似窃电样本集包含部分标记窃电样本聚类的样本集和无标记样本的聚类样本集,将与有标记窃电样本聚类的样本集进行疑似窃电类别标记。
所述步骤3的具体过程为:采用半监督k-NNM算法将部分标记的历史采集样本集进行聚类划分,即首先采用的样本一对一模式,并基于k近邻聚类理念,最大程度简化初始分类,随后借鉴K均值聚类的理念,采用一对均值模式最大程度依赖最新无标记样本数据,以迭代优化保障样本彼此间最大相似距离的聚类,同时为避免陷入迭代死循环,设置迭代阈值,根据平方误差E作出类别划分,从而在仿真数据存在历史未标记的窃电类别时,可将其进行归类处理生成新类别。
采用半监督k-NNM算法将部分标记的历史采集样本集进行聚类划分过程具体包括以下步骤:
31,在初始化阶段,基于历史采集的特征样本集为B′={b1′,b2′,…,bg′,…,b′G}及样本集内包含的有标记特征样本{bh′…}∈B,将有标记的特征样本归类,共计有k个类别则分为k+1个聚类,第k+1~k+a类为判别失败类,将样本聚类所得簇划分为C={c1,c2,…,ck,ck+1};
32,计算每个无标记样本bi′一对一对应有标记样本bj′的距离,采用多维空间余弦相似度算法计算历史采集样本间的相似度:
其中,m∈(1,2,…,M),M为特征数,选取cosθgh小于设定阈值L的样本bg′归入对应分类簇
Cr=Cr∪{bg′},r∈{1,2,…,k+a} (2)
对于未归入对应类的样本,将其归于第k+1~k+a类,此时第k+1~k+a类样本相对于整体样本而言数量较少;
33,对第k+1~k+a类内的样本数据进行一对均值识别,即所有无标记样本首次归类结束后,求平方误差:
其中,是聚类簇Cr的均值向量,E越小表明聚类簇内相似度越高;
34,为实现最小化E,半监督k-NNM采用贪心算法,以迭代优化来实现近似求解,设置迭代次数阈值W,初始化迭代次数w=1,计算每个第k+1~k+a 类无标记样本bg′与各聚类簇均值向量ur的距离l′gr=||bg′-ur||2,选取l′gr的最小的值,即r=arg minr∈{1,2,…,k+1}lgr,则将样本bg′归入该簇Cr=Cr∪{bg′},r∈{1,2,…,k};
35,随后计算本轮更新后的各聚类簇的均值向量ur与聚类分割阈值γ、z,并计算本轮的平方误差E,如果所有ur均未更新,则停止迭代,本轮分类结果作为样本归类输出,转至步骤37;
36,如果存在ur更新的数据,w=w+1,
①如果w<W,则返回步骤34,
②如果w=W,则选取首次归类和历次迭代平方误差E的最小值作为样本归类输出;
37,根据样本归类输出,完成无标记样本的批量数据聚类与划分,并将与已标记正常样本聚类的样本数据剔除,形成高风险窃电样本集。
步骤4:针对疑似窃电样本集构建基于GRU算法的疑似窃电识别模型。基于历史采集样本集,提取步骤2标记的窃电样本集和正常用电样本集,构建基于GRU算法的疑似窃电识别模型。
所述步骤4的具体过程为:针对窃电样本特征数据关联复杂且用电数据存在时序规律,采用GRU算法实现窃电识别模型的构建,通过对高风险窃电样本集进行窃电行为特征数据挖掘,以时间序列特征为输入,以神经网络提取并保留窃电样本用电数据的历史轨迹,并以实际正负样本的识别准确率构建交叉熵损失函数,通过梯度下降对GRU的模型参数进行调整,从而完成窃电行为识别规律的捕获,基于时序规律提高对窃电特征数据的综合性挖掘。
构建基于GRU算法的疑似窃电识别模型的具体步骤如下:
41,基于高风险窃电样本集构建深度学习框架;
42,设定优化函数;
43,构建窃电识别模型,采用优化函数对输入层、隐藏层和输出层进行赋值;
44,基于窃电样本和正常样本数据,采用梯度下降法对窃电识别模型进行训练;
45,将训练后的窃电识别模型作为疑似窃电识别模型。
步骤5:将疑似窃电样本集数据输入疑似窃电识别模型,输出二分类的疑似窃电样本与疑似正常样本。
步骤6:根据疑似窃电识别模型输出结果与疑似窃电样本集的类别标记计算其识别准确率,并对模型参数进行反馈调整。
根据识别准确率对模型参数进行反馈调整,如果识别准确率小于准确率阈值,则进行参数反馈调整,即基于仿真结果进行数据反馈,将聚类识别验证数据反馈至步骤3,调节半监督k-NNM的标记样本数据,将窃电样本识别验证数据反馈至步骤4的疑似窃电识别模型,采用交叉熵损失函数调节模型参数,如果识别准确率大于等于准确率阈值,进入步骤7。
步骤7:根据调整后的模型参数确定自适应类识别的反窃电防御模拟模型。
步骤8:利用反窃电防御模拟模型对用户用电实时数据进行反窃电检测。
本发明实施例在对历史采集数据预处理的基础上进行部分正负样本标记,采用半监督k-NNM算法对实现窃电类与正常类的划分,生成高风险疑似窃电样本类,随后采用GRU算法构建二分类的疑似窃电识别模型,保证即使在新窃电类别无标注的情况下,仍可基于窃电规律加以识别,提高了反窃电识别几率。
实施例2
图2是根据一示例性实施例示出的一种反窃电系统结构图。如图2所示,本发明实施例提供的一种反窃电系统,包括:
样本筛选模块,用于筛选出窃电样本,对已有窃电类别进行分类并对已有窃电样本和正常样本进行类别标记;
疑似窃电样本样本模块,用于排除正常样本形成疑似窃电样本集,并进行类别标记;
模型构建模块,用于针对疑似窃电样本集构建基于GRU算法的疑似窃电识别模型;
疑似窃电识别模型模块,用于将疑似窃电样本集数据输入疑似窃电识别模型,输出二分类的疑似窃电样本与疑似正常样本;
参数反馈调整模块,用于根据疑似窃电识别模型输出结果与疑似窃电样本集的类别标记计算其识别准确率,并对模型参数进行反馈调整;
反窃电防御模拟模型确定模块,用于根据调整后的模型参数确定自适应类识别的反窃电防御模拟模型;
反窃电检测模块,用于利用反窃电防御模拟模型对用户用电实时数据进行反窃电检测。
作为本实施例一种可能的实现方式,所述疑似窃电样本样本模块包括:
聚类划分模块,用于采用半监督k-NNM算法将部分标记的历史采集样本集进行聚类划分,排除与标记正常样本聚类的样本后,形成疑似窃电样本集;
疑似窃电类别标记模块,用于将与有标记窃电样本聚类的样本集进行疑似窃电类别标记。
作为本实施例一种可能的实现方式,所述聚类划分模块包括:
样本聚类模块,用于在初始化阶段,基于历史采集的特征样本集为 B′={b1′,b2′,…,bg′,…,b′G}及样本集内包含的有标记特征样本{bh′…}∈B,将有标记的特征样本归类,共计有k个类别则分为k+1个聚类,第k+1~k+a类为判别失败类,将样本聚类所得簇划分为C={c1,c2,…,ck,ck+1};
相似度计算模块,用于计算每个无标记样本bi′一对一对应有标记样本bj′的距离,采用多维空间余弦相似度算法计算历史采集样本间的相似度:
其中,m∈(1,2,…,M),M为特征数,选取cosθgh小于设定阈值L的样本bg′归入对应分类簇
Cr=Cr∪{bg′},r∈{1,2,…,k+a} (2)
对于未归入对应类的样本,将其归于第k+1~k+a类;
均值识别模块,用于对第k+1~k+a类内的样本数据进行均值识别:
其中,是聚类簇Cr的均值向量;
均值向量计算模块,用于计算每个第k+1~k+a类无标记样本bg′与各聚类簇均值向量ur的距离l′gr=||bg′-ur||2,选取l′gr的最小的值r=arg minr∈{1,2,…,k+1}lgr,将样本bg′归入该簇Cr=Cr∪{bg′},r∈{1,2,…,k};
样本归类输出模块,用于计算更新后的各聚类簇的均值向量ur与聚类分割阈值γ、z,并计算本轮的平方误差E,如果所有ur均未更新,则停止迭代,本轮分类结果作为样本归类输出;
迭代模块,用于存在ur更新的数据时,迭代次数加1后如果小于迭代次数阈值则继续迭代,否则选取首次归类和历次迭代平方误差E的最小值作为样本归类输出;
高风险窃电样本集形成模块,用于根据样本归类输出,完成无标记样本的批量数据聚类与划分,并将与已标记正常样本聚类的样本数据剔除,形成高风险窃电样本集。
作为本实施例一种可能的实现方式,所述模型构建模块包括:
样本集提取模块,用于基于历史采集样本集,提取标记的窃电样本集和正常用电样本集;
GRU模块,用于针对窃电样本特征数据关联复杂且用电数据存在时序规律,采用GRU算法构建疑似窃电识别模型;
参数调整模块,用于通过对高风险窃电样本集进行窃电行为特征数据挖掘,以时间序列特征为输入,以神经网络提取并保留窃电样本用电数据的历史轨迹,并以实际正负样本的识别准确率构建交叉熵损失函数,通过梯度下降对模型参数进行调整。
作为本实施例一种可能的实现方式,所述参数反馈调整模块,用于进行如下参数反馈调整:
如果识别准确率小于准确率阈值,则进行参数反馈调整,调节半监督k-NNM 的标记样本数据,将窃电样本识别验证数据反馈至疑似窃电识别模型,采用损失函数调节模型参数,如果识别准确率大于等于准确率阈值,则不对模型参数进行反馈调整。
作为本实施例一种可能的实现方式,所述的反窃电系统还包括:
数据预处理模块,用于对用户用电样本数据进行预处理,并将预处理后数据存入历史样本数据库。
作为本实施例一种可能的实现方式,所述数据预处理模块包括:
历史样本集采集模块,用于通过用电信息采集系统收集各类典型用户用电数据样本,并以典型用户用电行为数据作为历史采集样本集;
预处理模块,用于采用同一样本众数的方式进行缺失数据修复,并进行数据去噪、删除离群点和数据去冗余处理。
与现有技术相比较,本发明具有以下特点:
1、基于仿真系统提供的历史采集样本数据,针对反窃电实际场景应用中难以实现新窃电类别的识别问题,采用半监督k-NNM算法实现未标记样本的聚类,即首先采用的样本一对一模式,并基于k近邻聚类理念,最大程度简化初始分类,随后借鉴K均值聚类的理念,采用一对均值模式最大程度依赖最新无标记样本数据,以迭代优化保障样本彼此间最大相似距离的聚类,同时为避免陷入迭代死循环,设置迭代阈值,根据平方误差E作出类别划分,从而在仿真数据存在历史未标记的窃电类别时,可将其进行归类处理生成新类别,并对正样本聚类簇进行样本剔除,从而形成高风险窃电样本集,降低后续窃电类别识别过程中不平衡类的影响;
2、针对窃电样本特征数据关联复杂且用电数据存在时序规律,采用GRU 算法实现窃电识别模型的构建,通过对高风险窃电样本集进行窃电行为特征数据挖掘,以时间序列特征为输入,以神经网络提取并保留窃电样本用电数据的历史轨迹,并以实际正负样本的识别准确率构建交叉熵损失函数,通过梯度下降对GRU的模型参数进行调整,从而完成窃电行为识别规律的捕获,基于时序规律提高对窃电特征数据的综合性挖掘;
3、本发明在对历史采集数据预处理的基础上进行部分样本标记,采用半监督k-NNM算法对实现窃电类与正常类的划分,对正常用电样本类剔除后,生成高风险疑似窃电样本集;采用GRU算法对标记样本构建二分类的疑似窃电识别模型,实现窃电规律的提取;随后以疑似窃电识别模型对高风险疑似窃电样本集实现窃电样本识别,在相对平衡数据样本集中,即使存在新窃电类别无标注的情况下,仍可基于神经网络捕获的窃电规律加以识别,保证了反窃电识别方法在实际场景中的适应性。
算例
自2016年起,国网某电力公司对历年窃电案例进行分析整理,收集1.2万窃电案例,并通过对数据完整性校验,最终获得了3400余条可用的窃电案例样本,并对应从“SG186”营销业务应用、用电信息采集系统中收集了样本采集数据。如图3所示,本发明所述反窃电防御模拟模型的建立过程如下。
步骤一:数据预处理,通过用电信息采集系统收集各类典型用户用电数据样本集20412条,包含3412条可用的窃电样本和17000条正常用电样本,并以典型用户用电行为数据作为历史采集样本集,数据集包括用户窃电相关的各类特征数据,采用同一样本众数的方式进行缺失数据修复,并进行数据去噪、删除离群点、数据去冗余等“清理”,并进行数据归一化处理,预处理后数据存入历史样本数据库;
现场很多原因均能够导致用电数据发生异常,包括计量故障和异常用电等,由于电能表、互感器等各类计量装置所处的环境复杂,因此不同的异常用电行为所表现出的现象和数据特征都是多样的,共计获取窃电样本关联特征78个,部分异常用电行为的现象及所表现的数据特征如表1所示。
表1异常用电类型及数据特征对比表:
步骤二:基于历史采集样本集筛选出窃电样本,并对已有窃电类别进行分类,共计获取窃电类型11类,对已有窃电样本和正常样本进行部分类别标记,标记窃电样本类8类,包含样本数1240条,标记正常样本2000条;
步骤三:针对部分标记的历史采集样本集,采用半监督k-NNM算法将其聚类划分,排除与标记正常样本聚类的样本后,形成疑似窃电样本集,包含部分标记窃电样本聚类的样本集和无标记样本的聚类样本集,将与有标记窃电样本聚类的样本集进行疑似窃电类别标记;
如图4所示,针对部分标记的历史采集样本集,采用半监督k-NNM算法将其聚类划分的具体步骤如下:
(1)在初始化阶段,基于历史采集的特征样本集为B′={b1′,b2′,…,bg′,…,b′G}及样本集内包含的有标记特征样本{bh′…}∈B,将有标记的特征样本归类,共计有k=9个类别则分为9个聚类,第10~15类为判别失败类,将样本聚类所得簇划分为C={c1,c2,…,ck,…,ck+a};
(2)计算每个无标记样本bi′一对一对应有标记样本bj′的距离,采用多维空间余弦相似度算法计算历史采集样本间的相似度:
其中,m∈(1,2,…,M),M为特征数,选取cosθgh小于设定阈值L的样本bg′归入对应分类簇:
Cr=Cr∪{bg′},r∈{1,2,…,k+a} (2)
对于未归入对应类的样本,将其归于第10~15类,此时第10~15类样本相对于整体样本而言数量较少;
(3)对第10~15类内的样本数据进行一对均值识别,即所有无标记样本首次归类结束后,求平方误差
其中,是聚类簇Cr的均值向量,E越小表明聚类簇内相似度越高;
(4)为实现最小化E,半监督k-NNM采用贪心算法,以迭代优化来实现近似求解,设置迭代次数阈值W,初始化迭代次数w=1,计算每个第10~15类无标记样本bg′与各聚类簇均值向量ur的距离l′gr=||bg′-ur||2,选取l′gr的最小的值,即r=argminr∈{1,2,…,k+1}lgr,则将样本bg′归入该簇
Cr=Cr∪{bg′},r∈{1,2,…,k+a};
(5)随后计算本轮更新后的各聚类簇的均值向量ur与聚类分割阈值γ、z,并计算本轮的平方误差E,如果所有ur均未更新,则停止迭代,本轮分类结果作为样本归类输出,转至步骤(7);
(6)如果存在ur更新的数据,w=w+1,
①如果w<W,则返回步骤(4),
②如果w=W,则选取首次归类和历次迭代平方误差E的最小值作为样本归类输出;
(7)根据样本归类输出,如图5所示,完成无标记样本的批量数据聚类与划分,并将与已标记正常样本聚类的data1代表的15874例样本数据剔除后,剩余data2~data12共计4538条样本形成高风险窃电样本集,其中data10~ data12为无标记样本的新窃电类聚类结果,data13~data15无数据样本;
步骤四:基于历史采集样本集,对步骤二有标记的用电样本进行疑似窃电识别模型构建,即提取1240条的窃电样本集和2000条正常用电样本集,构建基于GRU(GatedRecurrent Unit,门控循环单元)算法的疑似窃电识别模型;
构建基于GRU算法的疑似窃电识别模型,具体步骤如下:
(1)基于步骤三输出的高风险窃电样本集,完成深度学习框架构建;
采用keras深度学习框架,选择RNN(Recurrent Neural Network,循环神经网络)的GRU模型;
(2)设定优化函数,
优化函数赋值学习率为0.00001;
(3)构建网络模型,采用优化函数对输入层、隐藏层、输出层数量赋值,
输入层为28*28=784,隐藏层为5层,隐藏节点共计500个,输出层神经元为2个,即疑似窃电样本和疑似正常样本,隐藏层激活函数采用RELU函数,输出层采用sigmoid函数作为激活函数;
(4)基于输入的高风险窃电样本集内实际的窃电样本和正常样本数据,采用梯度下降对窃电识别模型训练;
定义批量训练数据batch_size=100,即将高风险窃电样本集进行分组,每组包含的样本数量为100,训练次数epochs=100000次,交叉验证比例 validation_split=20%,识别准确率阈值为100%;
(5)输出疑似窃电识别模型;
步骤五:将4538条高风险窃电样本数据输入疑似窃电识别模型,输出二分类的疑似窃电样本与疑似正常样本,识别结果如表2所示。
表2疑似窃电样本识别结果:
|
验证为异常 |
验证为正常 |
验证总数 |
实际异常 |
3385 |
27 |
3412 |
实际正常 |
2 |
1124 |
1126 |
实际总数 |
47 |
2089 |
2136 |
由实验数据可得,即使存在未识别的窃电样本类,在大多数未标记样本存在的情况下,基于半监督算法与GRU算法相结合的方法,仍可识别出疑似窃电样本,识别准确率如下:
以实际正负样本的识别准确率构建交叉熵损失函数。
步骤六:根据识别准确率对模型参数进行反馈调整,如果识别准确率小于准确率阈值,则进行参数反馈调整,即基于仿真结果进行数据反馈,将聚类识别验证数据反馈至步骤三,调节半监督k-NNM的标记样本数据,将窃电样本识别验证数据反馈至步骤四的疑似窃电识别模型,采用交叉熵损失函数调节模型参数,如果识别准确率大于等于准确率阈值,进入步骤七;
步骤七:输出自适应类识别的反窃电防御模拟模型,该方法保证在新窃电类别出现时,仍可实现窃电样本的自适应归类并识别。
该算例针对构建智能化反窃电攻防演练体系的业务需求,充分考虑窃电攻击和防御双方的对立性和依赖性,在构建防御演练环境的基础上,模拟窃电防御行为和策略,同时在模拟过程中通过对用户窃电风险分析评估窃电行为特征,建立并验证反窃电主动防御机制,推动了反窃电技术研究和预警防控能力提升,进而全面提升了国网公司的综合反窃电侦查能力。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/ 或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。