本文整理自美团技术沙龙第81期《美团在广告算法领域的探索及实践》(B站视频)。首先介绍了美团搜索广告的三个阶段:多策略关键词挖掘、分层召回体系、生成式召回;然后重点介绍了生成式关键词召回、多模态生成式向量召回、生成式相关性判断在美团的实践。最后是一些经验分享及总结,希望能对大家有所帮助或启发。
从美团流量场景角度来看,美团搜索广告分为两大类,一是列表推荐广告;二是搜索广告。推荐广告以展现商家模式为主,通常叫商家流。搜索广告的展现形式比较丰富,有商家模式,即以商家展现为主,会挂上菜品/商品;还有商品模式,即以商品展现为主,以呈现商品大图、商品标题等核心商品信息为主。
美团搜索广告流量有以下几个典型特点:
上图展示了美团广告和传统广告之间一些的差异。 下面介绍围绕着召回率提升我们做的一些工作。美团的搜索广告从2019年开始建设,主要经历了三个发展阶段:
第一阶段是美团搜索广告启动阶段,我们叫多策略关键词挖掘阶段。这时的工程基建能力处于起步阶段,也缺乏线上反馈数据,另外考虑落地节奏,希望尽可能快的把整个系统从0到1搭建起来,并希望在数据有限的情况下,快速支持迭代效率。所以这个阶段的召回方式是SPU通过离线方式,挖掘核心关键词,在线与Query精确匹配。
第二阶段是分层召回体系,它是基于流量和供给特点,按照业务类型,聚焦在几个象限内,每个象限里采用更聚焦的针对性召回策略,进行优化。
第三个阶段是生成式召回。核心思路是借鉴生成式大模型的思路和能力,改造现有的召回技术体系,长期上来看,我们会探索DSI新召回范式。
大模型在C端流量的落地,会遇到很多算力瓶颈。经过一年的探索,我们形成了大模型落地的方式和原则,分为三类。第一是离线用能力构建领域微调大模型;第二是在线用大模型技术思想,结合传统模型改造现有模型能力;第三是通过蒸馏方式,在线尽可能学习离线大模型能力,通过蒸馏方式把大模型通用知识蒸馏到在线规模相对较小的模型上。
面临的挑战包括三个方面:第一是有算力焦虑;第二是在模型规模变得越来越大的情况下,如何保证模型迭代效率;第三模型的变化不能发挥模型能力本身的优势,我们希望构建以大模型核心能力基础为核心的架构,拿到更好的效果,但改造成本较大。
对于多策略关键词挖掘阶段,美团搜索广告的特点一是Query较短,平均长度也就两三个字,因为很多人在美团App搜索比如烧烤、西餐这种很泛但又很短的Query;二是流量分布比较集中,高频、Top几万的Query就占了大约70% ~ 80%的流量,头部效应比较明显;三是区别于业界传统的搜索广告,美团搜索广告商家没有买词能力,通常以整个店铺的投放模式为主。
基于这三个特点,我们设计了关键词挖掘策略思路。一由于Query很短,我们很容易通过信息抽取,把词或实体核心信息抽取出来;二是因为头部效应比较明显,Top2万的Query覆盖了很多流量,采用这种离线方式能快速拿到大部分收益;三是由于商家没有买词能力,如果用Query直接匹配商品,会涉及到传导文本匹配问题,匹配难度会更高,所以我们最后采用模型从商家商品里挖掘核心词,在线做短串匹配的方式。
如左下图所示的召回模式是离线,我们从广告或SPU里通过关键词挖掘的方式挖掘出关键词,在线通过Query改写的方式尽可能提升在线匹配效率。
具体来说,我们的关键词挖掘策略经历过三版迭代,按照技术由浅入深的方式做的。
所以在快速落地了规则式挖掘策略后,我们开始用模型方法自动挖掘关键词。模型通常有两种,抽取式和生成式。
从准确性和数据局限考虑,先采用的是抽取式挖掘方式挖掘关键词,这经过了三个阶段的策略迭代。第一版将规则式升级为了模型挖掘方式,传统上叫序列标注模型,这种模型只能挖掘出连续短串,好处是挖掘效率比基于规则的挖掘模式高,但会导致很多关键词受限于连续短串的方式而挖掘不出来;后面做了两版突破连续短串的挖掘方式,分别是标注组合模型和指针组合模型。标注组合模型能够跨越连续短串挖掘,但它有一个顺序概念在里面;指针组合模型可以在原有短串里随机组合词,突破顺序和连续的局限。但抽取式模型的准确率较高,探索空间不足。
在迭代了三版抽取式策略后,我们将策略重心聚焦在生成式挖掘方向上,希望突破字面极限,探索更大的流量空间,最后做了三个阶段的迭代。第一个阶段是深度分类模型,它能够突破字面限制,Top2万的Query能够覆盖大部分流量,那将SPU商品文本直接分类到这2万个Query标签里,做词和Query间的匹配,但这种多分类模型较难优化,也不能泛化出更多的Query,时效性和更新频率也有限;所以后来我们采用了深度生成模型,实现了相对广阔空间的挖掘,但受限于模型规模和样本丰富度,准确性不太好,所以我们在后面加了标注和生成模型,在具备生成泛化性的同时,尽量控制Query质量,以上所有模型都是传统NLP里的基础模型,我们只是把模型数据、业务特点做了适配。
未来,我们期望在关键词挖掘阶段,较好地解决了早期业务落地和基本盘问题,但是面对美团比较复杂的流量场景,还需要通过新方式强化流量,提高商品匹配效率。
2022年,我们开始正式规划第二代召回体系即分层召回体系,核心思路是按照流量和供给特点分类,强意图是直接搜索一个商品;泛意图比如搜索“烧烤”这个品类,泛意图用户虽然表达了需求,但满足需求的候选可以很广,甚至可以替代;供给层面分为有供给、弱供给和没有供给三个象限。我们找到核心象限聚焦优化,最终找到以下四类场景。
阶段2通过划分象限和场景聚焦迭代的方式,拿到了不错的收益,但很快也遇到了瓶颈。
2023年,我们开始探索新生成式召回方式,核心思路是结合大模型或生成式技术思想,提高召回算法的决策空间,提升模型的匹配能力。经过一段时间迭代,我们抽象出广告子模块结合LLM落地的三类思想及方式,分别是用思想、学能力、用LLM。具体和子模块结合的一些探索如下:
下面我主要介绍下结合LLM的能力,在召回场景下已经全量的一些技术探索。
生成式关键词召回
通过这种方式,召回得到明显提升,而且生成相关性的准确度也得到明显提升。
对于离线关键词,前面是中等规模的模型,我们最近把整个离线关键词替换成大模型,之前没有替换是因为开源通用大模型能力在领域场景里,挖掘词的准确性和通用性有限,我们一直在构建美团广告领域的大模型,通过激发大模型知识,生成更全面准确的模型,我们做了3个阶段的优化。
第一是融合领域知识,比如健身和轻食相关,这是领域知识,通过领域全参数训练得到一个基础的广告领域模型。第二是融入场景知识,美团有很多店铺和商品名,比如川菜和眉州东坡在店铺里有很多相关数据。通过这种指令微调的方式学习店铺知识,在实际应用时,再学习偏实际的知识,比如搜索“猪手”时,发现他之前检索过很多“猪肘切片”,通过这种检索方式增强大模型当前推理知识能力。最后通过构建领域大模型和检索增强范式,在一些场景里替换传统大模型,这样,我们发现召回效率明显提升。
多模态生成式向量召回——结合扩散模型,多阶段生成向量表征
我们改造或优化多模态向量召回,在表征里结合扩散模型做了优化,如下图左边所示,传统的多模态向量召回更多是在item侧表征里,将商品图片和文本模态信息融合在一起,得到一个表征,那能否通过一些方式在Query侧也实现多模态表征。一个用户在美团场景里搜索一个Query时,大概率他的脑海里已经有关于这个Query所对应菜品图片的大致印象。那我们如何通过模型建模的方式还原图片的印象,核心在于还原用户的潜在意识。我们的做法是,一是把Query历史点击的图片信息汇集在一起,表征Query所代表的通用视觉信息;二是将用户历史点击图片代表用户个性化视觉信息,把这两类视觉信息叠加在一起,可以在一定程度上反映用户在当前搜索框架下,想要得到的流量侧多模态信息,最后通过多模态表征匹配技术,整个离线召回效率也有提升。
但这种方式也是基于传统的判别式表征,比如现在大家都在做个性化向量召回,相关性和个性化之间有递进关系,最浅层的需要保证相关性,第二层才需要在相关性里挑选更个性化、更符合用户偏好的候选集,给到下游链路。但传统的判别式方式一般在特征阶段叠加不同特征,通过建模、多目标落实反向迁移方式,不能很好的显式学习到不同目标间的递进关系,但SD生成模型比较适合这种稠密向量生成,通过多步还原过程,本质上也是一个不断推理的生成式过程。
我们希望向量表征具备不同信息的推理能力,SD的多步加噪去噪过程类似于推理过程,可以相结合,在不同步骤中引入不同维度的信息,做到多维信息的显式理解及融合。在正向编码过程中,先将item通过编码器编码成向量后,逐渐加噪还原成白噪声,在反向去噪还原过程中,在噪声里分阶段添加用户Query以及side info信息,通过多步还原的方式,还原出Query所代表的信息。并有两个对比的操作,一是传统的样本Paiwise学习,通过对比学习方式拉近Query与相似Item的表征;二是我们认为相似item有类似的标准过程,通过对比学习拉近相似item之间在扩散中间过程的表征,这是整个建模过程。
在还原阶段,我们会显式还原中间步骤叠加相关性信息、个性化信息,通过对比方式让模型在还原过程中显式相关性和个性化信息,最后在模型结果里能看到,如下图左边是传统的判别式模型里最好的一个Baseline,它能够较好区分Query和正样本信息,但它在个性化样本和相关性样本里基本是混在一起的,通过这种扩散模型方式,相关性样本和个性化样本就有一定程度区分开来的能力。
生成式算法相比判别式,能够有效的拓展整个召回的策略空间,2023年我们基于大模型的技术思想赋能现有的召回模型拿到了一些效果,但远未达到新技术方式的上限。看未来,一方面随着算力的逐渐提升,我们可以探索更大规模的生成式模型直接落地,另一方面可以探索在线的端到端生成式召回,来优化多级漏斗带来的样本偏差和漏斗效率问题。