本发明涉及工业设备检测技术领域,具体涉及一种基于局部和全局统计分析的鲁棒异常检测方法。
背景技术:
异常检测属于无监督学习的一大类算法。无监督学习是样本没有标记的学习方式。异常检测的目的在于检测数据中偏离数据主群体的数据。这些偏离的数据可能暗示设备存在着异常状态,例如异常运行或者损坏等等,系统随即可以进行预警,以避免可能发生的系统故障,起到预测性维护的作用。
常用的异常检测算法有one-classsvm,lof(localoutlierfactor),isolationforest,dbscan等等。这些算法基本基于统计分布的假设或者密度的估计。这些算法常被用于金融领域中的诈骗分析,反作弊分析。在实际工业领域中的应用很比较有限。
在工业领域,数据的收集比较滞后,数据采集不全,数据没有标记。这种情况给数据的分析带来了很多限制。例如,对工业产线中的设备进行实时的状态监控是很多场景下的强烈需求。对设备进行及时的预警可以避免因宕机造成的巨额损失。
一个设备从使用到出现问题需要经过一段的使用,随着设备的使用和磨损,所收集的数据会出现慢慢偏离正常值范围的趋势。一开始收集到的数据没有异常标签,所以这是一个无监督学习的问题。异常检测是无监督学习中常用的一类算法。
技术实现要素:
本发明要解决的技术问题是:本发明针对以上问题,提供一种基于局部和全局统计分析的鲁棒异常检测方法。
本发明所采用的技术方案为:
基于局部和全局统计分析的鲁棒异常检测方法,所述方法基于局部信息和全局信息进行建模,然后对综合指标的进行判断,如果这个指标超过预先设定的判决条件,则认为发生了一次异常。
所述方法包括内容:
根据被检测数据的特点和实际业务背景结合,选取异常检测模型对被检测数据进行全局分析,得到全局分析的异常点。
所述方法内容包括:
根据具体业务情况将数据划分为不同时段或者不同工作状态下,对被分析数据进行局部分析。
所述方法实现流程包括内容如下:
1)选取基础算法并实施,可以采用现在常用的isolationforest,one-classsvm,robustcovariance等,这些方法有很多现成的实现软件包,例如sklearn,或者使用其他的开源包;
2)根据被检测数据的特点和实际业务背景结合,选取一种最优的异常检测模型对被检测数据进行全局分析,得到全局分析的异常点;
3)根据具体业务情况将数据划分为不同时段或者不同工作状态下,对被分析数据进行局部分析;
4)利用加权方法综合考虑局部分析异常点的结果和全局分析异常点的结果。
所述方法内容还包括:
对于在全局分析和局部分析中有冲突的异常点,通过人工反馈的方式去除假异常点,并补充单个方法得不到的真异常点,最终得到合理准确的异常点结果。
本发明的有益效果为:
本发明方法改进了目前工业应用当中的异常检测模型,把局部和全局模型进行结合,然后综合考虑综合指标进行预警,以避免可能发生的系统故障,起到预测性维护的作用。
附图说明
图1是基于局部和全局统计分析的鲁棒异常检测方法示意图。
具体实施方式
下面根据说明书附图,结合具体实施方式对本发明进一步说明:
实施例1:
如图1所示,基于局部和全局统计分析的鲁棒异常检测方法,所述方法基于局部信息和全局信息进行建模,然后对综合指标的进行判断,如果这个指标超过预先设定的判决条件,则认为发生了一次异常。
实施例2
在实施例1的基础上,本实施例所述方法包括内容:
根据被检测数据的特点和实际业务背景结合,选取一种最优的异常检测模型对被检测数据进行全局分析,得到全局分析的异常点。
所述方法内容包括:
根据具体业务情况将数据划分为不同时段或者不同工作状态下,对被分析数据进行局部分析。
实施例3
在实施例2的基础上,本实施例所述方法实现流程包括内容如下:
1)选取基础算法并实施,可以采用现在常用的isolationforest,one-classsvm,robustcovariance等,这些方法有很多现成的实现软件包,例如sklearn。或者使用其他的开源包;
2)根据被检测数据的特点和实际业务背景结合,选取一种最优的异常检测模型对被检测数据进行全局分析,得到全局分析的异常点;
3)根据具体业务情况将数据划分为不同时段或者不同工作状态下,对被分析数据进行局部分析;
4)利用加权方法综合考虑局部分析异常点的结果和全局分析异常点的结果。
所述方法内容还包括:
对于在全局分析和局部分析中有冲突的异常点,通过人工反馈的方式去除假异常点,并补充单个方法得不到的真异常点,最终得到合理准确的异常点结果。
实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。