首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在执行协作筛选之前,您应该集群吗?

在执行协作筛选之前,您应该集群吗?
EN

Data Science用户
提问于 2020-06-18 09:35:06
回答 3查看 415关注 0票数 3

因此,我正在建立一个使用客户和产品信息的推荐模型。这将通过隐式完成,也就是说,客户有或没有产品,因为我们没有关于产品的评级信息。我希望模型推荐一个使用协同过滤的产品,所以我正在考虑使用一个推荐模型,比如矩阵分解/ SVD等。我将执行多个测试/实验来确定最佳的算法。

在推荐人之前,我应该先进行聚类,根据他们的人口和地理信息来确定相似的客户吗?然后,我是否应该为每个集群训练一个推荐模型?

这种方法是否有任何好处,还是推荐模式能够自然地确定类似的客户?

EN

回答 3

Data Science用户

发布于 2020-07-16 21:42:31

简短的回答:不,在进行矩阵分解之前不应该执行聚类。

首先,我只想说SVD是矩阵分解的一个特例。另外,SVD在推荐上不是传统的SVD,而是有一个异形

详细回答了为什么在进行矩阵分解之前不应该执行集群

矩阵分解(MF)本身执行聚类。当您执行矩阵分解时,您将得到用户和项的潜在向量。通过在这些潜在向量上运行一个聚类算法,例如K-均值,您最终会进行聚类。但是,如果您的最终目标只是推荐,那么就没有必要事先执行聚类。

在某些情况下,您可以考虑执行集群

  • 您想要集群来更好地理解数据并为每个不同的集群构建不同的推荐模型吗?如果是,那么您可以考虑先进行聚类。
票数 2
EN

Data Science用户

发布于 2021-04-03 10:01:02

你应该考虑:

  • 使用协作过滤模型可以隐式地了解用户之间的相似性。如果提取用户的较低维表示,这将给出可以被认为是用户嵌入的内容。如果对此执行群集,则可以获得用户群集。问题是,除非您对侧信息执行协作过滤,否则这些集群将只考虑用户的反馈。如果你选择使用一个附带信息的模型,你就会发现它很难训练。
  • 因此,使用协作过滤+用户集群可以帮助您增强推荐模型:即,在返回的建议的基础上,还可以为给定的用户集群添加最受欢迎的产品,这可能有助于减少具有受欢迎项的新用户的建议。
  • 这里唯一难的不就是不要培养多个推荐人模型。这将使你的生活更加艰难(每个模型将从较少的数据中学习)。品味是模棱两可的,单一的模式可以了解不同客户群体之间的细微差别。
票数 0
EN

Data Science用户

发布于 2021-04-04 19:20:32

这就是你的领域专长发挥作用的地方。一些重要的考虑因素,例如基于位置的用户行为和基于位置的产品提供。

对于典型的推荐问题,您所需要的只是来自用户的产品评级。分析了产品的特点和用户对产品的行为。

另外,您还拥有一组属性,这些属性可以帮助您创建具有类似行为的个人类别。将这些作为您的评等矩阵的一部分,只会混淆典型的推荐算法。现在出现的问题是如何最好地使用它们,因为拥有更多的数据总是更好。这可以通过先前的聚类来实现。

最重要的是,这是你正试图解决的更大问题的两个独立部分。您必须评估哪种方法更有效,同时要记住,您不应该最终得到大量的集群,这会显著减少每个集群的产品评级数据。

或者,如果你有较少的产品,你可以选择一个多标签或多输出分类公式,因为你正在寻找一个二元的结果推荐一个产品与否(而不是一个评级)。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/76232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档