3

如何编写代码以找到与用户当前正在阅读的文章相关(相似)的文章?

例如,假设我有文章:

Python programming tips
Python programming for newbies
Programming in Python, ActionScript and Flash
Programming in the Jungle
Tarzan saves newbie Judy from using Fortran programming language

(我现在想出了这些标题。)

我如何查询数据库并发现它们都是相关的?

我会很感激任何建议。

谢谢,博达赛多。

4

5 回答 5

2

这本书包含一些提示;更具体地说,这听起来像是一个协同过滤问题。

有几种方法可以解决这个问题。一种是标记,依靠读者和贡献者标记这些文章,您可以将关键字与标签匹配,例如。

另一种方法是结合搜索和分析,即谷歌方法。您显示搜索查询的结果,用户点击它们,加班那些点击其中一些的人也点击了相关的,您可以在它们之间建立关系。

于 2010-03-02T13:10:08.793 回答
1

您使用的是哪个数据库?“全文搜索”可能会对您有所帮助,而 MySQL 只是内置了它。谷歌一下。

于 2010-03-02T13:09:04.253 回答
1

我建议你看看余弦相似度tf-idf

余弦相似度是一种用于测量两个文档(但不仅仅是)之间相似度的简单方法,它不能将使用 tf-idf 加权的单词向量作为输入。
基本上,如果一个词在当前文档中频繁出现(词频 - tf)但在其他文档中很少出现(逆文档频率 - idf),则 tf-idf 权重较高。

于 2010-03-02T13:09:52.573 回答
0

如果您的案例确实是一个内容驱动的网站,那么可能要求编辑为每篇文章添加标签是最好的方法。这就是它在整个网络上完成的方式(例如 Wordpress)

此外,还有一些方法可以通过语言处理来做到这一点,但是由于您使用 Python,我将把它留给 Python 专家...

于 2010-03-02T13:10:15.163 回答
0

一个建议是为您的所有文章添加标签。相关文章是具有相似标签的文章。

于 2010-03-02T13:10:32.410 回答