LTE网络中的异常值检测方法及系统与流程

文档序号:14869978发布日期:2018-07-06 21:15阅读:412来源:国知局

本发明涉及一种LTE网络中的异常值检测方法及系统。



背景技术:

在过去的几年里,通过电信网络产生的数据呈指数型增长。异常检测,旨在通过人工模式找到非预期数据模式下的异常变得很难。由于数据量的庞大,即使是业务专家也无法通过浏览日志文件找出异常现象。

LTE网络的快速发展产生了越来越多的网络流量数据。因此,通过手动式处理和分析由此产生的数据流量是不大可能的。特别地,从连续的数据流中自动检测出异常值仍然是一个有待实现的挑战之一。这一领域至关重要,因为异常现象会导致网络效率的低下。的确,这些异常现象的起源可能是一个小区中的技术问题或是网络使用中的欺诈入侵,这些情况都需要尽快确认并修复。

一个较好的异常值检测过程必须满足以下三个方面:首先,可以有效地检测出真实的异常现象,即使是很难手动预测的新模式下的异常现象;然后,该过程必须有较快的处理速度,并且可以减少从出现到修正后的时间长度;最后,误差率必须很低。在传统的异常检测算法中通常没有考虑时间因素。因此,这些传统的算法很难准确地检测出某些异常现象。

异常检测的传统方法是使用监督算法。在这种情况下,监督方法是在包括异常值的数据集中进行训练,并试图将异常值从正常值中分离出来。这类算法存在一些主要的缺点。在大部分情况中,异常现象是罕见并多样的。一些已经鉴别出的异常现象和随之而来的新的异常现象可能不同。因此,这类监督算法并不适用于非预期的异常值类型。

下面描述的是非监督算法。与监督算法不同,非监督算法使用非标签数据,这也就意味着训练数据集并不包含是否是异常值这一信息。因此,非监督算法可以自动地区分不同数据结构和模式下的异常值。该算法并不直接找出异常值,而是对数据进行描述和分组。然后从这些组别中得到异常值。该方法的主要优点在于能够检测到以前无法预见的或非预期的异常现象。

对非监督学习而言主要的统计技术是聚类。聚类的目的是将数据点分离并将具有相似特征的数据点聚成一组。每一组称为一个类。每一个组都被称作一个集群(簇)。对象之间的相似性可通过解析方式进行定义。业界存在着很多不同的聚类算法,其区别在于衡量对象相似性的标准不同:可通过距离、密度或是统计分布来衡量。

因此,亟待开发一种基于数据驱使系统并充分利用机器学习算法的找出异常值的方法。



技术实现要素:

本发明的目的是提供一种LTE网络中的异常值检测方法及系统,将时间轴作为一个重要因素,从而能够检测出新模式下的异常值并且迅速准确地找到非预期下的异常值,解决现有技术中存在的或无法检测非预期的异常值,或无法从多个数据点组成的序列中发掘多个异常值等问题。

本发明的技术解决方案是:

一种LTE网络中的异常值检测方法,包括以下步骤,

S1、加载实测数据,实测数据根据预先选定的指标产生,且具有对应的时间,将所有的数据划分为训练集和测试集,测试集和训练集相互独立,但包含相同的变量;

S2、在训练集中定义集群和参数,由聚类算法找到各数据点所属的集群;

S3、根据参数值和聚类的结果,计算每个数据点的似然值,在推导的模型下,一个数据点的似然值就是其概率密度;

S4、依据设定的预警阈值、报警阈值将似然值分成异常区域、中间区域和正常区域;

S5、将已经计算出的模型应用在测试集中,每个数据点的似然值均被计算出来,并且这些数据点被分到异常区域、中间区域和正常区域三个区域中,从而找到测试集中的异常值。

