温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
电力
数据
异常
检测
算法
对比
分析
申佳灵
智城实践NO.02 20231智能城市 INTELLIGENT CITY几种电力数据异常检测算法的对比分析申佳灵 易婷 聂勤 李军成*(湖南人文科技学院,湖南 娄底 417000)摘要:在采集电力数据时,往往会产生异常数据,这对后期的数据分析与处理会造成不良影响。因此,对电力数据的异常值进行有效检测显得尤为重要。文章以孤立森林算法、随机森林算法、K-Means算法及DBSCAN算法等电力数据异常检测算法为对象,通过仿真试验对四种算法的检测效果进行对比分析,为电力数据异常检测算法的选取提供了一定的依据。关键词:孤立森林算法;随机森林算法;K-Means算法;DBSCAN算法;电力数据检测中图分类号:TP393 文献标识码:A 文章编号:2096-1936(2023)02-0001-04DOI:10.19301/ki.zncs.2023.02.001文献1提出了将可能性模糊C均值算法与改进的粒子群优化算法相结合的异常数据检测算法;文献2基于K-Means聚类算法将聚类中心点定义为与实际簇中心距离较为接近的数据点,改变了传统方法中任意选择聚类中心的缺陷;文献3对密度峰值聚类算法进行优化,用于检测电力大数据的异常值;文献4提出了一种基于孤立森林的大规模电量异常检测算法;文献5将孤立森林算法用于电力调度数据异常检测。在对电力数据的异常值进行检测时,需要选择合适的算法。文章研究目的是通过仿真试验对目前常用的孤立森林算法、随机森林算法、K-Means算法、DBSCAN算法等电力异常数据检测算法进行对比分析,为电力数据异常检测算法的选取提供一定参考。1预备知识1.1孤立森林算法孤立森林算法6是一种高效的无监督异常检测算法。与传统的优化正常样本的描述相反,孤立森林算法主要是对异常样本的描述做优化,将分布稀疏并且离密度高的群体较远的点定义为异常点,在样本点随机选择的基础上,随机产生分割条件,对各个数据进行分配,基于异常数据占比量小以及特征值与正常数据差别较大两个特征,构建多棵孤立二叉树,组成孤立森林。对任意样本点,需要进行合理评估,当每个样本点都经历了孤立二叉树的构建过程后,可以计算路径长度。在这种方式下,异常点通常具有较短的路径,且无须计算距离等指标,利用多棵树的建立能够减小误差,增加稳定性。在利用孤立森林算法进行电力数据异常检测时,若异常得分为正数,则将该样本点判定为正常值,反之判定为异常值。1.2随机森林算法随机森林算法7是一种基于集成学习的方法,主要通过多棵决策树对数据进行训练,并且随机过程可降低异常数据对结果的影响。随机森林算法在bagging算法的基础上进行了优化,从原始数据集中以有放回的抽取方式随机抽取样本,在决策树的每个节点上进行分裂时,随机选取特征,通过不断选择训练集与特征构建大量的子决策树,从而形成随机森林。决策树的构成包括根节点、内部节点和叶子节点,根据划分特征,数据从根节点开始被决策,直到划分为最后的叶子节点,从而形成了一棵决策树。该算法能够处理高维度数据,既适用于离散型数据,也适用于连续型数据,且不容易陷入过拟合,具有良好的抗噪声能力。在利用随机森林算法进行电力数据异常检测时,构造邻近矩阵表示数收稿日期:2022-10-02作者简介:申佳灵,研究方向为数学建模及其应用。通信作者:李军成,博士,教授,研究方向为数学建模及其应用。基金项目:湖南省大学生创新创业训练计划项目“基于边缘计算的电力数据采集与处理方法研究”(项目编号:湘教通2021197号No.3709);湖南人文科技学院数学应用与实践创新创业教育中心资助项目(项目编号:湘教通2019333号No.82)引用本文:申佳灵,易婷,聂勤,等.几种电力数据异常检测算法的对比分析J.智能城市,2023,9(2):1-4.智城实践NO.02 20232智能城市 INTELLIGENT CITY据之间的相似程度(接近度),当离群值大于某一值时,该样本点则被视为异常点,从而找到样本数据中的异常数据。1.3K-Means算法K-Means算法8是一种基于距离的聚类算法,主要是采用距离作为相似性的评价指标,衡量数据集中所有数据的关系,即两个对象的距离越近,相似度越大,在异常值检测中具有一定的应用价值。K-Means算法是在设定簇的个数和随机选择聚类中心的基础上,计算各个数据与聚类中心的欧氏距离,将数据对象划归至距离最近的中心所在的簇类中。该算法容易实现,聚类效果较好,且收敛速度快。在利用K-Means算法进行电力数据异常检测时,计算每个簇的正常半径(即阈值)和各个簇中数据点到聚类中心的距离,以阈值为界限,超出界限的点归为异常点。1.4DBSCAN算法DBSCAN算法9是一种基于密度的聚类算法,相较于K-Means聚类算法,该算法在聚类前不需要预先指定聚类的个数,生成的簇个数与数据集有关,主要思想是在聚类空间中的一定区域内包含对象的数目不小于某个给定的阈值,其中最重要的是邻域阈值和点数阈值两种参数的选择。邻域阈值是指在同一个簇中的样本之间最大距离,称为Epsilonilon,点数阈值是指形成聚类的核心点最小数量,称为Min Points。该方法能在具有噪声的空间数据库中发现任意形状的簇,对噪声不敏感,能够有效处理异常数据。在利用DBSCAN算法进行电力数据异常检测时,若某点不在扩充范围内,即没有包含在任何簇中,则被视为异常点。2仿真试验结果与分析为了对比分析孤立森林算法、随机森林算法、K-Means算法、DBSCAN算法进行电力数据异常检测的效果,进行样本数据量差别较明显的3组仿真试验。在利用随机森林算法进行电力数据异常检测时,由于离群值的设定是为了使得误差达到最小值,故三组仿真试验所选取的离群值各不相同;在利用DBSCAN算法进行电力数据异常检测时,需要不断修改两个参数的取值使得异常检测效果达到最优,故三组仿真试验中两个参数的选择各不相同。为了评价四种电力数据异常检测算法的效果,将相对误差作为评价检测效果的指标。e=|w*-ww100%(1)式中:w*检测出的异常数据个数;w实际的异常数据个数。样本总数为276个时,四种算法的检测结果如图1所示。第一组试验(少量数据):取电力数据样本量276个,其中异常值数量52个,分别利用四种算法进行异常数据检测。图1(a)、图1(c)、图1(d)中,深色表示正常数据点,浅色表示异常数据点;图1(b)中,取X=2,即离群值高于2的均视为异常数据点;在图1(d)中,取Epsilon=8,Min Points=10。利用式(1)计算得到少量数据时四种算法的相对误差结(a)孤立森林算法(b)随机森林算法(c)K-Means算法(d)DBSCAN算法图1样本总数为276个时,四种算法的检测结果智城实践NO.02 20233智能城市 INTELLIGENT CITY果,误差结果对比如表1所示。由表1可知,对少量数据,随机森林算法和DBSCAN算法误差较小,其次为孤立森林算法,K-Means算法的误差最大。样本总数为1 230时,四种算法的异常检测结果如图2所示。其中,在图2(b)中,取X=2.5,即离群值高于2.5的均视为异常数据点;在图2(d)中,取Epsilon=4,Min Points=4。利用式(1)计算得到中量数据时四种算法的相对误差对比,对比结果如表2所示。由表2可知,对中量数据,DBSCAN算法与孤立森林算法的误差较小,而随机森林算法和K-Means算法的误差都较大。第二组试验(中量数据):取电力数据样本数量1 230个,其中异常值数量234个,分别利用四种算法进行异常数据检测。样本总数为3 000时,四种算法的异常检测结果如图3所示。(a)孤立森林算法(b)随机森林算法(c)K-Means算法(a)孤立森林算法(b)随机森林算法(c)K-Means算法(d)DBSCAN算法图2样本总数为1 230时,四种算法的异常检测结果表2中量数据时四种算法的相对误差对比算法孤立森林算法随机森林算法K-Means算法DBSCAN算法检测出的异常数据个数228210290231相对误差/%2.5610.2623.931.28表1少量数据时四种算法的相对误差对比算法孤立森林算法随机森林算法K-Means算法DBSCAN算法检测出的异常数据个数57544250相对误差/%9.623.8519.233.85智城实践NO.02 20234智能城市 INTELLIGENT CITY(d)DBSCAN算法图3样本总数为3 000时,四种算法的异常检测结果第三组试验(大量数据):取电力数据样本总数为3 000个,其中异常值数为568个,分别利用四种算法进行异常数据检测。其中,在图3(b)中,取X=2.1,即离群值高于2.1的均视为异常数据点;在图3(d)中,取Epsilon=5,Min Points=5。利用式(1)计算得四种算法的相对误差结果如表3所示。由表3可知,对大量数据,DBSCAN算法和随机森林算法的误差较小,而孤立森林算法和K-Means算法的误差都较大。综合三组试验可知,随着数据量的增大,K-Means算法的误差逐渐变大,孤立森林算法和DBSCAN算法的误差呈现先减后增的趋势,而随机森林算法的误差则表现为先增后减的状态。在四种电力数据异常检测算法中,无论是何种数据量,DBSCAN算法的效果均表现较好,K-Means算法的效果相对较差,孤立森林算法和随机森林算法的检测效果对数据量依赖度较高。四种算法的适用情况如表4所示。3结语文章介绍了孤立森林算法、随机森林算法、K-Means算法以及DBSCAN算法用于电力数据异常检测的基本步骤,通过仿真试验对四种算法的检测效果进行了对比分析,为电力数据异常检测算法的选取提供了一定的依据。参考文献1 李清.基于改进PSO-PFCM聚类算法的电力大数据异常检测方法J.电力系统保护与控制,2021,49(18):161-166.2 吴蕊,张安勤,田秀霞,等.基于改进K-means的电力数据异常检测算法J.华东师范大学学报:自然科学版,2020(4):79-87.3 陆春光,叶方彬,赵羚,等.基于密度峰值聚类的电力大数据异常值检测算法J.科学技术与工程,2020,20(2):654-658.4 黄福兴,周广山,丁宏,等.基于孤立森林算法的电能量异常数据检测J.华东师范大学学报:自然科学版,2019(5):123-132.5 李新鹏,高欣,阎博,等.基于孤立森林算法的电力调度流数据异常检测方法J.电网技术,2019,43(4):1447-1456.6 赵臣啸,薛惠锋,王磊,等.基于孤立森林算法的取用水量异常数据检测方法J.中国水利水电科学研究院学报,2020,18(1):31-39.7 胡淼,王开军,李海超,等.模糊树节点的随机森林与异常点检测J.南京大学学报:自然科学版,2018,54(6):1141-1151.8 王全民,胡德程.基于Spark的K-means快速聚类算法的优化J.计算机仿真,2022,39(3):344-349.9 雷萌,郭鹏,刘博嵩.基于自适应DBSCAN算法的风电机组异常数据识别研究J.动力工程学报,2021,41(10):859-865.表3大量数据时四种算法的相对误差对比算法孤立森林算法随机森林算法K-Means算法DBSCAN算法检测出的异常数据个数440544744548相对误差/%22.544.2330.993.52表4四种算法的适用情况算法孤立森林算法随机森林算法K-Means算法DBSCAN算法少量数据适用适用适用中量数据适用适用大量数据适用适用