我想确定两个新闻项目内容的相似性,类似于谷歌新闻,但我希望能够确定基本主题是什么意义,然后确定哪些主题相关。
因此,如果有一篇关于萨达姆侯赛因的文章,那么该算法可能会推荐一些有关唐纳德拉姆斯菲尔德在伊拉克的商业交易的内容。
如果你可以抛出像k-最近邻居这样的关键词以及关于它们为什么起作用的一些解释(如果可以的话),我会做其余的研究并调整算法。只是寻找一个开始的地方,因为我知道那里的人必须尝试过类似的东西。
答案 0 :(得分:5)
初步想法:
似乎主要是关于唐纳德拉姆斯菲尔德的文章会有相当多的这两个词,这就是我在文章中对它们进行加权的原因。
然而,可能有一篇文章曾多次提及沃伦·巴菲特与比尔盖茨,以及另一次提及比尔盖茨和微软多次。相关性很小。
根据您的评论:
除非萨达姆的文章也提到伊拉克(或唐纳德),否则情况并非如此。因此,如果有一篇关于萨达姆侯赛因的文章,那么该算法可能会推荐一些有关唐纳德拉姆斯菲尔德在伊拉克的商业交易的内容。
这就是我开始的地方,我已经可以看到理论上的潜在漏洞了(一篇关于比尔盖茨的文章将与一篇关于比尔克林顿的文章密切配合,如果他们的名字被大量提及的话)。这可能是所有其他词语(微软为一个比尔,希拉里为另一个)照顾。
在尝试引入单词邻近功能之前,我可能会给它一个测试运行,因为这会使它变得非常复杂(可能是不必要的)。
另一个可能的改进是保持“强硬”联想(比如总是将阿富汗这个词加入其中的奥萨马·本·拉登的文章中)。但同样,由于关于奥萨马的文章几乎肯定会提到阿富汗,因此需要额外维护,因为可能值得怀疑。
答案 1 :(得分:0)
目前我正在考虑这样的事情。
每个非噪音词都是一个维度。每篇文章都由一个向量表示,其中未出现的单词用零表示,出现的单词得到的值等于它们出现的次数除以页面上的总单词数。然后我可以在这个空间中的每个点之间取欧几里德距离来获得任何两篇文章的相似性。
下一步是确定文章的集群,然后确定每个集群的中心点。然后计算任意两个聚类之间的欧几里德距离,给出主题的相似性。
Baaah我想通过输入它解决了我自己的问题。当然只有非常高层次的方式,我相信当我接触到它时,我会发现问题......魔鬼总是在细节中。
但评论和改进仍然受到高度赞赏。