进一步地,步骤S2中,聚类算法采用基于高斯概率的潜在语义分析模型,即GPLSA算法,已知观测值集合W和时间轴集合D,观测值集合W中的每个数据点都有时间轴集合D中的一个数据点与其对应;GPLSA算法对所有的集群k、每个时间的水平对应的值s,近似估计出未知参数mk、∑k和αk,s,mk表示第k个集群所对应的均值,∑k表示第k个集群所对应的协方差矩阵,αk,s表示时间对于水平为s、集群为k时所对应的概率;进而得出每个数据点最可能的集群和未知参数mk、∑k和αk,s的似然估计。

进一步地,GPLSA算法具体为:

S21、对所有的k、s,当t=1时,t表示进行迭代的次数,对参数αk,s赋予初值,表示第k个集群的均值初始值,表示第k个集群的初始协方差矩阵,αk,s表示时间对于水平为s、集群为k时所对应的概率;

S22、对所有的k、i,当Wi=wi,Di=di时,wi、di分别表示第i个数据点的观测值、时间值,计算观测值Zi的组别为k时即Zi=k的概率和参数

其中,i为数据记录数,t表示进行的第t次迭代,表示在第k次迭代中,第i个观测值属于集群k的概率;f表示在第k个集群中,均值为协方差矩阵为进行第t-1次迭代时观测值为wi的概率;表示第k个集群,时间值是di,进行第t-1次迭代的概率;表示第k个集群的第t-1次迭代时均值初始值;表示第k个集群的第t-1次迭代时方差初始值;

S23、对于所有的k、s,计算

其中,#Es表示集合Es的长度;表示概率值的数学期望;表示第j次迭代,下标为j的所有观测值Es(j)属于集群k的概率;Es(j)表示下标j的集合;

S24、对于所有的k、s,更新概率αk,s:

其中,表示概率值的数学期望;表示属于集群1时的数学期望;

S25、对于所有的k,更新均值

其中,wi表示第i个数据的观测值;表示在第k次迭代中,第i个观测值属于集群k的概率;

S26、对于所有的k,更新协方差矩阵:

其中,′表示转置,wi表示第i个数据的观测值;mk表示第K个集群所对应的均值;表示在第k次迭代中,第i个观测值属于集群k的概率;

S27、令t=t+1并重复步骤S22-S27,直到某个时间T收敛,在该时间,估计出参数;

S28、对于每个i,选择的k是使最大化的k,表示在第k次迭代中,第i个观测值属于集群k的概率;

S29、对于每个i,估计的参数点的似然函数是:

其中,P(di)表示第i个数据点时间水平为di的概率;表示在第T次迭代中,集群1的均值;表示在第T次迭代中,集群1的协方差矩阵;表示在第T次迭代中,属于集群1,时间水平为di的概率。

进一步地,GPLSA算法中,假设一:假设每个观测值来自于以1-K为标记的组,记录所属组别被标记为Z=(zi)i,每个数据点的组别假设为确定的,但是未知的,定义该集合为潜在变量,将所有属于第一组的数据点称为集群1,以此类推,直至集群K;

假设二:观测值和潜在变量的联合分布可被分解为基于样本的产品;已知观测值zi的组别为k,假设观测值wi来自于一个服从均值为向量mk,方差矩阵为∑k的高斯分布;

假设三:GPLSA算法引入潜在组和时间轴之间的依存关系,已知每个时间值di的水平对应的值s,相关的潜在值属于k的概率与参数αk,s成比例,以下式(1)将αk,s改写为方程式,其中大写字母表示随机变量:

αk,s:=P(Zi=k|Di=s) 式(1);

假设四:潜在变量、观测值和时间轴是条件独立的,即:

P(Wi=w|Di=s,Zi=k)=P(Wi=w|Z=k) 式(2)。

进一步地,GPLSA算法中,集群的个数K需要提前确定,在执行完聚类算法后可对K进行调整。

