一种混合数据流数据标签方法与流程

文档序号:15932387发布日期:2018-11-14 01:50阅读:237来源:国知局

本发明属于数据流信息技术领域,具体地说,涉及一种混合数据流实时聚类时对新接收的数据点进行数据标签的方法。

技术背景

随着现代计算机技术、网络技术快速发展,在许多真实的应用中,诸如股票市场、网络流量监控、信用卡欺骗检测、网站点击流等,需要每天以数以百万计甚至没有上限的速度处理数据。这些连续产生、时间上有序、快速变化、大规模和潜在无限的数据流,要求利用有限的存储空间对其进行快速处理并及时获取有用信息,以适应实时决策分析的需求。

聚类是一种广泛用于识别无标签数据集中数据簇结构的技术,其目的是将数据分成多个数据簇,并且使得相同数据簇内的数据之间相似性最大,不同数据簇间的数据之间相异性最大。作为一种主要的探索性数据分析工具,聚类分析目前在机器学习、数据挖掘、模式识别、生物信息学等领域都得到了广泛而深入的应用。

数据流的特点要求其上的聚类分析能快速、准确地探明数据簇模式以及随着时间的推移数据簇模式的变化。数据标签是数据流聚类研究的一个重要问题,在一些实时监测系统中,用户需要实时获取新产生的数据点的类别标签和聚类结果。因此,为了快速得到数据流中数据点的类别标签,可以首先利用传统聚类算法得到最近一段时间产生的数据流的聚类结果,然后通过计算新接收的数据点和已有聚类结果中数据簇之间的距离,用距离最小的数据簇的标签作为新数据点的类别标签,这一过程称为数据标签技术。

按照取值类型的不同情况,数据变量通常可以分为连续、离散、集值等多种类型。显然,被数据所描述的对象在不同类型的变量下呈现(或隐含)不同的关系和结构信息。对数值型变量,可以定义对象的等价关系、序关系或近邻关系。而对符号型(或名义型)变量,通常只能通过比较变量的取值是否相同,来定义对象的相容关系、等价关系。同时兼具数值型和符号型属性的混合数据流在实际应用中普遍存在,混合数据流的数据标签技术也越来越受到研究者的关注。为了用统一的方式处理混合数据,一种普遍的策略是将符号型数据转换为数值型数据或者将数值型数据转换为符号型数据。但是,这种策略存在以下缺点:一方面,难以用一个数值型数据对应一个符号型数据。例如,如果形状属性从集合{方形,圆形,三角形}中取值,那么可将该集合转换成一个数字集,例如{1,2,3}。但是转换后任意两个值之间的距离计算都是不恰当的。另一方面,将一个数值型数据转换为一个符号型数据,必须使用离散化方法将一个数值变量的值域划分为几个区间,并在同一区间内为所有值分配一个符号。由于没有考虑一个数值型数据对离散型数据的隶属程度,离散化的过程通常会导致信息丢失。此外,数据标签算法的有效性在很大程度上取决于底层的离散化方法。因此,混合数据流数据标签方法的难点之一在于缺少恰当的方法来衡量数据点与数据簇之间的距离。

针对混合数据聚类的k-prototypes算法,在定义对象和类中心的相似性度量时,数值型属性之间采用欧式距离,符号型属性之间采用0-1匹配。在类中心的表示上,数值型属性部分采用均值表示,符号型属性部分采用众数(modes)表示。k-prototypes算法在混合数据聚类中得到了广泛应用。但是,仅采用均值和最频繁属性值代表一个数据簇,不能有效刻画一个数据簇的信息,从而难以精确地度量未标记数据点与数据簇的相似性。目前,混合数据流数据标签方法仍然面临算法复杂、精度不高的问题,算法性能有待进一步提高。



技术实现要素:

本发明的技术解决方案:一种混合数据流数据标签方法,包括以下基本步骤:

利用混合数据聚类算法k-prototype对当前存储的混合数据流的n个数据点构成的集合s进行聚类,得到初始聚类结果

计算初始聚类结果中的数据簇ci(1≤i≤k)中所有数据点到数据簇ci中心的最大距离λi(1≤i≤k);

