一种基于多属性关联的无线传感器网络异常事件检测方法与流程

文档序号:14720210发布日期:2018-06-17 12:41阅读:203来源:国知局

本发明涉及计算机数据挖掘与应用领域,具体而言涉及一种基于多属性关联的无线传感器网络异常事件检测方法。



背景技术:

异常检测作为数据挖掘的基本任务之一,其目的是检测显著偏离于正常数据或正常模式的数据对象,从而揭示稀有现象和事件,发现有趣的模式。在无线传感器网络应用中,由于节点本身硬件的失效和外界环境噪声的干扰,传感器可能会感测到异常读数。无线传感器网络需要及时探测到监控对象的异常,并确定异常类型、诱发原因、可能后果等信息,为监控人员提供决策支持。因此,如何有效的检测出不同类型的异常读数,过滤掉无用的噪声,发现异常事件和现象,成为无线传感器网络应用的一项重要任务。

由于传感器节点的电池能量、通信带宽、存储容量和计算能力都受到严格限制,传统的异常检测算法无法直接应用到无线传感器网络环境中。目前国内外已经有许多无线传感器网络异常事件检测方法。现有大多数工作只考虑了相邻节点的传感器数据的时空关联性,而忽视了传感器读数非时空属性之间的关联。对于无线传感器网络中的异常事件,传感器数据不仅会表现出时空关联性,非时空属性之间也存在很强的关联,例如火灾检测应用,当有火灾发生时,火灾发生区域内的传感器节点不仅会感测到温度的大幅度增加,相对湿度、亮度等读数也会有相应的变化。忽略不同属性的关联会降低异常点检测的准确度,进而可能会产生错误的警报。



技术实现要素:

本发明的目的在于一种基于多属性关联的无线传感器网络异常事件检测方法,以解决无线传感器网络的异常事件检测中由于忽略非时空属性关联所造成的检测误报率高的问题,有效提高异常事件检测的精确度。为了解决以上技术问题,本发明基于贝叶斯网络建立非时空属性依赖关系模型,通过计算属性关联置信度得到待检测点与异常事件属性关联模式的相似程度,结合滑动窗口检测时间关联性,得到暂时性异常点,利用邻居节点信息检测空间关联性,确定异常事件是否发生,具体技术方案如下:

一种基于多属性关联的无线传感器网络异常事件检测方法,其特征在于,包括以下步骤:

步骤1,对传感器数据进行预处理;

步骤2,建立属性依赖关系模型:将无线传感器网络数据集D按照时间间隔分成K个子集,随机选取其中的一个子集作为训练集,用于构建属性依赖关系模型;

步骤3,时间关联性检测:基于滑动窗口模型检测相邻时刻读数的相似度,结合所述属性关联置信度,检测出可能代表异常事件的暂时性异常点;

步骤4,空间关联性检测,计算所述暂时性异常点与邻居节点的数据序列的空间相似度,若暂时性异常点和邻居节点的数据序列之间的相似度大于等于空间相似度阈值δ,说明暂时性异常点所在区域发生了异常事件,需要上传其异常信息;

步骤5,异常事件信息上传。

所述构建属性依赖关系模型具体包括以下步骤:

步骤2.1,节点变量的定义:将无线传感器网络中可直接观测到的非时空属性作为贝叶斯网络节点变量;

步骤2.2,模型结构学习:采用打分-搜索的学习方法,基于贝叶斯打分标准评价网络结构与训练样本的匹配程度,并用启发式搜索策略搜索计分函数值最高的网络结构作为模型结构;

步骤2.3,模型参数学习:利用极大似然估计法得到各个所述节点变量的状态分布和条件概率表,即各个非时空属性的条件依赖关系;

步骤2.4,属性关联置信度α的计算:设(y1,y2,...,yn)为待检测点,对于某一异常事件Ei,根据贝叶斯网络结构和条件概率表,计算出发生异常事件Ei时,所有节点变量的联合概率值,即P(X1,X2,...,Xn|Ei);所述概率值利用链式规则计算出;

步骤2.5根据公式计算待检测点的属性关联置信度α,α表示待检测点与异常事件发生时读数的非时空属性概率模式的相似程度,α越大,待检测点越有可能是代表异常事件的异常点。

所述时间关联性检测包括以下步骤:

