php - 如何实现推荐系统?

标签 php python mysql recommendation-engine

我有集体智慧这本书,但我不确定它如何在实际中应用。

假设我有一个带有 mySQL 数据库的 PHP 网站。用户可以在数据库中插入带有标题和内容的文章。为了简单起见,我们只是比较标题。

  • 如何制作咖啡
  • 关于咖啡的 15 件事。
  • 大问题。
  • 如何削铅笔?
  • 男人被球击中

我们打开“如何制作咖啡?”文章,因为第二个和第四个标题的词有相似性,所以它们将显示在相关文章部分。

如何使用 PHP 和 mySQL 实现它?如果我必须使用 Python 也没关系。提前致谢。

最佳答案

在每个产品旁边存储一组关键字,除了一组 stop words 之外,它们基本上应该是标题中的所有内容.当显示一个标题时,您会发现任何其他具有共同关键字的产品(具有一个或多个共同关键字的优先级)。

您可以根据每个关键字的稀缺性为每个关键字分配一个分数来进一步增强这一点(稀缺的词越多,得分越高,例如,“PHP”上的匹配将比匹配更相关在“编程”上),或者通过跟踪用户在一组产品之间手动导航的次数。

无论如何,您最好从简化开始,然后在继续进行时对其进行增强。根据您的数据库的大小,更高级的技术可能不会那么富有成效。

关于php - 如何实现推荐系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6302184/

相关文章:

python - 如何修复 Tkinter Python 中的 "TCL error"?使用 Jupyter Notebook 进行工作

python - TypeError : the JSON object must be str, 不是 'DetailedResponse'

php - mysql下发一个 'Can' t初始化字符集utf-8(路径:/usr/share/mysql/charsets/)' error,那里没有utf8.xml文件

php - 插入数据库时​​如何获取ID

javascript - 隐藏div(显示:none) and form inputs play role with PHP?

php - CKEditor插入特殊字符

python - os.rename删除文件python 3

java - Hibernate 应该只更新数据库中的某些字段

PHP-MYSQL : update mysql from xml file

php - 引用:什么是变量范围,哪些变量可从何处访问,什么是“ undefined variable ”错误?