Jac*_*ain 18 cluster-analysis machine-learning data-mining text-mining
我正在尝试聚集Twitter流.我想把每条推文都放到一个谈论相同主题的集群中.我尝试使用具有tf/idf和余弦相似性的在线聚类算法对流进行聚类,但我发现结果非常糟糕.
使用tf/idf的主要缺点是它聚类关键字相似的文档,因此只能识别几乎相同的文档.例如,考虑以下句子:
1-网站Stackoverflow是一个不错的地方.2- Stackoverflow是一个网站.
由于它们共享许多关键字,因此预先使用两个句子可能会与合理的阈值聚集在一起.但现在考虑以下两句话:
1-网站Stackoverflow是一个不错的地方.2-我定期访问Stackoverflow.
现在通过使用tf/idf,聚类算法将会失败,因为它们只共享一个关键字,即使它们都讨论相同的主题.
我的问题:是否有更好的技术来聚类文件?
小智 7
正如其他评论和答案中所述.使用LDA可以提供良好的tweet->主题权重.
如果这些权重不足以满足您的需求,您可以使用聚类算法来查看这些主题分布的聚类.
虽然它是训练集依赖LDA可以很容易地将stackoverflow,堆栈溢出和堆栈溢出的推文捆绑到同一主题中.然而,"我的堆栈即将溢出"可能会转向另一个关于盒子的话题.
另一个例子:带有Apple这个词的推文可以涉及许多不同的主题(公司,水果,纽约和其他).LDA会查看推文中的其他字词以确定适用的主题.
长答案:
TfxIdf是目前最著名的搜索方法之一。您需要的是自然语言处理 (NLP) 的一些预处理。有很多资源可以帮助您学习英语(例如 python 中的 lib“nltk”)。
在建立索引之前,您必须对查询(问题)和文档使用 NLP 分析。
要点是:虽然 tfxidf (或 lucene 中的 tfxidf^2 )很好,但您应该在带有元语言信息的带注释资源上使用它。这可能很困难,需要对核心搜索引擎、语法分析(句法)和文档领域有广泛的了解。
简短回答:更好的技术是使用 TFxIDF 和轻语法 NLP 注释,并重写查询和索引。
| 归档时间: |
|
| 查看次数: |
10477 次 |
| 最近记录: |