步骤3.1,设滑动窗口的大小为ww,对于窗口内的所有时刻,分别计算ti时刻与当前时刻t对应序列的相似度

步骤3.2考虑距离当前时刻数据最近的数据序列的关联性最强,采用加权求和的方式求出当前时刻数据与窗口内数据的平均相似度其中权值

步骤3.3,如果平均相似度小于阈值ε且属性关联置信度大于等于阈值,说明当前时刻的数据序列不仅显著偏离于历史数据,而且非时空属性之间的条件依赖关系符合发生异常事件时的概率模式,是暂时性异常点,需要进一步进行空间关联性检测,其他情况则当作噪声不做处理。

所述空间关联性检测包括以下步骤:

步骤4.1,计算暂时性异常点和邻居节点序列的空间相似度

步骤4.2,如果空间相似度q(xt,yt)大于等于阈值δ,说明两个节点同时感测到了某一异常事件,将暂时性异常点和其邻居节点的状态都标记为异常事件节点;反之,说明没有邻居节点在该时刻检测到异常信息,暂时性异常点属于噪声数据;计算邻居节点数据的均值,作为当前时刻感测数据,丢弃异常信息,并将节点状态设为正常状态。

所述异常事件信息上传具体为:对于检测出的异常事件节点,利用Ritter’s最小包围圆算法,计算出所有异常点的最小包围圆的圆心,并将距离圆心最近的异常节点信息作为代表,上传到sink节点,异常节点信息Info={Tm,Loc,Attr,Parm,Ei},其中Tm为异常事件发生时间,Loc为异常事件发生位置,Attr是异常事件的非时空属性集,Parm为参数集,包括时间相似度阈值ε、空间相似度阈值δ、属性关联置信度阈值,Ei为事件类型,i=0时表示未发生异常事件,i>0表示发生了异常事件。

所述对传感器数据进行预处理的具体过程为:对于无线传感器网络数据集D,Nid表示编号为id的传感器节点,每个传感器节点具有m,个属性,采用最小值-最大值法,将传感器节点Nid在t时刻的观测序列T(a1,a2,...,am)映射为[0,1]区间的数,其中ai是不同属性上的数值;id≤1000;m≤50;1≤i≤m。

本发明具有有益效果。

(1)在多属性应用方面:

无线传感器网络中的异常事件往往涉及许多属性,并且表现出某种特定的模式。传统的异常检测方法仅考虑时间和空间关联性,容易受噪声和非异常事件(如降雨)的影响,降低了检测精度。因此,本发明通过综合考虑传感器数据的时空属性关联性和非时空属性关联性,利用贝叶斯网络建立属性依赖关系模型,得到关联属性的概率模式,通过计算属性关联置信度衡量该模式下发生异常事件的可能性。并结合滑动窗口模型检测暂时性异常点,利用邻居节点信息对暂时性异常点进行空间关联性检测,确定是否发生异常事件,有效的提高了异常事件检测准确率,降低了误报率。

(2)在能量节约方面:

在与邻居节点进行协同判断时,如果发现与暂时性异常点满足空间相似性,不仅需要将自身的异常信息上传,还要向暂时性异常点发送确认信息,这样做会消耗节点许多能量。因此,本发明通过计算异常节点集的最小包围圆圆心,选取距离圆心最近的节点作为异常事件源节点,仅上传该节点的异常信息,有效的减少了上传的数据量,进而延长了无线传感器网络的寿命。

附图说明

图1为本发明异常事件检测的总体流程示意图。

图2为本发明属性依赖关系模型及各节点的条件概率图。

具体实施方式

下面以表1所示的无线传感器网络数据子集为例,结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。

如图1所示,根据本发明的实施例,基于多属性关联的无线传感器网络异常事件检测方法包括五个基本步骤:数据的预处理;建立属性依赖关系模型;时间关联性检测;空间关联性检测;异常事件信息上传。

一、数据的预处理

无线传感器网络读数具有时空属性和非时空属性,本实施例中选取的传感器数据子集,共有8个字段,分别为{date,time,epoch,moteid,T,H,L,V},其中epoch代表随时间单调递增的序列号,属于时间属性;moteid代表传感器编号,每个编号对应一个坐标,属于空间属性;T,H,L,V分别为温度、湿度、亮度、电压,是传感器直接观测到的值,属于非时空属性。利用公式将传感器观测序列中的非时空属性转换到[0,1]内。转换后的数据集如表1所示。

