推荐系统广泛应用于连续地推荐一组商品供用户浏览。在淘宝首页信息流中,用户通常会连续浏览大量商品,先前查看的内容会显著影响用户对后续商品的选择,因此,单纯关注推荐准确性的传统方法不是最优解,其可能导致推荐内容高度相似。为了在信息流推荐中更好满足用户动态兴趣变化,同时优化推荐序列准确性和多样性,我们提出了一个名为“ Multi-factor Sequential Re-ranking with Perception-Aware Diversification”(MPAD)的通用重排框架。MPAD通过图聚类从用户行为序列中提取多尺度兴趣,并采用两个子模型分别评估候选商品的准确性和多样性。最终,MPAD通过序贯方式选择候选商品,生成兼顾准确性和多样性的推荐列表。基于该工作整理的论文已发表在KDD,欢迎阅读交流。
作者:朔杨、迪民、风观等
论文:Multi-factor Sequential Re-ranking with Perception-Aware Diversification
现有基于多样性的推荐算法主要关注商品对之间的不相似性,而没有考虑用户兴趣。例如,一些后处理方法通过基于预定义规则启发式地重新排列商品顺序来提高多样性,但这些规则并非为用户量身定制,缺乏个性化;Learning-based方法则通过直接比较商品Embedding来测量给定商品对的相似性。尽管这些方法有效,但忽视了用户兴趣,可能导致模型对多样性的定义与用户对多样性的感知之间产生不匹配。例如,一些女性用户可能更倾向于在信息流中看到更多服装相关的内容,直接减少用户偏好的商品的展示概率以增加多样性可能会降低她们对推荐结果的满意度。
其次,在信息流应用中,用户往往连续查看许多商品,这使得用户的兴趣在这个连续的浏览过程中可能会演变。在这种情况下,商品准确性和多样性的衡量应考虑到不断变化的上下文和用户兴趣的演变,以适应信息流场景中的顺序浏览特性。然而,大多数现有的兴趣模型主要关注从用户的历史行为中学习兴趣,而较少强调随着浏览上下文的变化而演变的兴趣。另外,一些研究提出了各种list-wise的重排算法来捕捉商品之间的内在关联性,但它们主要关注提高准确性而忽略多样性。
鉴于上述挑战,本研究探讨了以下研究问题:(1)如何从商品序列的角度设计一个通用框架,以联合优化准确性和多样性?(2)如何在信息流场景中浏览连续商品时,适应用户兴趣的演变来估计准确性和多样性?(3)如何在工业系统中实施所提出的框架,并评估其性能表现?
为此,我们提出了一种名为MPAD的通用框架,以联合优化实际信息流推荐中的准确性和多样性。该框架包括四个主要组件:双序列行列式点过程(BS-DPP)算法、兴趣提取模块(MIE)、上下文感知准确性预估模块(CAE)、多样性感知核函数(PDK)。
MPAD框架由两部分组成:选择层和评估层。选择层使用双序列行列式点过程(BS-DPP)算法,根据评估层中计算的准确性和多样性得分,从候选集中顺序选择商品,以最大化整个推荐列表的联合收益。评估层包含三个主要组件:多尺度兴趣提取(MIE)模型、上下文感知准确性估计(CAE)模型,以及多样性感知核函数(PDK)。这些组件负责从用户行为中提取兴趣、预估商品的上下文准确性,并评估商品的多样性。
BS-DPP算法用于选择层中的增量商品选择。在BS-DPP中,商品的多样性得分和准确性得分会随着商品选择过程逐步更新。这与传统的行列式点过程(DPP)方法不同,后者假定商品准确性得分是固定的,并忽略了上下文的变化。BS-DPP更符合信息流产品中用户连续浏览商品的特性。任务表述: 在商品集合 上定义的点过程 是在 的幂集(即 的所有子集)上的概率分布,满足:
选择特定商品子集的概率由DPP中的核函数决定,商品选择过程通常建模为最大后验概率(MAP)推理。在本文中,我们基于 和 的联合测度定义DPP核函数,选择特定商品子集的概率自然与商品准确性和多样性的联合优化成正比。基于DPP理论,我们的目标等价于最大化对数概率函数:
其中 是基于 和 定义的核函数, 是选择子集 的对数概率函数。
双序列DPP: 在标准DPP方法中,核矩阵 的构造如下:
其中, 是用户与商品之间的点对点准确性得分,不考虑页面上下文,则衡量商品和之间的相似性。然而,双序列DPP则认为:(1) 准确性得分与浏览上下文有关,即之前添加到集合 中的商品;(2) 多样性得分与用户的兴趣有关。因此,该公式被修改为:
在实际应用中,我们通过引入上下文信息对商品准确性进行实时调整,并通过逐步选择策略来优化推荐结果的整体效益。最终,选择一个最优商品的贪婪最大化步骤可表示为:
其中, 是一个可调参数,用于在推荐结果的多样性和准确性之间进行平衡。 代表商品 的多样性得分,这使得推荐系统能够动态调整并优化用户体验。
MIE模型通过图聚类技术提取用户的多尺度兴趣。该模型将用户的兴趣划分为宏观和微观两个层次。宏观层面捕捉用户的长期兴趣,例如时尚、体育等大类;微观层面则捕捉用户的近期兴趣,如最近关注的具体物品。通过用户-商品二部图的聚类,MIE能够有效地将用户行为序列划分为多个兴趣点,每个兴趣点代表用户在宏观层次上的一个兴趣。
图聚类与模块度: 用户-商品交互数据可表示为一个二部图网络。我们基于双部模块度 对网络中的簇进行划分,定义如下:
其中, 是双部图中的总边数,是邻接矩阵,表示和之间是否存在交互,是基于不同簇划分的期望边,是指示函数,表示和 是否属于同一簇。通过这一方法,可以将用户的行为划分为不同的兴趣簇,从而更好地捕捉用户的宏观兴趣。
聚类优化: 在聚类过程中,我们通过最大化模块度来优化兴趣簇的划分。模块度越高,表示簇内的节点之间关联性越强,且不同簇之间的节点关联性越弱。通过这种优化,我们能够有效识别用户的核心兴趣区域,并提高推荐的针对性。
CAE模型用于将排序阶段生成的点对点准确性得分进一步细化为上下文感知的准确性得分。该模型主要通过线性变换结合激励机制来捕捉之前浏览的商品对目标商品的影响。具体地,在确定页面中第 个商品时,CAE使用之前查看的商品来表示上下文信息:
同时,CAE还结合了所有候选商品的上下文,来反映排名模型的整体趋势:
然后,通过激励机制计算出商品的上下文感知准确性得分,从而生成更准确的推荐。该模型通过考虑用户在整个浏览过程中的行为,能够更好地反映用户的动态兴趣变化,并在推荐中实现更高的准确性。
PDK模型用于计算多样性核 ,该核函数决定了集合 中商品对之间的相似性。PDK结合了用户的多尺度兴趣来衡量商品之间的相似性,从而实现个性化的多样性推荐。具体地,宏观兴趣感知的多样性核可定义为:
同时,微观兴趣感知的多样性核定义为:
最终,综合考虑用户兴趣的复合核可以表示为:
其中, 和 是控制宏观和微观兴趣对多样性结果影响的超参数。通过该模型,我们能够在多样性和准确性之间取得良好的平衡,确保推荐结果既能满足用户的当前需求,又能引导他们发现新兴趣。
下图3展示了在核函数中加入用户兴趣后,多样性测量的变化。图(a)展示了仅考虑商品embedding距离的相似性 。图(b)展示了在核函数中加入宏观兴趣 后的商品相似性。图(c)展示了完整核函数 的商品相似性。可以明显看出,由于考虑了用户兴趣,一些原本不相似的项目变得相似,反之亦然。通过这种方式,相同商品集的相似度对于不同用户来说是不同的,从而实现了感知感知的多样化推荐。
整个推荐过程包括以下几个步骤:
最终的推荐列表会根据用户的实时兴趣和行为进行动态调整,确保推荐内容既符合用户当前需求,又能带来新的体验。这种架构使得系统能够在高并发场景下,依然保持优质的推荐效果和快速响应能力。
我们在多个公开数据集上进行了离线实验,并在真实的在线推荐系统中验证了MPAD的性能。
在离线评估中,我们使用了MovieLens、WeChat和Taobao这三个数据集,并使用以下指标来评估模型的表现:
先讨论MIE模块的用户兴趣预估准度,下图展示了MIE和传统point-wise用户兴趣建模模型的效果对比。在所有数据集中,MIE均取得最优效果,这表明,MIE在提取用户行为序列信息时有更好的抗噪能力。
接下来探讨MPAD的模型预估精度,仅使用MPAD框架中的MIE和CAE模块,对比方法包括目前主流point-wise模型和list-wise模型。MPAD在NDCG和MAP指标上均优于基准模型。这些结果表明,MPAD既考虑了上下文信息也考虑了用户多层次兴趣,因此可以达到更优的效果。
现在我们考察MPAD在平衡商品准确性和多样性方面的能力。我们在实验中激活了MPAD的所有组件。正如下图所示,当减少参数 时,ILAD(多样性指标)呈现单调下降,而nDCG(准确性指标)先上升后略微下降。当 时,MPAD只返回具有最高准确性得分的商品,而忽略了商品的多样性。结果表明,为推荐列表引入适量的多样性对于提升准确性和多样性联合效用至关重要。
随后,我们将MPAD与MMR和fastDPP进行比较,并调整各方法的参数,使不同算法的nDCG范围大致相同。下图的结果显示,在所有比较方法中,MPAD在商品准确性和多样性之间实现了最佳平衡。这可能归因于MIE、CAE和PDK在准确性和多样性估计方面的优越表现。值得注意的是,下图中的每条曲线都有一个拐点,代表了准确性和多样性之间的最佳平衡。在实际应用中,应调整参数 以达到这种最佳状态,从而为客户提供最佳体验。
我们将MPAD的在线表现与fast DPP方法和一种启发式方法(包含一些硬性规则)进行了比较,线上结果如下图。这些结果表明,MPAD不仅在准确性和多样性上实现了更好的平衡,还能够有效吸引用户在平台上停留和互动。
下图展示了一个案例,说明MPAD如何根据个人兴趣实现推荐商品的多样化。我们选取了一位最近点击过多种服装类商品的女性用户作为样本。图(a)显示了基于通用启发式规则的推荐结果,其中出现了一些与用户兴趣不太相关的商品,如运动鞋和羽绒服。图(b)展示了MPAD的推荐结果,所有推荐商品都与用户点击的商品相关,并且避免了连续展示相似的商品。图(c)通过调整MPAD中的参数进一步增加了多样性,使推荐内容更加均衡。例如,服装类商品的数量从(b)中的四个减少到(c)中的两个,且它们之间的间距更大。这个案例直观地展示了MPAD在基于用户兴趣提供多样化推荐方面的有效性。
本文提出了一种推荐系统后链路的重排算法框架,该算法通过对候选集中商品的准度和多样性进行建模,并通过最大化整个序列的准确性和多样性来生成最佳展示结果,给首页信息流场景带来显著的业务收益。
关注「淘天集团算法技术」,一起成长~