摘要:导读本文将概述在过去两年中,快手基于大模型技术在广告场景下所进行的一些探索性工作,以及这些工作背后的数据和模型设计的动机与思考。文章首先简要介绍在内容域,广告预估所面临的一些问题和挑战,然后重点讲一下我们如何利用多模态和大模型技术,通过提升全域行为和外部知识的
导读本文将概述在过去两年中,快手基于大模型技术在广告场景下所进行的一些探索性工作,以及这些工作背后的数据和模型设计的动机与思考。文章首先简要介绍在内容域,广告预估所面临的一些问题和挑战,然后重点讲一下我们如何利用多模态和大模型技术,通过提升全域行为和外部知识的有效利用来增强广告系统,从而获得实际的业务收益,主要算法包括我们提出的商品内容统一表征框架 COPE 和 LLM 知识迁移框架 LEARN。
本文主要内容包括以下三大部分:
1. 内容域广告预估挑战与⼤模型应⽤机会
2. 全域行为利用:商品内容统⼀表征框架 COPE
3. 外部知识利⽤:LLM 知识迁移框架 LEARN
分享嘉宾|陈权 快手 资深算法专家
编辑整理|马同学
内容校对|李瑶
出品社区|DataFun
01
内容域广告预估挑战与大模型应⽤机会
在快手这一融合了内容和电商业务的复杂业务形态中,用户打开快手 APP 后,从 C 端流量的视角来看,可以通过自然流量中的推荐和搜索,以及广告中的推荐和搜索来消费平台上的内容和商品。从消费媒介的形式来看,快手平台提供了图文、短视频、直播、商详页、落地页等多种媒介形式,以满足用户的内容和商品消费需求。从B端供给侧的视角来看,包括个人或机构上传的自然作品、广告主上传的广告作品以及商家上传的电商作品,这三种供给形式承载着不同的平台业务目标,这些作品之间虽有交集,但大部分可能并不重合。这样一个复杂的生态下,就带了一个很复杂的问题就是用户行为散落在不同的场景叉乘媒介的矩阵上,使得用户的行为在单一场景下比较稀疏。
此外,目前的推荐系统主要是以 ID 为中心的分发体系,例如短视频主要以视频 ID (Video ID)为主,商品主要以商品 ID(Item ID)为主,直播主要以直播 ID(Live ID)或主播 ID 为主,这些 ID 体系之间难以实现互通。若要利用全域行为进行用户兴趣建模,则面临跨域数据的挑战。同时,不同类型内容的生命周期也不尽相同,例如短视频的消费旺盛周期可能为一到两周,直播可能为 2 到 3 小时,商品则可能更长,这进一步加剧了问题的复杂性。
广告推荐面临的问题是,其数据相比其他类型更为稀疏。然而,我们也看到了机会,即如果能打通全域数据,将推荐域和搜索域的自然流量或行为与广告数据进行有效整合,则可以更精准地建模用户兴趣。这是我们面临的第一个问题。第二个问题是推荐场景普遍面临的信息茧房问题,即基于用户历史行为训练的模型,再将模型应用于推荐相应作品,容易陷入数据的循环中,难以打破。如果没有外部知识的引入,很难打破这一循环。
因此,在过去两年多的时间里,我们希望借助多模态大模型技术,打通 APP 内部数据,使其得到更充分的利用。对于第二个问题,我们希望借助大语言模型(LLM)的开放预训练能力,利用其世界知识和强大的推理及迁移能力,帮助我们打破信息茧房。
02
全域行为利用:商品内容统一表征框架 COPE
接下来将重点介绍我们的工作,首先是对全域行为的利用——商品内容统一表征框架 COPE。下面将以电商推荐广告为例,分享我们所做的工作。在内部,我们的商品分发依赖于一个核心要素,即商品 ID,这也是业界使用最广泛的体系之一,基于商品 ID 进行 embedding 学习。
该体系的优点在于简单实用,但商品 ID 主要是为了平台运营和数据库中的唯一标识而设计,缺乏语义和同品聚合能力。理论上,随着新商品的不断上传,ID 会不断膨胀,这可能导致基于商品 ID 的 embedding 学习对于稳定用户行为兴趣的捕捉存在困难。
例如,即使是同一商品,在平台上可能表现为不同的 item ID,且跨场景表现不同,如商详页上的用户转化行为可能与短视频或直播上的行为不同。因此,为了打通跨媒介的全域行为,我们在内部建立了一个体系,即 SPU ID 体系。这一体系实际上是同品 ID,将具有相同商品属性的商品聚合成一个 ID,使得 ID 空间更加稳定,并具有同品聚合能力。因此,我们也能将同品的不同商品 ID 聚合在一起,并将相关数据如 live ID 和 video ID 等聚合在一起,这有利于全域稳定兴趣建模。这一做法在线上也取得了不错的收益。然而,我们认为量级仍然较大,且语义性不足,因为它只是一个同品的随机分配 ID,特征学习高度依赖于用户行为交互。
在此基础上,我们进一步开发了第三套体系,商品内容统一表征体系。我们希望将商品在直播间、商详页、短视频等不同场景下承载的内容进行模态压缩,得到一个更加鲁棒且紧致的特征表示。这样,一方面可以在 item 侧增强特征,或扩展用户行为序列,另一方面可以降低对场景行为数据的依赖,从而缓解特征学习不充分的问题。
下面将重点介绍商品内容统一表征的构建流程。在决定开展此项工作之前,我们发现尚无成熟的模式来执行此类任务,包括数据集的构建。因此,我们在内容电商场,建设了一个同时覆盖短视频、直播、商详页三种业务形态的,专为搜推广业务设计的,真实场景下的千万级多媒体训练样本。并基于这一数据集,将不同域的商品描述,分别提取领域特定表征,再对齐到同一特征空间中,来实现商品内容统一表征学习。也就是接下来要介绍的 COPE 框架,在 COPE 框架下拿到业务收益后,为了更进一步提升特征表达性,我们又引入 LLM,对短视频和直播中大量的文本信息进行关键语义总结,同时跨领域模型参数共享,进一步提高商品统一表征鲁棒性。基于这一统一表征,我们实现跨域同品和相似品检索,增强单场景用户行为序列,在召回、粗排、精排等环节应用,实现全域跨场景兴趣增强建模。我们做完这一些工作后,发现业务收益还挺可观,但业界还没有这方面的公开研究,因此我们也把这个数据集 ROPE 和商品统一表征建模框架 COPE 开源出来,希望能够促进这一方面的研究进展,给有类似业务需求的同学缩短技术基建成本。如果对这项工作的细节该兴趣,可以看一下下面【1】【2】这两篇论文以及相应的开源实现。
数据集的构建是一项基础性的建设工作。由于数据本身是非结构化的,我们依托于内部的基础建设来完成这一任务。我们构建的数据集包含了大约 18 万个 SPU ID(非单独的 item ID),覆盖了大约 1,400 多个类目,同时覆盖了短视频、直播和商详页等全场景。完成这项工作后,我们得到了一个大致反映平台数据分布的数据集,基本上符合平台商品的长尾分布特征。
在构建数据集之后,需要探讨如何实现跨域统一的多模态表征,以便对内容商品进行有效表征。模型结构相对简单。在底层输入侧,针对商详页产品侧,使用与产品相关的图片和文本信息;对于视频侧,主要提取视频帧中 ASR 和 OCR 文本;直播侧的处理方式与视频侧相同。这些输入将分别送入文本编码器、视觉编码器,最终进行融合(Fusion)。融合完成后,获得该领域下的具体表征。
在 Loss 上,使用跨域对比损失,来对齐不同域的商品表征,使用商品分类损失,来提升特征区分度,右图就是 COPE 框架示意图。
整个流程大致如上所述,我们内部大概是在 2023 年初完成 COPE 框架的模型 1.0 实验,具体设置是,跨域模态内所有 Encoder 结构和参数共享,Projection Layer 参数不共享,只有视觉侧特征参与实际计算,并未使用文本侧的输入,主要原因是起初我们认为 ASR 的噪声特别大,而且许多直播或短视频的介绍与商品具体属性的关系并不紧密。也就是说,虽然 COPE 框架是一个多模态框架,但其实 1.0 版本是一个横跨短视频、直播和商详页三个领域的单模态视觉模型。即使如此,相比各种开源多模态检索模型,我们发现在 ROPE 数据集上训练得到的 COPE1.0 模型能够在多个跨场景检索数据集上实现性能的大幅领先。另外一个实验结论也是比较有趣,就是 COPE1.0 模型,在之前第三方专门针对电商商品设计的 Product1M 和 M5Product 等数据集上的 Zero-shot 能力也是大幅超过了该数据集上训练的模型,说明这种 COPE 模型 1.0 已经可以作为商品统一表征的预训练模型使用,具有较为鲁邦的视觉表征。
具备了视觉模型,我们认识到,如果模型仅依赖于视觉信息,尤其是在直播间和视频中,可能会遗漏大量有用的信息。因此,我们希望将文本信息也纳入考虑,在 1.0 模型之上,我们又研发了能够考虑视频和直播侧的 ASR 和 OCR 数据的 COPE1.1 模型 Ampere。其主要设计思想是为了利用其中大量有噪声的冗余文本信息,我们采用 LLM 来提取其中的关键信息,以提高文本侧信噪比(在实验中,我们发现直接使用该文本信息并不有效)。因此,我们设计了一些提示(prompt)来利用大语言模型,以便提取结构化信息,进而增强多模态表征能力。
在模型结构和 Loss 设计上,遵循 COPE 框架,但做了 2 个细微改动,首先引入 LLM 抽取的具有高信噪比的结构化信息作为 Video 和 Live 域的 Text Encoder 输入,使用商详页的标题等文本作为商详页域的 Text Encoder 输入,在对齐上,与 COPE 框架模型 1.0 不同,我们不再使用 domain-specific projection layer 来提取每个域特征,而是使用共享结构和参数的 projection layer 方法实现同模态跨域对齐,来提升模型性能。因为我们观察到如果引入了文本侧跨域特征之后,如果不这么做,引入文本侧特征不但不能提升模型性能,而且还会降低模型性能,而且融合模型越复杂(比如从 Linear 升级到 Transformer 再到 Cross-attention),降得越多,而采用了先对齐后融合的思路后,加入文本模态后,性能上涨,且融合方法越复杂,性能越好。整体相比 COPE1.0 提升约 10 个相对百分点。
在广告预估模型应用上,目前该商品内容统一表征已经广泛应用与精排和召回模型,在精排侧,主要包括 dense 特征供给、i2i 召回、扩展用户序列等,在召回使用 u2i2i 和 u2v2v 等召回通路方式均实现显著稳定业务收益。
03
外部知识利⽤:LLM 知识迁移框架 LEARN
在这一章节中将分享如何在外部知识利用方面,将大型语言模型(LLM)的知识迁移到推荐系统中。
在 2023 年年中,我们内部经常讨论一个称为“二胡与千斤丝”的案例,即平台上有一个用户画像为 50 岁左右的男性用户,在没有任何行为相关产品行为的情况下,突然转化了千斤丝。在传统情况下,即使我们跨域后数据可能会有所改善,如果没有这些数据,这几乎是一个可能导致推荐失败的例子。然而,通过观察用户在自然域的一些行为,我们发现这位用户会观看与二胡相关的视频以及二胡周边配件等内容。对于不熟悉二胡的人来说,可能难以猜测他为何会购买千斤丝。我们将用户行为的提示(prompt)组织后输入到 ChatGPT 中,ChatGPT 表现出色,能够潜在地召回用户感兴趣的商品,例如琴弦。通过多轮对话激发其内部知识,ChatGPT 能够输出用户可能会购买千斤丝的结论。这个案例说明,LLM 内部所蕴含强大的世界知识和推理迁移能力,而这些正是目前 RecSys 所缺少的,目前 RecSys 优势在于历史行为的协同知识,因此,如何结合世界知识和协同知识,是我们要重点去攻克的问题。
我们在利用 LLM 去改造推荐系统也经历了 3 个阶段的探索。基于上面的发现,我们首先想到的也是最早应用的是利用预训练或轻度微调的 LLM 来抽取明文信息,无论是在 item 侧抽取物料信息,还是在 user 侧推理潜在的用户偏好,然后以明文特征的形式输出,作为 item 特征和 user 特征加入模型中,无论是通过 sparse 方式还是 dense 方式加入模型,都能获得不错的收益。这种方法相对简单直接,部署效率高。然而,这种方法高度依赖于对业务的理解,Prompt 工程高度依赖业务经验,且信息有损,很难完全挖掘 LLM 中的复杂世界知识和推理迁移能力(类似于以往基于大规模 ID 特征 + 非线性模型的推荐系统流行之前,依靠特征工程难以完全挖掘数据之间的非线性关系一样),因此,基于 prompt 的特征工程非常容易陷入一种一次性的工作,完成后难以进一步挖掘其价值。
基于此,在第二阶段,我们考虑了重度微调大语言模型,将其调整为推荐系统。先不考虑计算资源的问题,我们将推荐域的数据组织成文本形式对齐到大模型,包括数据组织和 loss 设计。这样做可能会面临一些问题,如一旦引入大量数据,大模型本身的知识就会出现灾难性遗忘,最终可能退化成一个大的基于 DNN 的传统推荐模型。再者,大模型的 context length 有限,对于行为活跃的用户,容易超出这个限制。第三个问题是效率问题,包括训练效率和推理效率,这也是一个实际落地的大问题,要将如此大的模型部署到线上,并在毫秒级别返回数据,这对工程和算法都是一个巨大的挑战。
针对上述问题,我们转变思路,考虑如何将大模型的知识迁移到目前的主流推荐系统中,以较低的资源消耗增强推荐系统。实现知识迁移主要是采用离线训练加在线适配的范式。
在实际操作过程中,离线部分,我们会将用户在平台上过去一年或几个月的数据按照设定的切分点进行切分,例如将未来一个月和过去九个月的数据分别作为测试集和训练集。然后,将用户行为过的商品或短视频等信息,比如商品标题、产品价格或相关权益信息等,输入到大模型中。通过大模型获得 content embedding,之后再通过训练一个用户偏好序列模型,来建模用户的兴趣偏好。通过这种方式,构建一个双塔模型结构,参数共享,同时训练 item 侧和 user 侧。我们认为最重要的是如何利用长期稳定的兴趣。因此,我们使用 dense all action loss 来进行训练,这是一种常用的方法。
在完成离线训练模型之后,如何在业务中在线使用它呢?我们在传统推荐模型上加了一个辅助塔,以解决特征上线和适配问题。我们在得到 user 侧和 item 侧的表征之后,会进行融合,并通过一些多层感知器(MLP)处理,最终实现对转化率(CVR)的 loss 监督,进一步微调我们得到的 embedding。此外,精排的 loss 也会回传到更新的 embeding 中。这样,将离线更新与在线更新解耦,从而能够在线上实现轻量级的部署,并在资源消耗较小且可控的情况下获得业务收益,感兴趣的读者可以参阅下述论文。
关于离线效果,我们最初是在业务场景数据上开展的这项工作。我们构建了如前所述的数据集,构建完成后进行离线验证并适配上线,结果表明我们能够获得稳定的线上收益,这主要体现在广告收入上。并且,实验结果表明,在冷启和长尾上的效果更为显著。我们与基于 ID 的一些 SOTA 方法,或 ID 与文本融合的 SOTA 方法,在 Amazon Review 数据集上进行了对比,公开数据集上测试结果表明该方法可以得到一个非常稳定的大幅提升,在零样本泛化场景中,甚至比某些场景下的全监督微调表现得更好。
以上就是我们近年来使用大模型和多模态增强推荐系统的一些工作。
最后做个广告,我们除了研究如何将大模型技术应用到广告推荐系统中,还在进行一些与广告 AIGC 相关的工作,我们发现,将用户的一些行为数据反哺到生产模型中,在特定场景下取得了超越纯人工制作生产投放流程的效果。欢迎对大模型和 AIGC 技术改造互联网广告生产投放业务感兴趣的同学和我们进行技术业务交流或简历投递,邮箱地址:chenquan06@kuaishou.com。
以上就是本次分享的内容,谢谢大家。
来源:DataFunTalk