基于间隔密度的概念漂移检测算法mdm-DDM

概念漂移

​ 概念漂移是数据流挖掘领域中一个重要的研究点。传统的机器学习算法在操作时通常假设数据是静态的,其数据分布不会随着时间发生变化。然而对于真实的数据流来说,由于数据流天生的时间性,到达的数据的分布可能会随着时间的推移不断改变。这使得传统的批处理模型不适合对数据流的进行挖掘分析,模型更是需要有检测和适应数据分布变化的能力。例如,在服装店销售预测的例子中,如果季节性因素导致服装销售额在夏季月份较高,那么在冬季该预测模型可能就不管用了。

​ 如果要对概念漂移下定义的话,它的定义是:概念漂移是一种现象,即目标领域的统计属性随着时间的推移以一种任意的方式变化。

​ 如果用一句话来描述概念漂移的话,它就是:数据分布不均匀,使得过去训练的表现不能保证将来的结果。

基于间隔密度的概念漂移检测算法mdm-DDM

背景

​ 参考论文:https://kns.cnki.net/kcms2/article/abstract?v=3uoqIhG8C475KOm_zrgu4lQARvep2SAkaWjBDt8_rTOnKA7PWSN5MEdRZ4_Punz3wA-1d-2-our_XnGz-hr7Ar5EH4I5MWNB&uniplatform=NZKPT

​ mdm-DDM解决了基于错误率的漂移检测算法必须及时获取标记数据标签的问题。mdm-DDM利用间隔密度作为检测漂移的度量,然后结合McDiarmid 不等式来进行显著性检验,以此判断是否产生概念漂移。

​ 本文只考虑了没有明确决策边界的mdm-DDM,在有标签情况下,用集成分类器来进行预测。

定义

  • 间隔区域
    • 预测空间中最容易分类错误的部分
  • 间隔密度
    • 分类器不确定区域中的样本密度,即具有不确定性的数据样本占总体样本的密度

间隔密度计算

  1. 对于每一个样本x来说:

\[margin = P_E(y = trueclass|x) - P_E(y \neq trueclass|x) \]

​ 其中E指的是集成分类器。被减数指的是样本经过分类器预测后,集成分类器预测标签为样本标签的概率。减数的是样本经过分类器预测后,集成分类器预测标签不为样本标签的概率。

  1. 间隔密度的计算方式:

\[S_{(w,b)} = \begin{cases} 1,if\ margin \leq \theta_{margin\ of\ uncertainty}\\ 0, 其他\end{cases} \]

\[MD_{svm} = \frac{\sum{S_{(w,b)}(x)}}{|X|},\forall x\in X \]

​ 其中𝜃是定义阈值,表示间隔区域,默认值为0.15,X 表示样本集,x 是样本集中的样本点,𝑚𝑎𝑟𝑔𝑖𝑛表示样本点距离决策面的距离。当样本点落入间隔区域,该样本点被Sign函数标为1,否则为0。MD表示间隔密度。

基于 McDiarmid 不等式的阈值设计

​ 当集成分类器的间隔密度开始以一种不寻常的方式增加的时候,概念漂移的可能性将会增加。因此随着数据流中的数据一个接一个的被处理,算法将不断更新,两个滑动窗口之间的加权平均值的显著差异意味着概念漂移的产生

​ 其中置信度δ的默认值为0.000001。

​ ε的计算公式如下:

\[\varepsilon_w = \sqrt{\frac{\sum_{i=1}^{n}{v^2_i}}{2}ln\frac{1}{\delta_w}} \]

​ v的计算公式如下:

\[v_i = \frac{w_i}{\sum_{i=1}^{n}{w_i}} \]

​ w𝑖表示滑动窗口中数据流实例中第i个数据的权重。由于数据流具有时效性这个特点,算法定义最近到来的数据应具有较高的权重,w𝑖 < w𝑖+1,其中w𝑖表示第 i 个实例的权重。权重的计算方法如下:

\[w_i = 1 + (i-1)*d \]

​ 权重随时间增加的d默认值为0.01。

漂移算法整体流程