CN108268611B - 一种基于MapReduce的k-means文本聚类的方法及装置 - Google Patents
一种基于MapReduce的k-means文本聚类的方法及装置 Download PDFInfo
- Publication number
- CN108268611B CN108268611B CN201711473670.5A CN201711473670A CN108268611B CN 108268611 B CN108268611 B CN 108268611B CN 201711473670 A CN201711473670 A CN 201711473670A CN 108268611 B CN108268611 B CN 108268611B
- Authority
- CN
- China
- Prior art keywords
- initial cluster
- distance
- cluster center
- text data
- clustering
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Probability & Statistics with Applications (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于MapReduce的k‑means文本聚类的方法及装置。包括,删除离群点,最大距离法选取初始簇中心,构造迭代中的簇中心计算公式和测度函数,设计基于MapReduce框架的大规模文本并行聚类模型。采用本发明的方法,可以有效解决传统K‑means聚类算法中的局部最优、迭代次数过多、聚类结果不稳定的问题,提高算法的并行能力和可扩展性。
Description
技术领域
本发明属于文本聚类方法,特别涉及MapReduce编程模型,同时还涉及k-means聚类 方法。
背景技术
随着互联网的发展,数据的规模越来越庞大,现有的文本聚类方法并不能适应规模庞 大的数据集,无论从文本聚类效果还是时间性能上都不能达到所要达到的要求。
例如传统K-means聚类算法中中存在迭代次数过多、聚类结果不稳定的情况,因此算 法的并行能力和可扩展性都不能令人满意。
发明内容
本发明要解决的问题是提出基于MapReduce的最大距离法选取初始簇中心的k-means 文本聚类方法,从而提高文本聚类效果和时间性能。
为了达到上述目的,本发明采取的技术方案为:一种基于MapReduce的k-means文本 聚类方法,包括:
(1)、对整个文本数据集的离群点进行删除;
(2)、对剩余的文本使用最大距离法选取初始簇中心;
(3)、运用MapReduce函数进行多次迭代,完成文本的聚类过程。
进一步的,步骤(1)所述删除离群点的方法包括:
(101)、定义四个集合,S1,S2,S3,D1;S1为核心点集,S2为边界点集,S3为离群 点集,D1是文本数据集D的备份;
(102)、对于文本数据集D中的任一文本数据点dx,运用Map函数计算该文本与其他文本之间的距离,得到与dx的距离不大于距离参数Eps的点集合;
(103)、使用Reduce函数对步骤102得到的点集合进行求和,若值不小于个数参数Minpts,则采用Map函数将其归类到核心点集S1,再采用Reduce函数将不包含S1的文本 数据集传入D1文本数据集。
进一步的,步骤(2)所述最大距离法选取初始簇中心的过程包括:
(201)、计算删除离群点后剩余文本数据集所包括N个样本点的两两之间的距离,并 将距离最远的2个样本点作为初始簇中心;
(202)、计算剩余的样本点中,到前面已选取的初始簇中心各自距离乘积;将乘积最 大值的那个样本点作为下一个初始簇中心;
(203)、反复执行步骤(202),直到找到k个初始簇中心,其中k为根据实际需要聚类的数量定义。
进一步的,步骤(3)的具体方法为:
(301)、运用Map函数计算每个文本数据点到各个初始簇中心的距离,并根据距离把 文本数据点归属到最近的初始簇中心;
(302)、运用Reduce函数根据Map函数的结果计算出新的初始簇中心;
(303)、对于步骤(302)得到的Reduce结果,判断得到的聚类初始簇中心和上一轮的初始簇中心之间的变化是否小于阈值,若小于,则聚类结束,否则开始新一轮的MapReduce。
本发明的另一方面,提出了一种基于MapReduce的k-means文本聚类装置,包括:
离群点删除模块,用于对整个文本数据集的离群点进行删除;
初始簇中心选取模块,用于对剩余的文本使用最大距离法选取初始簇中心;
迭代聚类模块,用于运用MapReduce函数进行多次迭代,完成文本的聚类过程。
进一步的,所述离群点删除模块包括:
集合定义单元,用于定义四个集合,S1,S2,S3,D1;S1为核心点集,S2为边界点集,S3为离群点集,D1是文本数据集D的备份;
距离计算单元,用于对于文本数据集D中的任一文本数据点dx,运用Map函数计算该 文本与其他文本之间的距离,得到与dx的距离不大于距离参数Eps的点集合;
归类单元,用于使用Reduce函数对步骤102得到的点集合进行求和,若值不小于个数 参数Minpts,则采用Map函数将其归类到核心点集S1,再采用Reduce函数将不包含S1的文本数据集传入D1文本数据集。
进一步的,所述初始簇中心选取模块包括:
第一计算单元,用于计算删除离群点后剩余文本数据集所包括N个样本点的两两之间 的距离;
第一选取单元,用于将距离最远的2个样本点作为初始簇中心;
第二计算单元,用于计算剩余的样本点中,到前面已选取的初始簇中心各自距离乘积;
第二选取单元,用于将乘积最大值的那个样本点作为下一个初始簇中心;
循环单元,用于将第二计算单元和第二选取单元反复执行,直到找到k个初始簇中心。
进一步的,所述迭代聚类模块包括:
距离计算单元,用于运用Map函数计算每个文本数据点到各个初始簇中心的距离,并 根据距离把文本数据点归属到最近的初始簇中心;
质心计算单元,用于运用Reduce函数根据Map函数的中间结果计算出新的初始簇中心;
判断单元,用于对质心计算单元得到的Reduce结果,判断得到的聚类初始簇中心和上 一轮的初始簇中心之间的变化是否小于阈值,若小于,则聚类结束,否则开始新一轮的 MapReduce。
本发明提出的一种基于MapReduce的k-means文本聚类方法与装置,与现有技术相比, 有益效果为:
本发明提供了基于MapReduce框架的大规模文本并行聚类模型,可以有效解决传统 K-means聚类算法中的局部最优、迭代次数过多、聚类结果不稳定的问题,提高算法的并行 能力和可扩展性。
具体实施方式
下面结合具体实施例对本发明做进一步说明。
为了提高聚类效果和时间性能,本发明提出了一种基于MapReduce的k-means聚类方 法,采用分而治之的策略,该模型包括三个阶段:(1)离群点删除;(2)最大距离法选取初始簇中心;(3)基于MapReduce进行文本聚类。
(1)为了减少离群点对于初始簇中心的影响,需要先将离群点进行删除。首先定义四个集合,S1,S2,S3,D1。S1表示核心点集,S2表示边界点集,S3为离群点集,D1是D 的备份。对于文本集D中的任一文本dx运用Map函数计算该文本与其他文本之间的距离, 输入距离参数Eps和个数参数Minpts,将<<dx,list<tj,wxj>>,list<dy>>进 行处理,得<dx,list<dis<x,y>>>,其中list<sim<x,y>是与dx的距离不大 于Eps的点集合。对于Map的结果,使用Reduce函数对其值进行求和处理。若值不小于 个数参数Minpts,则采用Map函数将其归类到核心点集S1。再采用Reduce函数将不包含 S1的文本集D传入D1文本集。
具体的MapReduce过程表示如下:
Map:<<dx,list<tj,wxj>>,list<dy>>→<dx,list<dis<x,y>>>
Reduce:<dx,count<list<dis<x,y>>>>→<dx,num<x>>
Map:<dx,num(x)>→<S1,dx>
Reduce:D1←D-S1
(2)基于最大距离法选取初始簇中心的k-means改进算法基于以下事实:距离大(相 似度小)的样本点分到同一个簇的可能性小;相反,距离小(相似度大)的样本点分到同一个 簇的可能性大。在这一认识的基础上,改进后的算法计算样本集的N个样本点两两之间的 距离,并将距离最远的两个样本点作为初始簇中心。在剩余的(N-2)个样本点中,选取到 前面两个初始簇中心各自距离乘积最大值的那个样本点作为第三个初始簇中心。同样地, 在剩余的(N-3)个样本点中,选取到前面三个初始簇中心各自距离乘积最大值的那个样本 点作为第四个初始簇中心。依此类推,可以找到k个初始簇中心,也称为质心,其中k根 据实际进行定义,需要聚集多少个类,k为多少。
(3)使用MapReduce算法完成文本聚类过程。首先运用Map函数计算每个文本数据点 到各个质心的距离,并根据距离把文本数据点归属到最近的质心。其输入信息为质心信息 和待聚类的所有文本点的信息,输入格式为<dx,list<tj,wxj>>,Map执行结束后,输出内容为类标识和文本数据属性<K1,<dx,list<tj,wxj>>。接着运用Reduce函数根据Map函数的中间结果计算出新的质心,用来进行下一轮的MapReduce操作。输入数据格式为<Kx,list<dx>>,即是<类标识,该类的文本数据集>;所有属于一个类的数据交由同一个Reduce任务处理,得到<Kx,list<tj,wxj>>,即是新的质心和向量标识。对于得 到的Reduce结果,判断本轮得到的聚类质心和上一轮的质心之间的变化是否小于阈值,若 小于,则聚类结束,否则开始新一轮的MapReduce。算法描述如下:
1.输入初始质心和文本集;
2.repeat:;
3.Map:<dx,list<tj,wxj>>→<Kx,<dx,list<tj,wxj>>∥K1,K2,…,Kx,…,Kn是类标识;
4.Reduce:<Kx,list<dx>>→<Kx,list<tj,wxj>>;
5.until:达到结束的条件;
6.输出簇和迭代次数。
以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发 明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范 围之内。
Claims (6)
1.一种基于MapReduce的k-means文本聚类方法,其特征在于,包括:
(1)、对整个文本数据集的离群点进行删除;
(2)、对剩余的文本使用最大距离法选取初始簇中心;
(3)、运用MapReduce函数进行多次迭代,完成文本的聚类过程;
步骤(1)所述删除离群点的方法包括:
(101)、定义四个集合,S1,S2,S3,D1;S1为核心点集,S2为边界点集,S3为离群点集,D1是文本数据集D的备份;
(102)、对于文本数据集D中的任一文本数据点dx,运用Map函数计算该文本与其他文本之间的距离,得到与dx的距离不大于距离参数Eps的点集合;
(103)、使用Reduce函数对步骤102得到的点集合进行求和,若值不小于个数参数Minpts,则采用Map函数将其归类到核心点集S1,再采用Reduce函数将不包含S1的文本数据集传入D1文本数据集。
2.根据权利要求1所述的一种基于MapReduce的k-means文本聚类方法,其特征在于,步骤(2)所述最大距离法选取初始簇中心的过程包括:
(201)、计算删除离群点后剩余文本数据集所包括N个样本点的两两之间的距离,并将距离最远的2个样本点作为初始簇中心;
(202)、计算剩余的样本点中,到前面已选取的初始簇中心各自距离乘积;将乘积最大值的那个样本点作为下一个初始簇中心;
(203)、反复执行步骤(202),直到找到k个初始簇中心,其中k为根据实际需要聚类的数量定义。
3.根据权利要求1所述的一种基于MapReduce的k-means文本聚类方法,其特征在于,步骤(3)的具体方法为:
(301)、运用Map函数计算每个文本数据点到各个初始簇中心的距离,并根据距离把文本数据点归属到最近的初始簇中心;
(302)、运用Reduce函数根据Map函数的结果计算出新的初始簇中心;
(303)、对于步骤(302)得到的Reduce结果,判断得到的聚类初始簇中心和上一轮的初始簇中心之间的变化是否小于阈值,若小于,则聚类结束,否则开始新一轮的MapReduce。
4.一种基于MapReduce的k-means文本聚类装置,其特征在于,包括:
离群点删除模块,用于对整个文本数据集的离群点进行删除;
初始簇中心选取模块,用于对剩余的文本使用最大距离法选取初始簇中心;
迭代聚类模块,用于运用MapReduce函数进行多次迭代,完成文本的聚类过程;
所述离群点删除模块包括:
集合定义单元,用于定义四个集合,S1,S2,S3,D1;S1为核心点集,S2为边界点集,S3为离群点集,D1是文本数据集D的备份;
距离计算单元,用于对于文本数据集D中的任一文本数据点dx,运用Map函数计算该文本与其他文本之间的距离,得到与dx的距离不大于距离参数Eps的点集合;
归类单元,用于使用Reduce函数对步骤102得到的点集合进行求和,若值不小于个数参数Minpts,则采用Map函数将其归类到核心点集S1,再采用Reduce函数将不包含S1的文本数据集传入D1文本数据集。
5.根据权利要求4所述的一种基于MapReduce的k-means文本聚类装置,其特征在于,所述初始簇中心选取模块包括:
第一计算单元,用于计算删除离群点后剩余文本数据集所包括N个样本点的两两之间的距离;
第一选取单元,用于将距离最远的2个样本点作为初始簇中心;
第二计算单元,用于计算剩余的样本点中,到前面已选取的初始簇中心各自距离乘积;
第二选取单元,用于将乘积最大值的那个样本点作为下一个初始簇中心;
循环单元,用于将第二计算单元和第二选取单元反复执行,直到找到k个初始簇中心。
6.根据权利要求4所述的一种基于MapReduce的k-means文本聚类装置,其特征在于,所述迭代聚类模块包括:
距离计算单元,用于运用Map函数计算每个文本数据点到各个初始簇中心的距离,并根据距离把文本数据点归属到最近的初始簇中心;
质心计算单元,用于运用Reduce函数根据Map函数的中间结果计算出新的初始簇中心;
判断单元,用于对质心计算单元得到的Reduce结果,判断得到的聚类初始簇中心和上一轮的初始簇中心之间的变化是否小于阈值,若小于,则聚类结束,否则开始新一轮的MapReduce。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711473670.5A CN108268611B (zh) | 2017-12-29 | 2017-12-29 | 一种基于MapReduce的k-means文本聚类的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711473670.5A CN108268611B (zh) | 2017-12-29 | 2017-12-29 | 一种基于MapReduce的k-means文本聚类的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108268611A CN108268611A (zh) | 2018-07-10 |
CN108268611B true CN108268611B (zh) | 2021-03-26 |
Family
ID=62772927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711473670.5A Active CN108268611B (zh) | 2017-12-29 | 2017-12-29 | 一种基于MapReduce的k-means文本聚类的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108268611B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111061865A (zh) * | 2018-10-17 | 2020-04-24 | 武汉斗鱼网络科技有限公司 | 一种会话场景文本挖掘的方法及计算装置 |
CN110619231B (zh) * | 2019-08-26 | 2021-06-18 | 北京航空航天大学 | 一种基于MapReduce的差分可辨性k原型聚类方法 |
CN113288122B (zh) * | 2021-05-21 | 2023-12-19 | 河南理工大学 | 一种可穿戴坐姿监测装置和坐姿监测方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104376057A (zh) * | 2014-11-06 | 2015-02-25 | 南京邮电大学 | 一种基于最大最小距离和K-means的自适应聚类方法 |
CN104615638A (zh) * | 2014-11-25 | 2015-05-13 | 浙江银江研究院有限公司 | 一种面向大数据的分布式密度聚类方法 |
CN104809242A (zh) * | 2015-05-15 | 2015-07-29 | 成都睿峰科技有限公司 | 一种基于分布式结构的大数据聚类方法和装置 |
CN106295676A (zh) * | 2016-07-26 | 2017-01-04 | 重庆邮电大学 | 一种基于Hadoop的自适应RK‑means算法 |
CN106951498A (zh) * | 2017-03-15 | 2017-07-14 | 国信优易数据有限公司 | 文本聚类方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9589045B2 (en) * | 2014-04-08 | 2017-03-07 | International Business Machines Corporation | Distributed clustering with outlier detection |
-
2017
- 2017-12-29 CN CN201711473670.5A patent/CN108268611B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104376057A (zh) * | 2014-11-06 | 2015-02-25 | 南京邮电大学 | 一种基于最大最小距离和K-means的自适应聚类方法 |
CN104615638A (zh) * | 2014-11-25 | 2015-05-13 | 浙江银江研究院有限公司 | 一种面向大数据的分布式密度聚类方法 |
CN104809242A (zh) * | 2015-05-15 | 2015-07-29 | 成都睿峰科技有限公司 | 一种基于分布式结构的大数据聚类方法和装置 |
CN106295676A (zh) * | 2016-07-26 | 2017-01-04 | 重庆邮电大学 | 一种基于Hadoop的自适应RK‑means算法 |
CN106951498A (zh) * | 2017-03-15 | 2017-07-14 | 国信优易数据有限公司 | 文本聚类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108268611A (zh) | 2018-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI718643B (zh) | 異常群體識別方法及裝置 | |
WO2022126971A1 (zh) | 基于密度的文本聚类方法、装置、设备及存储介质 | |
KR102468930B1 (ko) | 관심대상 문서 필터링 시스템 및 그 방법 | |
US11037096B2 (en) | Delivery prediction with degree of delivery reliability | |
CN110147357A (zh) | 一种基于大数据环境下的多源数据聚合抽样方法及系统 | |
CN108268611B (zh) | 一种基于MapReduce的k-means文本聚类的方法及装置 | |
CN110263979B (zh) | 基于强化学习模型预测样本标签的方法及装置 | |
JP7076483B2 (ja) | データモデルを構築する方法、装置、デバイス及び媒体 | |
WO2015165372A1 (en) | Method and apparatus for classifying object based on social networking service, and storage medium | |
CN104008166A (zh) | 一种基于形态和语义相似度的对话短文本聚类方法 | |
CN111627552B (zh) | 一种医疗流式数据血缘关系分析、存储方法及装置 | |
CN109271520A (zh) | 数据提取方法、数据提取装置、存储介质和电子设备 | |
WO2015180340A1 (zh) | 一种数据挖掘方法及装置 | |
JP2022191412A (ja) | マルチターゲット画像テキストマッチングモデルのトレーニング方法、画像テキスト検索方法と装置 | |
US8250106B2 (en) | Incremental inference | |
WO2017090475A1 (ja) | 情報処理システム、関数作成方法および関数作成プログラム | |
WO2015192798A1 (zh) | 主题挖掘方法和装置 | |
JPWO2014073206A1 (ja) | 情報処理装置、及び、情報処理方法 | |
US11288266B2 (en) | Candidate projection enumeration based query response generation | |
WO2017158802A1 (ja) | データ変換システム及びデータ変換方法 | |
US10586169B2 (en) | Common feature protocol for collaborative machine learning | |
CN110874366A (zh) | 数据处理、查询方法和装置 | |
US11048730B2 (en) | Data clustering apparatus and method based on range query using CF tree | |
CN110377721B (zh) | 自动问答方法、装置、存储介质及电子设备 | |
CN110209895B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |