寻求合适的聚类算法

Seeking appropriate clustering algorithm

我正在分析 GDELT 数据集,我想确定专题集群。大大简化,GDELT 解析新闻文章并提取事件。作为其中的一部分,它识别,比方说,250 "themes" 并标记每个 "event" 它在一列中记录文章中标识的所有主题的分号分隔列表。

在序言中,我提取了 2016 年大约 350,000 个以分号分隔的主题列表,例如以下两个:

如您所见,这两个列表都包含 "TAX_FNACT" 和 "CRISISLEX_CRISISLEXREC"。因此,"TAX_FNACT;CRISISLEX_CRISISLEXREC" 是一个包含 2 个项目的集群。对 GDELT 的更好理解告诉我们它不是一个特别有用的集群,但它仍然是一个集群。

理想情况下,我想做的是编写一个列表字典。字典的键是集群中的项目数,值是所有主题集群的元组列表,其中 "key" 个元素与该集群出现的次数配对。这个理想的算法将 运行 直到它识别出最大的集群。

是否已经存在我可以用于此目的的算法?如果存在,它的名称是什么?如果我不得不猜测,我会想象我们已经创建了一些东西来提取 x-item 集群,然后我会从 2->?直到我没有得到任何结果。

聚类在这里效果不佳。

你描述的很像频繁的项目集挖掘。任务是在列表中找到 'items' 的频繁组合。