嵌入式智能终端异常数据的检测方法和嵌入式智能终端与流程

文档序号:15049710发布日期:2018-07-27 23:58阅读:175来源:国知局

本发明涉及本发明涉及网络安全领域,尤其涉及一种嵌入式智能终端异常数据检测方法和嵌入式智能终端。



背景技术:

随着互联网技术的不断发展,网络安全逐渐成为了一项热门,几乎每天都会产生新的安全威胁。面对这样一些规模逐渐庞大、类型变化多端的攻击,应用机器学习或数据挖掘技术对数以万计的新类型安全威胁进行训练和识别逐渐成为了主流趋势。

在嵌入式环境下,需要对采集到的一些数据进行异常检测,而数据挖掘领域的许多方法,只有在数据规模较大的情形下才能显现出优势,例如神经网络,对于计算资源有限的环境,数据挖掘领域的方法显得比较复杂,且检测率较低。

本发明的目的在于,能够在终端设备计算资源有限的情形下、采用云端辅助的方式,通过一种基于图聚类的方式在嵌入式智能终端环境中进行小规模的异常数据挖掘,检测出异常数据。与数据挖掘领域其他算法相比,便于实现,也表现出较高的检测率;终端数据的属性种类较少,运行算法效率较高;如果对检测率有更高的要求,可以请求云端协同完成;此外,该方法还改善了基于传统的k-means的异常检测算法在用于异常检测时需要预先设定簇的个数的问题,提高了聚类算法对于任意形状的簇的聚类质量,增加了异常数据的检测率,减少了误报率。



技术实现要素:

本发明提供了一种嵌入式智能终端异常数据检测方法和嵌入式智能终端,解决了计算资源有限环境下,进行异常数据检测检测效率低的问题。

第一方面,提供了一种嵌入式智能终端异常数据的检测方法,该检测方法包括:

接收待测数据,待测数据包含异常数据;

确定待测数据中的对象,每个对象的k近邻,以及对象之间的k近邻关系;

根据对象之间的k近邻关系构造k近邻有向图;

根据k近邻有向图构造k-聚类图,并对k-聚类图中的聚类簇进行标记;

当聚类簇中的部分聚类簇满足预设条件时,部分聚类簇中的待测数据作为异常数据输出。

可选地,在一个可能实现的方式中,在对k-聚类图中的聚类簇进行标记之后;检测方法还包括:

当聚类簇中的部分聚类簇满足预设条件时,向云端服务器发送请求消息,请求消息用于云端服务器对部分聚类簇中的待测数据进行计算,获得异常数据并输出。

可选地,在一个可能实现的方式中,云端服务器对部分聚类簇中的待测数据进行计算,获得异常数据并输出,包括:

云端服务器计算部分聚类簇中的待测数据基于簇的离群点因子;

当部分聚类簇中的待测数据基于簇的离群点因子满足预设阈值时,确定部分聚类簇中待测数据作为异常数据输出。

可选地,在一个可能实现的方式中,根据k近邻有向图构造k-聚类图,包括:

根据k近邻有向图中的k-互邻居关系构造k-聚类图。

第二方面,提供了一种嵌入式智能终端,嵌入式智能终端包括存储器和处理器,以及存储器中存储的计算机程序,当处理器调用存储器中的计算机程序时,处理器执行以下操作:

接收待测数据,待测数据包含异常数据;

处理单元确定待测数据中的对象,每个对象的k近邻,以及对象之间的k近邻关系;

根据对象之间的k近邻关系构造k近邻有向图;

根据k近邻有向图构造k-聚类图,并对k-聚类图中的聚类簇进行标记;

当聚类簇中的部分聚类簇满足预设条件时,部分聚类簇中的待测数据作为异常数据输出。

可选地,在一个可能实现的方式中,在对k-聚类图中的聚类簇进行标记之后;处理器还用于执行:

当聚类簇中的部分聚类簇满足预设条件时,向云端服务器发送请求消息,请求消息用于云端服务器对部分聚类簇中的待测数据进行计算,获得异常数据并输出。

可选地,在一个可能实现的方式中,云端服务器对部分聚类簇中的待测数据进行计算,获得异常数据并输出,包括:

云端服务器计算部分聚类簇中的待测数据基于簇的离群点因子;

当部分聚类簇中的待测数据基于簇的离群点因子满足预设阈值时,确定部分聚类簇中待测数据作为异常数据输出。

可选地,在一个可能实现的方式中,根据k近邻有向图构造k-聚类图,包括:

根据k近邻有向图中的k-互邻居关系构造k-聚类图。

