ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

多模态图预训练在推荐系统中的应用:融合GNN、Transformer与跨模态学习

多模态图预训练在推荐系统中的应用:融合GNN、Transformer与跨模态学习 1. 项目概述当推荐系统遇上多模态图预训练最近在梳理推荐系统前沿论文时这篇《Pre-training Graph Transformer with Multimodal Side Information for Recommendation》引起了我的注意。标题不长但信息量巨大几乎把近几年推荐领域的热点技术都串起来了图神经网络GNN、Transformer、多模态Multimodal、预训练Pre-training以及作为核心目标的推荐Recommendation。这让我想起几年前做推荐项目时还在为如何有效融合用户画像和商品文本描述而头疼如今的研究已经进化到用预训练好的图Transformer来统一建模用户、商品以及它们背后丰富的图片、文本等“边信息”了。简单来说这篇论文探讨的核心问题是在推荐场景下我们拥有海量的用户-商品交互数据构成一个图以及每个用户和商品附带的多种模态信息如商品图片、描述文本、用户评论等。传统方法要么只利用交互图要么简单拼接多模态特征难以深度挖掘跨模态的协同信号。这篇论文提出的思路是设计一个基于图Transformer的架构并利用自监督预训练任务从大规模无标签的交互图和多模态数据中学习通用的、高质量的表示再将这些表示用于下游的具体推荐任务如点击率预测、Top-K推荐以期实现更好的效果。这不仅仅是又一个“模型缝合怪”其背后的逻辑非常贴合工业界的需求。在实际业务中冷启动问题新用户、新商品一直是个痛点而丰富的多模态信息正是缓解冷启动的宝贵资源。同时预训练范式能利用海量无标签数据降低对稀疏、有偏的交互数据的依赖学到的表示更具泛化能力。因此深入理解这篇论文不仅是对学术前沿的追踪更是为构建下一代更智能、更鲁棒的推荐系统储备关键技术认知。2. 核心思路与技术框架拆解2.1 问题定义与动机溯源要理解这篇论文我们得先回到推荐系统的本质。推荐的核心是预测用户对商品的偏好这通常建模为用户-商品二部图上的链接预测问题。图中节点是用户和商品边是交互行为点击、购买等。然而仅有交互图存在两大局限数据稀疏性与冷启动对于大多数用户和商品交互记录极少甚至为零长尾现象。一个新上架的商品如果没有历史交互基于图的方法几乎无法为其生成有意义的表示。同质信息局限交互图只记录了“谁和谁发生了关系”但无法解释“为什么”。用户因为商品的某张图片被吸引还是因为一段精彩的文案而下单这些信息隐藏在商品的多模态侧信息中。多模态侧信息Multimodal Side Information正是为了解决上述问题。它指的是与用户或商品相关联的非交互式数据例如商品侧商品主图、详情图、标题、描述文本、品类标签、品牌、价格等。用户侧可获取的人口统计学信息、历史评论文本、社交关系等。传统方法如FM、DeepFM、WideDeep会将多模态特征经过编码后作为额外的特征向量与ID嵌入向量拼接一起输入预测模型。这种方法存在“特征鸿沟”多模态特征与图结构信息是独立处理、浅层融合的模型难以学习到“商品图片风格”如何影响“用户在交互图中的传播模式”这类深层次的跨模态协同效应。因此论文的动机很明确设计一个能够深度、统一地融合交互图结构与多模态侧信息的模型框架并利用预训练技术从海量数据中学习可迁移的通用表示以提升推荐效果特别是缓解冷启动问题。2.2 整体架构多模态图Transformer论文提出的模型框架可以称为“多模态图Transformer”其核心思想是将传统的图神经网络用于处理结构与Transformer用于处理序列/融合信息相结合并针对多模态数据进行了定制。一个典型的结构可能包含以下几个层次根据论文标题和常见模式推断多模态特征编码层文本模态使用预训练语言模型如BERT的某几层或更轻量的TextCNN、Transformer Encoder对商品标题、描述进行编码得到文本特征向量。视觉模态使用预训练图像模型如ResNet、ViT对商品图片进行编码得到视觉特征向量。其他模态对于品类、价格等离散或连续特征采用嵌入层或归一化后接入。输出每个商品i获得一组多模态特征向量集合{t_i, v_i, ...}。用户侧如果有多模态信息如评论摘要也进行类似处理。图结构构建与输入表示基于用户-商品交互历史构建异质二部图。每个节点用户u、商品i的初始表示h_u^(0),h_i^(0)不再是随机的ID嵌入而是由其多模态特征聚合而成。例如h_i^(0) f_aggregate(t_i, v_i, ...)这个f_aggregate可以是一个简单的拼接后加全连接层也可以是一个注意力融合模块。多模态图Transformer层核心创新点这是模型的主体。它由多个相同的“多模态图Transformer块”堆叠而成。每个块内部可能借鉴了Graph Transformer的设计但进行了多模态适配。其关键操作可能包括结构感知的多头自注意力在计算节点u和节点i之间的注意力权重时不仅考虑它们的当前表示h_u,h_i还会考虑它们在图中的关系如边类型、距离。同时在注意力机制中会注入多模态信息。例如在计算商品i和商品j的相似度时除了它们的节点表示还会引入它们的视觉特征相似度sim(v_i, v_j)作为偏置项Bias让结构信息的传播受到多模态相似性的引导。模态特定的信息传播可能设计不同的信息传播路径。例如有一组参数专门负责基于视觉相似性在图中传播信息视觉增强的邻域聚合另一组参数负责基于文本相似性传播。层归一化与前馈网络与标准Transformer类似用于增强非线性表达能力。输出层与预测经过L层图Transformer后得到每个节点的最终表示h_u^(L),h_i^(L)。对于预测任务如点击率预测将用户和商品的最终表示进行内积或通过一个MLP得到预测分数。注意以上是基于标题和领域常识的合理推演。论文的具体架构可能有所不同例如可能采用“模态融合-图传播”交替进行的结构或者设计更复杂的跨模态注意力。但其核心思想必然是在图神经网络的消息传递机制中深度地、细粒度地融入多模态比较信号而不是在输入层或输出层做简单的特征拼接。2.3 预训练策略设计“Pre-training”是标题的另一个关键词。在推荐系统上进行预训练通常采用自监督学习范式从无标签的交互数据和多模态数据中构造预训练任务。论文中可能包含以下两类预任务基于图结构的预训练任务边掩码重建Edge Masking Recovery随机掩码图中一部分已观测到的交互边让模型根据剩余的图结构和节点内容多模态信息来预测这些被掩码的边是否存在。这迫使模型学习用户和商品之间深层次的关联模式。节点属性预测Node Attribute Prediction掩码节点用户或商品的某个多模态属性例如掩码商品标题中的某些词让模型根据其图上下文邻居信息和其他模态信息来预测被掩码的内容。这增强了模型对多模态内容与图结构关联的理解。基于多模态的预训练任务跨模态对比学习Cross-modal Contrastive Learning这是利用多模态数据的关键。例如对于一个商品其图片和文本描述在语义上应该是对齐的。可以构造正样本对同一商品的图片和文本特征以及负样本对不同商品的图片和文本随机组合通过InfoNCE等损失函数拉近正样本对的距离推远负样本对的距离。这个任务可以在节点级别进行让商品的节点表示同时对齐其视觉和文本特征。模态内增强对比学习对同一张图片进行数据增强裁剪、变色或将同一段文本进行回译、掩码构造正样本对进行对比学习学习更鲁棒的模态内表示。这些预训练任务通常是多任务联合学习的。模型通过同时优化图结构重建损失和跨模态对比损失学习到的节点表示既包含了丰富的图结构信息又对齐了多模态语义信息从而成为一个强大的、通用的“特征提取器”。2.4 下游任务微调预训练完成后模型获得了良好的参数初始化和通用的节点表示。在具体的下游推荐任务上如某个电商平台的点击率预测只需要在预训练好的多模态图Transformer基础上添加一个简单的任务特定输出层如一个双线性交互层或MLP。使用下游任务的有标签数据通常是少量、带点击/购买标签的用户-商品对对整个模型进行轻量级的微调Fine-tuning。由于预训练模型已经对图结构和多模态有了深刻理解微调过程收敛快且在小样本或冷启动场景下表现显著优于从零训练的模型。3. 关键技术细节与实现考量3.1 多模态特征对齐与融合的挑战在实际实现中最大的挑战之一是如何处理不同模态的特征。文本特征来自BERT可能是768维图像特征来自ResNet是2048维品类ID嵌入是64维。它们的语义空间、分布、尺度都不同。常见的解决方案投影到统一空间为每个模态设置一个独立的投影层全连接网络将所有模态的特征映射到同一个维度d的向量空间。例如t_i W_text * t_i b_text,v_i W_vis * v_i b_vis。这样不同模态的特征在数值上具有可比性。层归一化LayerNorm在投影后或融合前使用层归一化稳定训练过程。注意力融合获得统一维度的各模态特征后采用注意力机制动态决定在生成节点初始表示时各模态的重要性。例如对于时尚商品视觉权重大对于书籍文本权重大。公式可以表示为α_m softmax(q^T * tanh(W * h_m))其中h_m是某模态投影后的特征q是一个可学习的查询向量。最终节点初始表示h^(0) Σ(α_m * h_m)。实操心得多模态融合不是越复杂越好。我们曾在项目中尝试过复杂的多级注意力、跨模态Transformer发现其带来的性能提升有时难以抵消其巨大的计算开销和过拟合风险。对于许多工业场景一个投影层 加权平均或简单拼接 LayerNorm的基线方法往往非常稳健。关键在于确保每个模态的特征提取器如BERT, ResNet本身是高质量且经过充分预训练的。如果资源有限优先升级特征提取器而非融合模块。3.2 图Transformer中的结构信息编码标准Transformer是置换等变的但它本身对图结构是不感知的。如何让Transformer“看见”图结构是多模态图Transformer设计的核心。论文中可能采用的技术图拉普拉斯位置编码将节点的图结构位置信息如从图拉普拉斯矩阵特征向量中提取作为可学习或固定的向量加到节点初始表示中。这为节点提供了全局结构上下文。相对位置编码基于边在计算注意力分数时引入一个与节点对(i, j)相关的偏置项b_{ij}。这个b_{ij}可以基于节点i和j之间的最短路径距离、或它们之间是否存在边以及边的类型来定义。例如如果i和j有交互则b_{ij}为一个可学习的正数参数否则为一个很大的负数抑制注意力。多模态增强的相对位置编码这正是论文的亮点之一。b_{ij}不仅可以包含结构信息还可以包含多模态相似性信息。例如b_{ij} λ_struct * b_{ij}^{struct} λ_vis * sim(v_i, v_j) λ_text * sim(t_i, t_j)。其中sim是余弦相似度λ是可学习的权重。这样即使两个商品在图上距离很远没有共同用户但如果它们视觉上高度相似它们在注意力机制中也会获得较高的关联强度实现了结构信息与多模态信息的深度融合。3.3 预训练任务的具体实现技巧边掩码的比例通常掩码15%-40%的边。比例太低任务太简单学不到东西比例太高图结构破坏严重任务太难。需要根据图的密度进行调整。负采样策略在边重建或对比学习任务中需要负样本。对于推荐图高效的负采样至关重要。常用方法有随机负采样为一个正样本用户-商品对随机采样一个该用户未交互过的商品作为负样本。简单但可能包含“潜在正样本”用户未来可能喜欢。基于流行度的负采样更倾向于采样热门商品作为负样本。因为用户未与热门商品交互更能说明其不喜欢。基于难度的负采样Hard Negative Sampling选择那些模型当前预测分数较高、但实际未交互的商品作为负样本。这能提供更有信息量的梯度但实现复杂需要在训练中动态维护。跨模态对比学习的温度系数τInfoNCE损失中的温度系数τ控制着对困难负样本的惩罚力度。τ越小模型越关注最困难的负样本。这个参数对性能影响很大通常需要在验证集上调优。多任务损失的平衡图重建损失如BCE损失和对比损失如InfoNCE损失的量纲和数值范围不同。直接相加可能导致一个任务主导训练。需要引入可学习的损失权重或采用梯度手术Gradient Surgery等技术来平衡。4. 实验设计与效果分析思路一篇严谨的论文其实验部分需要充分证明方法的有效性。对于此论文我们预期会看到以下实验设计4.1 数据集选择会选择公开的、包含多模态信息的推荐数据集。例如Amazon Review Data包含商品图片、文本评论、品类信息。Yelp包含商家图片、文本评论、地理位置。MovieLens搭配TMDB用户评分数据搭配电影海报、简介文本、演职员信息。 这些数据集需要同时提供丰富的用户-商品交互图结构和商品/用户的多模态属性。4.2 基线模型对比论文会与以下几类基线模型进行对比传统推荐模型BPR-MF, NeuMF。图神经网络推荐模型NGCF, LightGCN。这些是仅利用图结构的强基线。融合特征的深度推荐模型WideDeep, DeepFM, DCN。这些模型可以将多模态特征作为稠密输入。多模态推荐模型VBPR视觉特征增强的BPR, MMGCN多模态图卷积网络。预训练推荐模型一些早期的基于BERT或对比学习的推荐预训练模型。对比的指标通常包括召回率RecallK、归一化折损累计增益NDCGK、命中率Hit RatioK等用于衡量Top-K推荐性能以及AUC、LogLoss用于衡量点击率预测性能。4.3 消融实验Ablation Study这是论文证明其各个组件必要性的关键。可能会设计以下消融版本w/o Pre-training移除预训练阶段模型随机初始化后直接在目标数据集上训练。w/o Multimodal移除所有多模态侧信息仅使用节点ID。w/o Graph Transformer将图Transformer替换为普通的GCN或GAT层。w/o Cross-modal Contrast在预训练中移除跨模态对比学习任务。w/o Structure-aware Attention在图Transformer中移除基于图结构的相对位置编码使用标准自注意力。通过比较这些消融版本与完整模型的性能差距可以清晰地说明预训练、多模态信息、图Transformer架构、跨模态对比学习各自贡献了多少效果提升。4.4 冷启动实验为了突出方法在解决冷启动问题上的优势论文很可能会设计专门的冷启动实验商品冷启动在测试时筛选出那些在训练集中交互次数少于某个阈值如5次的商品评估模型在这些商品上的推荐性能。用户冷启动类似地筛选出交互很少的新用户进行测试。 实验会展示在引入多模态预训练后模型对于这些“陌生”节点能够利用其图片、文本等信息做出比基线模型准确得多的推荐。4.5 可视化与分析可能通过t-SNE或UMAP将学习到的节点表示降维可视化展示同一品类但不同品牌的商品在表示空间中是否聚集在一起视觉风格相似的服装是否在表示空间中也相近预训练后的表示空间是否比随机初始化的表示空间更具结构性、语义更清晰 此外还可以分析图Transformer中跨模态注意力权重的分布看模型在预测时更关注哪种模态的信息。5. 潜在挑战与未来方向尽管这个方向前景广阔但在实际研究和落地中我们仍需清醒地认识到一些挑战计算复杂度图Transformer的自注意力机制复杂度是节点数的平方级O(N^2)对于百万甚至千万级节点的大图直接计算是不可行的。必须采用采样策略如邻居采样、随机游走采样或线性注意力近似等方法这可能会损失部分全局信息。多模态数据质量与对齐工业数据中图片可能模糊、文本可能包含大量无关或营销信息图片与文本内容不完全对应“图文不符”。噪声数据会对预训练产生负面影响。如何清洗、过滤和对齐多模态数据是一个工程难题。预训练与微调的数据分布差异预训练通常在超大规模、通用的数据集上进行如全网商品而微调可能在某个垂直领域如美妆。如果领域差异过大可能存在负迁移。需要研究领域自适应技术。动态性真实的推荐系统是动态的新用户、新商品不断加入用户兴趣也会漂移。当前的预训练模型多是静态的如何设计高效的增量更新或在线学习机制是一个重要的未来方向。可解释性图Transformer多模态的模型是一个高度复杂的黑盒。如何解释模型为什么给用户推荐了某件商品是因为它和用户之前喜欢的商品视觉相似还是因为文案击中了用户的兴趣点提高模型的可解释性对于赢得业务方和用户的信任至关重要。从我个人的实践经验来看这篇论文所代表的技术路线是推荐系统走向更深度、更通用人工智能的重要一步。它不再将推荐视为一个孤立的数据挖掘任务而是将其构建在一个统一的多模态世界知识理解基础之上。对于从业者而言即使不立即复现整个复杂模型其思想也极具启发性在构建推荐系统时应尽可能多地利用和深度整合各类侧信息并考虑采用预训练-微调范式来提升模型的泛化能力和数据效率。我们可以从简化版开始例如先用对比学习预训练一个商品多模态编码器再将其作为特征输入到LightGCN中这往往就能带来显著的线上收益。
返回列表