CN109684382A - 二维密度聚类方法及装置 - Google Patents
二维密度聚类方法及装置 Download PDFInfo
- Publication number
- CN109684382A CN109684382A CN201811568520.7A CN201811568520A CN109684382A CN 109684382 A CN109684382 A CN 109684382A CN 201811568520 A CN201811568520 A CN 201811568520A CN 109684382 A CN109684382 A CN 109684382A
- Authority
- CN
- China
- Prior art keywords
- dimensional coordinate
- sample
- coordinate points
- coordinate point
- several
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例涉及数据处理技术领域,具体而言,涉及一种二维密度聚类方法及装置,该方法对随机选取得到的第一样本选取数个二维坐标点进行笛卡尔积连接,进而实现对每个二维坐标点的并行聚类计算,将传统的全量遍历修改为并行遍历,实现了类簇划分的多线程多进程并发执行,能够有效减少计算时间,提高计算效率。
Description
技术领域
本发明实施例涉及数据处理技术领域,具体而言,涉及一种二维密度聚类方法及装置。
背景技术
聚类分析算法在数据分析中扮演着重要的角色,它是研究(样品或指标)分类问题的一种统计分析方法,同时也是数据挖掘的一个重要算法。随着信息技术的发展,各类数据也变的越来越繁杂,当数据量增大时,现有的聚类分析算法计算时间长且计算效率低。
发明内容
有鉴于此,本发明提供了一种二维密度聚类方法及装置。
本发明实施例提供了一种二维密度聚类方法,包括:
获取多个样本数据中每个样本数据对应的二维坐标点;
基于获取得到的多个二维坐标点确定第一样本选取数,从获取得到的多个二维坐标点中随机选取所述第一样本选取数个二维坐标点;
对随机选取得到的所述第一样本选取数个二维坐标点进行笛卡尔积连接,基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选;
针对筛选得到的多个二维坐标点中的每个二维坐标点,统计以该二维坐标点为圆心,设定距离为半径所形成的外切正方形区域内的二维坐标点的第一数量,判断所述第一数量是否达到设定值,若所述第一数量达到所述设定值,基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除,统计所述外切正方形区域内没有被剔除的二维坐标点的第二数量,判断所述第二数量是否达到所述设定值,若所述第二数量达到所述第二设定值,将所述第二数量个二维坐标点作为一个类簇;
将获得的多个类簇合并作为第一类簇,针对所述第一类簇中的每个二维坐标点,查找是否存在以该二维坐标点为圆心,所述设定距离为半径所形成的第一圆形区域内的除所述第一类簇中的二维坐标点以外的二维坐标点,若存在,将所述第一圆形区域内除所述第一类簇中的二维坐标点以外的二维坐标点划分到所述第一类簇中。
可选地,所述方法还包括:
从获取得到的多个二维坐标点中剔除属于所述第一类簇的二维坐标点;
基于剩余的多个二维坐标点确定第二样本选取数,从剩余的多个二维坐标点中随机选取所述第二样本选取数个二维坐标点;
对随机选取得到的所述第二样本选取数个二维坐标点进行笛卡尔积连接,基于所述第一设定规则对完成笛卡尔积连接的所述第二样本选取数个二维坐标点进行筛选;
判断从完成笛卡尔积连接的所述第二样本选取数个二维坐标点中筛选得到的二维坐标点的数量是否零,若为零,将完成笛卡尔积连接的所述第二样本选取数个二维坐标点作为噪音样本坐标点。
可选地,所述第一样本选取数通过以下公式计算得到:
其中,n为第一样本选取数,Xmax为获取得到的多个二维坐标点中的最大横坐标,Xmin为获取得到的多个二维坐标点中的最小横坐标,Ymax为获取得到的多个二维坐标点中的最大纵坐标,Ymin为获取得到的多个二维坐标点中的最小纵坐标;
若n<2,取n=2。
可选地,基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选的步骤,包括:
计算所述第一样本选取数个二维坐标点中每两个二维坐标点之间的距离,
针对计算得到的每个距离,判断该距离是否小于所述设定距离的两倍,若小于,该距离对应的两个二维坐标点中的其中一个二维坐标点剔除。
可选地,基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除的步骤,包括:
针对筛选得到的多个二维坐标点中的每个二维坐标点,以该二维坐标点为圆心,所述设定距离半径生成第二圆形区域;
将位于所述外切正方形区域以内且位于所述第二圆形区域以外的二维坐标点剔除。
本发明实施例还提供了一种二维密度聚类装置,包括:
样本获取模块,用于获取多个样本数据中每个样本数据对应的二维坐标点;
样本选取模块,用于基于获取得到的多个二维坐标点确定第一样本选取数,从获取得到的多个二维坐标点中随机选取所述第一样本选取数个二维坐标点;
样本筛选模块,用于对随机选取得到的所述第一样本选取数个二维坐标点进行笛卡尔积连接,基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选;
类簇生成模块,用于针对筛选得到的多个二维坐标点中的每个二维坐标点,统计以该二维坐标点为圆心,设定距离为半径所形成的外切正方形区域内的二维坐标点的第一数量,判断所述第一数量是否达到设定值,若所述第一数量达到所述设定值,基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除,统计所述外切正方形区域内没有被剔除的二维坐标点的第二数量,判断所述第二数量是否达到所述设定值,若所述第二数量达到所述第二设定值,将所述第二数量个二维坐标点作为一个类簇;
聚类模块,用于将获得的多个类簇合并作为第一类簇,针对所述第一类簇中的每个二维坐标点,查找是否存在以该二维坐标点为圆心,所述设定距离为半径所形成的第一圆形区域内的除所述第一类簇中的二维坐标点以外的二维坐标点,若存在,将所述第一圆形区域内除所述第一类簇中的二维坐标点以外的二维坐标点划分到所述第一类簇中。
可选地,所述聚类模块还用于从获取得到的多个二维坐标点中剔除属于所述第一类簇的二维坐标点;
所述样本选取模块还用于基于剩余的多个二维坐标点确定第二样本选取数,从剩余的多个二维坐标点中随机选取所述第二样本选取数个二维坐标点;
所述样本筛选模块还用于对随机选取得到的所述第二样本选取数个二维坐标点进行笛卡尔积连接,基于所述第一设定规则对完成笛卡尔积连接的所述第二样本选取数个二维坐标点进行筛选;判断从完成笛卡尔积连接的所述第二样本选取数个二维坐标点中筛选得到的二维坐标点的数量是否零,若为零,将完成笛卡尔积连接的所述第二样本选取数个二维坐标点作为噪音样本坐标点。
可选地,所述第一样本选取数通过以下公式计算得到:
其中,n为第一样本选取数,Xmax为获取得到的多个二维坐标点中的最大横坐标,Xmin为获取得到的多个二维坐标点中的最小横坐标,Ymax为获取得到的多个二维坐标点中的最大纵坐标,Ymin为获取得到的多个二维坐标点中的最小纵坐标;
若n<2,取n=2。
可选地,所述样本筛选模块通过以下方式基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选:
计算所述第一样本选取数个二维坐标点中每两个二维坐标点之间的距离,
针对计算得到的每个距离,判断该距离是否小于所述设定距离的两倍,若小于,该距离对应的两个二维坐标点中的其中一个二维坐标点剔除。
可选地,所述类簇生成模块通过以下方式基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除:
针对筛选得到的多个二维坐标点中的每个二维坐标点,以该二维坐标点为圆心,所述设定距离半径生成第二圆形区域;
将位于所述外切正方形区域以内且位于所述第二圆形区域以外的二维坐标点剔除本发明实施例还提供了一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的二维密度聚类方法。
本发明实施例还提供了一种计算机可读存储介质,所述可读存储介质包括计算机程序,所述计算机程序运行时控制所述可读存储介质所在电子设备执行上述的二维密度聚类方法。
有益效果
本发明实施例提供的二维密度聚类方法及装置,对随机选取得到的第一样本选取数个二维坐标点进行笛卡尔积连接,进而实现对每个二维坐标点的并行聚类计算,将传统的全量遍历修改为并行遍历,实现了类簇划分的多线程多进程并发执行,能够有效减少计算时间,提高计算效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例所提供的一种电子设备10的方框示意图。
图2为本发明实施例所提供的一种二维密度聚类方法的流程图。
图3为本发明实施例所提供的一种二维密度聚类方法的另一流程图。
图4为本发明实施例所提供的一种二维密度聚类装置20的模块框图。
图标:
10-电子设备;11-存储器;12-处理器;13-网络模块;
20-二维密度聚类装置;21-样本获取模块;22-样本选取模块;23-样本筛选模块;24-类簇生成模块;25-聚类模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本发明的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一个比较有代表性的基于密度的聚类算法。该算法相比于硬聚类算法,DBSCAN算法具有不需要预先声明聚类数量,可以找出任何形状的聚类。但是发明人经调查发现,现有的DBSCAN算法会对每一个样本点进行访问,即全量遍历,如此,当数据量增大时,按照现有的DBSCAN算法的计算逻辑进行遍历,会导致算法运行时间过长,并且运行的时间随数据量的增加成指数级增加,当数据量达到一定的程度之后,算法根本无法运行完成,并且无法通过进行硬件扩充得到有效的解决。
以上现有技术中的方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本发明实施例针对上述问题所提出的解决方案,都应该是发明人在本发明过程中对本发明做出的贡献。
基于上述研究,本发明实施例提供了一种二维密度聚类方法及装置,能够实现对每个二维坐标点的并行聚类计算,将传统的全量遍历修改为并行遍历,实现了类簇划分的多线程多进程并发执行,能够有效减少计算时间,提高计算效率。
图1示出了本发明实施例所提供的一种电子设备10的方框示意图。本发明实施例中的电子设备10具有数据存储、传输、处理功能,如图1所示,电子设备10包括:存储器11、处理器12、网络模块13和二维密度聚类装置20。
存储器11、处理器12和网络模块13之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件互相之间可以通过一条或多条通讯总线或信号线实现电性连接。存储器11中存储有二维密度聚类装置20,所述二维密度聚类装置20包括至少一个可以软件或固件(firmware)的形式储存于所述存储器11中的软件功能模块,所述处理器12通过运行存储在存储器11内的软件程序以及模块,例如本发明实施例中的二维密度聚类装置20,从而执行各种功能应用以及数据处理,即实现本发明实施例中的二维密度聚类方法。
其中,所述存储器11可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器11用于存储程序,所述处理器12在接收到执行指令后,执行所述程序。
所述处理器12可能是一种集成电路芯片,具有数据的处理能力。上述的处理器12可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等。可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
网络模块13用于通过网络建立电子设备10与其他通信终端设备之间的通信连接,实现网络信号及数据的收发操作。上述网络信号可包括无线信号或者有线信号。
可以理解,图1所示的结构仅为示意,电子设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
本发明实施例还提供一种计算机可读存储介质,所述可读存储介质包括计算机程序。所述计算机程序运行时控制所述可读存储介质所在电子设备10执行下面的二维密度聚类方法。
图2示出了本发明实施例所提供的一种二维密度聚类方法的流程图。所述方法有关的流程所定义的方法步骤应用于电子设备10,可以由所述处理器12实现。下面将对图2所示的具体流程进行详细阐述:
步骤S21,获取多个样本数据中每个样本数据对应的二维坐标点。
其中,样本数据的数量可以为m,可以理解,二维坐标点的数量也为m。其中,每个二维坐标点具有唯一标识。
步骤S22,基于获取得到的多个二维坐标点确定第一样本选取数,从获取得到的多个二维坐标点中随机选取第一样本选取数个二维坐标点。
具体地,通过以下方式计算得到第一样本选取数:
其中,n为第一样本选取数,Xmax为获取得到的多个二维坐标点中的最大横坐标,Xmin为获取得到的多个二维坐标点中的最小横坐标,Ymax为获取得到的多个二维坐标点中的最大纵坐标,Ymin为获取得到的多个二维坐标点中的最小纵坐标,可选地,若n<2,取n=2。
进一步地,从m个二维坐标点中选取出n个二维坐标点。
步骤S23,对随机选取得到的第一样本选取数个二维坐标点进行笛卡尔积连接,基于第一设定规则对完成笛卡尔积连接的第一样本选取数个二维坐标点进行筛选。
具体地,对n个二维坐标点进行笛卡尔积连接,能够更大程度的增加算法的并行度,实现局部遍历,相较于现有的全量遍历,能够有效减少计算时间,提高计算效率。
进一步地,计算n个二维坐标点中每两个二维坐标点之间的距离,针对计算得到的每个距离,其中,设定距离为r,判断距离是否小于2r且大于0,若距离小于2r且大于0,将该距离对应的两个二维坐标点中的其中一个坐标点剔除。
例如,针对二维坐标点A、B、C和D而言,A到B、C、D的距离均小于2r,但是B、C、D两两之间的距离大于2r,此时会剔除点A,如此,能够保证获取的二维坐标点尽量是分散开的,能够进一步减少遍历量,提高计算时间和计算效率。
进一步地,假设n个二维坐标点中剔除的二维坐标点为k个,此时会判断n-k是否小于2,若小于2,重新从m个二维坐标点中选取n个二维坐标点并重复步骤S23,直到经过步骤S23剔除之后,剩余的二维坐标点的数量不小于2。
步骤S24,针对筛选得到的多个二维坐标点中的每个二维坐标点,统计以该二维坐标点为圆心,设定距离为半径所形成的外切正方形区域内的二维坐标点的第一数量,判断第一数量是否达到设定值。
其中,设定值为minPts,minPts和r可以根据实际情况进行调整。
假设筛选得到的多个二维坐标点为n-k且n-k不小于2,针对n-k个二维坐标点中的每个二维坐标点Si(i为小于n-k的正整数),以该二维坐标点为圆心,r为半径生成外切正方形区域,并统计位于该外切正方形区域内的二维坐标点的第一数量(包括该二维坐标点),判断第一数量是否达到minPts,若没有达到,初步判定Si不是核心点,将Si“丢弃”,不执行后续步骤,若达到,初步判定Si为核心点,转向步骤S25。
步骤S25,基于第二设定规则对外切正方形区域内的二维坐标点进行剔除,统计外切正方形区域内没有被剔除的二维坐标点的第二数量,判断第二数量是否达到设定值。
例如,针对初步判定为核心点的Si,以Si为圆心r为半径画圆,此时将位于Si外切正方形区域内且位于圆形区域外的二维坐标点剔除,统计位于Si圆形区域内的二维坐标点的第二数量(包括Si),例如,第一数量为j,也就是说,位于Si外切正方形区域内的二维坐标点的数量为j,而位于Si外切正方形区域内且位于圆形区域外的二维坐标点数量为c,由此可得,第二数量为j-c。
若j-c没有达到minPts,判定Si不是核心点,将Si“丢弃”,不执行后续步骤。
若j-c达到minPts,判定Si为核心点,将j-c个二维坐标点作为一个类簇。
同理,对n-k个二维坐标点中的其他二维坐标点进行类似计算能够得到多个类簇。
步骤S26,将多个类簇合并作为第一类簇,针对第一类簇中的每个二维坐标点,查找是否存在以该二维坐标点为圆心,设定距离为半径所形成的第一圆形区域内的除第一类簇中的二维坐标点以外的二维坐标点。
例如,第一类簇为T,多个类簇为N1~Ng,进一步地,T=N1∪N2∪...∪Ng。
针对T中的每个二维坐标点,查找是否存在以该二维坐标点为圆心,r为半径所形成的第一圆形区域内的除T中的二维坐标点以外的二维坐标点,若存在,转向步骤S27,否则,不执行任何操作。
步骤S27,将第一圆形区域内除第一类簇中的二维坐标点以外的二维坐标点划分到第一类簇中。
例如,T中的二维坐标点Sd所形成的圆形区域中存在一个二维坐标点Sd+1,且Sd+1不属于T,此时,将Sd+1划分到T中,进一步地,二维坐标点Sd所在类簇为N3,则Sd+1所在类簇也为N3。
进一步地,对Sd+1执行步骤S26类似的计算,如此,能够实现聚类。
可选地,每个二维坐标点可能属于多个类簇,此时,对于不同类簇应该进行标记。例如,Sd所在类簇还包括N1和N7,此时应该为Sd标记类簇N1和N7。
请结合参阅图3,为本实施例所提供的二维密度聚类方法的另一流程图。
步骤S31,从获取得到的多个二维坐标点中剔除属于第一类簇的二维坐标点。
可以理解,在完成第一类簇T的聚类后,会将第一类簇T中的二维坐标点从最初的m个二维坐标点中剔除,例如,第一类簇T中的二维坐标点的数量为e,则从最初的m个二维坐标点中剔除之后剩余的二维坐标点为m-e个。
步骤S32,基于剩余的多个二维坐标点确定第二样本选取数,从剩余的多个二维坐标点中随机选取第二样本选取数个二维坐标点。
此时基于m-e个二维坐标点确定第二样本选取数b,其中,第二样本选取数b的计算公式与第一样本选取数n的计算公式类似,因此在此不作更多说明。
步骤S33,对随机选取得到的第二样本选取数个二维坐标点进行笛卡尔积连接,基于第一设定规则对完成笛卡尔积连接的第二样本选取数个二维坐标点进行筛选。
进一步地,从m-e个二维坐标点中随机选取b个二维坐标点,对b个二维坐标点进行笛卡尔积连接,基于第一设定规则对完成笛卡尔积连接的b个二维坐标点进行筛选,例如,筛选剩余的二维坐标点为b-q。
步骤S34,判断从完成笛卡尔积连接的第二样本选取数个二维坐标点中筛选得到的二维坐标点的数量是否零。
若b-q不为零,执行与步骤S24类似的计算。
若b-q为零,转向步骤S35。
步骤S35,将完成笛卡尔积连接的第二样本选取数个二维坐标点作为噪音样本坐标点。
将完成笛卡尔积连接的b个二维坐标点作为噪音样本坐标点。
如此,能够完成聚类计算,并输出最终聚类结果。
可选地,还可以通过以下方式进行聚类计算:
针对m个二维坐标点,计算得到Xmax、Xmin、Ymax和Ymin,并获取Xmin对应的坐标(x1,y1)。
进一步地,对m个二维坐标点进行画方块编号操作,其中,针对任意一个二维坐标点(x,y),将坐标条件满足如下条件的二维坐标点放入分区编号为[z,v]的数据集中,即进行网格划分:
z·r+x1≤x<x1+(z+1)·r
v·r+y1≤y<y1+(v+1)·r
x1+(z+1)·r<xmax
y1+(v+1)·r<ymax
其中,z,v为非负整数。
进一步地,取z,v从0开始,取得分区里面的样本数据,则需要取分区为(-1,1),(-1,0),(-1,-1),(0,1),(0,-1),(1,0),(1,1),(1,-1)中的二维坐标点进行比较,即,当需要取得分区编号为[z’,v’]的相邻区间分别为(z’-1,v’+1),(z’-1,v’),(z’-1,v’-1),(z’,v’+1),(z’,v’-1),(z’+1,v’),(z’+1,v’+1),(z’+1,v’-1)分区的二维坐标点集合,也就是获取当前区间的外接区间。
进一步地,获取到如上分区后进行距离计算,给予一个类簇编号自增编号p,并将满足小于距离r的并且在分区(z’-1,v’+1),(z’-1,v’),(z’-1,v’-1),(z’,v’+1),(z’,v’-1),(z’+1,v’),(z’+1,v’+1),(z’+1,v’-1)中的二维坐标点的类簇编号记为p,每次进行二维坐标点框选划分时,只要当前集合中有一个二维坐标点有类簇有编号,则将其他二维坐标点的类簇编号也标记为p,若当前集合中的二维坐标点存在多个类簇编号,则将当前的多个类簇编号合并成一个类簇编号,即标记为同一个类簇。
进一步地,当完成分区遍历后,即完成了密度聚类。对于最终类簇标记的个数小于minPts的二维坐标点标记为噪声点,其他的对应到每一个类簇里面。
可以理解,本实施例所采用的聚类算法中的类簇划分是多线程多进程并发执行的,后续如果数据量增大,可以通过增加硬件的方式得到很好的解决,此外,将传统的全量遍历改为部分遍历,在进行遍历的时候,始终都只是遍历某一个二维坐标点附近的二维坐标点进行计算,故遍历的次数远远少于传统算法的处理逻辑次数,在进行判定时,是先找到距离当前二维坐标点的外切正方形的二维坐标点,然后再进行距离度量的计算,由此大大降低了浮点计算次数,提高了算法运行效率并减少了聚类所需的时间。
在上述基础上,如图4所示,本发明实施例提供了一种二维密度聚类装置20,所述二维密度聚类装置20包括:样本获取模块21、样本选取模块22、样本筛选模块23、类簇生成模块24和聚类模块25。
样本获取模块21,用于获取多个样本数据中每个样本数据对应的二维坐标点。
由于样本获取模块21和图2中步骤S21的实现原理类似,因此在此不作更多说明。
样本选取模块22,用于基于获取得到的多个二维坐标点确定第一样本选取数,从获取得到的多个二维坐标点中随机选取所述第一样本选取数个二维坐标点。
由于样本选取模块22和图2中步骤S22的实现原理类似,因此在此不作更多说明。
样本筛选模块23,用于对随机选取得到的所述第一样本选取数个二维坐标点进行笛卡尔积连接,基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选。
由于样本筛选模块23和图2中步骤S23的实现原理类似,因此在此不作更多说明。
类簇生成模块24,用于针对筛选得到的多个二维坐标点中的每个二维坐标点,统计以该二维坐标点为圆心,设定距离为半径所形成的外切正方形区域内的二维坐标点的第一数量,判断所述第一数量是否达到设定值,若所述第一数量达到所述设定值,基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除,统计所述外切正方形区域内没有被剔除的二维坐标点的第二数量,判断所述第二数量是否达到所述设定值,若所述第二数量达到所述第二设定值,将所述第二数量个二维坐标点作为一个类簇。
由于类簇生成模块24和图2中步骤S24和步骤S25的实现原理类似,因此在此不作更多说明。
聚类模块25,用于将获得的多个类簇合并作为第一类簇,针对所述第一类簇中的每个二维坐标点,查找是否存在以该二维坐标点为圆心,所述设定距离为半径所形成的第一圆形区域内的除所述第一类簇中的二维坐标点以外的二维坐标点,若存在,将所述第一圆形区域内除所述第一类簇中的二维坐标点以外的二维坐标点划分到所述第一类簇中。
由于聚类模块25和图2中步骤S26和步骤S27的实现原理类似,因此在此不作更多说明。
综上,本发明实施例所提供的二维密度聚类方法及装置,将传统的全量遍历修改为部分(并行)遍历,实现了类簇划分的多线程多进程并发执行,能够有效减少计算时间,提高计算效率。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备10,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种二维密度聚类方法,其特征在于,包括:
获取多个样本数据中每个样本数据对应的二维坐标点;
基于获取得到的多个二维坐标点确定第一样本选取数,从获取得到的多个二维坐标点中随机选取所述第一样本选取数个二维坐标点;
对随机选取得到的所述第一样本选取数个二维坐标点进行笛卡尔积连接,基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选;
针对筛选得到的多个二维坐标点中的每个二维坐标点,统计以该二维坐标点为圆心,设定距离为半径所形成的外切正方形区域内的二维坐标点的第一数量,判断所述第一数量是否达到设定值,若所述第一数量达到所述设定值,基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除,统计所述外切正方形区域内没有被剔除的二维坐标点的第二数量,判断所述第二数量是否达到所述设定值,若所述第二数量达到所述第二设定值,将所述第二数量个二维坐标点作为一个类簇;
将获得的多个类簇合并作为第一类簇,针对所述第一类簇中的每个二维坐标点,查找是否存在以该二维坐标点为圆心,所述设定距离为半径所形成的第一圆形区域内的除所述第一类簇中的二维坐标点以外的二维坐标点,若存在,将所述第一圆形区域内除所述第一类簇中的二维坐标点以外的二维坐标点划分到所述第一类簇中。
2.根据权利要求1所述的二维密度聚类方法,其特征在于,所述方法还包括:
从获取得到的多个二维坐标点中剔除属于所述第一类簇的二维坐标点;
基于剩余的多个二维坐标点确定第二样本选取数,从剩余的多个二维坐标点中随机选取所述第二样本选取数个二维坐标点;
对随机选取得到的所述第二样本选取数个二维坐标点进行笛卡尔积连接,基于所述第一设定规则对完成笛卡尔积连接的所述第二样本选取数个二维坐标点进行筛选;
判断从完成笛卡尔积连接的所述第二样本选取数个二维坐标点中筛选得到的二维坐标点的数量是否零,若为零,将完成笛卡尔积连接的所述第二样本选取数个二维坐标点作为噪音样本坐标点。
3.根据权利要求1所述的二维密度聚类方法,其特征在于,所述第一样本选取数通过以下公式计算得到:
其中,n为第一样本选取数,Xmax为获取得到的多个二维坐标点中的最大横坐标,Xmin为获取得到的多个二维坐标点中的最小横坐标,Ymax为获取得到的多个二维坐标点中的最大纵坐标,Ymin为获取得到的多个二维坐标点中的最小纵坐标;
若n<2,取n=2。
4.根据权利要求1所述的二维密度聚类方法,其特征在于,基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选的步骤,包括:
计算所述第一样本选取数个二维坐标点中每两个二维坐标点之间的距离,
针对计算得到的每个距离,判断该距离是否小于所述设定距离的两倍,若小于,该距离对应的两个二维坐标点中的其中一个二维坐标点剔除。
5.根据权利要求1所述的二维密度聚类方法,其特征在于,基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除的步骤,包括:
针对筛选得到的多个二维坐标点中的每个二维坐标点,以该二维坐标点为圆心,所述设定距离半径生成第二圆形区域;
将位于所述外切正方形区域以内且位于所述第二圆形区域以外的二维坐标点剔除。
6.一种二维密度聚类装置,其特征在于,包括:
样本获取模块,用于获取多个样本数据中每个样本数据对应的二维坐标点;
样本选取模块,用于基于获取得到的多个二维坐标点确定第一样本选取数,从获取得到的多个二维坐标点中随机选取所述第一样本选取数个二维坐标点;
样本筛选模块,用于对随机选取得到的所述第一样本选取数个二维坐标点进行笛卡尔积连接,基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选;
类簇生成模块,用于针对筛选得到的多个二维坐标点中的每个二维坐标点,统计以该二维坐标点为圆心,设定距离为半径所形成的外切正方形区域内的二维坐标点的第一数量,判断所述第一数量是否达到设定值,若所述第一数量达到所述设定值,基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除,统计所述外切正方形区域内没有被剔除的二维坐标点的第二数量,判断所述第二数量是否达到所述设定值,若所述第二数量达到所述第二设定值,将所述第二数量个二维坐标点作为一个类簇;
聚类模块,用于将获得的多个类簇合并作为第一类簇,针对所述第一类簇中的每个二维坐标点,查找是否存在以该二维坐标点为圆心,所述设定距离为半径所形成的第一圆形区域内的除所述第一类簇中的二维坐标点以外的二维坐标点,若存在,将所述第一圆形区域内除所述第一类簇中的二维坐标点以外的二维坐标点划分到所述第一类簇中。
7.根据权利要求6所述的二维密度聚类装置,其特征在于,所述聚类模块还用于从获取得到的多个二维坐标点中剔除属于所述第一类簇的二维坐标点;
所述样本选取模块还用于基于剩余的多个二维坐标点确定第二样本选取数,从剩余的多个二维坐标点中随机选取所述第二样本选取数个二维坐标点;
所述样本筛选模块还用于对随机选取得到的所述第二样本选取数个二维坐标点进行笛卡尔积连接,基于所述第一设定规则对完成笛卡尔积连接的所述第二样本选取数个二维坐标点进行筛选;判断从完成笛卡尔积连接的所述第二样本选取数个二维坐标点中筛选得到的二维坐标点的数量是否零,若为零,将完成笛卡尔积连接的所述第二样本选取数个二维坐标点作为噪音样本坐标点。
8.根据权利要求6所述的二维密度聚类装置,其特征在于,所述第一样本选取数通过以下公式计算得到:
其中,n为第一样本选取数,Xmax为获取得到的多个二维坐标点中的最大横坐标,Xmin为获取得到的多个二维坐标点中的最小横坐标,Ymax为获取得到的多个二维坐标点中的最大纵坐标,Ymin为获取得到的多个二维坐标点中的最小纵坐标;
若n<2,取n=2。
9.根据权利要求6所述的二维密度聚类装置,其特征在于,所述样本筛选模块通过以下方式基于第一设定规则对完成笛卡尔积连接的所述第一样本选取数个二维坐标点进行筛选:
计算所述第一样本选取数个二维坐标点中每两个二维坐标点之间的距离,
针对计算得到的每个距离,判断该距离是否小于所述设定距离的两倍,若小于,该距离对应的两个二维坐标点中的其中一个二维坐标点剔除。
10.根据权利要求6所述的二维密度聚类装置,其特征在于,所述类簇生成模块通过以下方式基于第二设定规则对所述外切正方形区域内的二维坐标点进行剔除:
针对筛选得到的多个二维坐标点中的每个二维坐标点,以该二维坐标点为圆心,所述设定距离半径生成第二圆形区域;
将位于所述外切正方形区域以内且位于所述第二圆形区域以外的二维坐标点剔除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811568520.7A CN109684382A (zh) | 2018-12-20 | 2018-12-20 | 二维密度聚类方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811568520.7A CN109684382A (zh) | 2018-12-20 | 2018-12-20 | 二维密度聚类方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109684382A true CN109684382A (zh) | 2019-04-26 |
Family
ID=66188526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811568520.7A Pending CN109684382A (zh) | 2018-12-20 | 2018-12-20 | 二维密度聚类方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109684382A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110310161A (zh) * | 2019-07-09 | 2019-10-08 | 西安点告网络科技有限公司 | 特征聚合的方法及装置 |
CN112949697A (zh) * | 2021-02-07 | 2021-06-11 | 广州杰赛科技股份有限公司 | 一种管道异常的确认方法、装置及计算机可读存储介质 |
CN113925479A (zh) * | 2021-08-27 | 2022-01-14 | 上海赫千电子科技有限公司 | 一种基于智能车载盒子的生命监测方法及装置 |
-
2018
- 2018-12-20 CN CN201811568520.7A patent/CN109684382A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110310161A (zh) * | 2019-07-09 | 2019-10-08 | 西安点告网络科技有限公司 | 特征聚合的方法及装置 |
CN112949697A (zh) * | 2021-02-07 | 2021-06-11 | 广州杰赛科技股份有限公司 | 一种管道异常的确认方法、装置及计算机可读存储介质 |
CN112949697B (zh) * | 2021-02-07 | 2023-03-17 | 广州杰赛科技股份有限公司 | 一种管道异常的确认方法、装置及计算机可读存储介质 |
CN113925479A (zh) * | 2021-08-27 | 2022-01-14 | 上海赫千电子科技有限公司 | 一种基于智能车载盒子的生命监测方法及装置 |
CN113925479B (zh) * | 2021-08-27 | 2023-10-03 | 上海赫千电子科技有限公司 | 一种基于智能车载盒子的生命监测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109684382A (zh) | 二维密度聚类方法及装置 | |
CN107948930A (zh) | 基于位置指纹算法的室内定位优化方法 | |
CN108415975B (zh) | 基于bdch-dbscan的出租车载客热点识别方法 | |
CN109118265A (zh) | 商圈确定方法、装置和服务器 | |
CN110533116A (zh) | 基于欧式距离的自适应集成的不平衡数据分类方法 | |
CN105740904B (zh) | 一种基于dbscan聚类算法的出行与活动模式识别方法 | |
CN103888541B (zh) | 一种融合拓扑势和谱聚类的社区发现方法及系统 | |
CN110161464A (zh) | 一种雷达多目标聚类方法及装置 | |
CN110232404A (zh) | 一种基于机器学习的工业产品表面瑕疵识别方法及装置 | |
CN109118119A (zh) | 风控模型生成方法及装置 | |
CN106488400B (zh) | 生成地理围栏的方法及装置 | |
CN109409400A (zh) | 基于k近邻和多类合并密度峰值聚类方法、图像分割系统 | |
CN105513066B (zh) | 一种基于种子点选取与超像素融合的通用物体检测方法 | |
CN105407529B (zh) | 基于模糊c均值聚类的无线传感器网络节点定位算法 | |
CN106295498A (zh) | 光学遥感图像目标区域检测装置与方法 | |
CN109039503A (zh) | 一种频谱感知方法、装置、设备及计算机可读存储介质 | |
US8166035B2 (en) | Grid-based data clustering method | |
CN108829804A (zh) | 基于距离划分树的高维数据相似性连接查询方法及装置 | |
CN106649339A (zh) | 离群点的挖掘方法及挖掘装置 | |
CN108764307A (zh) | 自然最近邻优化的密度峰值聚类方法 | |
CN111475746B (zh) | 兴趣点位置挖掘方法、装置、计算机设备和存储介质 | |
CN107315984A (zh) | 一种行人检索的方法及装置 | |
CN110288025A (zh) | 基于信息几何与谱聚类的频谱感知方法、装置及设备 | |
CN110020598A (zh) | 一种基于深度学习检测电线杆上异物的方法及装置 | |
CN113158084B (zh) | 移动轨迹数据处理的方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190426 |