采用本发明技术方案提供的嵌入式智能终端异常数据检测方法和嵌入式智能终端,能够在嵌入式终端设备计算资源有限的情形下、采用云端辅助的方式,通过一种基于图聚类的方法在嵌入式智能终端环境中进行小规模的异常数据挖掘,与数据挖掘领域其他算法相比,便于实现,也表现出较高的检测率;终端数据的属性种类较少,运行算法效率较高。另外,云端协同方式辅助终端进行二次标记,减轻了终端的计算负担,提升了终端计算效率;通过采用图聚类的方式,改善了基于传统的k-means的异常检测算法需要预先设定簇的个数的问题,提高了聚类算法对于任意形状的簇的聚类质量;聚类完毕之后采用两次标记聚类簇的方式,改善了单纯使用图聚类检测异常数据精度,同时也增加了异常数据的检测率,减少了误报率。

附图说明

图1为本发明实施例提供的一种嵌入式智能终端异常数据检测方法的流程示意图;

图2为本发明实施例提供的一种嵌入式智能终端的结构示意图;

图3为本发明实施例提供的一种系统结构示意图。

具体实施方式

本发明实施例提供了一种嵌入式智能终端异常数据检测方法和嵌入式智能终端,能够在终端设备计算资源有限的情形下,采用云端辅助的方式,使用图聚类方法对嵌入式智能终端环境进行小规模的异常数据挖掘,检测率较高;嵌入式智能终端数据的属性种类较少,运行算法效率较高。同时使用云端协同方式辅助嵌入式智能终端进行二次标记,减轻了嵌入式智能终端的计算负担,提升了嵌入式智能终端计算效率。另外,采用本发明的技术方案,改善了基于传统的k-means的异常检测算法需要预先设定簇的个数的问题,提升了异常数据的检测率,减少了误报率。

下面结合附图对本发明的技术方案进行描述。

图1为本发明实施例提供的一种嵌入式智能终端异常数据检测方法的流程示意图。如图1所示,该检测方法可以包括以下步骤:

s101,接收待测数据,待测数据包含异常数据。

把包含异常数据的待测数据作为嵌入式智能终端的输入。在嵌入式环境中,采集到的数据属性主要包括系统资源和系统状态两类,系统资源属性可以包括:cpu占有率、内存占用率、磁盘空间、网络发送流量,网络接收流量、蓝牙状态、wifi状态、电池信息等等;系统状态属性可以包括:信号强度、进程数量、安装的应用程序数量、正在运行的应用程序数量等等。每一种属性都可以组成待采集数据的一个维度,只要维度大于1,都可以使用本方法。

s102,确定待测数据中的对象,每个对象的k近邻,以及对象之间的k近邻关系。

s103,根据对象之间的k近邻关系构造k近邻有向图。

k近邻有向图是指,对于一个有向图g=(w,e),其中w是图中所有点的集合w={w1,w2,…wn,},e是图中所有边的集合e={e1,e2,…,em},ei=<wp,wq>,wp,wq∈w,其中,i=1,2,3,…n;对每条边ei的存在,当且仅当wq是wp的k近邻,ei的方向为wp指向wq。这些边和点构成了k近邻有向图。

s104,根据k近邻有向图构造k-聚类图,并对k-聚类图中的聚类簇进行标记。

可选地,在本发明实施例中,根据k近邻有向图中的k-互邻居关系构造k-聚类图。

有向图中的k-互邻居关系是指:对于有向图g,如果g中任意两点wp和wq,存在边epq=<wp,wq>和eqp=<wq,wp>,即wp是wq的k近邻,并且wq是wp的k近邻,则wp和wq为k-互邻居关系。

k-聚类图是指,由结点集w=w={w1,w2,…wn,}和边集e={e1,e2,…,em}构成的无向图g’,其中,ei=<wp,wq>,wp,wq∈w,其中,i=1,2,3,…n。任意边ei的存在,当且仅当wp和wq为k-互邻居关系。在形成的k-聚类图中,连通的子图包含的结点相对靠近,聚集成簇,而互不连通的子图的结点之间距离相对较远,从而形成不同的簇。这些簇可以称为自然聚类簇。

对这些自然聚类进行第一次标记,也就是将自然聚类簇进行大聚类簇和小聚类簇簇的区分。在本发明实施例中,大聚类簇和小聚类簇也可以称为大簇、小簇,对大、小聚类簇的分类可以通过如下方式实现:

例如设置一个阈值λ,将聚类簇中数据个数大于λn的簇,认为是大簇,大簇中不包含异常数据,而相反则认为是包含异常数据的小簇,并分别给大簇和小簇做上区分标记。

大簇和小簇的区分如下:假设数据集中异常数据的个数远小于正常数据的个数,设c为一个数据集的聚类划分,即c={c1,c2,…,ck},其中k表示划分的聚类簇的个数,并且|c1|≥|c2|≥…≥|ck|。数据集的个数为|c|。设置两个参数α和β,则c可以划分为如下两类:

