本发明属于文本聚类技术领域,尤其涉及基于并行改进的k-means算法的大数据文本聚类试验方法及系统。
背景技术:
本发明基于申请号为2019113934939,发明名称为基于spgapso-svm算法的公交客流量试验方法及系统,申请日为2019年12月30日,申请号为:2019113934939。
近年来,随着互联网信息量的迅猛增加,产生了海量的网络文本数据,文本数据是一种非结构化数据,具有高维、数据量大、价值密度低等特点,如何对海量网络文本信息进行有效处理及价值挖掘已成为当今中文信息处理的研究热点之一,对大批量的文本进行分类更是其中一个重要的研究领域,当前,在互联网大规模文本信息挖掘处理中,聚类可应用于预处理阶段、文本语义分析、文档相似性分析、语料分类分析及主题分析等多个领域,文本聚类通过将文本划分到有意义的几个类别中,使同一个类别中文本之间的相似度高于不同类别间文本之间的相似度,从而实现对文本信息的有效组织和管理,有效的文本聚类可以帮助人们更好地理解和导航信息检索工具的检索结果;
现有技术涉及一种基于大数据平台并行改进k-means的文本聚类算法swck-means(word2vec canopy k-meansclusteringbasedonspark),针对海量的文本数据,首先采用word2vec神经网络计算词向量的权重,减少文本的维度;接着使用canopy算法对文本权重数据进行聚类选取k-means的初始聚类中心,再使用k-means进行最终的聚类;最后将算法进行并行化设计。以海量互联网文本信息分类作为应用背景,对本文算法进行了实验分析。实验结果表明,本文算法分类效果比传统的k-means算法在准确率有明显提高,而且在处理海量数据时有较大的性能优势;
综上所述,但如何对并行改进的k-means算法进行如算法准确性试验、加速比实验、扩展性实验等有效性验证是非常重要的问题。
技术实现要素:
本发明提供基于并行改进的k-means算法的大数据文本聚类试验方法及系统,以解决上述背景技术中提出了对并行改进的k-means算法进行如算法准确性试验、加速比实验、扩展性实验等有效性验证是非常重要的问题。
本发明所解决的技术问题采用以下技术方案来实现:基于并行改进的k-means算法的大数据文本聚类试验方法,包括:
对非结构化文本数据进行预处理;
准确性试验:通过确定每个簇中某一特定类别的对象所占的比例评价k-means算法的聚类效果;
加速比实验:通过以并行化减少时间为代价来增强算法整体性能评价k-means算法的并行算法性能;
扩展性实验:通过基于分布式集群并行聚类算法执行的扩展比评价k-means算法的集群并行性能。
进一步,所述准确性试验包括:
分别在大数据平台上通过并行swck-means和并行k-means文本聚类算法对若干个文本数据集进行聚类分析,并通过准确率衡量函数对其聚类效果评价;
所述准确率衡量函数为:
其中:
所述p是聚类结果;
所述tp是将两篇相似文本数据集正确归入同一个簇的决策;
所述fp是将两篇不相似文档错误归入同一簇的决策。
进一步,在准确率衡量函数中,设定t1=2t2且t1=1.6,重复运行准确性试验20次,以聚类结果的平均值作为k-means算法的性能评价指标。
进一步,所述加速比实验包括:
分析并行swck-means和并行k-means文本聚类算法的加速比,并通过加速比检测函数对并行算法性能评价;
所述加速比检测函数为:
其中:
所述er算法的加速比;
所述ts是单个节点串行运行程序的时间;
所述tr是r个节点环境下并行的执行时间。
进一步,所述扩展性实验包括:
分别在不同分布式节点下,在不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,通过扩展性测试函数进行扩展性测试;
所述扩展性测试函数为:
其中:
所述j是扩展性比值;
所述er是算法的加速比;
所述r是计算节点数。
进一步,所述文本数据进行预处理包括:
获取待聚类文本集;
通过数据整合、去分词和去停用词、词频统计、特征选择和构建文本表示模型或其他预处理步骤计算词的权重;
把文本数据量化为数值的形式进行聚类分析。
进一步,所述数据整合包括:
将hadoop的分布式文件系统中小文件合成一个大文本集文件,并按照每一行放一个文件名和文件内容的形式存储;
所述待聚类文本集优先采用thucnews新浪文本聚类语料数据集,所述thucnews包括如财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏等14类新闻数据集。
进一步,所述去分词和去停用词包括:
将大文本集文件使用hanlp自然语言处理包进行分词,对文本进行切分和去除一些对文本数据分析没有意义的数据;
所述去分词和去停用词的常用操作包括:
去除数字:使用正则表达式去除无意义的数字;
去除链接地址:使用正则表达式去除无意义的链接地址;
去除停用词:通过正则表达式去除如“的”、“是”、“但是”等对分析没有意义的词;
去除特殊符号:通过正则表达式去除对文本分析没有帮助标点符号、空白字符的特殊符号;
检查语料:通过正则表达式去除空白字符、数字和标点符号或与文本无关的额外内容。
进一步,所述大数据文本聚类试验方法的实验环境包括:
在hadoop平台的yarn上部署spark框架,所述hadoop平台基于vmware创建了5台虚拟机,所述虚拟机上搭建的hadoop spark集群平台,所述集群平台共有5个节点,各个节点的配置相同,所述5个节点分别为一个master节点和四个worker节点,所述5个节点分别拥有两核cpu、2g内存和20g硬盘,所述节点的开发环境分别为vmware10.0.4、jdk1.8.0_131、spark2.1.1和hadoop2.7.2,其编程语言为scala2.11.8。
基于并行改进的k-means算法的大数据文本聚类试验系统,包括大数据文本聚类试验模块;
所述大数据文本聚类试验模块用于:
应用上述任一项的基于并行改进的k-means算法的大数据文本聚类试验方法。
有益技术效果:
本专利采用对非结构化文本数据进行预处理;准确性试验:通过确定每个簇中某一特定类别的对象所占的比例评价k-means算法的聚类效果;加速比实验:通过以并行化减少时间为代价来增强算法整体性能评价k-means算法的并行算法性能;扩展性实验:通过基于分布式集群并行聚类算法执行的扩展比评价k-means算法的集群并行性能,由于准确性试验是准确率衡量的是每个簇中某一特定类别的对象所占的比例,加速比实验是通过以并行化减少时间为代价来增强算法整体性能,扩展比实验是分别在不同分布式节点下,不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,进行扩展性测试,以测试本文算法的扩展性,通过实验证明了并行改进的k-means算法分类效果比传统的k-means算法在分类准确率有明显提高,而且在处理海量数据时有较大的性能优势,因此,通过准确性试验、加速比实验、扩展性实验说明了并行改进的k-means算法适合处理频繁迭代的大规模文本数据挖掘,对现实生活中的文本数据挖掘领域具有一定的指导意义,本实验方法对并行改进的k-means算法具有有效的验证。
附图说明
图1是本发明基于并行改进的k-means算法的大数据文本聚类试验方法的总流程图;
图2是本发明基于并行改进的k-means算法的大数据文本聚类试验方法的四个数据集组成的数据集表;
图3是本发明基于并行改进的k-means算法的大数据文本聚类试验方法的算法准确率对比表;
图4是本发明基于并行改进的k-means算法的大数据文本聚类试验方法的swck-means算法的加速比图;
图5是本发明基于并行改进的k-means算法的大数据文本聚类试验方法的样本数据集下的扩展比图;
具体实施方式
以下结合附图对本发明做进一步描述:
图中:
s101-对非结构化文本数据进行预处理;
s102-准确性试验;
s103-加速比实验;
s104-扩展性实验;
实施例:
本实施例:如图1所示,基于并行改进的k-means算法的大数据文本聚类试验方法,包括:
对非结构化文本数据进行预处理s101;
准确性试验s102:通过确定每个簇中某一特定类别的对象所占的比例评价k-means算法的聚类效果;
加速比实验s103:通过以并行化减少时间为代价来增强算法整体性能评价k-means算法的并行算法性能;
扩展性实验s104:通过基于分布式集群并行聚类算法执行的扩展比评价k-means算法的集群并行性能。
由于采用对非结构化文本数据进行预处理;准确性试验:通过确定每个簇中某一特定类别的对象所占的比例评价k-means算法的聚类效果;加速比实验:通过以并行化减少时间为代价来增强算法整体性能评价k-means算法的并行算法性能;扩展性实验:通过基于分布式集群并行聚类算法执行的扩展比评价k-means算法的集群并行性能,由于准确性试验是准确率衡量的是每个簇中某一特定类别的对象所占的比例,加速比实验是通过以并行化减少时间为代价来增强算法整体性能,扩展比实验是分别在不同分布式节点下,不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,进行扩展性测试,以测试本文算法的扩展性,通过实验证明了并行改进的k-means算法分类效果比传统的k-means算法在分类准确率有明显提高,而且在处理海量数据时有较大的性能优势,因此,通过准确性试验、加速比实验、扩展性实验说明了并行改进的k-means算法适合处理频繁迭代的大规模文本数据挖掘,对现实生活中的文本数据挖掘领域具有一定的指导意义,本实验方法对并行改进的k-means算法是有效的验证。
所述准确性试验包括:
分别在大数据平台上通过并行swck-means和并行k-means文本聚类算法对若干个文本数据集进行聚类分析,并通过准确率衡量函数对其聚类效果评价;
所述准确率衡量函数为:
其中:
所述p是聚类结果;
所述tp是将两篇相似文本数据集正确归入同一个簇的决策;
所述fp是将两篇不相似文档错误归入同一簇的决策。
由于采用分别在大数据平台上通过并行swck-means和并行k-means文本聚类算法对若干个文本数据集进行聚类分析,并通过准确率衡量函数对其聚类效果评价,由于分别在大数据平台上利用并行swck-means和并行k-means文本聚类算法对4个文本数据集进行聚类分析,采用准确率(precision)对swck-means和k-means算法的聚类效果评价,准确率衡量的是每个簇中某一特定类别的对象所占的比例;
其中,tp(true-positive,真阳性)指的是将两篇相似文档正确归入同一个簇的决策;fp(false-positive,假阳性)指的是将两篇不相似文档错误归入同一簇的决策。另外为了更好地体现k-means算法的性能,避免k-means算法的聚类陷入局部最优解,而导致聚类效果不佳,从图3可以看出,本文提出的swck-means文本聚类算法相比于传统k-means文本聚类算法,在准确率上均有一定提高,本试验方法提出的算法约提高了10%左右,验证了基于canopy思想优化的swck-means文本聚类算法的有效性,但影响准确率的还有特征表示,特征表示的更准确,实验的效果也会越好,接下来还需要进一步的研究文本特征表示。
在准确率衡量函数中,设定t1=2t2且t1=1.6,重复运行准确性试验20次,以聚类结果的平均值作为k-means算法的性能评价指标。
由于采用在准确率衡量函数中,设定t1=2t2且t1=1.6,重复运行准确性试验20次,以聚类结果的平均值作为k-means算法的性能评价指标,由于本试验方法在验证传统k-means算法文本聚类的准确性时,设置t1=2t2,经过交叉验证本文实验t1取1.6,重复运行该算法20次,指标取聚类结果的平均值作为k-means算法的性能评价。
所述加速比实验包括:
分析并行swck-means和并行k-means文本聚类算法的加速比,并通过加速比检测函数对并行算法性能评价;
所述加速比检测函数为:
其中:
所述er算法的加速比;
所述ts是单个节点串行运行程序的时间;
所述tr是r个节点环境下并行的执行时间。
由于采用所述加速比实验包括:分析并行swck-means和并行k-means文本聚类算法的加速比,并通过加速比检测函数对并行算法性能评价,由于所述扩展性实验包括:分别在不同分布式节点下,在不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,通过扩展性测试函数进行扩展性测试,由于进行算法效率分析,首要分析其算法的加速比。加速比是检测并行算法性能的重要指标,是通过以并行化减少时间为代价来增强算法整体性能,其计算公式如公式所示:
其中表示在单个节点串行运行程序的时间,表示r个节点环境下并行的执行时间。加速比越大则表示该算法并行执行所需的相对时间就越少,即说明并行化的执行效率越高,实验说明:分别使用thucnews新浪文本分类语料数据集构造4个样本数据集,测试四个样本数据在不同节点下传统的k-means文本聚类算法和本文提出的高效swck-means文本聚类算法在spark集群环境下的并行聚类的加速比,实验结果得到如下折线图4所示,从图5可知,文本数据集data1随着计算节点的增多,它的加速比都接近1,说明小数据集在集群环境下的加速比并不明显;但是随着数据量的增加,文本数据集data2、data3和data4的加速比曲线就明显上升,且在数据量相同的时候加速比曲线随着节点数增多时逐渐上升。实验表明:基于hadoop和spark集群下的swck-means文本聚类算法具有较好的加速比。
所述扩展性实验包括:
分别在不同分布式节点下,在不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,通过扩展性测试函数进行扩展性测试;
所述扩展性测试函数为:
其中:
所述j是扩展性比值;
所述er是算法的加速比;
所述r是计算节点数。
采用分别在不同分布式节点下,在不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,通过扩展性测试函数进行扩展性测试,由于并行算法的加速比并不能无限地扩大,随着集群中的节点的数目不断增加,加速比越来越不能充分的反映出集群的利用率,这时需要引入扩展性指标,用来检测集群并行性能。扩展性是集群另外的一个重要指标,其公式如公式所示:
其中er表示算法的加速比,r表示计算节点数,扩展性越大集群总体利用率则越高,越能够证明算法的并行效果好,实验说明:为了测试本文算法的扩展性,分别在不同分布式节点下,不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,进行扩展性测试。数据集使用上文构造的四个数据集,由实验数据可得扩展性数据统计如图4所示,图5描述了四个样本数据集在基于hadoop和spark分布式集群并行聚类算法执行的扩展比,随着数据量的增大和节点数量的增多,扩展比的下降速度逐渐降低且慢慢趋于稳定。而文本数据集data1的扩展比曲线下降的最快,文本数据集data2的扩展比曲线下降的速度稍慢,文本数据集data3和data4的扩展比曲线下降的较慢,这说明swck-means文本聚类在大数据集的情况下具有良好的扩展性,但是小数据集的扩展性就差一些。
所述文本数据进行预处理包括:
获取待聚类文本集;
通过数据整合、去分词和去停用词、词频统计、特征选择和构建文本表示模型或其他预处理步骤计算词的权重;
把文本数据量化为数值的形式进行聚类分析。
由于采用所述文本数据进行预处理包括:获取待聚类文本集;通过数据整合、去分词和去停用词、词频统计、特征选择和构建文本表示模型或其他预处理步骤计算词的权重;把文本数据量化为数值的形式进行聚类分析,由于本文基于大数据平台并行swck-means文本聚类算法对文本聚类领域进行研究分析。首先,需要对非结构化文本数据进行预处理。文本预处理包括分词、去停用词、词频统计、特征选择和构建文本表示模型等步骤,需要把文本数据量化为数值的形式才能进行聚类分析。然后,对文本数据进行并行聚类,其中由于文本聚类分析需要进行不断的迭代,会占据大量的处理时间,因此,本文通过并行计算提高文本聚类分析部分的效率。最后,实验结果分析,分析实验的准确率以及并行计算的加速比以及扩展比。
所述数据整合包括:
将hadoop的分布式文件系统中小文件合成一个大文本集文件,并按照每一行放一个文件名和文件内容的形式存储;
所述待聚类文本集优先采用thucnews新浪文本聚类语料数据集,所述thucnews包括如财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏等14类新闻数据集。
由于采用所述数据整合包括:将hadoop的分布式文件系统中小文件合成一个大文本集文件,并按照每一行放一个文件名和文件内容的形式存储,由于数据整合包括文本数据由多个小文件组成,而小文件在hadoop的分布式文件系统中又非常占据内存,所以先把多个小文件合成一个大文件,按照每一行放一个文件名和文件内容的形式,实验采用thucnews新浪文本聚类语料(http://thuctc.thunlp.org/)数据集,它广泛用于文本分类实验。thucnews是根据新浪新闻rss订阅频道2005~2011年间的历史数据筛选过滤生成,包含74万篇新闻文档,一共包含:财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏等14类新闻数据集。
所述去分词和去停用词包括:
将大文本集文件使用hanlp自然语言处理包进行分词,对文本进行切分和去除一些对文本数据分析没有意义的数据;
所述去分词和去停用词的常用操作包括:
去除数字:使用正则表达式去除无意义的数字;
去除链接地址:使用正则表达式去除无意义的链接地址;
去除停用词:通过正则表达式去除如“的”、“是”、“但是”等对分析没有意义的词;
去除特殊符号:通过正则表达式去除对文本分析没有帮助标点符号、空白字符的特殊符号;
检查语料:通过正则表达式去除空白字符、数字和标点符号或与文本无关的额外内容。
由于采用所述去分词和去停用词包括将大文本集文件使用hanlp自然语言处理包进行分词,对文本进行切分和去除一些对文本数据分析没有意义的数据,由于本文首先对文本数据进行了数据预处理,共分为以下几步:1、数据整合:由于文本数据由多个小文件组成,而小文件在hadoop的分布式文件系统中又非常占据内存,所以先把多个小文件合成一个大文件,按照每一行放一个文件名和文件内容的形式。2、分词和去除停用词:整合数据之后,需要对数据进行分词和去除停用词,然后才可以计算词的权重。本文使用hanlp自然语言处理包进行分词,对文本进行切分和去除一些对文本数据分析没有意义的数据,如下所示。
(1)去除数字:数字在文本分析中一般没有意义,所以在进一步分析前需要去除它们。
(2)去除链接地址:链接地址显然也需要在进一步分析前被去掉,可以使用正则表达式达到这个目的。
(3)去除停用词:停用词是在每个句子中都很常见,但对分析没有意义的词。比如汉语中的“的”、“是”、“但是”等。语料中的这些词可以通过匹配文本处理程序包中的停用词列表来去除或者采用各个领域的停用词表,本文采用的新闻领域的停用词表。
(4)去除特殊符号:文本中的标点符号、空白字符等特殊符号对文本分析没有帮助,因此需要去除。
(5)检查语料:在进行了去除空白字符、数字和标点符号等操作后,一些形式特殊的链接地址等额外内容可能仍然未被去除,需要对处理后的语料再进行一次检查,并用正则表达式去除它们。
9、根据权利要求1所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,所述大数据文本聚类试验方法的实验环境包括:
在hadoop平台的yarn上部署spark框架,所述hadoop平台基于vmware创建了5台虚拟机,所述虚拟机上搭建的hadoop spark集群平台,所述集群平台共有5个节点,各个节点的配置相同,所述5个节点分别为一个master节点和四个worker节点,所述5个节点分别拥有两核cpu、2g内存和20g硬盘,所述节点的开发环境分别为vmware10.0.4、jdk1.8.0_131、spark2.1.1和hadoop2.7.2,其编程语言为scala2.11.8。
由于采用所述大数据文本聚类试验方法的实验环境包括:在hadoop平台的yarn上部署spark框架,所述hadoop平台基于vmware创建了5台虚拟机,所述虚拟机上搭建的hadoop spark集群平台,所述集群平台共有5个节点,各个节点的配置相同,所述5个节点分别为一个master节点和四个worker节点,所述5个节点分别拥有两核cpu、2g内存和20g硬盘,所述节点的开发环境分别为vmware10.0.4、jdk1.8.0_131、spark2.1.1和hadoop2.7.2,其编程语言为scala2.11.8,由于本实验在hadoop平台的yarn上部署spark框架,实验平台基于vmware创建了5台虚拟机,搭建的hadoop spark集群平台。一共有5个节点,各个节点的配置相同,分别是一个master节点,四个worker节点,分别拥有两核cpu、2g内存和20g硬盘。开发环境为vmware10.0.4、jdk1.8.0_131、spark2.1.1和hadoop2.7.2,编程语言为scala2.11.8。
同时,本发明还提供基于并行改进的k-means算法的大数据文本聚类试验系统,包括大数据文本聚类试验模块;
所述大数据文本聚类试验模块用于:
应用上述任一项的基于并行改进的k-means算法的大数据文本聚类试验方法。
由于采用所述大数据文本聚类试验模块用于:应用上述任一项的基于并行改进的k-means算法的大数据文本聚类试验方法,由于本实验方法在对文本聚类领域进行全面调研和对k-means算法、hadoop、spark大数据技术进行深入研究的基础上,提出了基于大数据平台并行swck-means的文本聚类算法,并通过实验验证了本文设计的文本聚类算法与传统的k-means算法在进行文本聚类的准确性和效率。
工作原理:
本专利通过对非结构化文本数据进行预处理;准确性试验:通过确定每个簇中某一特定类别的对象所占的比例评价k-means算法的聚类效果;加速比实验:通过以并行化减少时间为代价来增强算法整体性能评价k-means算法的并行算法性能;扩展性实验:通过基于分布式集群并行聚类算法执行的扩展比评价k-means算法的集群并行性能,由于准确性试验是准确率衡量的是每个簇中某一特定类别的对象所占的比例,加速比实验是通过以并行化减少时间为代价来增强算法整体性能,扩展比实验是分别在不同分布式节点下,不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,进行扩展性测试,以测试本文算法的扩展性,通过实验证明了并行改进的k-means算法分类效果比传统的k-means算法在分类准确率有明显提高,而且在处理海量数据时有较大的性能优势,因此,通过准确性试验、加速比实验、扩展性实验说明了并行改进的k-means算法适合处理频繁迭代的大规模文本数据挖掘,对现实生活中的文本数据挖掘领域具有一定的指导意义,本发明解决了对并行改进的k-means算法进行如算法准确性试验、加速比实验、扩展性实验等有效性验证是非常重要的问题,具有对并行改进的k-means算法是有效的验证的有益技术效果。
利用本发明的技术方案,或本领域的技术人员在本发明技术方案的启发下,设计出类似的技术方案,而达到上述技术效果的,均是落入本发明的保护范围。
1.基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,包括:
对非结构化文本数据进行预处理;
准确性试验:通过确定每个簇中某一特定类别的对象所占的比例评价k-means算法的聚类效果;
加速比实验:通过以并行化减少时间为代价来增强算法整体性能评价k-means算法的并行算法性能;
扩展性实验:通过基于分布式集群并行聚类算法执行的扩展比评价k-means算法的集群并行性能。
2.根据权利要求1所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,所述准确性试验包括:
分别在大数据平台上通过并行swck-means和并行k-means文本聚类算法对若干个文本数据集进行聚类分析,并通过准确率衡量函数对其聚类效果评价;
所述准确率衡量函数为:
其中:
所述p是聚类结果;
所述tp是将两篇相似文本数据集正确归入同一个簇的决策;
所述fp是将两篇不相似文档错误归入同一簇的决策。
3.根据权利要求2所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,在准确率衡量函数中,设定t1=2t2且t1=1.6,重复运行准确性试验20次,以聚类结果的平均值作为k-means算法的性能评价指标。
4.根据权利要求1所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,所述加速比实验包括:
分析并行swck-means和并行k-means文本聚类算法的加速比,并通过加速比检测函数对并行算法性能评价;
所述加速比检测函数为:
其中:
所述er算法的加速比;
所述ts是单个节点串行运行程序的时间;
所述tr是r个节点环境下并行的执行时间。
5.根据权利要求1所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,所述扩展性实验包括:
分别在不同分布式节点下,在不同规模数据集,对swck-means算法在基于hadoop的spark分布式集群下的并行聚类,通过扩展性测试函数进行扩展性测试;
所述扩展性测试函数为:
其中:
所述j是扩展性比值;
所述er是算法的加速比;
所述r是计算节点数。
6.根据权利要求1所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,所述文本数据进行预处理包括:
获取待聚类文本集;
通过数据整合、去分词和去停用词、词频统计、特征选择和构建文本表示模型或其他预处理步骤计算词的权重;
把文本数据量化为数值的形式进行聚类分析。
7.根据权利要求6所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,所述数据整合包括:
将hadoop的分布式文件系统中小文件合成一个大文本集文件,并按照每一行放一个文件名和文件内容的形式存储;
所述待聚类文本集优先采用thucnews新浪文本聚类语料数据集,所述thucnews包括如财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏等14类新闻数据集。
8.根据权利要求6所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,所述去分词和去停用词包括:
将大文本集文件使用hanlp自然语言处理包进行分词,对文本进行切分和去除一些对文本数据分析没有意义的数据;
所述去分词和去停用词的常用操作包括:
去除数字:使用正则表达式去除无意义的数字;
去除链接地址:使用正则表达式去除无意义的链接地址;
去除停用词:通过正则表达式去除如“的”、“是”、“但是”等对分析没有意义的词;
去除特殊符号:通过正则表达式去除对文本分析没有帮助标点符号、空白字符的特殊符号;
检查语料:通过正则表达式去除空白字符、数字和标点符号或与文本无关的额外内容。
9.根据权利要求1所述的基于并行改进的k-means算法的大数据文本聚类试验方法,其特征在于,所述大数据文本聚类试验方法的实验环境包括:
在hadoop平台的yarn上部署spark框架,所述hadoop平台基于vmware创建了5台虚拟机,所述虚拟机上搭建的hadoop spark集群平台,所述集群平台共有5个节点,各个节点的配置相同,所述5个节点分别为一个master节点和四个worker节点,所述5个节点分别拥有两核cpu、2g内存和20g硬盘,所述节点的开发环境分别为vmware10.0.4、jdk1.8.0_131、spark2.1.1和hadoop2.7.2,其编程语言为scala2.11.8。
10.基于并行改进的k-means算法的大数据文本聚类试验系统,其特征在于,包括大数据文本聚类试验模块;
所述大数据文本聚类试验模块用于:
应用如权利要求1~权利要求9任一项的基于并行改进的k-means算法的大数据文本聚类试验方法。
技术总结