进一步地,步骤S4中,在异常区域的称为“强异常值”,在中间区域中设定个以上连续日期仍然存在的称为“长异常值”,在正常区域的数据点被定义为正常点,预警阈值、报警阈值根据接收数据的数量和质量进性调整。

一种LTE网络中的异常值检测系统,包括数据加载模块和异常检测模块,

数据加载模块:通过计算设备接收待检测区域的网络指标,并间隔设定时间选择网络资源;

异常检测模块:基于上述的LTE网络中的异常值检测方法,实现异常值的检测。

本发明的有益效果是:该种LTE网络中的异常值检测方法及系统,能够从数据流中自动提取信息,并最终确定异常值的发生时间。该方法在模型中增加时间轴可以更好地理解数据点在时间上的变化,进而可从多个数据点组成的序列中发掘多个异常值,而不是单个异常值。该种LTE网络中的异常值检测方法,使用GPLSA所呈现的聚类和区域确认复杂度低,且每一部分都可很容易的被理解。该种LTE网络中的异常值检测方法的实现完全是以数据为驱动的,并且可自动化运行。此外,它可快速地检测出异常值:首先,即使异常值来自于一个新模式,也可以标记出真实的异常值;其次,在某个异常值出现后可提前发现;最后,误差率也很低。

附图说明

图1是本发明实施例LTE网络中的异常值检测方法的流程示意图。

图2是实施例中用于测试的典型二维数据集,且无异常值的示意图,其中,横坐标x和纵坐标y分别表示某个二维数据点在不同维度所对应的特征值。

图3是实施例中用于测试的典型的二维数据集,增加了一个异常值的示意图;其中,横坐标x和纵坐标y分别表示某个二维数据点在不同维度所对应的特征值。

图4是实施例中通过对数似然估计进行的典型异常值检测,数据中无异常值的示意图,其中,横坐标x和纵坐标y分别表示某个二维数据点在不同维度所对应的特征值。

图5是实施例中通过对数似然估计进行的典型异常值检测,增加了一个异常值的示意图;其中,横坐标x和纵坐标y分别表示某个二维数据点在不同维度所对应的特征值。

图6是实施例中一个有异常点的典型二维数据的聚类结果,增加了一个异常值的示意图;其中,横坐标x和纵坐标y分别表示某个二维数据点在不同维度所对应的特征值。

图7是实施例中出于比较,阐述了应用传统算法进行的有异常值的典型二维数据的聚类结果,增加了一个异常值的示意图;其中,横坐标x和纵坐标y分别表示某个二维数据点在不同维度所对应的特征值。

具体实施方式

下面结合附图详细说明本发明的优选实施例。

在LTE网络中检测异常流量的系统已公开化。实施例可检索到包含时间轴信息的数据。实施例主要包括两个步骤可自动运行该数据。首先,执行考虑了时间轴信息的聚类算法;然后,非预期的数据点按算法上的定义被标记出,产生两种类型的异常检测:“长异常值”和“强异常值”。实施例还通过两个例子,对系统的健壮性和准确性进行了检测。

实施例

一种LTE网络中的异常值检测方法,包括以下步骤,

S1、加载实测数据,实测数据根据预先选定的指标产生,且具有对应的时间,将所有的数据划分为训练集和测试集,测试集和训练集相互独立,但包含相同的变量;

S2、在训练集中定义集群和参数,由聚类算法找到各数据点所属的集群;

S3、根据参数值和聚类的结果,计算每个数据点的似然值,在推导的模型下,一个数据点的似然值就是其概率密度;

S4、依据设定的预警阈值、报警阈值将似然值分成异常区域、中间区域和正常区域;

S5、将已经计算出的模型应用在测试集中,每个数据点的似然值均被计算出来,并且这些数据点被分到异常区域、中间区域和正常区域三个区域中,从而找到测试集中的异常值。

在步骤S1中,加载了实测的数据。这些数据根据预先选定的指标产生。该数据集中包含大量的数据,每一条记录都有对应的时间。在加载完数据后准备工作也同时完成:所有的数据被划分为训练集和测试集。训练集是为了发现集合中记录之间的模式和关系的数据集。测试集和训练集相互独立,但包含相同的变量。测试集服从一个和训练集类似的概率分布。测试集是用来评估由训练集推导的模型准确度。如果一个模型在训练集和测试集中均可以检测出异常值,那么该模型就是有效的。在实施例中,70%的数据用于训练集,30%的数据用于测试集。

在步骤S2中,在训练集中定义集群即簇。该聚类算法叫做“基于高斯概率的潜在语义分析模型”即GPLSA。该算法将在稍后进行描述。简而言之,参数模型中所描述的数据和时间轴有关。参数值是近似的,并且可推断出需要划分的集群即簇。

在步骤S3中,根据参数值和聚类的结果,集中计算每个数据点的似然值。在推导的模型下,一个数据点的似然值就是其概率密度。模型中较小的数推导出的似然值也比较小,因此它可能是一个潜在的异常值。

在步骤S4中,将似然值分成三个区域。针对训练集中的所有数据,计算出最低的0.1%分位数和1%分位数。似然值低于0.1%分位数的区域标记为红色。这些数据点包括了最不可能的值,并且是潜在的异常值。似然值在0.1%-1%之间的区域标记为橘色。这些数据点对应着不大可能的似然值,但为了减少误差率并没有被定义为异常值。在该区域中的数据点基于时间进行处理,可以知道对连续时间轴而言,这些数据点是否仍在橘色区域。如果在6个连续日期中,数据点还在该区域,就将其定义为异常值。最后,似然值1%分位数以上的数据点所对应的区域标记为绿色,其中的数据点被定义为正常点。根据接收数据的数量和质量,可调整0.1%分位数和1%分位数的阈值大小。

需强调两种类型的异常值:在红色区域的称为“强异常值”,在橘色区域中,4个以上连续日期仍然存在的称为“长异常值”。

步骤S5中,将已经计算出的模型应用在测试集中。每个数据点的似然值均被计算出来,并且这些数据点根据已知的分位数被分到三个区域中。从而找到测试集中的异常值。

实施例的核心算法是GPLSA算法,接下来对其进行介绍。该算法是基于传统的高斯混合模型(GMM),但在数据值和时间轴之间创建一个新型的关联。

在高斯混合模型中,集群(簇)的个数K需要提前确定。在执行完聚类算法后可对K进行调整。可将时间轴水平个数的一半作为默认的K值。

用i来标记数据记录数,i的取值范围是1到N。观测值标记为W=(wi)i,时间轴标记为D=(di)i。集合W中的每个数据点都有集合D中的一个数据点与其对应。与N相比,时间轴D的水平个数是固定且有限的。例如,如果每隔1小时记录一条观测值或者如果产生了日循环,可以对D赋予24个水平,即每小时一个水平。

假设每个观测值来自于以1-K为标记的组,记录所属组别被标记为Z=(zi)i。每个数据点的组别假设为确定的,但是未知的。定义该集合为“潜在变量”。将所有属于第一组的数据点称为集群(簇)1,以此类推。

聚类算法的目的就是为了找到数据点所属的集群(类)。仍需增加其他的假设。高斯混合模型GMM遵循如下的假设:首先,观测值和潜在变量的联合分布可被分解为基于样本的产品;其次,已知观测值Zi的组别为K,可假设Wi来自于一个服从均值为向量mk,方差矩阵为∑k的高斯分布。

在GMM模型中,一条记录属于某个特定的潜在组的概率仅取决于一个未知的系数,并与观测值和时间轴无关。不同地,GPLSA算法引入潜在组和时间轴之间的依存关系。特别地,已知每个水平di对应的时间轴值为s,相关的潜在值属于k的概率与参数αk,s成比例。以下式(1)将αk,s改写为方程式(大写字母表示随机变量)。