计算新存储的混合数据流的数据点xt和数据簇ci的距离,得到距离值小于等于λi的数据簇的下标集合

如果为φ,则将数据点xt标记为异常点,否则将数据点xt标记为数据簇的标签。

其中,混合数据流中的数据点的属性至少分为数值型属性和分类型属性。

其中,数据点xt表示为一个m维向量其中,表示xt的数值型数据部分,表示xt的符号型数据部分;令表示t个数据点的数值型数据部分构成的集合,令表示t个数据点的符号型数据部分构成的集合。

其中,在计算初始聚类结果中的数据簇ci(1≤i≤k)中所有数据点到数据簇ci中心的最大距离λi(1≤i≤k)的步骤中,包括步骤:

根据公式(1)计算数据点xt的数值型数据部分与数据簇的距离

其中,hr为二阶renyi熵,选择高斯核函数作为parzen窗函数,表示parzen窗函数,参数σ表示窗宽,

根据公式(2)计算数据点xt的分类型数据部分与数据簇的距离

其中,hc为信息熵,xj表示数据点x在第j个属性xj(p+1≤j≤m)下的取值;

根据公式(3)计算数据点xt(xt∈ci)与数据簇ci的距离d(xt,ci),

则数据簇ci中心和边界的最大距离为

其中,在计算新存储的混合数据流的数据点xt和数据簇ci的距离,得到距离值小于等于λi的数据簇的下标集合的步骤中,包括步骤:

计算新存储的数据点xt与任意数据簇ci的距离d(xt,ci);

如果d(xt,ci)小于等于阈值λi,那么下标集合

区别与现有技术,本发明的提出一种混合数据流数据标签方法,在对同时兼具数值型和符号型属性的混合数据流聚类分析时,根据数据流最初接收的数据点的聚类结果确定新接收数据点的类别标签;该方法使用混合数据簇的结构信息自适应地确定数据簇和数据点距离的阈值,使用增量信息熵和增量renyi熵度量数据簇和数据点的距离,并且根据这一距离结合数据簇的距离阈值来确定新接收数据点的类别标签;本发明提出的混合数据流数据标签方法可以在保证聚类质量的前提下,尽可能提高数据标签的效率,避免专家经验所具有的不确定性,便于数据标签的实际应用;本发明的方法不依赖专家经验使用数据簇的结构信息自适应地确定数据簇和数据点距离的阈值,能够实时对数据流中接收的新数据点标记为已知数据簇的标签或者异常点。

附图说明

图1为本发明的实现流程图。

图2为本发明实施实例所使用的混合数据流。

具体实施方式

一个混合数据簇的结构是由每个属性的属性值的分布决定的。熵是对不确定性的度量。一个数据簇的熵值越大,则不确定性越大,反之,不确定性越小。如果在一个数据簇中加入一个和数据簇中大部分数据点都相似的数据点将不会显著改变数据簇的分布,熵的变化相对较小;反之,如果在一个数据簇中加入一个和数据簇中大部分数据点都不相似的数据点将会显著改变数据簇的分布,熵的变化相对较大。本发明利用将一个数据点加入一个数据簇前后熵的改变来衡量数据点和数据簇之间的相似程度,熵变化的程度越小表明数据点和数据簇越相似,反之越不相似。

基于上述原理,本发明提出了一种混合数据流数据标签方法。这一方法主要是使用增量renyi熵和增量信息熵分别度量数据簇和数据点的数值型数据部分及符号型数据部分的距离,将二者的距离加权平均后得到数据簇和数据点的距离度量。所确定的这一度量同时结合数据簇的距离阈值就能够确定新接收数据点的类别标签,使用这一数据标签方法可以确保数据流的实时聚类结果的质量。

图1为本发明实现数据流数据标签方法的流程图,下面将结合实例给出具体实施例子。

该方法的步骤包括:

利用混合数据聚类算法k-prototype对当前存储的混合数据流的n个数据点构成的集合s进行聚类,得到初始聚类结果

计算初始聚类结果中的数据簇ci(1≤i≤k)中所有数据点到数据簇ci中心的最大距离λi(1≤i≤k);

