一种数据自适应平衡分组方法技术

技术编号:21972122 阅读:73 留言:0更新日期:2019-08-28 01:36
本发明专利技术公开一种数据自适应平衡分组方法,将数据块边界点信息加入到传统聚类中,并将该聚类算法运用于分布式环境中结点数据分组中,利用数据块边界点信息约束数据块大小,使不同数据块之间满足较高的平衡性,解决了现有基于聚类的数据分组方法效率较低的问题,同时还提高了数据分组的准确率,具有很高的实用价值。

A Data Adaptive Balanced Grouping Method

【技术实现步骤摘要】
一种数据自适应平衡分组方法
本专利技术涉及Web数据分组
,具体涉及一种数据自适应平衡分组方法。
技术介绍
在Web技术的不断发展的背景下,互联网上的数据已经进入了爆炸式增长阶段,丰富数据具有较高的应用价值,如何将Web上的海量数据进行高效管理是学术界与工业界关注的热点问题,也面临着数据分组、数据查询优化等多方面挑战。数据分组(Datagrouping)是根据统计研究的需要,将原始数据按照某种标准划分成不同的组别,分组后的数据称为分组数据。当前,传统的集中式数据管理方案难以有效地管理大规模数据。
技术实现思路
本专利技术所要解决的是传统集中式数据管理方案难以有效地管理大规模数据的问题,提供一种数据自适应平衡分组方法,保证了同一数据块内的数据具有较高相似性的同时,不同数据块包含的数据点数目也满足平衡性约束。为解决上述问题,本专利技术是通过以下技术方案实现的:参见图1,一种数据自适应平衡分组方法,具体包括步骤如下:步骤1、获取原始数据集D,并根据给定的目标数据块数目K,从获取数据集D中随机选取K个数据点作为初始的中心点,形成中心数据集P;步骤2、计算中心数据集P中所有中心点与原始数据集D中所有数据点的距离,得到中心点与数据点的距离矩阵Tg;步骤3、构建数据块集C={ck},其中ck表示数据块,初始时令ck=rk,rk∈P;构建数据块半径集Eb={bdistk},其中bdistk表示数据块ck的中心点与距离中心点最远的数据点即边界点的距离,初始时令bdistk=0;步骤4、对于原始数据集D中的每个数据点,分别利用当前距离矩阵Tg和当前中心数据集P执行第一快速平衡聚类过程后,得到更新后的数据块集C和数据块半径集Eb;步骤5、计算当前数据块集C中各个数据块的损失值value1;步骤6、基于当前数据块集C,利用K-Means算法中的质心公式去计算各个数据块的中心点,并据此更新中心数据集P;步骤7、对于原始数据集D中的每个数据点,分别利用当前中心数据集P执行聚类过滤筛选过程,得到每个数据点所对应的筛选中心数据集PGs;步骤8、对于原始数据集D中的每个数据点,分别计算筛选中心数据集PGs中所有筛选中心点与原始数据集D中所有数据点的距离,得到每个数据点所对应的筛选中心点与数据点的筛选距离矩阵NGs;步骤9、对于原始数据集D中的每个数据点,分别利用该数据点所对应的筛选中心数据集PGs和筛选距离矩阵NGs执行第二快速平衡聚类过程后,得到更新后的数据块集C和数据块半径集Eb;步骤10、计算当前数据块集C中各个数据块的损失值value2;步骤11、判断|value1-value2|≤δ,其中δ为设定值:若是,则输出当前数据块集C;否则,转至步骤步骤6;上述,k=1,2,…,K,K为给定的目标数据块数目;s=1,1,…,S,S为原始数据点的数目;K≤S。上述步骤7中,对于原始数据集D中的每个数据点,执行聚类过滤筛选过程具体如下:步骤71、利用K-Means对当前中心数据集P中的中心点进行聚类,产生分组后的中心点分组集;步骤72、对中心点分组集中的各个分组,分别找出该分组中所有中心点的中心点,并作为该分组的组中心点;步骤73、分别计算当前中心数据集P的各个中心点与上一次中心数据集P中对应序号中心点之间的距离,并作为该中心点的偏移量;步骤74、对中心点分组集中的各个分组分别进行筛选,即判断lb(v,gn)-maxδ(rq)≥ub(v)+δ(rp(v))是否成立:如果成立,则将保留该分组,并转至步骤75;如果不成立,则删除该分组;步骤75、对每个保留分组中的各个中心点分别进行筛选,即判断dist(v,ru)<lb(v,gn)-δ(rw)是否成立:如果成立,则将该中心点加入到当前数据点所对应的筛选中心数据集PGs中;如果不成立,则删除该中心点;上述判断条件中:lb(v,gn)表示当前数据点与待筛选分组中距离其最近的组中心点之间的距离;maxδ(rq)表示待筛选分组中,所有中心点的最大偏移量;ub(v)表示当前数据点与上一次中心数据集P中距离其最近的中心点之间的距离;δ(r(v))表示上一次中心数据集P中距离当前数据点最近的中心点的最大偏移量;dist(v,ru)表示当前数据点到当前中心数据集P中所有异于待筛选中心点的中心点的最小距离;δ(rw)表示待筛选中心点的偏移量。上述步骤4中,第一快速平衡聚类具体如下:步骤41、利用距离矩阵Tg,找出与当前数据点距离最近的中心点rm,以及该距离最近的中心点rm所在的数据块cm;步骤42、判断数据块cm的长度是否小于等于该数据块给定的长度阈值xm:如果是,则将当前数据点加入到数据块cm中,同时更新数据块cm的中心点与边界点的距离bdistm;否则,执行步骤43;步骤43、利用距离矩阵Tg,判断当前数据点与中心点rm的距离是否小于数据块cm的中心点与边界点的距离bdistm:如果是,则将数据块cm的边界点从数据块cm中删除,并将当前数据点加入到数据块cm中;否则,执行步骤44;步骤44、当前数据点处理完成,继续处理原始数据集D的下一个数据点,直到原始数据集D中的所有数据点;上述rm∈P,P为当前中心数据集;cm∈C,C为当前数据块集;bdistm∈Eb,Eb为数据块半径集。上述步骤9中,第二快速平衡聚类具体如下:步骤91、利用当前数据点的筛选距离矩阵NGs,找出与当前数据点距离最近的中心点rm,以及该距离最近的中心点rm所在的数据块cm;步骤92、判断数据块cm的长度是否小于等于该数据块给定的长度阈值xm:如果是,则将当前数据点加入到数据块cm中,同时更新数据块cm的中心点与边界点的距离bdistm;否则,执行步骤93;步骤93、利用当前数据点的筛选距离矩阵NGs,判断当前数据点与中心点rm的距离是否小于数据块cm的中心点与边界点的距离bdistm:如果是,则将数据块cm的边界点从数据块cm中删除,并将当前数据点加入到数据块cm中;否则,执行步骤94;步骤94、当前数据点处理完成,继续处理原始数据集D的下一个数据点,直到原始数据集D中的所有数据点;上述rm∈NG,NG为当前筛选中心数据集;cm∈C,C为当前数据块集;bdistm∈Eb,Eb为数据块半径集;s=1,1,…,S,S为原始数据点的数目。上述各步骤中,所述距离均为欧氏距离。上述步骤5和10中,数据块的损失值等于该数据块中所有数据点到该数据块中心点的欧氏距离和。上述步骤6中,质心公式为:其中,rm为数据块的质心,ds为原始数据集D中的数据点,cm为数据块,|cm|表示数据块的长度。与现有技术相比,本专利技术提出的FBC-EFBC算法,将数据块边界点信息加入到传统聚类中,并将该聚类算法运用于分布式环境中结点数据分组中,利用数据块边界点信息约束数据块大小,使不同数据块之间满足较高的平衡性,解决了现有基于聚类的数据分组方法效率较低的问题,同时还提高了数据分组的准确率,具有很高的实用价值。附图说明图1为一种数据自适应平衡分组方法的流程图。图2为图1中FBC(FastBalanceClustering,快速平衡聚类)的流程图。图3为图1中EFBC(EfficientFastBalanceClustering,高效快速平衡聚类)的流程图。图4是不同方法对数本文档来自技高网...

【技术保护点】
1.一种数据自适应平衡分组方法,其特征是,具体包括步骤如下:步骤1、获取原始数据集D,并根据给定的目标数据块数目K,从获取数据集D中随机选取K个数据点作为初始的中心点,形成中心数据集P;步骤2、计算中心数据集P中所有中心点与原始数据集D中所有数据点的距离,得到中心点与数据点的距离矩阵Tg;步骤3、构建数据块集C={ck},其中ck表示数据块,初始时令ck=rk,rk∈P;构建数据块半径集Eb={bdistk},其中bdistk表示数据块ck的中心点与距离中心点最远的数据点即边界点的距离,初始时令bdistk=0;步骤4、对于原始数据集D中的每个数据点,分别利用当前距离矩阵Tg和当前中心数据集P执行第一快速平衡聚类过程后,得到更新后的数据块集C和数据块半径集Eb;步骤5、计算当前数据块集C中各个数据块的损失值value1;步骤6、基于当前数据块集C,利用K‑Means算法中的质心公式去计算各个数据块的中心点,并据此更新中心数据集P;步骤7、对于原始数据集D中的每个数据点,分别利用当前中心数据集P执行聚类过滤筛选过程,得到每个数据点所对应的筛选中心数据集PGs;步骤8、对于原始数据集D中的每个数据点,分别计算筛选中心数据集PGs中所有筛选中心点与原始数据集D中所有数据点的距离,得到每个数据点所对应的筛选中心点与数据点的筛选距离矩阵NGs;步骤9、对于原始数据集D中的每个数据点,分别利用该数据点所对应的筛选中心数据集PGs和筛选距离矩阵NGs执行第二快速平衡聚类过程后,得到更新后的数据块集C和数据块半径集Eb;步骤10、计算当前数据块集C中各个数据块的损失值value2;步骤11、判断|value1‑value2|≤δ,其中δ为设定值:若是,则输出当前数据块集C;否则,转至步骤步骤6;上述,k=1,2,…,K,K为给定的目标数据块数目;s=1,1,…,S,S为原始数据点的数目;K≤S。...

