聚类实现方法及系统技术方案

技术编号:4907690 阅读:175 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种聚类实现方法及系统。由主控节点将候选队列中的候选样本进行分片,由至少两个计算节点并行地根据设定的ε邻域和最小密度分别确定出分配的分片样本中的每一个样本是否为核心样本;由于各计算节点并行处理,加快了样本数据库中各样本所属聚类的标记速度。本发明专利技术公开的另一种聚类实现方法及系统,由主控节点对样本数据库中当前未标记样本进行分块,将分块样本分配并下发给至少两个计算节点,由各计算节点并行地对候选队列中的候选样本进行处理,再通过合并节点合并各计算节点的处理结果。由于每个计算节点仅处理部分样本,解决了海量数据无法单机处理的问题,且由于可以由多个计算节点及多个并合节点进行并行处理,大大提高了处理效率。

【技术实现步骤摘要】

本专利技术涉及数据挖掘领域,尤其涉及一种海量样本数据的聚类实现方法及相应系 统。
技术介绍
在当前数据挖掘领域,已有的聚类算法可以分为几类,包括基于划分的方法,基于 层次的方法,基于密度的方法,基于网格的方法以及基于模型的方法等。进行数据挖掘时,需要将对全部数据进行逐条计算及分析,算法时间复杂度高。海 量数据是对各种聚类算法的一个挑战。已有的聚类算法大都还只是停留在实验室阶段,对 于海量数据,有些算法或者不能进行有效处理,或者处理效率很低。DBSCAN算法是一个基于空间密度的聚类算法。该算法将具有足够高密度的区域划 分为聚类,并可以在带有“噪声”(指具有一些非核心样本点)的样本空间中发现任意形状 的聚类。DBSCAN算法的基本原理为设定数据挖掘时样本的ε邻域(对于给定对象的半径ε内的区域称为该对象的 ε邻域)和最小密度(最小密度为指定ε邻域内样本数量的最少个数),并当一个未被标 记的样本的ε邻域内的未被标记所属聚类的样本数量满足大于设定的最小密度时,确定 该样本为核心样本。标记核心样本属于当前聚类,以及将该核心样本的ε邻域内各样本置 入候选队列并标记为属于当前聚类。进一步确定候选队列中各候选样本是否为核心样本, 若是,重复执行将确定出的核心样本的ε邻域内各样本置入候选队,直到遍历整个样本数 据库的中每个样本,标记出每个样本所属聚类。上述DBSCAN聚类算法,对于少量样本,可以方便地在单机上实现。但对于海量样 本而言,一方面由于单机内存容量有限,不可能读入海量的样本数据;另一方面,由于聚类 过程中需要进行候先队列的动态更新,对样本数据库中的每一个样本进行所属聚类标记, 处理时间很长,在实际的数据业务应用中,效率很低。因此,对于实际应用中海量数据的处理,如何有效地提升处理效率是数据挖掘中 需要加以解决的一个主要问题。
技术实现思路
本专利技术实施例提供聚类实现方法及聚类实现系统,通过采用多个节点并行处理, 解决现有技术对海量数据无法实现聚类处理及处理效率低的问题。本专利技术实施例提供的一种聚类实现方法包括步骤1、主控节点根据样本数据库中的当前未标记所属聚类的样本确定出一个核 心样本,并将该核心样本的ε邻域内各样本标记为属于当前聚类,将该核心样本的ε邻域 内各样本存入候选队列中;步骤2、所述主控节点对所述候选队列中的候选样本进行分片,将分片样本分配并下发给至少两个计算节点;步骤3、每个所述计算节点根据样本数据库中的当前未标记样本、设定的ε邻域 和最小密度分别确定出分配的分片样本中的每一个样本是否为核心样本;将确定出的核心 样本的ε邻域内各样本存入所述候选队列中;且当分配的分片样本全部处理完毕后,通知 所述主控节点;步骤4、所述主控节点接收到每个所述计算节点发送的通知后,判断所述候选队列 中是否存在候选样本,当存在候选项样本时,将每个候选样本标记为属于当前聚类,转至上 述步骤2 ;当不存在候选样本时,转至上述步骤1,直到所述样本数据库中的每一个样本都 已标记所属聚类。本专利技术实施例提供的另一种聚类实现方法,包括步骤1、主控节点对原始数据库中当前未标记样本进行分块,将分块样本分配并下 发给至少两个计算节点;以及根据原始数据库中的当前未标记样本确定出一个核心样本, 并将该核心样本的ε邻域内各样本标记为属于当前聚类,将该核心样本的ε邻域内各样 本存入候选队列中;步骤2、所述主控节点将所述候选队列中的候选样本下发给每个所述计算节点;步骤3、每个所述计算节点根据分配的分块样本和设定的ε邻域,分别统计每一 个候选样本的本地ε邻域内的样本数量,并发送给合并节点;步骤4、所述合并节点对每一个候选样本,累计所述计算节点发送的对应样本数 量,并根据累计和值和设置的最小密度确定每一个候选样本是否为核心样本;当确定出存 在核心样本时,将确定出的核心样本通知给各计算节点;以及当确定出不存在核心样本时, 通知所述主控节点;步骤5、各计算节点接收到所述合并节点发送的核心样本通知后,将对应核心样本 的本地ε邻域内的各样本存入所述候选队列中,当存入完成后,通知所述主控节点;步骤6、所述主控节点接收到所述合并节点发送的通知后,转至上述步骤1 ;以及 接收到每个所述计算节点发送的通知后,将所述候选队列的每个候选样本标记为属于当前 聚类,转至上述步骤2 ;直到原始数据库中的每一个样本都已标记所属聚类。本专利技术实施例提供的一种聚类实现系统,包括主控节点、至少两个计算节点;所述主控节点,用于根据样本数据库中的当前未标记所属聚类的样本确定出一个 核心样本,并将该核心样本的ε邻域内各样本标记为属于当前聚类,将该核心样本的ε邻 域内各样本存入候选队列中;以及对所述候选队列中的候选样本进行分片,将分片样本分 配并下发给所述至少两个计算节点;以及接收每个所述计算节点发送的通知,判断所述候 选队列中是否存在候选样本,当存在候选项样本时,将每个候选样本标记为属于当前聚类, 并重新分片下发给所述至少两个计算节点;当判断所述候选队列为空后,再确定出下一个 核心样本重复上述过程,直到所述样本数据库中的每一个样本都已标记所属聚类;所述计算节点,用于根据样本数据库中的当前未标记样本、设定的ε邻域和最小 密度分别确定出分配的分片样本中的每一个样本是否为核心样本;将确定出的核心样本的 ε邻域内各样本存入所述候选队列中;且当分配的分片样本全部处理完毕后,通知所述主 控节点。本专利技术实施例提供的另一种聚类实现系统,包括主控节点、至少两个计算节和合并节点;所述主控节点,用于对原始数据库中当前未标记样本进行分块,将分块样本分配 并下发给至少两个计算节点;以及根据原始数据库中的当前未标记样本确定出一个核心样 本,并将该核心样本的ε邻域内各样本标记为属于当前聚类,将该核心样本的ε邻域内 各样本存入候选队列中;以及将所述候选队列中的候选样本下发给每个所述计算节点;还 用于接收所述计算节点的通知,将所述候选队列的每个候选样本标记为属于当前聚类,并 再次下发候选队列中的候选样本给所述至少两个计算节点;当接收到所述合并节点的通知 后,再确定出下一个核心样本,并重复上述过程,直到所述原始数据库中的每一个样本都已 标记所属聚类;所述计算节点,用于根据分配的分块样本和设定的ε邻域,分别统计每一个候选 样本的本地ε邻域内的样本数量,并发送给合并节点;以及接收合并节点发送的核心样本 通知,将对应核心样本的本地ε邻域内的各样本存入所述候选队列中,当存入完成后,通 知所述主控节点;所述合并节点,用于对每一个候选样本,累计所述计算节点发送的对应样本数量, 并根据累计和值和设置的最小密度确定每一个候选样本是否为核心样本;当确定出存在核 心样本时,将确定出的核心样本通知给各计算节点;以及当确定出不存在核心样本时,通知 所述主控节点。本专利技术提供的一种聚类实现方法及对应系统中,通过对候选队列中的候选样本进 行分片,由多个计算节点并行处理(并行确定核心节点),充分利用系统中各节点的计算资 源,大大缩短海量数据进行聚类挖掘处理时的等待时长,提高了计算效率。本专利技术提供的另一种聚类实现方法及对应系统中,将待处理的样本分块后分配给 不同的计算节点处理,解决了海量数据无法全部由单机读入内存进行计算处理的问题;本 专利技术提供的聚类实现方法中,采本文档来自技高网
...

