一种面向大数据中稀有类数据的快速查询技术制造技术

技术编号:16038181 阅读:49 留言:0更新日期:2017-08-19 20:00
本发明专利技术公开了一种面向大数据中稀有类数据的快速查询技术;首先设置一个较小的k近邻值,逐步搜索k近邻,从而筛选出符合要求的k近邻点,从而找到一个小范围的稀有类;然后根据这个小范围内的稀有类数据计算出新的k值和距离阈值,再根据这个新的k值和距离阈值通过逐步搜索k近邻的方法来继续寻找稀有类,当找到的k近邻数据全为已知点时,停止算法的寻找过程,将包含D中所有已知点的集合R作为找到的稀有类;本发明专利技术能够在已知较少稀有类数据样本的情况下,充分利用已知的信息来找到所有的稀有类数据,不仅避免了分类方法所需的大量稀有类数据来训练,而且避免了聚类方法没有使用已知信息的缺陷,从而能够高效准确地找到所有的稀有类数据。

【技术实现步骤摘要】
一种面向大数据中稀有类数据的快速查询技术
本专利技术属于数据挖掘领域,尤其涉及一种面向大数据中稀有类数据的快速查询技术。
技术介绍
在现实世界里,大数据中经常包含一些数据样本较少但却具有重要价值的稀有类。例如在商业活动过程中,虽然绝大多数的交易行为都是合法的,但是其中仍然包括一些虚假信息的交易数据;在大量的网络访问的过程中,虽然绝大多数的网络请求都是合理的,但是不排除一些利用系统漏洞进行网络攻击的行为。在实际应用中,这些稀有类数据样本常常被偶然发现或者是通过一些稀有类检测技术所侦察到,当发现了少量的稀有类样本后,随之产生的问题是如何利用这些少量的稀有类数据样本对数据集中的稀有类数据进行快速查询。对于稀有类的查询,虽然有稀有类分类和稀有类聚类等相关的技术可以找出所有的稀有类数据,但是稀有类分类技术需要大量已知的稀有类数据作为训练集来进行分类器的训练,而实际生活中这些数据是难以获取的,稀有类聚类技术虽然不需要训练数据,但是在聚类过程中没有利用一些已知的有价值稀有类数据信息,可能造成结果的不准确。因而如何利用仅有的少量稀有类数据找到所有稀有类数据是一个重要且极具挑战的问题。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种面向大数据中稀有类数据的快速查询技术。首先通过已知的一个稀有类样本点和一个较小的k近邻值来找到一个小范围的稀有类区域,然后根据这个小范围区域计算出新的k值和距离阈值,再根据新的k和距离阈值来继续寻找新的稀有类数据点。本专利技术所采用的技术方案是:一种面向大数据中稀有类数据的快速查询技术,其特征在于,包括以下步骤:步骤1:对于给定的数据集为D,首先将D中的每个点标记为未知点。使用集合N记录用来寻找稀有类的数据集合,初始时N中仅包含一个已知的稀有类数据点n0,即N={n0}。设置k为较小的值k0,设置距离阈值τd为一个正数,该正数大于数据集D中任意两点之间的最大欧式距离;步骤2:对于N中的每个点ni,在D中找到与ni最近的k个点(称为ni的k近邻),记为Knn(ni),将N中所有点的k近邻组成集合Knn(N),然后在D中找到Knn(N)中每个点的k近邻,将Knn(N)中所有点的k近邻组成集合Knn(Knn(N)),将N中的点标为已知点,并对N中每个点ni对应的Knn(ni)中的点进行筛选,直至筛选的次数达到设定的阈值τi;步骤3:根据筛选后的Knn(N)结果进行选择:选择步骤一:若筛选后的Knn(N)中的点包含未知点,则更新N中每个点的坐标,并记录下该点已更新的次数,若更新次数超过给定阈值τt,则该点的坐标不再更新,初始化一个空集合N’,将更新后得到的新坐标点加入集合N’,并更新N=Knn(N)∪N',然后返回步骤2;N中点的坐标更新规则为:其中,(ni)old表示点ni的原始坐标;(ni)new表示更新后的坐标;nij表示点ni的k近邻Knn(ni)中的第j个点;Knnj(ni)表示点nij的坐标;d(nij,ni)表示点ni和点nij之间的欧式距离;选择步骤二:若筛选后的Knn(N)中的点均为已知点并且k等于k0,将D中所有已知点加入集合R;将k的值逐步增加,每次增加1,直至R在新的k值下找到的k近邻集合Knn(R)中包含有未知点,并记录此时的k值,记为knew,更新k=knew;然后对于R中的每个点nr,在D中找到nr的k近邻Knn(nr),计算nr和Knn(nr)中每个点的距离,并计算这些距离的均值,记录最大的均值,记为根据给定扩大系数m,更新阈值τd的值为的m倍,即然后从R的k近邻集合Knn(R)中挑选一个未知点nno,更新N={nno},返回步骤2;选择步骤三:若筛选后的Knn(N)中的点均为已知点并且k不等于k0,则算法停止,然后将R集合中的数据作为最后找到的稀有类结果返回。在上述的一种面向大数据中稀有类数据的快速查询技术,所述的步骤2中,对N中每个点ni的k近邻Knn(ni)中的点进行筛选的过程如下:步骤2.1:对于Knn(ni)中的每个数据点nij,在D中找到nij的k近邻Knn(nij),计算nij与Knn(nij)中每个点的距离,并计算这些距离的均值,记为若大于距离阈值τd,则将nij从Knn(ni)中删除,否则将nij保留在Knn(ni)中;步骤2.2:使用集合X={X1,X2,...,Xs}来代表Knn(ni),Xi代表Knn(ni)中的第i个数,s代表Knn(ni)包含的数据个数;构造一个s×s的矩阵A,A中的元素Aij表示数据Xi和Xj之间的相似性similarity(Xi,Xj);初始化一个s维的向量x,x中每个元素为1/s,即x={1/s,1/s,...,1/s};Xi和Xj之间相似性similarity(Xi,Xj)的计算为:其中similarity(Xi,Xj)表示Xi,Xj之间的相似性值;d(Xi,Xj)表示Xi,Xj之间的欧式距离;Knn(Xl)t表示Xl的k近邻集合中的第t个点;步骤2.3:初始化三个空集合X+,X-,X0,然后对每个i∈{1,2,...,s},初始化一个对应的向量ei,ei的第i个元素为1,其余元素为0,计算ei和x的亲和度π(ei,x);若π(ei,x)>0,则将i加入到集合X+;若π(ei,x)<0,将i加入到X-;若π(ei,x)=0,将i加入到X0;记录下使得π(ei,x)的绝对值最大对应的i,记为imax;亲和度π(ei,x)的计算为:其中表示向量ei的第j个元素;xt表示向量x的第t个元素;Ajt表示矩阵A的第j行第t列的元素;步骤2.4:构造一个s维的向量y,y的取值由下列规则确定:步骤2.5:若y=x,找出x中大于0的位置,并将X中在这些位置上的数据作为筛选得到的结果RX,即RX={Xi|Xi∈X,xi>0},筛选过程结束;否则更新x,并返回步骤2.3;更新x的方法为:其中表示取和1之间较小的数。在上述的一种面向大数据中稀有类数据的快速查询技术,所述步骤1中,3≤k0≤5且k0为整数。在上述的一种面向大数据中稀有类数据的快速查询技术,所述步骤2中,1≤τi≤3且τi为整数。在上述的一种面向大数据中稀有类数据的快速查询技术,所述步骤3中,m∈[1,10],1≤τt≤50且τt为整数。因此,本专利技术具有如下优点:本专利技术能够利用已知的较少的稀有类样本找到所有的稀有类,即利用了已知的稀有类信息,又避免了要寻找大量稀有类数据作为训练集,从而有效准确地找到所有稀有类。附图说明图1是本专利技术实施例的流程图。图2a是本专利技术实施例的测试数据图。图2b是本专利技术实施例的测试数据中稀有类数据的详细分布图。图3a是本专利技术实施例的实验结果图。图3b是本专利技术实施例的实验结果的稀有类数据的详细分布图。具体实施方式为了便于本领域普通技术人员理解和实施本专利技术,下面结合附图及实施例对本专利技术作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本专利技术,并不用于限定本专利技术。本专利技术提供了一种面向大数据中稀有类数据的快速查询技术,给定一个稀有类数据点,然后根据这个已知的稀有类样本点从给定的数据集中找出所有的稀有类数据。请见图1,本专利技术包括以下步骤:步骤1:对于给定的数据集为D,首先将D中的每个点标记为未知点。使用集合N记录用来寻找稀有类的数据集合,本文档来自技高网...
一种面向大数据中稀有类数据的快速查询技术

【技术保护点】
一种面向大数据中稀有类数据的快速查询技术,其特征在于,包括以下步骤:步骤1:对于给定的数据集为D,首先将D中的每个点标记为未知点,使用集合N记录用来寻找稀有类的数据集合,初始时N中仅包含一个已知的稀有类数据点n0,即N={n0},设置k为较小的值k0,设置距离阈值τd为一个正数,该正数大于数据集D中任意两点之间的最大欧式距离;步骤2:对于N中的每个点ni,在D中找到与ni最近的k个点,记为Knn(ni),将N中所有点的k近邻组成集合Knn(N),然后在D中找到Knn(N)中每个点的k近邻,将Knn(N)中所有点的k近邻组成集合Knn(Knn(N)),将N中的点标为已知点,并对N中每个点ni对应的Knn(ni)中的点进行筛选,直至筛选的次数达到设定的阈值τi;步骤3:根据筛选后的Knn(N)结果进行选择:选择步骤一:若筛选后的Knn(N)中的点包含未知点,则更新N中每个点的坐标,并记录下该点已更新的次数,若更新次数超过给定阈值τt,则该点的坐标不再更新,初始化一个空集合N’,将更新后得到的新坐标点加入集合N’,并更新N=Knn(N)∪N',然后返回步骤2;N中点的坐标更新规则为:

