本发明涉及异常检测计算领域,尤其涉及一种基于flink的孤立森林算法并行化的异常检测方法及装置。
背景技术:
异常检测,通常是指一种非监督的找出与预期数据差距较大数据的一个过程。被检测出的数据通常被称为异常点或者离群点。异常检测在很多领域都发挥了重要的作用,例如:入侵检测系统、信用卡反欺诈、智能运维等。
通常异常检测有以下几种检测方法:基于统计学的方法、基于邻近度的方法、基于密度的方法、基于聚类的方法等。但是他们都有各自的缺点,基于统计学的方法对于单个维度的异常检测比较有效,但是对于多个维度的,检测的效果的效果和性能都比较差;基于邻近度的方法不能处理具有不同密度区域的数据集,因为密度是局部特征,而距离是全局特征,它无法考虑到局部密度的变化;基于密度的方法克服了基于邻近度无法考虑全局密度的问题,但是其不适合高维数据,计算复杂度也较高;基于聚类的方法需要选择合适的类簇的个数,类簇的个数对于异常检测的效果影响较大,实际使用中很难对其进行选择。
技术实现要素:
本发明的目的在于提供一种基于flink的孤立森林算法并行化的异常检测方法及装置。
本发明采用的技术方案是:
一种基于flink的孤立森林算法并行化的异常检测方法,其包括以下步骤:
步骤1、读取历史数据:通过配置flink读取方式从多种数据源读取历史数据;
步骤2、对数据进行抽样:通过配置flink的抽样方式随机从历史数据中抽取n次,产生n个数据集,等待itree的构建;
步骤3、从数据集中随机抽取一个维度,再随机选择该维度下的一个值,将数据集构造成二叉树;然后分别在左右子树上分别执行上述过程,直到达到一棵树构建完成时结束;
步骤4,判断是否达到设定的训练次数n,n为大于1的整数;是则,完成iforest的构建并执行步骤5;否则,执行步骤3;
步骤5、判断是否存在异常:根据样本点在所有itree中的深度,使用归一化公式计算异常度得分,进而根据异常度判断是否异常。

一种利用Apache Flink实现的孤立森林算法并行化异常检测方法,提高了计算速度,适用于海量数据的实时检测。通过配置Flink读取数据源,采用随机抽样构建二叉树,利用并行化处理提升效率。
最低0.47元/天 解锁文章
893

被折叠的 条评论
为什么被折叠?



