一种基于散度和EWMA的概念漂移检测方法
文献发布时间:2023-06-19 16:09:34
技术领域
本发明属于数据流处理领域,具体来说是一种无监督在线的基于散度和EWMA(指数加权移动平均)的概念漂移检测方法。
背景技术
过去处理的数据往往是静态数据,可以存储在内存中并对整个数据集进行处理。但是随着信息技术高速发展,数据出现了以流的形式源源不断到达。数据流与传统的数据相比,其数据量大,实时到达,而且数据一旦处理完毕,就不能再拿出来处理,除非刻意将数据保存下来。现实环境中的数据可能具有动态行为,概念会发生变化,这就是所谓的概念漂移问题。
概念漂移的定义是指在给定时间段[0,t],该时间段内的数据流表示为S
当被收集的数据的概念在一个最小的稳定期后发生变化时,就会发生概念漂移。这种变化反映在传入的实例中,并降低了从过去的训练实例中学习的分类器的准确性。现实生活中概念漂移的例子包括监控系统、金融欺诈检测、垃圾邮件分类、天气预测和客户偏好等。
因此本文利用信息论相关知识,提出了一种基于Jensen-Shannon散度和EWMA的无监督在线概念漂移检测方法。该方法可以在没有真实标签的情况下检测到概念漂移,并且能够有效地检测出概念漂移,而且重新训练的分类器能够有效地提高后续数据的分类精度。
发明内容
本发明的目的在于解决生产生活中可能存在的概念漂移问题,主要内容为提供一种无监督环境下的基于Jensen-Shannon散度和EWMA的概念漂移检测方法,该方法通过衡量划分的滑动窗口之间的数据分布差异来检测数据流是否产生概念漂移,该方法可以高效、快速、准确的检测概念漂移。
本发明的基于Jensen-Shannon散度和EWMA的无监督在线概念漂移检测方法,包括如下步骤:
步骤一:从数据流中划分滑动窗口,并基于窗口数据来构建该窗口的数据分布函数。
步骤二:用Jensen-Shannon散度来衡量滑动窗口之间数据分布的差异。
步骤三:通过EWMA(指数加权移动平均)的假设检验方式来判断是否产生概念漂移,并在检测到概念漂移后重新训练新的分类器来适应后续的数据。
进一步地,所述步骤一的具体过程如下:
让x
进一步地,所述步骤二的具体过程如下:
Jensen-Shannon散度是常被用于量化两个概率分布之间差异性的方法。我们通过步骤一获取到窗口之间的数据分布,然后通过两个窗口之间的数据分布函数带入到Jensen-Shannon散度计算式中计算数据分布之间的差异。
进一步地,所述步骤三的具体过程如下:
加权移动平均是对观察值分别给予不同的权重,按不同权重求得移动平均值,并以移动平均值为基础,确定预测值的一种方法。采用加权移动平均法,是因为观察期的近期观察值对预测值有较大影响,它更能反映近期变化的趋势。EWMA(指数加权移动平均),是指各数值的加权系数随时间呈指数式递减,越靠近当前时刻的数值加权系数就越大。在前两步之后我们能够得到各个滑动窗口之间的Jensen-Shannon散度值,我们将其作为统计指标。通过EWMA的计算式计算EWMA统计量,并结合EWMA统计值以及均值方差等来设置一个可变的上下限阈值。当结合Jensen-Shannon散度计算的EWMA统计量不满足阈值范围内时就给出漂移信号,然后根据当前窗口的数据训练一个新的分类器,后续的数据则按此步骤继续进行处理,如果未发生概念漂移则在检测之后将实例用于增量训练分类器。
本发明的有益效果为:
本发明基于无监督学习,无需预先知道实例标签,通过对数据流数据划分为一个个的滑动窗口,进而测量窗口之间的数据分布差异,当数据分布差异超过通过EWMA假设检验方式计算的阈值后,给出漂移信号,当检测到概念漂移后重新训练新的分类器来适应当前变化的数据。本发明能够准确高效的检测到数据流中存在的概念漂移问题,同时及时更新分类器,使得分类结果也能显著提高,解决了数据流由于时间推移而引起的概念漂移问题和分类精度下降问题。
附图说明
图1为本发明的基于散度和EWMA的概念漂移检测方法流程图。
图2为本发明所使用的滑动窗口模型。
具体实施方式
下面结合附图和具体的实施例对本发明作进一步的阐述。
结合图1,本发明提出一种基于散度和EWMA的概念漂移检测方法,具体实施步骤如下:
步骤一:例如将窗口数据大小设置为500,对数据流按初始设置的大小划分窗口,初始时将第一个窗口作为固定窗口,对后续数据继续划分为一个个滑动窗口,将滑动窗口和固定窗口内的数据通过数据频率的形式映射到对应窗口的数据分布,其计算式为
步骤二:通过步骤一中的公式计算窗口之间的数据的频率并将其作为概率分布,然后通过Jensen-Shannon散度的计算式计算各个属性的散度,并对所有属性求和,将其作为两个窗口之间的数据分布差异。其中Jensen-Shannon散度的计算式为
步骤三:在任意时刻当前滑动窗口的EWMA统计量表示为z
在计算了各个统计量之后就可以判断数据流中当前滑动窗口内的数据是否发生了概念漂移。例如计算当前的EWMA统计量z
下面是该方法主要步骤伪代码:
综上可知,采用本发明的一种基于散度和EWMA的概念漂移检测方法,可以有效的检测出概念漂移,同时快速更新分类模型,使分类器能够快速的适应数据流环境下的变化。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 一种基于散度和EWMA的概念漂移检测方法
- 一种基于概念漂移的漏洞攻击流量检测方法及检测系统