- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微博聚类和分类算法
微博聚类与分类算法:
步骤如下
1、中文分词与预处理2、特征选择3、文本特征向量表示4、文本聚类5、文本分类
1-2:如果微博已经提取过关键字则直接进入下一步
3、文本特征向量表示:
将微博表示成关键字的集合使用向量空间模型。
常用的文本表示模型是向量空间模型(VSM)。空间向量模型采用了独立性假设,将文本看成是相互独立的词条组(Tl,T2,T3,.…Tn)构成,而(wl,w2,w3,.…wn)为对应每个词条的权值。PS:如果词条维度太多,还需要考虑降维即特征的选择。
V(d)=(tl,wl(d);t2,w2(d);…;tn,wn(d))
其中ti为词条项,wi(d)为毛在d中的权值,n是特征项的维数。这样每个文本就被映射到多维空间中的一个点。权值一般采用布尔型或者词频型。
布尔型考察特征词是否在文本中出现,如果出现则权值为1,反之为0。
词频型考察特征词在文本中出现的次数,权值则为特征词出现的次数。
通过文本特征向量表示每条微博现在映射为多维空间中的一个点
V1(w1l,w12,w13,.…w1n)
V2(w2l,w22,w23,.…w2n)
4、文本聚类
4.1、计算点的距离。(即向量V1和V2的相似度计算,主要通过向量运算)
Cos cos(90)=0
4.2 聚类算法
4.2.1、最简单的k-means 算法
k-means 算法接受输入量 k ;然后将n个数据对象划分为 k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小。聚类相似度是利用各聚类中对象的均值所获得一个“中心对象”(引力中心)来进行计算的。
k-means 算法的工作过程说明如下:首先从n个微博向量任意选择 k 个向量作为初始聚类中心;而对于所剩下其它对象,则根据它们与这些聚类中心的相似度(距离),分别将它们分配给与其最相似的(聚类中心所代表的)聚类;然后再计算每个所获新聚类的聚类中心(该聚类中所有对象的均值);不断重复这一过程直到标准测度函数开始收敛为止。一般都采用均方差作为标准测度函数. k个聚类具有以下特点:各聚类本身尽可能的紧凑,而各聚类之间尽可能的分开。
具体如下:
输入:k, data[n];
(1) 选择k个初始中心点,例如v1,v2….vk
(2) 对于v1,v2….vn, 分别与v1,v2….vn-1,比较,假定与vi差值最少,就标记为i;
(3) 对于所有标记为i点,重新计算vi=/标记为i的个数;
(4) 重复(2)(3),直到所有vi值的变化小于给定阈值。
例子:
由于算法比较直观,没有什么可以过多讲解的。下面,我们来看看k-means算法一个有趣的应用示例:
?????采集的亚洲15只球队在2005年-2010年间大型杯赛的战绩(由于澳大利亚是后来加入亚足联的,所以这里没有收录)。
????? 其中包括两次世界杯和一次亚洲杯。提前对数据做了如下预处理:对于世界杯,进入决赛圈则取其最终排名,没有进入决赛圈的,打入预选赛十强赛赋予40,预选赛小组未出线的赋予50。对于亚洲杯,前四名取其排名,八强赋予5,十六强赋予9,预选赛没出现的赋予17。这样做是为了使得所有数据变为标量,便于后续聚类。
????? 下面先对数据进行[0,1]规格化,下面是规格化后的数据:
????? 接着用k-means算法进行聚类。设k=3,即将这15支球队分成三个集团。
????? 现抽取日本、巴林和泰国的值作为三个簇的种子,即初始化三个簇的中心为A:{0.3, 0, 0.19},B:{0.7, 0.76, 0.5}和C:{1, 1, 0.5}。下面,计算所有球队分别对三个中心点的相异度,这里以欧氏距离度量。下面是用程序求取的结果:
????? 从做到右依次表示各支球队到当前中心点的欧氏距离,将每支球队分到最近的簇,可对各支球队做如下聚类:
????? 中国C,日本A,韩国A,伊朗A,沙特A,伊拉克C,卡塔尔C,阿联酋C,乌兹别克斯坦B,泰国C,越南C,阿曼C,巴林B,朝鲜B,印尼C。
????? 第一次聚类结果:
????? A:日本,韩国,伊朗,沙特;
????? B:乌兹别克斯坦,巴林,朝鲜;
????? C:中国,伊拉克,卡塔尔,阿联酋,泰国,越南,阿曼,印尼。
????? 下面根据第一次聚类结果,调整各个簇的中心点。
????? A簇的新中心点为:{(0.3+0+0.24+0.3)/4=0.21, (0+0.15+0.76+0.76)/4=0.4175, (0.19+0.13+0.25+0.06)/4=0.1575} = {0.21, 0.4175, 0.1575}
????? 用同样的方法计算得到B和C簇的新中心点分别为{0.7, 0.7333, 0.4167},{1, 0.94, 0.40625}
文档评论(0)