代码之家  ›  专栏  ›  技术社区  ›  user3198603

基于内容的推荐与协作推荐?

  •  0
  • user3198603  · 技术社区  · 5 年前

    基于内容的筛选(CBF): 它基于产品/项目属性工作。假设用户1在过去已经订购(或喜欢)了一些商品。 现在我们需要确定这些订购项目的相关功能,并将它们与其他项目进行比较,以推荐任何新的项目。 基于特征集的相似项查找模型有随机森林模型和决策树模型

    协同过滤(CLF): 它使用用户行为。假设用户1在过去已经订购(或喜欢)了一些商品。现在我们找到了类似的用户。用户 过去订购/喜欢相同物品的人可以被视为相似的用户。现在我们可以根据分数推荐一些类似用户订购的商品。 寻找相似用户的著名模型之一是KNN

    问题: 假设我必须找到类似的用户,不是基于他们在CBF中的行为(如我所提到的),而是基于一些用户配置文件特性,如 国籍/身高/体重/语言/薪水等是否被视为CBF或CLF?

    第二个相关的疑问是CBF或CLF都不会为系统中的新用户工作,因为他没有在系统中做任何活动。是这样吗?相同的 系统是新的还是新的,因为我们这里没有太多的数据?

    0 回复  |  直到 5 年前
        1
  •  0
  •   Aditya    5 年前

    你可以认为基于内容的方法是一个回归问题,其中你的x_i是你的数据点,相应的y_i是用户给出的评分。 您已经正确地声明了CLF,它使用一个用户项矩阵来创建项或用户用户矩阵,然后根据这些矩阵推荐产品/项。

    但是在基于内容的系统中,你需要建立一个对应于每个用户的向量。例如,假设我们要为netflix用户创建一个向量。这个向量可以包括一些特性,比如这个用户看了多少电影,他/她喜欢什么类型的电影,他/她是一个关键用户,等等。你提到的一些特性,比如他的平均工资和其他一些特性,这个向量将有一个y_i,它将进行评级。这类推荐系统被称为基于内容的,它回答了您的第一个问题。

    第二个问题是,当一个新用户/项目出现在图片中时,如何向该用户推荐项目。这个问题被称为冷启动问题。在这种情况下,您可以使用该用户的地理位置来选择他所在国家的用户关注的顶级项目,并根据这些项目进行推荐。一旦他开始对这些顶级项目进行评级,那么你的CLF和基于内容的都可以正常工作。