代码之家  ›  专栏  ›  技术社区  ›  Jason Baker

推荐系统是如何工作的?

  •  27
  • Jason Baker  · 技术社区  · 15 年前

    我一直很好奇这些系统是如何工作的。例如,netflix或Amazon如何根据过去的购买情况和/或评级确定要提出的建议?有什么算法可以阅读吗?

    所以这里没有误解,我没有实际的理由问。我只是出于好奇才这么问的。

    (另外,如果在这个话题上存在问题,请给我指出。“推荐系统”是一个很难搜索的术语。)

    9 回复  |  直到 11 年前
        1
  •  28
  •   Kenan Banks    15 年前

    最基本的是,大多数推荐系统都是通过以下两种方式之一工作的。

    基于用户的建议:
    如果用户A喜欢项目1、2、3、4和5,

    那么用户B很可能也喜欢第5项

    基于项目的建议:
    如果购买项目1的用户也不成比例地购买项目2
    和用户购买的物品1
    那么用户A可能会对项目2感兴趣

    下面是你应该知道的算法的大脑垃圾堆:
    -集合相似性(Jaccard索引和Tanimoto系数)
    -n维欧氏距离
    -k-均值算法
    -支持向量机

        2
  •  25
  •   cletus    15 年前

    Netflix introduced a $1 million prize for improving their recommendations by 10% .

    几年后,人们越来越接近了(我想他们现在上涨了9%左右),但这很难,原因很多。可能Netflix奖最大的因素或最大的初始改进是使用了一种叫做 singular value decomposition .

    我强烈推荐你阅读 If You Liked This, You’re Sure to Love That 深入讨论Netflix大奖和推荐系统。

    基本上,Amazon等的原理是一样的:他们寻找模式。如果有人购买了《星球大战》三部曲,那么他们喜欢吸血鬼杀手巴菲的可能性比普通顾客(纯粹虚构的例子)更大。

        3
  •  19
  •   duffymo    15 年前

    奥莱利的书 "Programming Collective Intelligence" 有一个很好的章节展示了它是如何工作的。非常可读。

    代码示例都是用Python编写的,但这不是什么大问题。

        4
  •  8
  •   Corbin March    15 年前

    GroupLens Research 在明尼苏达大学的研究推荐系统中,慷慨地分享它们 research datasets .

    他们的研究每年都会扩大一点,现在他们考虑了一些具体问题,如在线社区、社交协作过滤以及呈现复杂数据时的UI挑战。

        5
  •  4
  •   TheTXI    15 年前

    Netflix推荐系统的算法实际上是一项竞争性的工作,程序员继续竞争以提高系统的准确性。

    但从最基本的角度来说,推荐系统将检查与另一用户的人口统计/兴趣信息密切匹配的用户的选择。

    因此,如果你是来自纽约市的25岁白人男性,推荐系统可能会尝试为你带来美国东北部21-30岁的其他白人男性购买的产品。

    编辑:还应该注意的是,您拥有的用户信息越多,您就越能够改进算法,以匹配其他人正在做的事情和相关用户可能感兴趣的事情。

        6
  •  4
  •   netflux    15 年前

    这是一个分类问题,即将用户分类为可能对某些项目感兴趣的用户组。

    一旦被划分为这样一个组,就很容易检查该组中其他用户的购买/喜好并推荐他们。

    因此,贝叶斯分类和神经网络(多层感知器、径向基函数、支持向量机)值得一读。

        7
  •  3
  •   Kurt Schelfthout    15 年前

    clusters 并向同一集群中的其他用户推荐产品。

        8
  •  3
  •   josliber Martin Ballet    6 年前

    推荐系统主要有两种类型,它们的工作方式不同:

    1.基于内容 . 这些系统根据特征信息提出建议。这是有关项目(关键字、类别等)和用户(首选项、配置文件等)的信息。

    这些系统基于用户项交互。这是诸如评级、购买数量、喜好等信息。

    This

        9
  •  0
  •   SujitS    10 年前

    当然,有些算法会向您推荐首选项。为此,已经实施了不同的数据挖掘技术。如果您想了解推荐系统的更多基本信息,请访问 this 博客这里介绍了推荐系统的基本知识。