2024-09-30 10:39:45 发布
网友
在对零售业务进行推荐系统(协同过滤)时,没有实际的评分(如1-10满意该项目)
因此,我使用每个用户购买某个项目的次数作为隐含评级。然而,这样做可能会在慢行产品(如电视)和快行产品(如薯片、零食)之间产生偏差,因为客户购买慢行产品的次数远少于快行产品
我的问题是:
感谢您提前回复
尝试回答您的具体问题:
是的,但这取决于您对这些项目有哪些其他信息。我试图通过做出一些合理的假设来回答这个问题
我可以假定你有这个项目的费用。您可以通过项目成本进行标准化,以确保减少(而不是完全消除)偏差。您可以直接进行归一化(weighted_rating = implicit_rating * cost per item)。这里,cost_per_item用于weights减少偏差。或者,您可以通过binning或clustering所有项目的价格来试验价格组,以形成产品组,从而给您一个group_mean_price。然后可以将其用作权重
weighted_rating = implicit_rating * cost per item
cost_per_item
weights
binning
clustering
group_mean_price
如果您知道有关该项目的其他信息(如易腐/易耗/笨重),您可以拥有更具代表性的集群。此后,您可以将implicit_rating分配给每个项目。现在,您可以通过使用组评级的聚合统计信息(例如group_mean_implicit_rating),对每个implicit_rating进行规范化。所以,weighted_rating = implicit_rating/group_mean_implicit_rating
implicit_rating
group_mean_implicit_rating
weighted_rating = implicit_rating/group_mean_implicit_rating
尝试回答您的具体问题:
是的,但这取决于您对这些项目有哪些其他信息。我试图通过做出一些合理的假设来回答这个问题
我可以假定你有这个项目的费用。您可以通过项目成本进行标准化,以确保减少(而不是完全消除)偏差。您可以直接进行归一化(
weighted_rating = implicit_rating * cost per item
)。这里,cost_per_item
用于weights
减少偏差。或者,您可以通过binning
或clustering
所有项目的价格来试验价格组,以形成产品组,从而给您一个group_mean_price
。然后可以将其用作权重如果您知道有关该项目的其他信息(如易腐/易耗/笨重),您可以拥有更具代表性的集群。此后,您可以将
implicit_rating
分配给每个项目。现在,您可以通过使用组评级的聚合统计信息(例如group_mean_implicit_rating
),对每个implicit_rating
进行规范化。所以,weighted_rating = implicit_rating/group_mean_implicit_rating
相关问题 更多 >
编程相关推荐