我正在计划一个应用程序,它将根据主题制作短消息/推文集群。主题的数量将受到限制,例如体育 [NBA、NFL、板球、足球]、娱乐 [电影、音乐] 等等......
我可以想到两种方法
- 要求用户像 Stackoverflow 那样标记问题。用户可以从预定义的标签列表中选择标签。然后在服务器端,我将根据标签对它们进行聚类。优点:- 简单的设计。代码复杂度较低。缺点:- 用户的选择将受到限制。集群不会是动态的。如果发生新事件,预定义的标签将错过它。
- 获取消息,删除停用词[在字典中预定义],对词干消息应用一些聚类算法以形成一个聚类,并根据其流行度显示该聚类。集群将一直显示,直到它仍然流行[许多消息/分钟]。新消息将被浏览并分配给相应的集群。优点:- 基于事件/事故的流行程度的动态聚类。缺点:- 增加复杂性。需要更多的服务器资源。
我想知道这个问题是否还有其他方法。或者有什么方法可以改进上述方法?
还建议一些好的聚类算法。我认为“K-Nearest Clustering”算法适合这种情况。