计算新存储的混合数据流的数据点xt和数据簇ci的距离,得到距离值小于等于λi的数据簇的下标集合

如果为φ,则将数据点xt标记为异常点,否则将数据点xt标记为数据簇的标签。

优选的,混合数据流中的数据点的属性至少分为数值型属性和分类型属性。

优选的,数据点xt表示为一个m维向量其中,表示xt的数值型数据部分,表示xt的符号型数据部分;令表示t个数据点的数值型数据部分构成的集合,令表示t个数据点的符号型数据部分构成的集合。

优选的,在计算初始聚类结果中的数据簇ci(1≤i≤k)中所有数据点到数据簇ci中心的最大距离λi(1≤i≤k)的步骤中,包括步骤:

根据公式(1)计算数据点xt的数值型数据部分与数据簇的距离

其中,hr为二阶renyi熵,选择高斯核函数作为parzen窗函数,表示parzen窗函数,参数σ表示窗宽,

根据公式(2)计算数据点xt的分类型数据部分与数据簇的距离

其中,hc为信息熵,xj表示数据点x在第j个属性xj(p+1≤j≤m)下的取值;

根据公式(3)计算数据点xt(xt∈ci)与数据簇ci的距离d(xt,ci),

则数据簇ci中心和边界的最大距离为

优选的,在计算新存储的混合数据流的数据点xt和数据簇ci的距离,得到距离值小于等于λi的数据簇的下标集合的步骤中,包括步骤:

计算新存储的数据点xt与任意数据簇ci的距离d(xt,ci);

如果d(xt,ci)小于等于阈值λi,那么下标集合

本实例对典型的混合数据流数据进行数据标签,图2为数据标签所使用的混合数据流。

整个实施过程可以分为四个步骤:

(1)生成初始聚类结果。

本实例中,a1,a2,a3为3个数值型属性,a4,a5,a6为3个分类型属性,令n=6,则s={x1,x2,...,x6}。令k=2,使用k-prototype对集合s进行聚类,得到初始聚类结果c={c1,c2},其中c1={x1,x3},c2={x2,x4,x5,x6}。由此可得,

(2)计算数据簇中数据点和中心的最大距离。

首先计算c1中数据点和中心的最大距离λ1。

由于,

所以λ1=0。

然后计算c2中数据点和中心的最大距离λ2。由于,

所以λ2=0.8153。

(3)计算数据流中新接收的数据点和数据簇ci的距离小于等于λi的数据簇的下标集合。

首先计算x7和数据簇ci的距离小于λi的数据簇的下标集合由于,

所以,

接下来计算x8和数据簇ci的距离小于λi的数据簇的下标集合

所以,

(4)为新接收的数据点打标签。

由于可得所以x7被标记为c2的标签。

由于所以x8被标记为异常点。

本实例中参数σ=0.5,实例中不仅给出了新数据点被标记为已知簇标签的过程,也给出了新数据点被标记为异常点的过程,数据标签结果说明了本发明的有效性。

区别与现有技术,本发明的提出一种混合数据流数据标签方法,在对同时兼具数值型和符号型属性的混合数据流聚类分析时,根据数据流最初接收的数据点的聚类结果确定新接收数据点的类别标签;该方法使用混合数据簇的结构信息自适应地确定数据簇和数据点距离的阈值,使用增量信息熵和增量renyi熵度量数据簇和数据点的距离,并且根据这一距离结合数据簇的距离阈值来确定新接收数据点的类别标签;本发明提出的混合数据流数据标签方法可以在保证聚类质量的前提下,尽可能提高数据标签的效率,避免专家经验所具有的不确定性,便于数据标签的实际应用;本发明的方法不依赖专家经验使用数据簇的结构信息自适应地确定数据簇和数据点距离的阈值,能够实时对数据流中接收的新数据点标记为已知数据簇的标签或者异常点。

以上所述仅为本发明的实施实例而已,并不用于限制本发明,本发明也同样适用于各种不同规模的混合数据流。本发明的实施实例使用了k-prototype算法,本发明同样适用于使用其他混合数据聚类算法来设定初始聚类结果。对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

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