一种基于K-Means算法和共现词的文本数据快速处理方法技术

技术编号:19343852 阅读:29 留言:0更新日期:2018-11-07 14:31
一种基于K‑Means算法和共现词的文本数据快速处理方法,其特征是基于共现词的原理计算词向量之间的相似性,并根据相似性阈值将数据划分为K+x个簇,再结合密度及聚类准则函数的思想,选取出K+x个初始聚类中心,最后在这K+x个初始聚类中心上进行K‑Means聚类算法。改进后的K‑Means聚类算法能有效减少聚类过程的迭代次数且聚类结果更准确更稳定。

A fast text data processing method based on K-Means algorithm and co occurrence word

A fast text data processing method based on K_Means algorithm and co-occurrence words is presented. Its feature is to calculate the similarity between word vectors based on the principle of co-occurrence words, and divide the data into K+x clusters according to similarity threshold. Combining the idea of density and clustering criterion function, K+x initial clustering centers are selected. Finally, K+x initial clustering centers are located in this K+x cluster. K clustering algorithm is applied to the initial clustering centers. The algorithm is based on the Means clustering algorithm. The improved K_Means clustering algorithm can effectively reduce the number of iterations in the clustering process and the clustering results are more accurate and stable.

【技术实现步骤摘要】
一种基于K-Means算法和共现词的文本数据快速处理方法
本专利技术涉及一种数据处理技术,尤其是一种文本灵气的处理方法,具体地说是一种基于K-Means算法和共现词的文本数据快速处理方法。
技术介绍
聚类(Clustering)是不需要人为监督的学习方式。经过聚类以后得到的数据集对象被称作簇。聚类的目标是要让属于同一个簇内的样本间的差别尽可能小,而不属于同一个簇的样本间的差别尽可能大。聚类不需要人为给予标记,它可以由聚类的算法进行自动运算。因此,在很多应用领域都用到了聚类分析,这些领域包括:统计学、模式识别、信息检索、市场研究调查以及Web文档分类等,随着聚类分析被越来越多的领域所用,它受到越来越多人的重视。国际权威学术会议IEEEInternationalConferenceonDataMining(ICDM)于2006年12月评选出了数据处理领域的十大经典算法,K-means聚类算法是其中之一。Means算法是基于原型的聚类算法,在基于原型的聚类中,簇是点的集合,其中每个点到定义该簇的原型的距离相似度比到其它簇的原型的距离相似度更近大,对于具有连续属性的数据,簇的原型通常是质心,即簇中所有点的平均值。K-Means最初由J.B.MaeQueen于1976年提出的。由于它易于理解、效率较高,在科学研究以及工业界都得到了广泛的应用。K-Means算法的主要步骤为:Input:数据集合D(包含N个数据对象)以及聚类数K。Output:满足聚类准则函数收敛或聚类中心不变的K个簇。1.从数据集合D中随机挑选K个数据对象作为初始聚类中心Cj,j=1,2,3,...,k;2.在第K此迭代中,样本集通过如下的方法进行分类:对于所有的i=1,2,3,...,k,i≠j,若||Z-Zj(k)||<||Z-Zi(k)||,则Z∈Sj(k)。3.求出步骤2中得到的Sj(k)新类的平均值为Zj(k+1)。令最小,j=1,2,3,...,k,则其中,Nj为Sj(k)中的样本点数。4.对于所有的j=1,2,3,...,k,若Zj(k+1)=Zj(k),则终止迭代,否则继续重复步骤2。然而,人为设定的聚类数K会导致聚类结果的不同,聚类结果对聚类数K的依赖导致聚类结果的不稳定性且随机选取的K个初始聚类中心会使聚类陷入局部最优解,而且可能得不到最优的聚类结果,而本专利技术能够较好地解决上面的这些问题。
技术实现思路
本专利技术的目的是针对现有的文本数据处理过程中人为设定的聚类数K会导致聚类结果的不同,聚类结果对聚类数K的依赖导致聚类结果的不稳定性且随机选取的K个初始聚类中心会使聚类陷入局部最优解,而且可能得不到最优的聚类结果的问题,提供一种基于K-Means算法和共现词的文本数据快速处理方法,该方法较有效地避免人为设定聚类数K以及随机选取初始聚类中心的问题,改进后的K-Means算法能有效地减少聚类过程的迭代次数以及结果对参数的依赖且聚类结果更准确更稳定。本专利技术的技术方案是:一种基于K-Means算法和共现词的文本数据快速处理方法。该方法基于共现词的原理计算词向量之间的相似性,并根据相似性阈值将数据划分为K+x个簇,再结合密度及聚类准则函数的思想,选取出K+x个初始聚类中心,最后在这K+x个初始聚类中心上进行K-Means聚类算法,改进后的K-Means算法减少了结果对参数的依赖且聚类结果更准确更稳定。一种基于K-Means算法和共现词的文本数据快速处理方法,包括以下步骤:步骤1:取一部分数据,让它们互相做相似性比较,得出相似度的阈值判定。步骤2:求出每个数据对象与聚类中心的相似度并将数据集合划为K+x类。计算出用户和类簇的相似度可以用矩阵来表示,矩阵的行代表类簇的个数,矩阵的列代表用户的个数。步骤3:计算相似度矩阵中每个数据对象的平均距离。步骤4:计算相似度矩阵中每个数据对象的分布密度,并将得到的分布密度值按从大到小的顺序排序,并选出最大分布密度值的簇bi。步骤5:计算其余数据点的密度值与最大分布密度值簇bi的distanceout(k)(簇间距离)并按从大到小的顺序排序,选取由大到小的K+x-1个密度簇。步骤6:在选取出K+x个初始聚类中心后,从数据集中删除已经经过划分过的数据点。步骤7:取K+x个簇集合中每个簇中数据对象的均值,计算余下的数据对象与这K+x个簇均值的距离,根据距离将余下的对象划分到对应的类簇中。步骤8:在选取出的K+x个初始聚类中心上使用K-Means聚类算法进行聚类。+所述的数据的相似度阈值的计算公式为:所述的用户和类簇的相似度矩阵为:所述的相似度矩阵中每个数据对象的平均距离的计算公式为:所述的计算相似度矩阵中每个数据对象的分布密度的计算公式为:所述的计算余下的数据对象的密度值与最大分布密度值簇之间簇间距离的公式为:所述的计算余下的数据对象与这K+x个簇均值的距离的公式为:本专利技术的有益效果是:本专利技术提出的解决传统K-Means聚类算法中存在的不足,提供一种解决传统K-Means聚类算法中人为设定聚类数K以及随机选取初始聚类中心问题的方法,该方法较有效地避免人为设定聚类数K以及随机选取初始聚类中心的问题,改进后的K-Means算法能有效地减少聚类过程的迭代次数以及结果对参数的依赖且聚类结果更准确更稳定。附图说明图1是本专利技术的流程图。图2是测试随机选取初始聚类中心问题所用的Iris和Wine数据集。图3是本专利技术方法和另两种方法测试随机选取初始聚类中心问题在Iris试数据集下的聚类结果对比图。图4是本专利技术方法和另两种方法测试随机选取初始聚类中心问题在Wine试数据集下的聚类结果对比图。图5是用户的搜索记录。图6和图7是本专利技术方法和原始K-Means聚类算法对文本的聚类结果对比图。图8是本专利技术方法和原始K-Means聚类算法对文本的聚类结果准确率。具体实施方式下面结合附图和具体实施例对本专利技术作进一步的说明明,应理解这些实例仅用于说明本专利技术而不用于限制本专利技术的范围,在阅读了本专利技术之后,本领域技术人员对本专利技术的各种等价形式的修改均落于本申请所附权利要求所限定的范围。图1所示为本专利技术的流程图,从流程图中可以看出,本专利技术分为8个步骤,分别是:步骤1:取一部分数据,让它们互相做相似性比较,得出相似度的阈值判定,计算相似度的阈值是用来对聚类数K的划分进行铺垫,将相似度大于某个阈值的记录划分到同一类类簇中。相似度阈值的计算公式为:其中,cos(A,B)>0.03表示输入句子A和B之间共现的词汇数目,考虑到词汇“连衣裙”和“裙子”虽不是共现词,但它们属于相似物品,故采用该公式。A和B代表搜索记录,需要利用记录的词向量来进行计算。N是语料库总数,dfω是出现了共现词的语句数目,越大,表明该词汇的重要程度越大,对相似度计算的贡献也就越大。步骤2:从数据集合D中随机选择K个数据对象作为初始聚类中心并保证K个数据对象不重复。(通过基于共现词的相似度计算,2个记录的相似度大于等于相似阈值,则认为这2个记录为一类,如果小于相似阈值,则新增一类,从而更新聚类中心)求出每个数据对象与聚类中心的相似度并将数据集合划为K+x类,计算出用户和类簇的相似度可以用矩阵来表示。用户和类簇的相似度矩阵为:其中,矩阵的行代表类簇的个数,矩阵的列代表用户的个数。步骤3本文档来自技高网
...