【技术保护点】
一种聚类实现方法,其特征在于,包括:步骤1、主控节点根据样本数据库中的当前未标记所属聚类的样本确定出一个核心样本,并将该核心样本的ε邻域内各样本标记为属于当前聚类,将该核心样本的ε邻域内各样本存入候选队列中;步骤2、所述主控节点对所述候选队列中的候选样本进行分片,将分片样本分配并下发给至少两个计算节点;步骤3、每个所述计算节点根据样本数据库中的当前未标记样本、设定的ε邻域和最小密度分别确定出分配的分片样本中的每一个样本是否为核心样本;将确定出的核心样本的ε邻域内各样本存入所述候选队列中;且当分配的分片样本全部处理完毕后,通知所述主控节点;步骤4、所述主控节点接收到每个所述计算节点发送的通知后,判断所述候选队列中是否存在候选样本,当存在候选项样本时,将每个候选样本标记为属于当前聚类,转至上述步骤2;当不存在候选样本时,转至上述步骤1,直到所述样本数据库中的每一个样本都已标记所属聚类。

【技术特征摘要】

【专利技术属性】
技术研发人员:徐萌高丹邓超罗治国周文辉孙少陵何清赵卫中马慧芳
申请(专利权)人:中国移动通信集团公司
类型:发明
国别省市:11[中国|北京]

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

1