【技术特征摘要】
1.一种面向大数据中稀有类数据的快速查询技术,其特征在于,包括以下步骤:步骤1:对于给定的数据集为D,首先将D中的每个点标记为未知点,使用集合N记录用来寻找稀有类的数据集合,初始时N中仅包含一个已知的稀有类数据点n0,即N={n0},设置k为较小的值k0,设置距离阈值τd为一个正数,该正数大于数据集D中任意两点之间的最大欧式距离;步骤2:对于N中的每个点ni,在D中找到与ni最近的k个点,记为Knn(ni),将N中所有点的k近邻组成集合Knn(N),然后在D中找到Knn(N)中每个点的k近邻,将Knn(N)中所有点的k近邻组成集合Knn(Knn(N)),将N中的点标为已知点,并对N中每个点ni对应的Knn(ni)中的点进行筛选,直至筛选的次数达到设定的阈值τi;步骤3:根据筛选后的Knn(N)结果进行选择:选择步骤一:若筛选后的Knn(N)中的点包含未知点,则更新N中每个点的坐标,并记录下该点已更新的次数,若更新次数超过给定阈值τt,则该点的坐标不再更新,初始化一个空集合N’,将更新后得到的新坐标点加入集合N’,并更新N=Knn(N)∪N',然后返回步骤2;N中点的坐标更新规则为:其中,(ni)old表示点ni的原始坐标;(ni)new表示更新后的坐标;nij表示点ni的k近邻Knn(ni)中的第j个点;Knnj(ni)表示点nij的坐标;d(nij,ni)表示点ni和点nij之间的欧式距离;选择步骤二:若筛选后的Knn(N)中的点均为已知点并且k等于k0,将D中所有已知点加入集合R;将k的值逐步增加,每次增加1,直至R在新的k值下找到的k近邻集合Knn(R)中包含有未知点,并记录此时的k值,记为knew,更新k=knew;然后对于R中的每个点nr,在D中找到nr的k近邻Knn(nr),计算nr和Knn(nr)中每个点的距离,并计算这些距离的均值,记录最大的均值,记为根据给定扩大系数m,更新阈值τd的值为的m倍,即然后从R的k近邻集合Knn(R)中挑选一个未知点nno,更新N={nno},返回步骤2;选择步骤三:若筛选后的Knn(N)中的点均为已知点并且k不等于k0,则算法停止,然后将R集合中的数据作为最后找到的稀有类结果返回。2.根据权利要求1所述的一种面向大数据中稀有类数据的快速查询技术,其特征在于:所述的步骤2中,对N中每个点ni的k近邻Knn(ni)中的点进行筛选的过程如下:步骤2.1:对于Knn(ni)中的每个数据点nij,在D中找到nij的k近邻Knn(nij),计算nij与Knn(nij)中每个点的距离,并计算这些距离的均值,记为若大于距离阈值τd,则将nij从Knn(ni)...

【专利技术属性】
技术研发人员:李宗鹏黄浩
申请(专利权)人:武汉万般上品信息技术有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1