【技术保护点】
1.一种基于K‑Means算法和共现词的文本数据快速处理方法,其特征在于:它采用基于共现词的原理计算词向量之间的相似性,并根据相似性阈值将数据划分为K+x个簇,结合密度及聚类准则函数的思想,选取出K+x个初始聚类中心,最后在这K+x个初始聚类中心上进行K‑Means聚类算法,改进后的K‑Means聚类算法能有效减少聚类过程的迭代次数且聚类结果更准确更稳定。

【技术特征摘要】
1.一种基于K-Means算法和共现词的文本数据快速处理方法,其特征在于:它采用基于共现词的原理计算词向量之间的相似性,并根据相似性阈值将数据划分为K+x个簇,结合密度及聚类准则函数的思想,选取出K+x个初始聚类中心,最后在这K+x个初始聚类中心上进行K-Means聚类算法,改进后的K-Means聚类算法能有效减少聚类过程的迭代次数且聚类结果更准确更稳定。2.根据权利要法度1所述的方法,其特征是它包括以下步骤:步骤1:取一部分数据,让它们互相做相似性比较,得出相似度的阈值判定;步骤2:求出每个数据对象与聚类中心的相似度并将数据集合划为K+x类,计算出用户和类簇的相似度并用矩阵表示,矩阵的行代表类簇的个数,矩阵的列代表用户的个数;步骤3:计算相似度矩阵中每个数据对象的平均距离;以便为后续计算数据集合中数据对象的分布密度做铺垫;步骤4:计算相似度矩阵中每个数据对象的分布密度,并将得到的分布密度值按从大到小的顺序排序选出最大分布密度值的簇bi;密度值越大的数据对象说明该数据对象在以dis为半径的空间范围内分布的点越多,说明该数据对象处于高密度区域,以这个数据对象作为初始聚类中心,以利于聚类函数的收敛;步骤5:计算其余数据点的密度值与最大分布密度值簇bi的distanceout(k)(簇间距离)并按从大到小的顺序排序,选取由大到小的K+x-1个密度簇;簇间距离的大小说明了两个簇...

【专利技术属性】
技术研发人员:薛善良肖雪蒋丽李梦颖
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

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

1