表1标准化后的数据集

二、建立属性依赖模型

将标准化后的数据集作为训练样本以构建属性依赖关系模型,训练样本中的非时空属性(T,H,L,V)作为节点变量。根据训练样本的数据信息和先验知识计算出各个属性的先验概率,基于极大似然估计法得到每个节点的条件概率表。根据条件概率表中的概率信息计算属性关联置信度。

本实施例中,建立属性依赖模型包括以下步骤:

步骤1,模型结构学习:采用打分-搜索的学习方法,使用贝叶斯评分函数评价某个具体的网络结构与训练样本的匹配程度,通过最大化评分函数值得到最优网络结构。本实施例中,先验概率通过对样本数据进行统计得到,各节点的先验概率如表2所示,构造的贝叶斯网络如图2所示。

表2各节点先验概率表

步骤2,模型参数学习:采用极大似然估计法,设(x1,x2,...,xn)是一组样本值,则随机变量(X1,X2,...,Xn)落在(x1,x2,...,xn)的邻域(边长分别为dx1,dx2,...,dxn的n维立方体)内的概率近似为其中的联合概率密度,θ∈Θ,θ为待估结构参数。通过求出θ的极大似然估计值从而得到获得每个节点的条件概率表,如图2所示。

步骤3,属性关联置信度α的计算:在本实施例中以检测火灾异常事件为例,用E1表示火灾。根据贝叶斯网络结构和条件概率表,计算出发生火灾时,所有节点变量的联合概率值P(V,T,H,L)=P(V)P(T|V)P(H|V,T)P(L|V)=0.0445。利用公式计算待测数据点的属性关联置信度α,如表3中所示。

三、时间关联性检测:基于滑动窗口模型检测相邻时刻读数的相似度,结合属性关联置信度,检测可能代表异常事件的暂时性异常点。

本实施例中,时间关联性检测包括以下步骤:

步骤1,设滑动窗口的大小为ww,对于窗口内的所有时刻,分别计算ti时刻与当前时刻t对应序列的相似度本实施例中窗口大小ww=5。

步骤2考虑距离当前时刻数据最近的数据序列的关联性最强,采用加权求和的方式求出当前时刻数据与窗口内数据的平均相似度其中权值

步骤3,如果平均相似度小于阈值ε且属性关联置信度大于等于阈值说明当前时刻的数据序列不仅显著偏离于历史数据,而且非时空属性之间的条件依赖关系符合发生异常事件时的概率模式,是暂时性异常点,需要进一步进行空间关联性检测,其他情况当作噪声不做处理。本实施例中阈值ε=0.02,阈值暂时性异常点检测结果如表3所示:

表3暂时性异常点检测结果

四、空间关联性检测,上述步骤3得到的暂时性异常点需要与同一时刻邻居节点的数据信息进行协同判断,若暂时性异常点和邻居节点的数据序列之间的相似度大于等于空间相似度阈值δ,则暂时性异常点是代表某个异常事件的异常点,需要上传其异常信息。

本实施例中,空间关联性检测包括以下步骤:

步骤1,计算暂时性异常点和邻居节点序列的空间相似度

步骤2,如果空间相似度q(xt,yt)大于等于阈值δ,说明两个节点可能同时检测到了某一异常事件,暂时性异常点将自己的状态改为真实异常点,邻居节点也将自身状态改为异常节点;反之,说明没有邻居节点在该时刻检测到异常信息,暂时性异常点属于噪声数据;计算邻居节点数据的均值,作为当前时刻感测数据,丢弃异常信息,并将节点状态设为正常状态,本实施例中邻居节点的范围是以当前节点坐标为圆心,半径r=5的圆,阈值δ=0.03。本实施例的真实异常点检测结果如表4所示。

表4真实异常点检测结果

五、异常信息的处理和上传:对于检测出的真实异常点和已经判定为异常的邻居节点,利用Ritter’s最小包围圆算法,计算出所有异常节点的最小包围圆的圆心,并将距离圆心最近的异常节点信息作为异常事件信息,上传到sink节点。本实施例中异常事件信息表如表5所示。

表5异常事件信息表

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