电商网站Etsy的推荐算法解析一、引言本文基于recsys2020的一篇论文《Query as Context for Item-to-Item Recommendation》,对电商网站Etsy的推荐算法进行了深入探讨。该论文主要关注于在传统的item-to-item(相似物品)推荐中,如何更好地融入用户的意图和季节性因素,以提升推荐的准确性和用户满意度。二、动机在传统的item-to-item推荐系统中,往往仅基于物品之间的相似度进行推荐,而忽略了用户的实际意图和季节性因素。这可能导致推荐结果与用户当前的需求或兴趣不符,从而降低推荐的准确性和用户体验。因此,Etsy尝试通过引入用户的搜索历史和季节性信息,来优化其推荐算法。三、模型介绍为了解决这个问题,Etsy尝试了两个模型,其中第二个模型在效果上更为出色。模型1:识别相关查询:首先,通过用户的搜索会话(search session),识别和每个物品相关的top N个查询(queries)。这一步的目的是获取与物品相关的用户意图信息。训练embedding:接着,使用word2vec的skip-gram模型来训练物品(item)和查询(query)的embedding。这一步的目的是将物品和查询映射到一个共同的向量空间中,以便进行相似度计算。值得注意的是,Airbnb也曾有论文讨论过使用word2vec训练embedding的方法。KNN找临近:最后,使用KNN算法在训练好的embedding空间中,为每个物品找到与其最相似的N个物品。这些物品将被作为推荐结果展示给用户。模型2:候选物品筛选:对于每一个物品(item),找出所有相关的物品。这些相关物品是在一段时间内(如30–90天)内,与该物品出现在同一个搜索会话中或曾被一起加入购物车中的物品。这一步的目的是构建一个包含潜在相关物品的候选集。GBDT预测模型:在筛选出的候选物品中,训练一个梯度提升决策树(GBDT)预测模型。该模型的目标是根据物品之间的相关性、用户行为特征以及时间信息等因素,预测每个候选物品被用户点击或购买的概率。推荐结果生成:根据GBDT模型的预测结果,选择概率最高的N个物品作为推荐结果展示给用户。四、创新点Etsy的推荐算法创新之处在于重新定义了“相关物品”的概念。传统的item-to-item推荐系统往往仅基于物品之间的相似度来定义相关性,而Etsy的算法则融合了用户信息和时间信息。具体来说,通过引入用户的搜索历史和购物行为,以及考虑时间因素(如季节性),Etsy的算法能够更准确地捕捉用户的意图和需求,从而生成更符合用户期望的推荐结果。五、总结Etsy的推荐算法通过引入用户的搜索历史和季节性信息,优化了传统的item-to-item推荐系统。该算法通过两个模型(其中第二个模型效果更佳)实现了对用户意图和需求的更精准捕捉,从而提升了推荐的准确性和用户体验。这一创新不仅为电商网站的推荐系统提供了新的思路和方法,也为其他领域的推荐系统研究提供了有益的借鉴和参考。



































