EM-Tree + Paragraph2vector 实现大规模文档聚类
来源:互联网 发布:死神虚圈篇配乐知乎 编辑:程序博客网 时间:2024/06/04 05:50
主要分享下《Parallel Streaming Signature EM-tree: A Clustering Algorithm for Web Scale Applications》这篇文章。
15年末的时候,组内同事分享过这个算法,当时吸引大家眼球的是文章号称可以对亿级别的文档进行单机并行聚类,速度快并scalable,支持单机并行和分布式。当时我正好在做事件聚类相关的项目,十分需要一种能快速聚类海量文本的一种聚类工具。所以,后面就重点研究下这个算法,并做了点改进,让这个算法和Paragraph2vector进行结合起来,优势互补。现在重点介绍下这个算法。
1:内部质量评价
样本无类别标记。根据类内相似度和类间距离。
其中,k为最终的聚类数,表示聚类簇,表示聚类v的质心,d 是距离函数。(1)表示聚类的类簇的内差和,(2)表示整个聚类的类簇间的距离和,(3)表示聚类的总体质量:类簇间的距离和与类内距离的之比来衡量。总的来说:对于相同数据集,类簇间的距离越大,类内的距离越小,聚类质量相对越好,也就是总体质量值越大。
2:外部质量评价
样本有类别标记。当样本本身含有类别标记的时候,我们就可以根据类别标记来衡量聚类后的结果准确性相关指标。指标含有(1)簇纯度pure;(2)F1-measure等。
2.1 类簇纯度Purity
对于聚类形成后的任意类别r,聚类纯度定义为:
(4)
整个聚类结果的纯度定义为:
(5)
这里,是属于预定类i且被分配到第r个聚类的文档个数,为第r个聚类类别中的文档个数。
同一数据集,Purity值越大,聚类效果相对越好。
2.2 类簇F1-measure
类簇F1-measure的定义结合准确率和召回率的。对于聚类后聚类类别r和原来预定的类别i,
(6)
(7)
F1-measure(i,r) = 2 * Recall(i,r) * Precision(i,r)/ (Recall(i,r) + Precision(i,r)) (8)
其中,n(i,r) 表示聚类r中包含预定义类别i的文档个数,表示聚类r的文档个数,表示预定义类的文档个数。
最终聚类结果的评价函数:
(9)
同一数据集,F1值越大,聚类效果相对越好。
参考文献
De Vries C M, De Vine L, Geva S, et al. Parallel Streaming Signature EM-tree: A Clustering Algorithm for Web Scale Applications[J]. Computer Science, 2015:216-226.
- EM-Tree + Paragraph2vector 实现大规模文档聚类
- EM聚类算法matlab实现
- 【hadoop】大规模中文网站聚类 kmeans 的 mapreduce 实现
- EM实现
- java类实现大规模数据的分页
- word2vector & paragraph2vector 技术分享
- 【hadoop】大规模中文网站聚类kmeans的mapreduce实现(上)
- 【hadoop】大规模中文网站聚类kmeans的mapreduce实现(下)
- 【hadoop】大规模中文网站聚类kmeans的mapreduce实现(上)
- 【hadoop】大规模中文网站聚类kmeans的mapreduce实现(上)
- 【hadoop】大规模中文网站聚类kmeans的mapreduce实现(下)
- EM聚类算法简介
- EM聚类算法(一)
- EM聚类算法(二)
- 聚类和EM算法
- EM简单实现
- 基于EM算法的文本聚类
- GMM的EM算法实现
- leetcode413 Arithmetic Slices
- 第八届蓝桥杯第八题包子凑数
- es6学习-let和const命令
- 【LeetCode笔记】判断一棵树是否为镜像
- 文章标题
- EM-Tree + Paragraph2vector 实现大规模文档聚类
- 把获取的维基百科主页词条及链接存入mysql数据库
- C基础之CONST
- EasyUI之选项卡Tabs
- Metasploit中配置beef
- 利用栈实现队列的操作
- java获取项目的绝对路径
- Search a 2D Matrix II
- 数据库事务隔离级别