CN110995508A - 基于kpi突变的自适应无监督在线网络异常检测方法 - Google Patents
基于kpi突变的自适应无监督在线网络异常检测方法 Download PDFInfo
- Publication number
- CN110995508A CN110995508A CN201911334135.0A CN201911334135A CN110995508A CN 110995508 A CN110995508 A CN 110995508A CN 201911334135 A CN201911334135 A CN 201911334135A CN 110995508 A CN110995508 A CN 110995508A
- Authority
- CN
- China
- Prior art keywords
- data
- kpi
- cluster
- points
- real
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/08—Feature extraction
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于KPI突变的自适应无监督在线网络异常检测方法,包括1、采集网络中的KPI历史数据并进行预处理;2、提取预处理后的各历史数据的高阶差分组成二维差分组合特征形成二维差分组合特征集;3、使用自适应密度聚类方法对二维差分组合特征集中的特征数据进行聚类分析,得到正常数据的簇集;4、在线获取KPI实时数据;5、提取实时数据的二维差分组合特征,将该特征代入到步骤3中的正常数据簇集中判断该组合特征是否隶属于某一正常数据的簇,如果不属于,则判断该实时数据为异常,进而判断出网络处于异常状态。本发明通过分析KPI的突变与网络异常相关后,从寻找KPI的突变来间接发现网络的异常,实验发现,能够实现良好的性能。
Description
技术领域
本发明属于网络异常检测领域,尤其设计一种基于KPI突变的自适应无监督在线网络异常检测方法。
背景技术
为了保证可靠稳定的互联网服务,互联网公司需要监控各种KPI并实时的检测异常。KPI是一种时间序列数据,通常包含了一段时间内由某种持续的监控产生的一系列数值,比如服务延迟,页面浏览量,在线用户数量等。KPI中的异常通常指的是时间序列中表现出不同特征或不可预期的模式的时间异常片段,比如突增突降,抖动等。当KPI表现出异常时,往往意味着相关服务发生了故障,比如网络中断,配置错误,服务器过载,外部攻击等。通常KPI异常难以用预定义的知识或规则去描述,因为异常往往是依赖上下文的。在实际异常的标注中,领域专家通过视觉性的扫描KPI获得正常模式,并认为那些不符合此模式的数据为异常。这与异常的通用定义是相符的:异常是那些偏离大部分观测数据的数据。因此,我们认为在无标签的情况下检测KPI异常的关键是学习正常数据的分布。在实际中,由于异常的模糊和稀缺性,数据标签的缺乏以及KPI的多样性,检测各种KPI中的异常非常困难。
现有的KPI异常检测方法可分为三类:传统统计方法,有监督集成方法和无监督学习方法。传统方法使用统计技术并为KPI建立方程去实现基于预测或偏差的检测,其缺陷主要在于需要针对每条KPI选择合适的检测模型并精调参数。有监督集成方法使用多个传统检测模型去提取特征,并训练一个基于有监督机器学习的分类器,其缺点在于严重依赖标签,需要对每条KPI中的数据进行人工标注。而最近,无监督学习方法的兴起为KPI异常检测提供了更好的解决方案。无监督学习方法的核心思想在于对正常数据的特征分布进行建模,并根据在线数据是否符合此分布来判断异常。然而,这些方法在实际中常常性能不佳。同时,无监督学习方法中有一些对性能有重要影响的参数,而在无监督的环境下估计这些参数是困难的。因此这些方法常常需要标签辅助进行复杂的参数精调。
发明内容
本发明要解决的技术问题是怎样快速准确的找出KPI异常数据,从而分析出网络故障,提出了一种基于KPI突变的自适应无监督在线网络异常检测方法。
为解决该问题,采取的技术方案是:
一种基于KPI突变的自适应无监督在线网络异常检测方法,包括以下步骤:
步骤1:采集网络中的KPI历史数据,对历史数据进行预处理;
步骤2:提取预处理后的各历史数据的高阶差分组成二维差分组合特征形成二维差分组合特征集;
步骤3:使用自适应密度聚类方法对二维差分组合特征集中的特征数据进行聚类分析,得到正常数据的簇集;
步骤4:在线获取KPI实时数据,并对实时数据进行预处理;
步骤5:提取实时数据的二维差分组合特征,将该实时二维差分组合特征代入到步骤3中的正常数据簇集中判断该组合特征是否隶属于某一正常数据的簇,如果不属于任何簇集,则判断该实时数据为异常,进而判断出网络处于异常状态。
进一步地,所述对数据进行预处理包括利用邻近值的均值填充缺失值后,对数据进行标准化。
进一步地,步骤2中二维差分组合特征的提取方法是:对预处理后的历史数据离散化,提取离散化后的历史数据的一阶差分xt-xt-1和二阶差分值xt-xt-2形成二维组合特征:(xt-xt-1,xt-xt-2)。
进一步地,步骤3中所述自适应密度聚类方法是指对于基于密度的聚类方法DBSCAN,其参数邻域半径参数Eps和在邻域半径Eps内的数据点个数MinPts的设置方法具体为:
步骤3.1:采用自适应的方法确定邻域半径参数Eps:
步骤3.1.1:设置k=MinPts得到具体的k-dist图,所述k-dist指的是一个数据点距离其第k近的点的距离,按照所有数据点的k-dist值进行升序排列所有点可以得到升序k-dist图,所述数据点指的是每条KPI历史数据的二维差分组合特征所代表的点,MinPts表示在邻域半径Eps内的数据点个数;
步骤3.1.2:令点f和l分别为k-dist图中的第一个点和最后一个点,p为f和l之间的任意一点,p的坐标表示为(p.x,p.y),其中p.x表示横坐标即升序序号,p.y表示纵坐标即k-dist值,则由点f和p,点p和l分别组成的标准化向量表示为:
步骤3.1.3:遍历k-dist图中的所有点p,得到最小的cosθ,该最小cosθ所对应的点p为k-dist图中的拐点t,该拐点t所对应的k-dist值为k-dist(t);
步骤3.1.4:邻域半径Eps的值:
Eps=k-dist(t)×ρ,ρ≥1
ρ为异常精度调整系数;
步骤3.2:对于领域半径Eps内至少有的数据点个数MinPts,取MinPts≥4。
进一步地,步骤5中所述将该实时二维差分组合特征代入到步骤3中的正常数据簇集中判断该组合特征是否隶属于某一正常数据的簇的方法是:
步骤5.1:计算实时二维差分组合特征与某一簇集中所有点的最小距离,
步骤5.2:判断此距离是否小于阈值,若小于阈值则表明此数据属于这个簇集则判断网络正常,若大于阈值,则转步骤5.3;
步骤5.3:遍历其它簇集,重复步骤5.1和5.2,若该实时二维差分特征与任一簇集中的所有点的最小距离都大于阈值,则判断网络异常。
进一步地,步骤5.1中在计算实时二维差分组合特征与某一簇集中所有点的最小距离时,当该簇集为最大簇集,对最大簇进行子采样,以子采样样本代替最大簇,只求取子采样样本中的每一数据点与该实时二维差分组合特征点的最小距离。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上面所述的基于KPI突变的自适应无监督在线网络异常检测方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上面所述的KPI突变的自适应无监督在线网络异常检测方法的步骤。
与现有技术相比,本发明所取得的有益效果是:
一种基于KPI突变的自适应无监督在线网络异常检测方法,本发明通过步骤2中的高阶差分提取与组合得到(有助于识别突变的)二维差分组合特征,并通过步骤3中的自适应密度聚类方法得到正常数据的特征簇集,过滤掉异常数据并对最大簇进行子采样,然后将实时采集的KPI数据特征与各簇集进行比较判断,看实时KPI数据特征是否隶属于某一簇集来判断该KPI数据是否异常,从而判断网络是否出现异常。本发明通过分析KPI的突变与网络异常相关后,从寻找KPI的突变来间接发现网络的异常,通过实验数据发现,本发明能够实现良好的性能。
附图说明
图1是本发明系统流程图;
图2本发明研究的三种代表类型的KPI示意图;
图3是本发明识别和定义的一种常见且重要的KPI异常类型即突变的示意图;
图4是本发明自适应密度聚类方法中基于k-dist图的拐点的示意图;
图5是本发明算法的整体框架图;
图6是本发明算法中子采样大小对F-score和检测时间的影响分析图;
图7是本发明算法中参数MinPts对F-score的影响分析图。
图8是本发明算法特征空间中二维差分组合特征的检测结果和实际标签分析图。
图9和图10是本发明算法提取差分特征对于突变和预期概念漂移的识别分析图。
具体实施方式
本发明从异常的角度出发,详细的探索了各种KPI中异常的性质和机制,识别了KPI数据中一种常见且重要的异常形式,命名为突变。
KPI突变定义为:
令f(t)=xt-xt-1,其中t表示KPI时间戳上的一个点,xt是在时间t的监控值。对于一条KPI中长度为m的异常片段:{xi,xi+1,…,xi+m-1},如果它满足以下条件:
则它是突变。
其中阈值threshold取决于KPI,因为不同KPI中的f(t)是不同的。比如,假设f(t)~N(0,σ2),则threshold可以为3σ,因为此区域包含了大约99.7%的数据。在实际中f(t)常常是未知的,学习它的分布是检测突变的关键。而延迟delay指的是突变(异常片段)中第一个点和第一个突变点之间的距离,突变点指的是满足f(t)>threshold的点。延迟大小取决于实际中性能要求,比如,当DDCOL被要求在异常发生后的第七个监控点之前检测到一个异常点,那么delay=7。
突变通常指的是KPI中异常片段在一个很小的延迟内发生了突增或突降,比如KPI中的峰值、抖动等。这些现象有着重要的实际意义:由于KPI中的数值是由连续的监控产生的,比如监控页面浏览量每分钟产生一个观测值,在连续时间戳上的数值通常不会剧烈的变化。当KPI中的数值或趋势发生突变时,则有理由立即怀疑潜在的产生数据的机制已经发生了根本性的改变。这些改变通常是由网络相关服务或系统的故障引起的。因此,KPI中突变的检测与异常事件的检测是紧密相关的,这些网络异常事件常常表现为相关时间戳上的上下文异常。比如,对网站的外部攻击可能导致网站流量的突增。因此,突变往往意味着网络中的相关服务发生了异常,比如网络失败,服务器故障,配置错误,服务器过载,外部攻击等。除此之外,在实验中发现KPI中的大部分异常都是突变,因此检测KPI突变来发现网络异常是必要且重要的。但是在现有的方法中不能准确的检测各种KPI中的突变。因此,为了克服现有方法的不足和检测各种KPI中的突变,我们提出了一种自适应无监督在线异常检测方法,命名为DDCOL。
图1至图10给出了本发明一种基于KPI突变的自适应无监督在线网络异常检测方法的一种具体实施例,如图1所示,包括以下步骤:
步骤1:采集网络中的KPI历史数据,对历史数据进行预处理;
对历史数据进行预处理包括利用邻近值的均值填充缺失值后,对数据进行标准化。
图2展示了本发明针对的三种具有代表性的KPI,从上到下分别是周期型,稳定型和波动型。周期型KPI大致上具有定期出现的周期模式,比如页面浏览量。稳定型KPI中的正常数据相对于异常数据分布在一个小的区域,比如搜索数据中心的缓慢响应数。波动型KPI是不稳定的,没有明显的周期特征并且较多的波动,比如搜索响应时间。波动型KPI中的波动(图中即突增)实际上是由预期概念漂移造成的。预期概念漂移指的是KPI的分布发生了明显改变,但这种改变被领域专家认为是正常的。预期概念漂移通常由软件更新,服务更新等引起,在KPI上往往表现为水平变化,比如突增或突降。注意,虽然预期概念漂移和突变异常有着相似的特征,但它们在本质上是不同的。预期概念漂移可能会造成异常检测算法失效,因为算法基于旧概念建立的模型不适用于新概念。因此,要实现准确的异常检测就需要学习包括预期概念漂移在内的正常数据的特征分布。图中的圆圈表示异常,宏观上观察尽管KPI的种类或形状不同,但它们的异常都是相似的,即突变。图3从微观上更细致的展示了突变,即一个异常片段中相邻值的差分在小的延迟内变得比正常的差分大得多。本实施例中以页面浏览量这个网络关键性能指标来进行示例。
步骤2:提取预处理后的各历史数据的高阶差分组成二维差分组合特征形成二维差分组合特征集;对预处理后的历史数据离散化,提取离散化后的历史数据的一阶差分值xt-xt-1和二阶差分值xt-xt-2形成二维组合特征:(xt-xt-1,xt-xt-2),所有离散化后的历史数据的一阶差分值和二阶差分值组成的二维组合特征形成二维组合特征集。
步骤3:使用自适应密度聚类方法对二维差分组合特征集中的特征数据进行聚类分析,得到正常数据的簇集;
本发明采用一种基于密度的聚类方法,即DBSCAN(Density-Based SpatialClustering ofApplications with Noise)去对二维差分组合特征进行聚类,DBSCAN的核心思想是找到数据中的核心点,其邻域半径Eps领域内至少有MinPts个数据点,然后通过相似性传递将核心点扩展成簇集。不属于任何簇集的点被过滤掉。由DBSCAN形成的簇集被认为是KPI中正常数据的特征分布,异常数据已经被过滤掉。本发明采用DBSCAN的理由如下:1、DBSCAN的原理与异常的定义和发现是一致的,即大部分有相似特征的数据形成簇集并被认为是由正常机制产生的,小部分有不同特征的数据被过滤掉并被认为是异常。2、提前确定簇集的数目是非常困难的,这使得许多需要预定义聚类数目的算法比如K-means不适用于此场景。而DBSCAN能够自动的形成簇集而不需要预定义簇集数目。3、通过DBSCAN形成簇集可以是任何形状,这满足了KPI的复杂性和多变性。4、DBSCAN的时间复杂度相对较低。
在基于密度的聚类方法DBSCAN中,参数邻域半径Eps和领域内数据点的个数MinPts对性能和检测准确率有着重要影响。因此,使用DBSCAN方法,主要是确定这两个参数,然后将二维组合特征集中的各数据点输入到DBSCAN中,最后输出多个簇集。
步骤3.1:邻域半径参数Eps采用自适应的方法确定,具体为:
步骤3.1.1:设置k=MinPts得到具体的k-dist图,所述k-dist指的是一个数据点距离其第k近的点的距离,按照所有数据点的k-dist值进行升序排列所有数据点,得到升序k-dist图,所述数据点是指每条KPI历史数据的二维差分组合特征所代表的点;k-dist图中的拐点,即拐弯区域的代表性的点提供了一个对于Eps的良好估计,因为拐点将k-dist图分为两部分,平坦区域和陡峭区域。平坦区域的点分布在密集区域,其应该形成簇集。而陡峭区域的点分布在稀疏区域,其很有可能是异常数据。确定k-dist图中拐点的方法如下:
步骤3.1.2:令点f和l分别为k-dist图中的第一个点和最后一个点,p为f和l之间的任意一点,p的坐标表示为(p.x,p.y),其中p.x表示横坐标即升序序号,p.y表示纵坐标即k-dist值,则由点f和p,点p和l分别组成的标准化向量表示为:
步骤3.1.3:遍历k-dist图中的所有点p,找到cosθ的最小值,该最小cosθ所对应的点p为k-dist图中的拐点t,该拐点t所对应的k-dist值为k-dist(t);
步骤3.1.4:邻域半径Eps的值:
Eps=k-dist(t)×ρ,ρ≥1;
ρ为异常数据精度调整系数;
注意,步骤3.1.1中设置k=MinPts有一个重要性质或原因:当Eps等于k-dist(t)时(k-dist(t)表示拐点t的k-dist值),所有其k-dist值小于等于k-dist(t)的点都会形成簇集,因为它们全都是核心点。这保证了升序k-dist图中所有处于平坦区域的点能形成簇集。为了使得Eps适应于不同KPI,基于得到的拐点,本实施例中所确定Eps的值:
Eps=k-dist(t)×ρ,ρ≥1
其中,ρ是一个乘子,表示异常数据精度调整系数,帮助Eps适应不同KPI的分布。本实施例通过确定正常数据最紧凑的特征分布,提供了一个Eps的下界,即Eps≥k-dist(t)。本发明将Eps值的确定转换为ρ的确定,通过实验发现在ρ=20,21,...,26能在不同KPI上实现良好的性能。显然,ρ的确定比Eps的确定要容易的多,因为其搜索范围更小。在实际中,领域专家可以调整ρ值来捕获他们感兴趣的异常数据。
图4是本发明自适应密度聚类方法中搜索拐点的示意图。此图表明大部分数据的k-dist值都较小且接近,而少部分异常数据的k-dist较大。拐点将升序k-dist图分为平坦和陡峭两个部分,从而提供了一个参数Eps的良好估计。采用本发明的自适应方法能够准确的确定拐点。
步骤3.2:对于领域半径Eps内至少有的数据点个数MinPts,取MinPts≥4。
本实施例中设置MinPts=5,因为对于二维数据当MinPts≥4时聚类结果不会发生明显的改变。同时通过实验证明,算法对参数MinPts不敏感。
步骤4:在线获取KPI实时数据,并对实时数据进行预处理;
对实时数据进行标准化处理。
步骤5:提取预处理后的实时数据的二维差分组合特征,将该实时二维差分组合特征输入到步骤3中经自适应密度聚类方法训练的正常数据簇集中,判断该组合特征是否隶属于某一正常数据的簇,如果不属于任何簇集,则判断该实时数据为异常,进而判断出网络处于异常状态。
步骤5.1:计算实时二维差分组合特征与某一簇集中所有点的最小距离;
步骤5.2:判断此最小距离是否小于阈值,若小于阈值则表明此二维差分组合特征属于这个簇集,则判断网络正常,若大于阈值,则转步骤5.3;本实施例中阈值取邻域半径Eps。
步骤5.3:遍历其它簇集,重复步骤5.1和5.2,若该实时二维差分特征点与任一簇集中的所有点的最小距离都大于阈值,则判断网络异常。
对于一个实时的在线数据,首先提取其二维差分组合特征,然后计算此特征与每个簇集的距离,即此特征与某个簇集中所有点的最小距离,最后判断此距离是否小于阈值,若小于阈值则表明此数据属于这个簇集则它是正常的。若此特征不属于任何簇集则它是异常的。本实施例中设置阈值等于Eps,有如下两点原因:1、在训练阶段,核心点通过Eps扩张来形成簇集,自然地,在检测阶段Eps被用来作为距离阈值来判断在线数据是否属于正常簇集。2、本发明尽可能减少参数使得算法更加实用。由于整个算法的设计,只有一个参数即Eps需要调整,并且自适应的方法能帮助领域专家去确定Eps的值,这使得简单的调参就能实现准确的检测。
当正常簇集中有大量的样本时,在线检测中最小距离的计算会消耗大量的时间,影响实时检测的性能。本实施例提出了一种使用子采样方法去减少样本数量。具体地,当该簇集为最大簇集,对最大簇集进行子采样,以子采样样本代替最大簇集,只求取子采样样本中的每一数据点与该实时二维差分组合特征点的最小距离。在使用子采样代替最大簇集的同时,也保留其他簇集,这是因为基于自适应方法得到的Eps,大部分正常数据的特征倾向于聚为一个大的簇集,而小部分其他正常数据的特征倾向于聚为其他小的簇集,并且在最大的簇集中小部分的样本就能代表整个簇集的密度和特征,因为有大量重复或相似的样本。因此,对最大簇集进行子采样能够显著的降低计算开销,实现高效的实时检测,而保留其他小的簇集能保证较高的检测准确率。通过实验发现,当子采样大小增加到某一合适的值时(212),算法能实现准确高效的检测,并且没有必要再增加采样大小,因为这不会提高准确率并且会增加计算开销。
图5是本发明的整体框架图。本发明被分为两个阶段:离线训练阶段和在线检测阶段。在离线训练阶段,即步骤1-步骤3,首先对历史数据进行预处理,预处理包括对利用邻近值的均值填充缺失值,对数据进行标准化。然后提取并组合高阶差分得到二维差分组合特征,并用自适应密度聚类得到正常数据的特征分布,也就是聚类后的各个簇集。最后,对最大簇进行子采样并保留其他小的簇集。在线检测阶段,即步骤4和步骤5,同离线训练阶段一样,首先对实时数据进行数据处理,然后提取实时数据的二维差分组合特征,最后根据在线数据的二维差分组合特征是否隶属于之前训练的某一簇来实时的判断其是否异常。
下面通过一些实验数据和图表来验证本发明通过找到KPI中的突变数据来发现网络异常。
表1本发明方法DDCOL和其他四种算法的总体性能比较
表1本发明方法DDCOL和对比的四种方法的总体性能图。其中,准确率指的是被检测的真正的异常点占所有被算法标注为异常点的比例,召回率指的是被检测的真正的异常点占所有真正异常点的比例。F-score指的是准确率和召回率的调和平均。三个指标的最优值都为1,最差值都为0。通常,准确率和召回率有相反的关系,通过调整阈值来提高一项而降低另一项是可能的。而F-score提供了一个更为客观的评价。只有当准确率和召回率都较高时F-score才较高。注意,在计算上述指标时,对于一个异常片段,若在一个小的延迟内检测到了异常点,则认为此片段中的所有点都被检测到,否则,认为此片段的所有点都没有被检测到。这是因为在实际中,领域专家关心的是算法能否在小的延迟内检测到异常并报警,而不是检测到多少个异常点。对于一个给定的数据集,通过调整算法中的参数可以得到不同的F-score,实验对比的是最优F-score,因为它代表了一个算法最佳的性能。除此之外,延迟指的是一个异常片段中第一个点和第一个被检测到的点之间的距离。数据集1~8是来自实际监控中的8条大规模KPI(每条包含1到3个月监控产生的20000~140000个数据点),数据集A1~A4是yahoo公开异常检测数据集,一共包含了356条小型KPI(每条包含大概1400个数据点)。实验结果表明,与两种传统统计方法(simple moving average,简单滑动平均,缩写simple MA和Autoregressive Integrated Moving Average,差分整合移动平均自回归模型,缩写ARIMA)和两种无监督学习方法(adaptive kernel density estimation,自适应核密度估计,AKDE和Donut(一种论文中的自命名的算法名称,无全称))相比,本发明的方法DDCOL在12个数据集中的7个实现了最好的结果,并且在不同数据集上实现了稳定良好的性能。
表2给出了本发明发现的突变比例,突变比例的计算方式为DDCOL在最优F-score下检测到的异常片段数量除以总的异常片段数量。结果表明,当延迟大于等于5时,12个数据集中有11个突变的比例达到了74%以上,甚至在4个数据集上达到100%。此结果直观的说明了KPI中大部分的异常都是突变。这或许是因为在网络环境下,异常往往是突发性和爆发性产生的,而产生其他类型异常(比如缓慢的上升)的条件十分苛刻,只有在极少数情况下才会出现。这也是为什么本发明针对突变设计的方法DDCOL能实现良好性能的原因。
表2本发明发现的突变比例
表3不同特征的F-score。本发明探索了DDCOL提取不同特征对性能的影响,分别提取了滑动窗口的均值mean,方差var,一阶差分diff1,二阶差分diff2以及它们的组合。其中二维特征(diff1,diff2)是本发明认为对于突变最简单有效的,也是之前实验中唯一提取的特征。结果表明,(diff1,diff2)实现了最高的平均F-score,而其他特征在某些数据集上表现较差。这是因为其他特征在某些情况下会受到限制,比如,对于均值特征,KPI中数据分布的显著变化会导致均值特征失效,因为检测时的均值分布已经偏离了训练中学到的均值分布。对于方差特征,正常数据的持续波动可能导致大的方差从而误判为异常。而差分特征对于突变是直接而有效的,高阶差分的组合对于识别突变和区分预期概念漂移是鲁棒的。
表3不同特征的F-score比较表
图6给出了本发明子采样大小对F-score和检测时间的影响结果图。结果表明F-score在较小的子采样大小就能收敛。一个小的子采样大小同时提供了高的F-score和低的检测时间。因此,本实施例中当子采样大小增加到某一合适的值时(212),本发明能实现准确高效的检测,并且没有必要再增加采样大小,因为这不会提高准确率并且会增加计算开销。
表4是本发明基于密度的聚类方法所形成的簇集统计表,结果表明,大部分的特征样本由于相似性形成了一个大的簇,而剩下的小部分样本形成了小的簇集。比如,数据集3的特征空间中,最大的簇集有12791个样本,而其他10个簇集只有101个样本。因此,保留小的簇集并不会导致子采样后总样本数量剧增,从而保证了高效的实时检测。
表4基于密度的聚类方法所形成的各簇中样本大小对比表
图7是参数MinPts对F-score的影响。结果表明,当MinPts变化时,F-score能保持稳定,即算法对参数MinPts不敏感。本实施例中优选MinPts=5。
图7是本发明二维差分组合特征的检测结果(右)和实际标签(左)分析图。其中‘x’表示异常,圆点表示正常特征。图示表明,本发明算法DDCOL能够通过高阶差分与组合识别突变(异常),并通过基于密度的聚类得到KPI中正常数据的良好特征分布。
图9和图10是本发明算法提取差分特征对于突变和预期概念漂移的识别分析图,图9中圆圈表示异常数据,图10中‘x’表示二维差分组合异常特征。图9表明原始KPI受到预期概念漂移的影响不稳定,而一阶差分特征虽然除了在预期概念漂移发生的时刻能保持稳定,但大量的概念漂移仍然会导致大量的误报,因为突变和预期概念漂移的一阶差分特征是相似的。图10展示了本发明算法提取的二维差分组合特征空间,其表明突变和预期概念漂移的二维差分组合特征是不同的。算法DDCOL能够通过密度聚类对KPI中包括预期概念漂移在内的正常数据进行建模,从而获得正常数据良好的特征分布。
本发明通过步骤3中的自适应密度聚类方法得到正常数据的簇集,过滤掉异常数据,然后将实时采集的KPI数据与各簇集进行比较判断,看实时KPI数据是否隶属于某一簇集来判断该KPI数据是否异常,从而判断网络是否出现异常。本发明通过分析KPI的突变与网络异常相关后,从寻找KPI的突变来间接发现网络的异常,通过实验数据发现,本发明能够实现良好的性能。本发明从检测KPI异常的角度来发现网络异常,并给出了识别一种常见且重要的异常形式突变,并且发现KPI中的大部分异常都是突变。并且通过实验证明,本发明给出的网络异常判断方法是有效且性能良好的。
本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上面所述的基于KPI突变的自适应无监督在线网络异常检测方法的步骤。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现实现上面所述的KPI突变的自适应无监督在线网络异常检测方法的步骤。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。
Claims (9)
1.一种基于KPI突变的自适应无监督在线网络异常检测方法,其特征在于:包括以下步骤:
步骤1:采集网络中的KPI历史数据,对历史数据进行预处理;
步骤2:提取预处理后的各历史数据的高阶差分组成二维差分组合特征形成二维差分组合特征集;
步骤3:使用自适应密度聚类方法对二维差分组合特征集中的特征数据进行聚类分析,得到正常数据的簇集;
步骤4:在线获取KPI实时数据,并对实时数据进行预处理;
步骤5:提取预处理后的实时数据的二维差分组合特征,将该实时二维差分组合特征输入到步骤3中经自适应密度聚类方法训练的正常数据簇集中,判断该组合特征是否隶属于某一正常数据的簇,如果不属于任何簇集,则判断该实时数据为异常,进而判断出网络处于异常状态。
2.根据权利要求1所述的基于KPI突变的自适应无监督在线网络异常检测方法,其特征在于:所述对历史数据进行预处理包括利用邻近值的均值填充缺失值后,对数据进行标准化。
3.根据权利要求1所述的基于KPI突变的自适应无监督在线网络异常检测方法,其特征在于:步骤2中二维差分组合特征的提取方法是:对预处理后的历史数据离散化,提取离散化后的历史数据的一阶差分xt-xt-1和二阶差分值xt-xt-2形成二维组合特征:(xt-xt-1,xt-xt-2)。
4.根据权利要求3所述的基于KPI突变的自适应无监督在线网络异常检测方法,其特征在于:步骤3中所述自适应密度聚类方法是指对于基于密度的聚类方法DBSCAN,其参数邻域半径参数Eps和在邻域半径Eps内的数据点个数MinPts的设置方法具体为:
步骤3.1:邻域半径参数Eps采用自适应的方法确定,具体为:
步骤3.1.1:设置k=MinPts得到具体的k-dist图,所述k-dist指的是一个数据点距离其第k近的点的距离,按照所有数据点的k-dist值进行升序排列所有数据点,得到升序k-dist图,所述数据点是指每条KPI历史数据的二维差分组合特征所代表的点;
步骤3.1.2:令点f和l分别为k-dist图中的第一个点和最后一个点,p为f和l之间的任意一点,p的坐标表示为(p.x,p.y),其中p.x表示横坐标即升序序号,p.y表示纵坐标即k-dist值,则由点f和p,点p和l分别组成的标准化向量表示为:
步骤3.1.3:遍历k-dist图中的所有点p,找到cosθ的最小值,该最小cosθ所对应的点p为k-dist图中的拐点t,该拐点t所对应的k-dist值为k-dist(t);
步骤3.1.4:邻域半径Eps的值:
Eps=k-dist(t)×ρ,ρ≥1;
ρ为异常精度调整系数;
步骤3.2:对于领域半径Eps内至少有的数据点个数MinPts,取MinPts≥4。
5.根据权利要求4所述的基于KPI突变的自适应无监督在线网络异常检测方法,其特征在于:将该实时二维差分组合特征输入到步骤3中经自适应密度聚类方法训练的正常数据簇集中,判断该组合特征是否隶属于某一正常数据的簇的方法是:
步骤5.1:计算实时二维差分组合特征与某一簇集中所有点的最小距离;
步骤5.2:判断此最小距离是否小于阈值,若小于阈值则表明此二维差分组合特征属于这个簇集,则判断网络正常,若大于阈值,则转步骤5.3;
步骤5.3:遍历其它簇集,重复步骤5.1和5.2,若该实时二维差分特征点与任一簇集中的所有点的最小距离都大于阈值,则判断网络异常。
6.根据权利要求5所述的基于KPI突变的自适应无监督在线网络异常检测方法,其特征在于:所述阈值为邻域半径Eps。
7.根据权利要求5所述的基于KPI突变的自适应无监督在线网络异常检测方法,其特征在于:步骤5.1中在计算实时二维差分组合特征与某一簇集中所有点的最小距离时,当该簇集为最大簇集,对最大簇集进行子采样,以子采样样本代替最大簇集,只求取子采样样本中的每一数据点与该实时二维差分组合特征点的最小距离。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一权利要求所述基于KPI突变的自适应无监督在线网络异常检测方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一权利要求所述KPI突变的自适应无监督在线网络异常检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911334135.0A CN110995508B (zh) | 2019-12-23 | 2019-12-23 | 基于kpi突变的自适应无监督在线网络异常检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911334135.0A CN110995508B (zh) | 2019-12-23 | 2019-12-23 | 基于kpi突变的自适应无监督在线网络异常检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110995508A true CN110995508A (zh) | 2020-04-10 |
CN110995508B CN110995508B (zh) | 2022-11-11 |
Family
ID=70074150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911334135.0A Active CN110995508B (zh) | 2019-12-23 | 2019-12-23 | 基于kpi突变的自适应无监督在线网络异常检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110995508B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651735A (zh) * | 2020-05-07 | 2020-09-11 | 清华四川能源互联网研究院 | 一种具有时间戳对齐功能的时序数据水印算法 |
CN111723940A (zh) * | 2020-05-22 | 2020-09-29 | 第四范式(北京)技术有限公司 | 基于机器学习服务系统提供预估服务的方法、装置及设备 |
CN111738308A (zh) * | 2020-06-03 | 2020-10-02 | 浙江中烟工业有限责任公司 | 基于聚类及半监督学习的监控指标动态阈值检测方法 |
CN111858231A (zh) * | 2020-05-11 | 2020-10-30 | 北京必示科技有限公司 | 一种基于运维监控的单指标异常检测方法 |
CN111865407A (zh) * | 2020-06-11 | 2020-10-30 | 烽火通信科技股份有限公司 | 光通道性能劣化智能预警方法、装置、设备及存储介质 |
CN112187555A (zh) * | 2020-12-01 | 2021-01-05 | 北京蒙帕信创科技有限公司 | 一种基于机器学习的实时kpi数据异常检测方法及装置 |
CN113033643A (zh) * | 2021-03-17 | 2021-06-25 | 上海交通大学 | 基于带权重采样的概念漂移检测方法、系统及电子设备 |
CN113537321A (zh) * | 2021-07-01 | 2021-10-22 | 汕头大学 | 一种基于孤立森林和x均值的网络流量异常检测方法 |
CN113556258A (zh) * | 2020-04-24 | 2021-10-26 | 西安华为技术有限公司 | 一种异常检测方法及装置 |
CN113723452A (zh) * | 2021-07-19 | 2021-11-30 | 山西三友和智慧信息技术股份有限公司 | 一种基于kpi聚类的大规模异常检测系统 |
CN114781779A (zh) * | 2022-02-25 | 2022-07-22 | 江苏鼋博群智能技术有限公司 | 一种无监督能耗异常检测方法、装置及存储介质 |
CN114925116A (zh) * | 2022-06-01 | 2022-08-19 | 中国西安卫星测控中心 | 一种航天器遥测数据预测方法 |
CN115310516A (zh) * | 2022-07-06 | 2022-11-08 | 山东科技大学 | 自动化设备状态稳定判断方法、系统及可读存储介质 |
CN116796214A (zh) * | 2023-06-07 | 2023-09-22 | 南京北极光生物科技有限公司 | 一种基于差分特征的数据聚类方法 |
GB2621851A (en) * | 2022-08-24 | 2024-02-28 | Vodafone Group Services Ltd | Computer implemented methods, systems and program instructions for detecting anomalies in a core network of a telecommunications network |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014183784A1 (en) * | 2013-05-14 | 2014-11-20 | Telefonaktiebolaget L M Ericsson (Publ) | Resource budget determination for communications network |
WO2017016472A1 (en) * | 2015-07-28 | 2017-02-02 | Huawei Technologies Co., Ltd. | Predicting network performance |
US20180089303A1 (en) * | 2016-09-26 | 2018-03-29 | Splunk Inc. | Clustering events based on extraction rules |
CN110032490A (zh) * | 2018-12-28 | 2019-07-19 | 中国银联股份有限公司 | 用于检测系统异常的方法及其装置 |
CN110083507A (zh) * | 2019-04-19 | 2019-08-02 | 中国科学院信息工程研究所 | 关键性能指标分类方法及装置 |
CN110213227A (zh) * | 2019-04-24 | 2019-09-06 | 华为技术有限公司 | 一种网络数据流检测方法及装置 |
-
2019
- 2019-12-23 CN CN201911334135.0A patent/CN110995508B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014183784A1 (en) * | 2013-05-14 | 2014-11-20 | Telefonaktiebolaget L M Ericsson (Publ) | Resource budget determination for communications network |
WO2017016472A1 (en) * | 2015-07-28 | 2017-02-02 | Huawei Technologies Co., Ltd. | Predicting network performance |
US20180089303A1 (en) * | 2016-09-26 | 2018-03-29 | Splunk Inc. | Clustering events based on extraction rules |
CN110032490A (zh) * | 2018-12-28 | 2019-07-19 | 中国银联股份有限公司 | 用于检测系统异常的方法及其装置 |
CN110083507A (zh) * | 2019-04-19 | 2019-08-02 | 中国科学院信息工程研究所 | 关键性能指标分类方法及装置 |
CN110213227A (zh) * | 2019-04-24 | 2019-09-06 | 华为技术有限公司 | 一种网络数据流检测方法及装置 |
Non-Patent Citations (1)
Title |
---|
YONG YUE等: "Towards a Personalized Item Recommendation Approach in Social Tagging Systems Using Intuitionistic Fuzzy DBSCAN", 《IEEE》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113556258A (zh) * | 2020-04-24 | 2021-10-26 | 西安华为技术有限公司 | 一种异常检测方法及装置 |
CN113556258B (zh) * | 2020-04-24 | 2022-12-27 | 西安华为技术有限公司 | 一种异常检测方法及装置 |
CN111651735A (zh) * | 2020-05-07 | 2020-09-11 | 清华四川能源互联网研究院 | 一种具有时间戳对齐功能的时序数据水印算法 |
CN111858231A (zh) * | 2020-05-11 | 2020-10-30 | 北京必示科技有限公司 | 一种基于运维监控的单指标异常检测方法 |
CN111723940A (zh) * | 2020-05-22 | 2020-09-29 | 第四范式(北京)技术有限公司 | 基于机器学习服务系统提供预估服务的方法、装置及设备 |
CN111723940B (zh) * | 2020-05-22 | 2023-08-22 | 第四范式(北京)技术有限公司 | 基于机器学习服务系统提供预估服务的方法、装置及设备 |
CN111738308A (zh) * | 2020-06-03 | 2020-10-02 | 浙江中烟工业有限责任公司 | 基于聚类及半监督学习的监控指标动态阈值检测方法 |
CN111865407B (zh) * | 2020-06-11 | 2021-11-30 | 烽火通信科技股份有限公司 | 光通道性能劣化智能预警方法、装置、设备及存储介质 |
CN111865407A (zh) * | 2020-06-11 | 2020-10-30 | 烽火通信科技股份有限公司 | 光通道性能劣化智能预警方法、装置、设备及存储介质 |
CN112187555A (zh) * | 2020-12-01 | 2021-01-05 | 北京蒙帕信创科技有限公司 | 一种基于机器学习的实时kpi数据异常检测方法及装置 |
CN112187555B (zh) * | 2020-12-01 | 2021-03-19 | 北京蒙帕信创科技有限公司 | 一种基于机器学习的实时kpi数据异常检测方法及装置 |
CN113033643A (zh) * | 2021-03-17 | 2021-06-25 | 上海交通大学 | 基于带权重采样的概念漂移检测方法、系统及电子设备 |
CN113537321A (zh) * | 2021-07-01 | 2021-10-22 | 汕头大学 | 一种基于孤立森林和x均值的网络流量异常检测方法 |
CN113537321B (zh) * | 2021-07-01 | 2023-06-30 | 汕头大学 | 一种基于孤立森林和x均值的网络流量异常检测方法 |
CN113723452A (zh) * | 2021-07-19 | 2021-11-30 | 山西三友和智慧信息技术股份有限公司 | 一种基于kpi聚类的大规模异常检测系统 |
CN113723452B (zh) * | 2021-07-19 | 2024-05-28 | 山西三友和智慧信息技术股份有限公司 | 一种基于kpi聚类的大规模异常检测系统 |
CN114781779A (zh) * | 2022-02-25 | 2022-07-22 | 江苏鼋博群智能技术有限公司 | 一种无监督能耗异常检测方法、装置及存储介质 |
CN114925116A (zh) * | 2022-06-01 | 2022-08-19 | 中国西安卫星测控中心 | 一种航天器遥测数据预测方法 |
CN115310516A (zh) * | 2022-07-06 | 2022-11-08 | 山东科技大学 | 自动化设备状态稳定判断方法、系统及可读存储介质 |
GB2621851A (en) * | 2022-08-24 | 2024-02-28 | Vodafone Group Services Ltd | Computer implemented methods, systems and program instructions for detecting anomalies in a core network of a telecommunications network |
CN116796214A (zh) * | 2023-06-07 | 2023-09-22 | 南京北极光生物科技有限公司 | 一种基于差分特征的数据聚类方法 |
CN116796214B (zh) * | 2023-06-07 | 2024-01-30 | 南京北极光生物科技有限公司 | 一种基于差分特征的数据聚类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110995508B (zh) | 2022-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110995508B (zh) | 基于kpi突变的自适应无监督在线网络异常检测方法 | |
JP6725700B2 (ja) | 異常なユーザ行動関連アプリケーションデータを検出するための方法、装置、およびコンピュータ読み取り可能な媒体 | |
Toledano et al. | Real-time anomaly detection system for time series at scale | |
US8805836B2 (en) | Fuzzy tagging method and apparatus | |
CN112329847A (zh) | 一种异常检测方法、装置、电子设备及存储介质 | |
US20170228659A1 (en) | Regularized Iterative Collaborative Feature Learning From Web and User Behavior Data | |
Hollmén | User profiling and classification for fraud detection in mobile communications networks | |
CN104462385A (zh) | 一种基于用户兴趣模型的电影个性化相似度计算方法 | |
WO2012091993A1 (en) | Automatic variable creation for adaptive analytical models | |
Zhang et al. | Energy theft detection in an edge data center using threshold-based abnormality detector | |
CN111818198A (zh) | 域名检测方法、域名检测装置和设备以及介质 | |
CN109995611B (zh) | 流量分类模型建立及流量分类方法、装置、设备和服务器 | |
CN111143838A (zh) | 数据库用户异常行为检测方法 | |
CN116823496A (zh) | 基于人工智能的智能保险风险评估和定价系统 | |
CN113746780B (zh) | 基于主机画像的异常主机检测方法、装置、介质和设备 | |
Aziz et al. | Cluster Analysis-Based Approach Features Selection on Machine Learning for Detecting Intrusion. | |
CN113094448B (zh) | 住宅空置状态的分析方法及分析装置、电子设备 | |
Kumar et al. | Clustering the Various Categorical Data: An Exploration of Algorithms and Performance Analysis | |
CN109739840A (zh) | 数据空值处理方法、装置及终端设备 | |
CN111914905B (zh) | 一种基于半监督的反爬虫系统及设计方法 | |
CN111967911A (zh) | 衍生品的监控分析方法及系统 | |
Ramamoorthy et al. | Integration of fuzzy with incremental import vector machine for intrusion detection | |
CN118555149B (zh) | 一种基于人工智能的异常行为安全分析方法 | |
Ahmed et al. | Scaling up for high dimensional and high speed data streams: HSDStream | |
Khattab et al. | T2D2: A Time Series Tester, Transformer, and Decomposer Framework for Outlier Detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |