引言
随着互联网和大数据的快速发展,网络异常检测作为保护网络安全和维护系统正常运行的手段变得越来越重要。网络异常检测往往依靠日志或流量等网络数据,而这些数据发生概念漂移会对网络异常检测的准确性和可靠性产生较为严重的影响。因此,近年来针对网络异常检测领域的概念漂移检测研究也引起了广泛关注。概念漂移(Concept Drift)是指随着时间推移,流数据的分布发生变化的情况,这种变化可能由外部或内部因素引起。网络异常检测领域常用到的数据有日志数据和流量数据等,本质上也是流数据。因此,已有的针对流数据的概念漂移检测方法也适用于网络异常检测领域。
1 概念漂移概述
概念漂移是指在数据生成过程中,数据的统计特性或关系随时间发生变化的现象。然而,对于概念漂移的定义目前并不统一,存在多种观点和说法。当前被普遍认同的定义是:在机器学习和数据挖掘领域中,模型在时间或者环境改变的情况下,对于输入数据的理解和预测能力发生变化的情况。这种变化可能是由于外部环境的变化、数据生成过程的演化、观察偏差或噪声引起的[1]。因此,在概念漂移的分析中,需要考虑各种类型的数据以及潜在的漂移原因。
数据发生概念漂移的原因可能有多种:
(1) 数据内部变化(Internal Data Changes)[2],例如邮件系统、社交网络中,用户的行为可能会随时间改变,导致数据分布发生变化。
(2) 外部环境变化(External Environmental Changes)[3],随着时间的推移,数据生成的环境可能会发生变化,例如新的技术工具和平台的出现、过滤器的改进等。
(3) 数据收集过程的变化(Changes in Data Collection Process)[4],数据的收集方式或过程发生变化,例如更换了不同的记录系统、修改了数据抽取规则等。
概念漂移对模型造成影响主要是因为它引起了数据分布的变化,当数据分布发生变化时,模型在面对新的数据分布时可能无法有效地捕捉到新的异常模式或变化,这导致了以下几个方面的影响:
(1) 模型退化(Model Degradation)
概念漂移意味着数据的统计特性和关系发生了变化。当数据分布发生变化时,模型在面对新的数据分布时可能无法捕捉到新的异常模式或变化,从而导致模型退化[5]。模型退化会使得模型的准确性下降,无法有效对新的网络数据进行异常检测和预测。
(2) 决策偏差(Decision Bias)
概念漂移还可能会引起模型的决策偏差[6]。当数据分布发生变化时,模型在进行决策时可能偏向于过去的数据分布,而忽视了新的数据分布中出现的新模式和异常行为。这种决策偏差可能增加模型在各种异常检测任务中的误报和漏报现象。
(3) 模型更新困难(Difficulty in Model Updating)
受概念漂移影响,模型更新变得困难[7]。当数据分布发生变化时,为了适应新的数据分布,模型需要进行更新或重新训练。然而,在在线系统或实时应用中,模型更新需要在运行过程中进行,这可能会涉及到计算资源和时间的限制。此外,如果训练数据的标签信息不完全或不准确,模型更新过程中的监督学习可能会受到困扰。
2 概念漂移分类
(1)按概念漂移真伪性分类
在研究概念漂移领域中,一种常见的分类方法是根据真伪概念漂移对其进行划分,以更好地理解漂移的本质和影响。真伪概念漂移基于网络数据中的变化是由真实的概念漂移引起,还是由噪声、异常或误差等非真实因素引起[8]进行分类。
图1 基于真伪的两种概念漂移抽象化描述
图1给出基于真伪概念漂移的抽象化描述,可以看出真实概念漂移是由于目标概念本身变化而导致的数据分布变化,而伪概念漂移是由于数据采样或标注错误等因素引起的误导性数据分布变化。了解真伪概念漂移的区别可更准确地判断网络异常检测中概念漂移的源头,从而采取适当的措施来应对网络数据不同类型的漂移,确保异常检测模型的准确性和鲁棒性。
(2)按漂移速度分类
概念漂移的变化方式和因素可以以不同的速度发生,这与数据的统计特性和关系的变化密切相关。这些不同类型的概念漂移由各种事件、行为、环境和因素引起,从而使得网络异常检测领域数据的统计特性和关系随时间发生变化,进而影响机器学习模型在不同时间段的准确性和适应性[9]。
突变漂移(Sudden Drift)指的是概念在某个时间点上突然发生变化的情况,导致数据的统计特性和关系在短时间内突然改变。例如,网络异常检测中突然出现新的技术或突发事件可能导致不同类型的数据特征突然变化。
渐进漂移(Gradual Drift)是指数据分布的逐渐变化,主要强调变化的速度逐渐加快,可能是非线性的。例如,网络系统升级、用户群体变化、法规政策调整等因素可能导致各种类型数据特征发生偏移。
渐增漂移(Incremental Drift)也是指数据分布的逐渐变化,但与渐进漂移略有不同,渐增漂移变化是缓慢的、线性的,并且相对较为平缓。例如,随着时间推移,发送者可能会逐渐改变其行为策略,采用新的方法或策略,导致各种类型数据特征分布逐渐变化。
复发式漂移(Seasonal Drift)指的是数据的概念变化与时间的变化相关。例如,在特定的季节,如节假日季节,人们使用网络行为模式可能会发生变化,从而导致数据中对应的特征分布发生变化。
图2 基于速度的四种概念漂移抽象化描述
(3)按漂移的空间分布分类
根据漂移发生的空间特征,可以将漂移划分为局部漂移与全局漂移,及连续漂移与非连续漂移。
局部漂移(Local Drift)仅发生在数据局部区域,而其他区域保持稳定。这种漂移模式可能由特定数据子集变化引起,例如,在在线购物平台中的局部漂移场景中,数据的局部区域可能会发生漂移,而其他区域保持稳定。
全局漂移(Global Drift)发生在数据的整体分布上,涉及到整个数据集或大部分数据。这种漂移模式可能由整体环境的变化、数据源的更改或广泛影响的外部因素引起。例如,在一个电子商务平台上,某一时期整个平台的用户开始偏好购买环保和可持续发展的产品,而不再关注传统的大品牌商品。
连续漂移(Continuous Drift)在空间上是连续的,即漂移发生区域之间没有明显的边界或过渡区域。这种漂移模式可能由渐进性数据变化、复发式变化或渐进的系统演化引起。例如,在一个在线气候数据收集系统中,温度数据呈现出连续漂移。随着时间的推移,数据显示温度逐渐上升,反映出气候变暖的趋势。
非连续漂移(Discontinuous Drift)在空间上是间断或不连续的,即漂移发生区域之间存在明显的边界或过渡区域。这种漂移模式可能由系统变更、数据源切换或特定事件发生引起的。例如,一个社交媒体平台引入了新的算法和界面设计,导致用户群体的行为发生了明显的变化。
图3 基于真伪的两种概念漂移抽象化描述
3 概念漂移检测方法
概念漂移是异常检测领域的重要研究方向,已存在多种用于检测概念漂移的方法,较为经典的方法有:基于统计的方法、基于预测的方法、基于滑动窗口的方法等。近年来,还涌现出许多基于机器学习方法和深度学习的概念漂移检测方法。
基于统计的方法
在较为经典的基于统计的方法中,比较有代表性的有均值和方差检测(Mean and Variance Detection)、卡方检验(Chi-Square Test)和KL散度检测(KL Divergence Detection)。其中:
(1)均值和方差检测通过比较数据的均值和方差来检测数据分布的变化。Dries等人[10]提出了3种新的网络数据漂移检测方法,这些方法可以动态调整以匹配已有的实际数据。第一个是基于数据二进制表示的密度估计秩统计,第二个是比较1范数支持向量机(SVM)引起的线性分类器平均裕度,最后一个是基于SVM分类器的平均0-1、S形或逐步线性误差率,这几种方法进行结合可以对网络异常检测数据中的多变量数据进行概念漂移检测。
(2)卡方检验方法基于卡方统计量来比较观察值和期望值之间的差异,从而检测漂移的发生。Nishida等人[11]提出了一种基于元学习的在线数据主动漂移检测(Meta-Add)框架,该框架通过跟踪错误率的变化模式来学习分类概念漂移。在训练阶段,根据各种概念漂移的错误率提取元数据,然后使用卡方检验来判断这些错误率是否存在显著的差异,从而检测概念漂移的发生。在检测阶段,通过基于流的主动学习,利用元测试器调整模型以适应不同的网络数据,从而实时监测和适应概念漂移。
(3)KL散度检测方法通过计算两个概率分布之间的KL散度来度量数据分布的变化。Hayat等人[12]提出了一种基于KL散度的自适应垃圾邮件过滤系统,该系统利用计算电子邮件内容分布的偏差来检测概念漂移。该方法可以与各种分类器结合使用,文中采用了朴素贝叶斯分类器。通过使用安然公司的数据集进行评估,结果表明该方法在检测概念漂移方面具有有效性,并且在准确度方面优于朴素贝叶斯分类器。
基于机器学习的方法
近年来,有几种较新的利用机器学习检测概念漂移的方法:
(1)Sugandh [13]提出了一种基于自适应随机森林(Adaptive Random Forest,ARF) 分类器的方法,并结合了 Hoeffding 边界和移动平均测试,以实现网络入侵的早期和准确检测。ARF 能够实时适应网络环境和攻击模式的变化,并通过 Hoeffding 边界和移动平均测试识别概念漂移,从而区分正常网络变化和潜在入侵。这种方法有效地降低了误报率和漏报率,提高了整体检测率。在最新的 CIC-IDS 2018 数据集上,该方法实现了 99.95% 的准确率和 99.96% 的召回率。
图4 ARF自适应框架工作流程
(2)Li等人[14]提出了一种名为Type-LDA的新型概念漂移适应框架,旨在解决数据流中概念漂移问题带来的模型预测准确性下降。该框架利用离线训练过程,无需人工设定统计测试,即可自动检测概念漂移的发生时间和类型,并根据漂移类型选择最优的漂移点进行模型重新学习。Type-LDA框架包含三个关键模块。其中,漂移类型识别器模块基于原型网络,通过学习不同漂移类型的误差特征,将漂移类型识别问题转化为分类问题。漂移点定位器模块结合原型向量和误差特征,使用回归模型预测漂移发生的最佳时间点。基于流的主动学习模块利用熵和信息距离策略,选择最具代表性的样本进行模型微调,提高模型的泛化能力。实验结果表明,Type-LDA框架在模拟数据和真实数据集上均优于现有的漂移适应方法,证明了识别概念漂移类型对于找到最优漂移点的重要性。
(a) Type-LDA框架流程图
(b) Type-LDA框架中漂移类型识别器模块工作示意图
(c) Type-LDA框架中漂移点定位器模块工作示意图
图5 Type-LDA框架流程图及主要模块工作示意图
基于深度学习的方法
在基于深度学习的概念漂移检测方法中,典型的方法是通过建立神经网络模型来学习数据分布,并监测网络输出的变化来检测概念漂移。
(1)Elwell等人[15]提出了一种名为Learn++.NSE的基于分类器集合的概念漂移增量学习方法,用于处理非平稳环境(NSE)下的网络数据。Learn++.NSE算法能够从连续批次的数据中学习,而不对漂移的性质或速率做出任何假设,适用于各种类型的漂移环境。该算法属于增量学习范畴,不需要访问以前的数据。Learn++.NSE在接收到每个批次数据时训练一个新的分类器,并使用动态加权多数投票将这些分类器组合在一起。
(2)Guo等人[16]提出了一种基于选择性集成的在线自适应深度神经网络(SEOA)来解决概念漂移问题。首先,通过将浅层特征与深层特征相结合来构建自适应深度单元,并根据相邻时刻网络数据的变化自适应地控制神经网络中的信息流,从而提高了在线深度学习模型的收敛性,将不同层的自适应深度单元作为基础分类器进行集成,并根据每个分类器的损失进行动态加权,以更好地检测概念漂移。
总结
尽管已经提出了许多方法来检测概念漂移的发生,以及降低概念漂移的影响,但现有方法中仍存在一些局限性,限制了它们在实际应用中的适用性,也为未来概念漂移的研究提供了一些可能的方向:
(1) 复杂网络数据中的概念漂移检测:现实世界的网络数据通常更为复杂和动态,而现有方法大多基于简单和平稳的网络数据假设。
(2)含概念漂移的多类不平衡网络数据分类:在实际场景中,网络异常检测数据往往存在类别不平衡情况,而概念漂移可能进一步增加类别不平衡的挑战。因此,需要研究如何在含有概念漂移和类别不平衡网络数据中进行有效的多类别异常检测,以提高模型的泛化能力和鲁棒性。
参考文献
[1] João Gama, Indre Žliobait ˙ e, Albert Bifet, Mykola Pechenizkiy, and Abdelhamid Bouchachia. 2014. A survey on concept drift adaptation. ACM Computing Surveys 46, 4 (2014), 1–37.
[2] LECHNER A, KECKEIS H, HUMPHRIES P. Patterns and processes in the drift of early developmental stages of fish in rivers: a review[J]. Reviews in Fish Biology and Fisheries, 2016, 26: 471-489.
[3] DIEHL S, ANDERSON K E, NISBET R M. Population responses of drifting stream invertebrates to spatial environmental variability: an emerging conceptual framework[M] // Aquatic insects: challenges to populations. Wallingford UK: CABI, 2008: 158-183.
[4] COHEN A M, BHUPATIRAJU R T, HERSH W R. Feature generation, feature selection, classifiers, and conceptual drift for biomedical document triage[C]//TREC. 2004.
[5] BAYRAM F, AHMED B S, KASSLER A. From concept drift to model degradation: An overview on performance-aware drift detectors[J]. Knowledge-Based Systems, 2022, 245: 108632.
[6] KORYCKI Ł, KRAWCZYK B. Concept drift detection from multi-class imbalanced data streams[C]//2021 IEEE 37th International Conference on Data Engineering (ICDE). IEEE, 2021: 1068-1079.
[7] ALKAYEM N F, CAO M, ZHANG Y, et al. Structural damage detection using finite element model updating with evolutionary algorithms: a survey[J]. Neural Computing and Applications, 2018, 30: 389-411.
[8] LU J, LIU A, DONG F, et al. Learning under concept drift: A review[J]. IEEE transactions on knowledge and data engineering, 2018, 31(12): 2346-2363.
[9] BAYRAM F, AHMED B S, Kassler A. From concept drift to model degradation: An overview on performance-aware drift detectors[J]. Knowledge-Based Systems, 2022, 245: 108632.
[10] DRIES A, RÜCKERT U. Adaptive concept drift detection[J]. Statistical Analysis and Data Mining: The ASA Data Science Journal, 2009, 2(5‐6): 311-327.
[11] NISHIDA K, YAMAUCHI K. Detecting concept drift using statistical testing[C]//International conference on discovery science. Berlin, Heidelberg: Springer Berlin Heidelberg, 2007: 264-269.
[12] HAYAT M Z, BASIRI J, SEYEDHOSSEIN L, et al. Content-based concept drift detection for email spam filtering[C]//2010 5th International Symposium on Telecommunications. IEEE, 2010: 531-536.
[13] Sugandh Seth, Kuljit Kaur Chahal, Gurvinder Singh, Concept Drift–Based Intrusion Detection For Evolving Data Stream Classification In IDS: Approaches And Comparative Study, The Computer Journal, 2024.
[14] J Li, H Yu, Z Zhang, X Luo, S Xie , Concept Drift Adaptation by Exploiting Drift Type, ACM Transactions on Knowledge Discovery from Data, 2024.
[15] ELWELL R, POLIKAR R. Incremental learning of concept drift in nonstationary environments[J]. IEEE Transactions on Neural Networks, 2011, 22(10): 1517-1531.
[16] GUO H, ZHANG S, WANG W. Selective ensemble-based online adaptive deep neural networks for streaming data with concept drift[J]. Neural Networks, 2021, 142: 437-456.
作者:中国科学院计算机网络信息中心 杜冠瑶 郭勇杰
责编:何洁
声明:本文来自中国保密协会科学技术分会,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。