machine-learning - 新闻文章在线聚类

标签 machine-learning nlp cluster-analysis information-retrieval unsupervised-learning

是否有通用的在线算法来动态分类新闻?我有一个巨大的按主题分类的新闻数据集。我将每个主题视为一个集群。现在我需要对突发新闻进行分类。也许,我需要动态生成新主题或新集群

我使用的算法如下:

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

2) 对于每个新链接,我使用拖网提取内容,然后对其进行标记。

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

4)我在数据集中找到最近的邻居,计算与最后一个新闻向量表示和旧新闻的所有向量表示的欧几里德距离。

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

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

最佳答案

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

  1. 您可以轻松添加新单词作为新列,所有早期文档的新列都为 0。
  2. 不要应用 idf 权重,而仅将其用作动态权重。

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

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

关于machine-learning - 新闻文章在线聚类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49638869/

相关文章:

python - pandas 未在 pyCharm 中显示输出,但在 google colab 中显示

amazon-web-services - Bitfusion Ubuntu 14 TensorFlow AMI 因 OOM 错误而失败

python - scikit-learn Python 中的 CountVectorizer() 在提供大数据集时会出现内存错误。使用较小数据集的相同代码工作正常,我错过了什么?

nlp - 预训练的嵌入矩阵是否具有<EOOS>,word vector?

nlp - 学习自然语言处理的先决条件是什么?

nlp - 分类情绪数据的来源?

python - 如何使用相关系数矩阵进行聚类?

python - python中的经纬度聚类

r - 为什么聚类系数与我的程序和 igraph R 的库不同?

python - OpenCV CascadeClassifier Python 内存不足