在线聚集新闻文章

Fed*_*cia 5 nlp information-retrieval cluster-analysis machine-learning unsupervised-learning

是否有常用的在线算法对新闻进行动态分类?我有按主题分类的大量新闻数据集。我认为每个主题都是一个集群。现在,我需要对突发新闻进行分类。可能,我将需要动态生成新主题或新集群

我正在使用的算法如下:

1)我浏览了新闻站点的一组提要,并且识别了新闻链接。

2)对于每个新链接,我使用Dragnet提取内容,然后将其标记化。

3)我使用sklearn的TfidfVectorizer找到了所有旧新闻和最后一个新闻的向量表示。

4)我发现我的数据集中距离最近新闻向量表示和旧新闻的所有向量表示的欧几里德距离的最近邻居。

5)如果该距离小于阈值,则将其放入邻居所属的群集中。否则,我将使用突发新闻创建一个新的集群

每次收到新闻时,我都会使用TfidfVectorizer重新拟合所有数据,因为可以建立新的维度。我迫不及待地想每天重新安装一次,因为我需要检测可能与未知主题相关的突发事件。有没有一种比我使用的方法更有效的通用方法?

Ano*_*sse 3

如果您自己构建矢量化,添加新数据会容易得多。

  1. 您可以简单地添加新单词作为新列,对于所有早期文档,这些新列只是 0。
  2. 不要应用 idf 权重,而仅将它们用作动态权重。

对此有众所周知且非常快速的实现。

例如 Apache Lucene。它可以在线添加新文档,并使用 tfidf 的变体进行搜索。