(c1|+|c2|+…+|cb|)≥α*|c|(1)

|cb|/cb+1≥β(2)

其中1<b<k。公式(1)式用来确定大簇和小簇的边界值b,公式(2)式来保证大簇中的数据个数远大于小簇(即β>1)。对于聚类簇中数据个数大簇lc,lc={ci|i≤b}不包含异常数据,而小簇sc={cji|j≤b},对大簇和小簇分别做上区分标记;

s105,当聚类簇中的部分聚类簇满足预设条件时,部分聚类簇中的待测数据作为异常数据输出。

这里的部分聚类簇指的是s104中的小簇,满足的条件为根据大簇小簇划分,划分为小簇的条件。

在本发明实施例中,对第一次标记结果有更高精度需求时,需要请求云端进行二次标记。

可选地,在一个可能实现的方式中,在对k-聚类图中的聚类簇进行标记之后;该检测方法还包括:

s106,当聚类簇中的部分聚类簇满足预设条件时,向云端服务器发送请求消息,请求消息用于云端服务器对部分聚类簇中的待测数据进行计算,获得异常数据并输出。

可选地,在一个可能实现的方式中,云端服务器对部分聚类簇中的待测数据进行计算,获得异常数据并输出,包括:

s107,云端服务器计算部分聚类簇中的待测数据基于簇的离群点因子。

s108,当部分聚类簇中的待测数据基于簇的离群点因子满足预设阈值时,确定部分聚类簇中待测数据作为异常数据输出。

当云端服务器接收到嵌入式智能终端的请求后,对每个小簇中的点进行计算,计算它们的基于簇的离群点因子(cblof),当此点大于某一个阈值δ时,则把此点归到离他最近的大簇当中。如此操作多次,直到没有点可以被归到大簇当中为止。cblof是指:对于某个簇ci中的点t,其中,

其中,distance(t,|ci|)是指t到簇ci之间的距离,min(distance(t,|cj|))是指该点t与离它最近的大簇之间的距离。距离的计算可以用聚类当中常用的相似性算法来计算。

在本发明实施例中,当进行多次操作后的点没有归到相应的大簇中时,则认为这些点为异常数据,并进行输出。

基于本发明提供的嵌入式智能终端异常数据检测方法,在嵌入式智能终端设备计算资源有限的情形下、采用云端辅助的方式,使用图聚类方法对嵌入式智能终端环境进行小规模的异常数据挖掘,检测率较高;终端数据的属性种类较少,运行效率较高;云端协同方式辅助终端进行二次标记,减轻了终端的计算负担,提升了终端计算效率;该方法改善了基于传统的k-means的异常检测算法需要预先设定簇的个数的问题,提升了异常数据的检测率,减少了误报率。

图2为本发明实施例提供的一种嵌入式智能终端的结构示意图。如图2所示,该智能终端可以包括处理器和存储器,以及存储在存储器上的程序,当处理器调用存储器中的程序时,处理器执行:

接收待测数据,待测数据包含异常数据;

处理单元确定待测数据中的对象,每个对象的k近邻,以及对象之间的k近邻关系;

根据对象之间的k近邻关系构造k近邻有向图;

根据k近邻有向图构造k-聚类图,并对k-聚类图中的聚类簇进行标记;

当聚类簇中的部分聚类簇满足预设阈值时,部分聚类簇中的待测数据作为异常数据输出。

可选地,在一个可能实现的方式中,在对k-聚类图中的聚类簇进行标记之后;处理器还用于执行:

当聚类簇中的部分聚类簇满足第一预设阈值时,向云端服务器发送请求消息,请求消息用于云端服务器对部分聚类簇中的待测数据进行计算,获得异常数据并输出。

可选地,在一个可能实现的方式中,云端服务器对部分聚类簇中的待测数据进行计算,获得异常数据并输出,包括:

云端服务器计算部分聚类簇中的待测数据基于簇的离群点因子;

当部分聚类簇中的待测数据基于簇的离群点因子满足第二预设阈值时,确定部分聚类簇中待测数据作为异常数据输出。

可选地,在一个可能实现的方式中,根据k近邻有向图构造k-聚类图,包括:

根据k近邻有向图中的k-互邻居关系构造k-聚类图。

本发明实施例提供的嵌入式智能终端可执行图1中嵌入式智能终端所执行的方法/步骤,为简洁描述在此不再赘述。

本发明实施例还提供了一种系统,如图3所示,系统包括嵌入式智能终端和云服务器,嵌入式智能终端和云服务器用于完成图1中的各个方法/步骤,具体描述请参见图1所示的方法/步骤,为简洁描述,在此不再赘述。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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