αk,s:=P(Zi=k|Di=s) 式(1)

为了使公式易于处理并减少参数的数量,增加最后一个假设:潜在变量,观测值和时间轴是条件独立的。与该假设相关的公式如下所示(对所有i):

P(Wi=w|Di=s,Zi=k)=P(Wi=w|Zi=k) 式(2)

总体而言,已知集合W和集合D,主要目标就是对所有的k,s,近似估计出未知参数mk、∑k和αk,s,mk表示第k个集群所对应的均值,∑k表示第k个集群所对应的协方差矩阵,αk,s表示时间对于水平为s、集群为k时所对应的概率。进而得出每个数据点最可能的集群(簇)和这些参数的似然估计。

为了拟合统计模型的参数,选择最大似然估计法。在该方法中,所选择的参数是所有数据集中似然值最大的参数。由于数据的高维度,每个参数无法进行检测和比较,从而需要一个近似的最大似然估计算法。因此引入了一个叫作最大期望(EM)的经典迭代算法。EM算法的思想主要是经过如下两步骤交替进行计算:第一步计算期望(E),利用对隐藏变量的现有估计值,计算其最大似然估计值;最大化(M),最大化在E步上求得的最大似然值来计算参数的值。M步上找到的参数估计值被用于下一个E步计算中,这个过程不断交替进行。迭代使用EM步骤,直至收敛。在GPLSA模型中,直接使用如下公式进行计算:

P(Wi=w,Di=s,Zi=k)=P(Wi=w|Zi=k)P(zi|Di=s)P(Di=s) 式(3)

此外,对GPLSA,获得了精确的更新方程。用f(.|m,∑)来表示参数m和∑的高斯密度函数。若di=s,用Es来表示下标i的集合。为了得到最终的参数,对算法进行以下描述:

S21、对所有的k、s,当t=1时,t表示进行迭代的次数,对参数αk,s赋予初值,表示第k个集群的均值初始值,表示第k个集群的初始协方差矩阵,αk,s表示时间对于水平为s、集群为k时所对应的概率;

S22、对所有的k、i,当Wi=wi,Di=di时,wi、di分别表示第i个数据点的观测值、时间值,计算观测值Zi的组别为k时即Zi=k的概率和参数

其中,i为数据记录数,t表示进行的第t次迭代,表示在第k次迭代中,第i个观测值属于集群k的概率;f表示在第k个集群中,均值为协方差矩阵为进行第t-1次迭代时观测值为wi的概率;表示第k个集群,时间值是di,进行第t-1次迭代的概率;表示第k个集群的第t-1次迭代时均值初始值;表示第k个集群的第t-1次迭代时方差初始值;

S23、对于所有的k、s,计算

其中,#Es表示集合Es的长度;表示概率值的数学期望;表示第j次迭代,下标为j的所有观测值Es(j)属于集群k的概率;Es(j)表示下标j的集合;

S24、对于所有的k、s,更新概率αk,s:

其中,表示概率值的数学期望;表示属于集群1时的数学期望;

S25、对于所有的k,更新均值

其中,wi表示第i个数据的观测值;表示在第k次迭代中,第i个观测值属于集群k的概率;

S26、对于所有的k,更新协方差矩阵:

其中,′表示转置,wi表示第i个数据的观测值;mk表示第K个集群所对应的均值;表示在第k次迭代中,第i个观测值属于集群k的概率;

S27、令t=t+1并重复步骤S22-S27,直到某个时间T收敛,在该时间,估计出参数;

S28、对于每个i,选择的k是使最大化的k,表示在第k次迭代中,第i个观测值属于集群k的概率;

S29、对于每个i,估计的参数点的似然函数是:

其中,P(di)表示第i个数据点时间水平为di的概率;表示在第T次迭代中,集群1的均值;表示在第T次迭代中,集群1的协方差矩阵;表示在第T次迭代中,属于集群1,时间水平为di的概率。

