【发布时间】:2011-10-22 05:04:28
【问题描述】:
我有一个爬虫程序,它每天存储来自 7 个不同新闻机构的体育数据。它每天存储大约 1200 条体育新闻。 我想将最近两天的新闻分类为子类别。因此,每两天我就有大约 2400 条正好是这些天的新闻,而且他们的许多话题都在谈论同一个事件。 例如:
70 条新闻正在谈论 Brad Keselowski 的 500 英里比赛。
120 条新闻正在谈论开始游泳的美国游泳运动员 Nyad。
28 位新人正在谈论曼联和曼城之间的比赛。
。 . .
换句话说,我想做类似Google News的东西。
问题是这种情况不是分类问题,因为我没有特殊的类。例如,我的课不是游泳、高尔夫、足球等。我的课是这两年发生的每一个领域的特殊事件。所以不能使用朴素贝叶斯等分类算法。
另一方面,我的问题也不能用聚类算法解决。因为我不想强迫他们放入 n 个集群。也许其中一个新闻没有任何类似的新闻,或者可能在一包两天内,有12个不同的故事,但在另外两天,有30个不同的问题。所以我不能使用诸如“单链接(最大相似度)”、“完整链接(最小相似度)”、“最大加权匹配”或“组平均值(平均内部相似度)”等聚类算法。
我自己有一些想法来做这件事,例如,每两个有 10 个常用词的新闻应该在同一个类中。但是如果我们不考虑一些参数,比如文档的长度、常用词和稀有词的影响以及其他一些东西,这将无法正常工作。
我已阅读this paper,但这不是我的答案。
有没有已知的算法可以解决这个问题?
【问题讨论】:
-
我想你肯定在这里寻找聚类算法。存在的聚类算法并不总是产生一些固定数量的聚类,而是试图找到看起来相似的元素组。不要认为这是一种可能性;大量的人工智能研究都在这方面进行!
标签: algorithm artificial-intelligence cluster-analysis classification similarity