【技术特征摘要】
1.一种数据自适应平衡分组方法,其特征是,具体包括步骤如下:步骤1、获取原始数据集D,并根据给定的目标数据块数目K,从获取数据集D中随机选取K个数据点作为初始的中心点,形成中心数据集P;步骤2、计算中心数据集P中所有中心点与原始数据集D中所有数据点的距离,得到中心点与数据点的距离矩阵Tg;步骤3、构建数据块集C={ck},其中ck表示数据块,初始时令ck=rk,rk∈P;构建数据块半径集Eb={bdistk},其中bdistk表示数据块ck的中心点与距离中心点最远的数据点即边界点的距离,初始时令bdistk=0;步骤4、对于原始数据集D中的每个数据点,分别利用当前距离矩阵Tg和当前中心数据集P执行第一快速平衡聚类过程后,得到更新后的数据块集C和数据块半径集Eb;步骤5、计算当前数据块集C中各个数据块的损失值value1;步骤6、基于当前数据块集C,利用K-Means算法中的质心公式去计算各个数据块的中心点,并据此更新中心数据集P;步骤7、对于原始数据集D中的每个数据点,分别利用当前中心数据集P执行聚类过滤筛选过程,得到每个数据点所对应的筛选中心数据集PGs;步骤8、对于原始数据集D中的每个数据点,分别计算筛选中心数据集PGs中所有筛选中心点与原始数据集D中所有数据点的距离,得到每个数据点所对应的筛选中心点与数据点的筛选距离矩阵NGs;步骤9、对于原始数据集D中的每个数据点,分别利用该数据点所对应的筛选中心数据集PGs和筛选距离矩阵NGs执行第二快速平衡聚类过程后,得到更新后的数据块集C和数据块半径集Eb;步骤10、计算当前数据块集C中各个数据块的损失值value2;步骤11、判断|value1-value2|≤δ,其中δ为设定值:若是,则输出当前数据块集C;否则,转至步骤步骤6;上述,k=1,2,…,K,K为给定的目标数据块数目;s=1,1,…,S,S为原始数据点的数目;K≤S。2.根据权利要求1所述的一种数据自适应平衡分组方法,其特征是,步骤7中,对于原始数据集D中的每个数据点,执行聚类过滤筛选过程具体如下:步骤71、利用K-Means对当前中心数据集P中的中心点进行聚类,产生分组后的中心点分组集;步骤72、对中心点分组集中的各个分组,分别找出该分组中所有中心点的中心点,并作为该分组的组中心点;步骤73、分别计算当前中心数据集P的各个中心点与上一次中心数据集P中对应序号中心点之间的距离,并作为该中心点的偏移量;步骤74、对中心点分组集中的各个分组分别进行筛选,即判断lb(v,gn)-maxδ(rq)≥ub(v)+δ(rp(v))是否成立:如果成立,则将保留该分组,并转至步骤75;如果不成立,则删除该分组;步骤75、对每个保留分组中的各个中心点分别进行筛选,即判断dist(v,ru)<lb(v,gn)-δ(rw)是否成立:如果成立,则将该中心点加入到当前数据点所对应的筛选中心数据集PGs中;如果不成立,则删除该中心点;上述判断条件中:lb(v,gn)表示当前数据点...

【专利技术属性】
技术研发人员:林煜明唐海波李优周娅张敬伟张会兵
申请(专利权)人:桂林电子科技大学
类型:发明
国别省市:广西,45

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

1