在 CIKM 2024 上,小红书中台算法团队提出了一种创新的联合训练框架 AlignRec,用于对齐多模态表征学习模型和个性化推荐模型。本文指出,由于多模态模型与推荐模型在训练过程中存在步调不一致问题,导致联合训练被推荐信号主导,从而丢失大量多模态信息。AlignRec 通过分阶段对齐的方式,设计了三种针对性的优化损失函数,使得联合训练能够同时兼顾多模态信息和推荐信息。实验结果表明,AlignRec 在多个数据集上的性能超过了现有的 SOTA(state-of-the-art)模型。此外,AlignRec 还提供了在当前广泛使用的公开数据集亚马逊上的预处理特征,这些特征的效果显著优于现有的开源特征。
最近多模态是个非常热门的话题,尤其是在大模型以及 AIGC 领域,多模态基建和技术是走向未来商业化的奠基石。在过去的多模态大模型研究方向上,模态的“对齐”已经被验证非常重要,分布的不一致损害不同模态的理解,我们此次要讨论的核心问题是多模态在推荐中的对齐问题;
在具体介绍论文工作之前,我们先来介绍下我们过去在推荐和电商中的实践工作:
推荐实践
上述方法是我们对 BM3论文进行改进 上线的方案,该方案实际上做的是通过损失函数来实现“对齐”工作。我们的对模型的期望也是保留个性化的同时,能够对齐行为和多模态的空间,进一步增加长尾的个性化分发能力。先说效果:
该模型实验在推荐发现页取得时长、曝光、点击等核心指标收益,除此之外,在长尾分发上,0 粉作者笔记点击和曝光获得大幅增长,整个召回路增加了全局可分发笔记数 6%,分发笔记集中在 1k-5k 的笔记曝光集合;同时,我们的方法也被复用在了电商场景,分发长尾同时,获得 DGMV 等核心指标收益。
很显然,从上述可以看出,“对齐”的效果立竿见影,在业界应用上我们已经取得实质性进展,但本质上这样的设计方案依然并没有完全解决多模态推荐问题,因为我们的多模态模型和推荐模型是相对割裂的,等同于直接拿表征来使用,这样的设计打通了应用范式,却无法判断多模态模型本身能力对效果的上限,对于选择合适多模态表征存在一定的难度。但如果我们引入文本/图等 Encoder(Transformer)等进行联合训练,会引入如下的问题:
在大规模的数据下,分布式训练引入图文 Encoder 会造成资源和性能问题,尤其是注重高时效性的 Streaming Data;
训练步调不一致,往往多模态模型需要大量数据甚至多个 Epoch 才能收敛,但推荐模型通常采取单轮训练,这也导致多模态模型训练不充分;
所以我们设计联合训练模型,通过设计分阶段对齐的方式和中间指标评估,解决上述联合训练问题,并且引入了三种针对性的优化损失函数,使得联合训练能够同时兼顾多模态信息和推荐信息,解决联合训练中的“对齐”问题,提升效果上限。
下面我们从相关工作,核心挑战,模型设计介绍整体工作。
我们在这里通过 (a), (b), (c) 描述了在过往的学术界目前多模态推荐方向的相关工作,总结主要的发展路径:
图(a),直接利用,比如把 embedding,多模态特征作为信号输入网络;
图(b),利用图等方式聚合,希望能得到更丰富的多模态信息表达,这本质上也是增加多模态侧信息的召回率;
图(c),联合优化,把模态损失和行为损失共同优化,但这忽略了本身笔记侧的多模态学习。
在工业界,现阶段推荐系统主要还是依赖于 ID 特征的学习, 大多数多模态推荐把多模态信息作为 sideinfo 去辅助 ID 特征的学习。但是, 多模态之间以及 ID 模型与多模态之间都存在着语义鸿沟, 直接使用甚至可能适得其反。
核心挑战
为了贴合业界实际,设计一款有效的多模态与推荐联合训练模型会遇到如下的挑战:
挑战1: 如何对齐多模态表征。包括内容模态之间(如图文)的对齐,以及内容模态与 ID 模态之间的对齐;
挑战2: 如何平衡好内容模态和 ID 模态之间的学习速度问题。内容模态可能需要超大规模的数据和时间去训练, 而 ID 模态的学习更新可能只需要几个 epoch。
挑战3: 如何评估多模态特征对推荐系统的影响。引入不合适的多模态信息可能需要更多的精力去做纠正, 甚至可能影响推荐系统的性能。
我们所提出的方法命名为 AlignRec,整体框架如下图所示, 主要包含3个模块: Multimodal Encoder Module, Aggregation Module, 以及 Fusion Module, 下面分别进行介绍。
Multimodal Encoder Module