百度搜索广告召回模型-莫比乌斯案例解析百度作为国内最大的中文搜索引擎,其搜索广告业务一直是公司收入的支柱。为了提升广告效果和用户满意度,百度在搜索广告召回模型上进行了诸多创新,其中莫比乌斯(MOBIUS)召回模型便是一个典型的案例。一、背景与问题在搜索广告系统中,由于候选广告数量巨大,为了兼顾性能和效果,通常采用经典的漏斗结构,即召回-粗排-精排-重排等模块。在召回层,主要以相关性为准则来匹配与用户查询(query)相关的广告(ad)。然而,这种侧重相关性的召回方式带来的问题是,候选广告虽然与查询相关,但其商业价值可能较低。莫比乌斯项目的出发点正是为了解决现有召回层存在的漏斗上下游目标不一致的问题。具体而言,该项目希望在召回层除了考虑query-ad的相关性外,还将千次展现收益(CPM)等商业目标也作为召回的优化目标。二、莫比乌斯召回模型1. 训练样本构造莫比乌斯召回模型在训练样本的构造上颇具创新。样本分为三类:展现有点击、展点未点击和人工构造的badcase样本。展现有点击:这类样本可以从日志中直接获取,表示用户查询与广告之间存在明确的点击行为,即相关性较高。展点未点击:这类样本同样可以从日志中获取,表示用户查询与广告被展示但未点击,即相关性较低或用户兴趣不匹配。人工构造badcase样本:这是莫比乌斯项目的亮点之一。首先,从点击日志中获取一个batch的数据,然后获取其中的query集合与ad集合,进行两两交叉配对得到query-ad pair。接着,调用相关性模型对每个query-ad pair进行相关性打分,筛选出相关性得分低的pair。再调用召回模型对这些相关性较低的pair进行点击率打分(使用召回模型softmax输出层的click目标),取出点击率高但相关性低的query-ad pair作为人工构造的badcase样本。2. 模型结构及训练流程莫比乌斯召回模型采用的是双塔结构。由于训练样本有三类,分别对应三个label(即click、unclick、bad),因此输出层为三分类的softmax层。左塔产出三个user query向量,右塔产出三个ad向量,两两分别内积得到三个score作为softmax层的输入。训练流程方面,在构造得到第三类样本后,将所有样本输入给三分类的softmax双塔模型进行训练。通过优化模型参数,使得模型能够准确区分三类样本,从而实现对候选广告的精准召回。3. ANN检索在得到训练好的模型后,需要进行候选广告的检索。由于模型输出的是三个向量(分别对应click、unclick、bad三个目标),因此需要选择其中一个向量进行ANN(近似最近邻)检索。这里选择click目标对应的向量进行检索,因为softmax的内在约束性使得click目标的分数高时,unclick和bad目标的分数低,符合对候选广告的要求:点击率高且badcase可能性小。此外,为了进一步提升检索效果,还引入了候选广告的商业价值。文中提出了两种策略:一是先按点击率目标进行ANN检索出候选广告,再基于候选广告的商业价值做重排序;二是采用MIPS检索,在全库ANN检索时就将商业价值的权重考虑在内。三、小结莫比乌斯召回模型通过引入商业目标(如CPM)作为召回层的优化目标,解决了传统搜索广告召回层存在的漏斗上下游目标不一致的问题。在建模方式上,采用了三分类的softmax双塔模型,得到了与用户查询匹配的点击率高且相关性较好的候选广告。这一创新不仅提升了广告效果和用户满意度,也为搜索广告领域的发展提供了新的思路和方法。四、思考与展望其他建模方式:除了采用莫比乌斯的三分类softmax方式外,还可以探索其他建模方式来实现召回层的相关性和商业目标的优化。例如,可以利用深度学习中的多任务学习框架,同时优化多个目标函数;或者采用强化学习方法,通过模拟用户行为来优化广告召回策略。引入CVR的建模:在召回模型的优化目标中除了点击率(CTR)外,若需再引入转化率(CVR),可以考虑构建联合优化模型。这种模型需要同时考虑CTR和CVR两个目标函数,并通过适当的权重进行平衡。此外,还可以利用深度学习中的注意力机制等方法来捕捉用户查询与广告之间的复杂关系,进一步提升召回效果。



































