在我正在创建的应用程序中,我想添加将新闻故事组合在一起的功能.我想将来自不同来源的同一主题的新闻报道分组到同一组中.例如,来自CNN和MSNBC的关于XYZ的文章将在同一组中.我猜它是某种模糊的逻辑比较.从技术角度来看,我该如何做到这一点?我有什么选择?我们还没有启动应用程序,因此我们不限制我们可以使用的技术.
在此先感谢您的帮助!
从机器学习的角度来看,这个问题分解为几个子问题.
首先,您将要了解要基于的新闻报道的哪些属性.一种常见的技巧是使用"单词包":只是出现在故事正文或标题中的单词列表.您可以执行一些其他处理,例如删除不提供任何含义的常用英语" 停用词 ",例如"the","because".你甚至可以做搬运工词干与复数词与词结尾,如" -离子"消除冗余.该单词列表是每个文档的特征向量,将用于度量相似性.您可能必须执行一些预处理以删除html标记.
其次,您必须定义相似性度量:类似的故事在相似性方面得分高.与字方针袋一起去,两个故事都是相似的,如果他们对他们有类似的话(我含糊其辞在这里,因为有吨的东西,你可以试试,你必须看看哪个效果最好).
最后,您可以使用经典的聚类算法,例如k-means聚类,它根据相似性度量将故事组合在一起.
总结:将新闻故事转换为特征向量 - >基于此特征向量定义相似性度量 - >无监督聚类.
看看谷歌学者,在最近的文献中可能有一些关于这一特定主题的论文.我刚才讨论的很多这些东西都是在大多数主要语言的自然语言处理和机器学习模块中实现的.