实施例描述了基于时间轴的异常数据检测过程。这些时间轴包含数据性能相关的重要信息,例如日循环或周循环。在此,引入一种高可靠性的异常现象检测方法。该方法是将时间轴作为一个重要因素的算法。该算法可以检测出新模式下的异常值并且准确找到非预期下的异常值。而且,异常检测的过程是很迅速的。因此,移动运营商可以根据该方法及时的确认并检测异常值,从而减少了可能花费的成本。

实施例所定义的聚类方法充分利用了时间轴这一信息。当收集数据时,这些时间信息通常也被收集了,但很少应用在传统的聚类算法中。在模型中增加时间轴可以更好地理解数据点在时间上的变化,进而可从多个数据点组成的序列中发掘多个异常值,而不是单个异常值。

一种LTE网络中的异常值检测系统,包括数据加载模块和异常检测模块,

数据加载模块:通过计算设备接收待检测区域的网络指标,并间隔设定时间选择网络资源;

异常检测模块:基于上述的LTE网络中的异常值检测方法,实现异常值的检测。

该种LTE网络中的异常值检测系统,接收数据,进而识别异常流量元素。其中,接收的数据包含网络资源指标、对应值和时间轴信息。实施例系统,使用统计工具,计算出数据点是正常值的概率;使用算法,预警那些具有非预期表现的单点或连续点。

实施例系统中,使用统计工具,同时使用数据值和时间轴信息对具有相似性的数据进行分组;数据点被视为非预期时,选择限制性的阈值;从这些限制性的阈值中检测出异常值。针对两种不同类别的异常值:“长异常值”和“强异常值”,分别定义一个“报警阈值”和“预警阈值”;通过似然估计计算这些阈值。

模拟测试

数据集的分组过程和异常值识别过程已在两个数据集上均进行了模拟测试。就两个数据集而言,观测值均是二维真实数据,时间分为48个水平。在此,每30分钟可以认为是一个日周期中的水平。时间点的演变呈逆时针旋转。如图2所示,第一个数据集即数据集1的模拟不包含异常值。在此,一个颜色代表一个水平。如图3所示,数据集2中增加了一个关键的异常表现,位置大概在(-1,0)之间。随着时间的推移,该异常值自首次就处于精确的位置和水平,在随后也没有呈逆时针移动,仍然靠近(-1,0)的位置。

图4、图5和图6的结果是使用GPLSA和24个集群即簇的程序训练得到的。

集合1中训练数据的似然结果如图4所示。特别地,只标记出位于1800-2200之间的数据点。绝大多数的数据点位于绿色区域,即图4中标记为黑色,然而很少的数据点位于橘色区域即图4标记为橘色。此外,这些数据点是孤立的但并没有被标记为异常值。总的来说,该结果是可预测的,且误差率很低。

图5展示了数据集2训练后的结果。当似然值逐渐降低的时候,可认为检测出异常值。首先,在连续4个时间段水平均位于橘色区域的连续数据点产生了“长异常值”的警告;位于红色区域的最后一个异常值产生了“强异常值”的警告。因此,该过程可检测出异常值并发出警告。

图6展示了集合2中二维数据的结果。在此,一种颜色代表一个集群即簇。橘点代表橘色区域,红点代表红色区域。正如图5所示,即使异常值位于(-1,0),异常值也可提前检测出来。出于比较,如图7所示,该过程使用具有24个集群即簇的GMM算法。该算法无法检测出异常值,也无法进行提前检测。

总体而言,使用GPLSA所呈现的程序中聚类和区域确认复杂度低,且程序的每一部分都可很容易的被理解。该程序的实现完全是以数据为驱动的,并且可自动化运行。此外,它可快速地检测出异常值:首先,即使异常值来自于一个新模式,也可以标记出真实的异常值;其次,在某个异常值出现后可提前发现;最后,误差率也很低。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1