阿里妈妈:品牌广告中的 NLP 算法实践


本文地址:http://www.6aiq.com/article/1569575845555
知乎专栏 点击关注
本文版权归作者和AIQ共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出

分享嘉宾:肖国锐 阿里 高级算法专家
编辑整理:陈道昌
内容来源:DataFun AI Talk
出品社区:DataFun

03c78e489fd244269efd2ac8c7c7c26c-image.png

导读: 本次分享的主题为阿里妈妈品牌广告中的 NLP 算法实践,主要内容包括:

1. 品牌广告业务模式与技术架构的简要介绍

2. NLP 算法在品牌搜索广告中的实践,以两个具体的算法问题展开:品牌意图识别和短文本相关性

▌品牌广告业务模式与技术架构

1. 阿里妈妈品牌广告业务概况

阿里妈妈品牌广告构建了丰富的产品矩阵,有强大的生态资源支撑,其中手淘是最大的资源方,阿里系的多个 APP 也是我们重要的资源提供方。品牌广告产品分为两个重要方向——品牌展示广告、品牌搜索广告。其中品牌展示包括超级风暴,整合了各个 APP 开屏页的广告;品牌特秀,主要指手淘内具有稀缺性的 banner 展示广告;以及优酷和 OTT 等视频广告。售卖模式上,品牌展示广告基本以定价保量模式售卖。品牌搜索广告包括两个重要产品,一是明星店铺,以 CPM 模式售卖,二是品牌专区,以 CPT 模式进行售卖。

2. 确定性诉求决定品牌广告业务模式与技术方案

大家可能比较了解效果广告的业务模式与技术架构,那品牌广告如何运作呢?它与效果广告差异非常大,核心差异来自于品牌广告要满足品牌广告主的最大诉求,即确定性。确定性体现在品牌广告全链路强烈的可控性——下单前,对明确的资源进行询量,事先锁定资源;下单后,签订合约,并以固定广告预算进行投放;最后,按合约拿到确定性的投放结果,比如触达多少 UV、PV,N+ Reach、TA% 分布如何。

基于此,品牌广告业务和技术可以分为询量、下单、投放与评估四个阶段。询量阶段,和效果广告类似,需要实现定向体系。不同点是,需要对定向做流量和可用库存的预估。下单阶段,需要根据广告主确定要购买的定向、时段、预算,进行库存管理,比如库存的扣除或者释放,以及对订单进行报价。投放阶段,会面临多订单流量重叠的情况,要保证广告合约的确定性,技术上会涉及流量分配。在评估阶段,一般需要进行结案报告,如果是纯人工的方式效率会很低,因此我们需要有自动化的洞察、结案系统。最后,对投放的数据资产需要有沉淀的能力,实现持续化的消费者运营。

3. 阿里妈妈品牌广告技术架构

简要看一下阿里妈妈的品牌广告的技术框架。首先,从广告主侧视角看,广告主(客户)到达时,首先通过询量平台对要采购的流量、人群、时段和地域等各种定向进行询量询价,背后提供支撑的是库存管理、流量预估和定向技术。订单下单后,将构建广告索引,通过广告引擎实现在线投放,这里面涉及到的关键模块是在线投放、智能创意 / 频控。另外,从流量侧视角看,一个流量到来,会由统一的流量接入与分发层处理,根据流量类型分发到不同的引擎,效果广告或者品牌广告引擎。

这里要说的是,品牌广告内部的展示广告与搜索广告在重点技术模块上存在差异。品牌展示广告在整个链路上的重要模块是库存管理与流量预估,以及在线阶段的流量分配。这些是业内研究十分深入的方向,有很多技术资料,这里不做展开。品牌搜索广告,除了以上常规问题,其特殊问题还包括定向技术、智能创意模块,今天会重点分享。

4. 品牌搜索广告产品形态

我们认识一下品牌搜索广告,左图是业内一种产品形态,右图是阿里品牌专区的一种形态。从技术视角看一下,品牌搜索广告需要解决什么样的问题。首先,需要判别触发词是有品牌意图的 query。上面的两个例子比如“奔驰”、“BALLY 男包”,我们去理解它的品牌意图是非常容易的。对比来看,我们去判断“鲨鱼女包”的品牌意图可能就有点不确定了,甚至部分女生也不太了解鲨鱼是一个包包品牌。再比如“苹果 8 手机膜”,苹果是手机品牌,但是这样的流量不是品牌广告想要的,因为这个 query 的背后的意图不是买苹果品牌的商品,而是要买某品牌的苹果手机膜。

另外一个问题是广告匹配约束。品牌广告比效果广告有更强的广告相关性要求,它体现在两个层面。第一,流量与广告主需要品牌匹配,广告主可以将品专作为品牌专属的营销阵地。第二个层面是品牌效果层面的约束,广告主希望广告互动率要尽量的高,对于搜索广告需要解决 query 与广告创意内容的语义匹配。

▌NLP 算法在品牌搜索广告中的实践

1. 品牌搜索广告中的 NLP 任务

我们对上述问题进行提炼,包含两个技术模块,定向技术与智能创意技术。背后支撑三个重要业务能力:

第一是品牌流量的挖掘能力,扩充广告流量库存;

第二是品牌流量分配,解决广告主与流量的品牌匹配问题;

第三是智能创意匹配,解决的是广告内容与流量的匹配问题。

进一步,算法上对应两个 NLP 任务:

1. 品牌意图识别;

2. item 到 query 的短文本相关性。

下面重点介绍这两个任务的算法实践。

2. 品牌意图识别

① 问题定义 **
**

品牌意图识别问题描述为,给定一个 query 去识别其是否具有搜索某 brand 下商品的意图。首先,该问题看起来与 entity linking 相似,但实质不同。如刚刚已经看到了一个例子“苹果 8 手机膜”,entity linking 要识别苹果是一个品牌 mention。但这并不是该任务要解决的问题,而是要识别这个 query 是否有搜索“苹果”品牌的强意图。可以将其看作 classification 问题。我们将解决方案分两个步骤:第一步是 blocking,对给定 query Q 圈选候选品牌 brand B,形成一对一的候选 < Q , B >;第二步是 matching,识别 < Q , B > 是否有相关意图。其中,blocking 可以采用一些启发式的规则,产生 Q 和 B 的候选集。我们将重点介绍 matching 的模型演进。

② 模型选型

我们对品牌意图识别 matching 模型的演进分为三个阶段,已经完成的是前两个阶段,正在进行第三个阶段。前两个阶段主体思想是基于 Bert 进行 fine-tune。Bert 针对不同的 NLP 任务都有典型的建模方式,在该任务中,可以应用的有两个——Entailment task 与 Multi-Choice task。Entailment 任务中,Q 侧信息作为 Premise,B 侧信息则作为 Hypothesis。Multi-Choice 任务中,B 和 Q 分别作为 Context 和 Answer。



③ 模型演进

我们详细看一下 Entailment 模型实践,思路是对候选 < Q , B > 经过 Entailment Model 做一个预测,输出 match or no-match。其中,我们重点做了样本特征和模型结构上的一些设计。首先,样本特征上为了引入结构化的外部信息,我们将 Q 和 B 两个 segment 进行了三个 small segment 切分。在 Q 侧,small segment 分别是 query 本身、query click 的商品标题、query 的类目预测信息。B 侧也是一样的,分为候选 B 的标准品牌名称、品牌所属真实商品标题、品牌经营的类目信息。这是模型样本输入。对应地,我们在模型结构上针对 small segment 加入了一层 embedding,以更好地捕捉样本设计中的结构化信息。后续则正常输入到 Bert 进行 encoding,经过 n 层 dense layer 输出预测结果。

模型演进的第二阶段是 Multi-Choice 模型。Motivation 是 blocking 步骤可能会产出单 query 命中多个 brand term 的情况,Entailment 任务属于 pointwise 形式的建模,对多 brand term 的打分可比性未直接的做约束和学习,可能导致品牌意图识别错误。例如,“华为荣耀 9X”匹配到两个候选品牌“华为”和“荣耀”,在具体业务场景中需要精确的识别其品牌意图为“荣耀”,而不能是华为。通过上一个部分介绍,我们可以了解到基于 Bert 进行 Multi-Choice 模型结构;在特征层面,Q 和 B 仍然采用一样的 small segment 特征。但在样本构造上,我们进行了一些工作。生成 < Q , B > 时,B 可能只有一个候选 brand term,这时需要提取多个候选的 < Q , B >,构成 Multi-Choice 的大样本。如果 Q 只有一个候选正样例 B,则在 query 的类目下 resample 出 N 个候选负样例 B;反过来,对于 Q 只有候选负样例 B 的情况,我们则对 B resample 一些正样例 Q。如上,从样本到模型构建了完整的 Multi-Choice 训练和预测流程。

④ 模型评价与技术展望

模型评价结果反映了 Multi-Choice 相对 Entailment 有一定效果提升。但是基于 Bert 预训练的语言模型无法解决语义鸿沟问题,尤其是当我们面临一些 knowledge-driven 的问题时,如果不引入 knowledge,模型效果很难有本质的提升。我们再看几个例子:

1. 刚刚已经提到了“华为荣耀 9X”;

2. “阿迪运动鞋”,人很容易感知阿迪是一个品牌,但是机器无法识别,这时最好建立“阿迪”与“阿迪达斯”标准品牌的同义关系,同时构建“阿迪达斯”可以经营“运动鞋”类目的知识;

3. “小棕瓶眼霜”没有直接的品牌 mention,但要理解“小棕瓶”是“雅诗兰黛”强专属度的产品别称,同时“雅诗兰黛”在经营“眼霜”类目。

以上知识的需求,驱动我们构建营销领域的品牌知识图谱,然后基于 knowledge graph 进行 NLP 建模。目前业内关于 KG 与 NLP 任务结合的研究已经变得非常火热,值得大家关注。

3. 短文本相关性

① 问题定义

第二个算法任务是短文本相关性。问题描述是,给定一个品牌意图词 query 与广告商品 item,计算 < query , item > 短文本的相关性。可以把它理解为语义匹配的问题,采用 learning to rank 解决。进一步的形式化,给定查询的短文本 Q 和对应短文本 D,判别相关性档位,相关性从 0 到 5 相关性由弱到强。

对于这类问题,我们的评估指标有 AUC 和 NDCG 等。

② 样本数据

NLP 监督学习有一个很大的难点,即需要大规模有监督样本,但是其标注工作量巨大,将耗费大量人力和时间,一般公司难以承受。我们的解决思路是,先对测试样本进行人工标注,得到 6 万个样本,标注为 0-5 档层级。但是对于模型训练,采用 6 万规模的样本远远不够。我们的想法是把 learning to rank 的问题简化为一个二分类问题,判断相关还是不相关,而训练样本生成采用弱监督 + 数据增强的方法。弱监督的一种形式是,采用的数据标注不一定完全正确,但能一定程度上反应数据的相关性。淘宝用户的搜索点击行为就可以构建这样的弱监督样本。正样本非常明确,即 query 点击的商品 item 作为正样本。但未点击的 item 并不等价于不相关,我们需要人为的构建负样本。我们在负样本选取上做了大量工作,例如 query 无点击且 VSM 低的 item,再如与当前 query 低相似度的 query 点击的 item。另外,我们也做了大量的数据增强的工作,不在此展开。

③ 模型演进

构建完样本,考虑如何建模。我们最初的建模思路是采用经典的 DSSM 模型:对于 query Q,其正负样本 item title 用 D 代表,可以构建样本集合 < Q , D+ , D- >,作为 DSSM 的输入样本。我们发现对于 DSSM 模型结果,其算法评测指标比较理想。但在应用层面出现了问题,体现在候选 < Q , D > 的预测得分分布是偏正太分布。前面讲到,品牌广告业务需要满足广告主的确定性,广告主对流量规模、广告效果的稳定性高度关注。业务中需要决策相关性阈值进行 query 分配截断,正太分布下的阈值选择会导致不同天的 query 集合变动非常大,进而带来流量规模与广告效果的不确定性。

为了解决这个问题,我们做了模型升级。我们注意到 DSSM 拟合的是相似度偏序关系,即对任意 x+, x-: P(x+)>P(x-);那么对于样本 x,从最大熵的角度看 distribution P(x) 可能更趋向正太分布。我们希望模型直接拟合伯努利分布,即 x+:p(x+)=1, x-:p(x-)=0,这将使得 P(x) 的分布呈现哑铃状。我们考虑从 DSSM 的 pairwise 模型转到 pointwise 的二分类模型,以此来降低阈值选择的影响。另外,希望在新模型上进一步优化效果 (DSSM 模型基于高层语义表征计算相关性,缺少底层的信息交互) :新模型采用 Compare-Aggregate 架构,在 word-level 就引入了 attention 信息交互。结果表明,新模型使得样本预测得分呈现了哑铃状的理想状态,阈值截断影响大大降低。

④ 算法评价

从模型评价上看,Compare-Aggregate 在各个指标上全面超越了 DSSM。这里有两点 Insights:

1. 面对阈值决策问题时,为了大大降低阈值对结果稳定性的影响,模型选择上建议考虑拟合伯努利分布,避免拟合正太分布。

2. DSSM 这样的 representation-based model 存在两点局限性:

  • 模型假设了高层语义表征能够线性可分,但该假设无法验证。

  • 模型结构上只在最终的 comparison 阶段才有 Q 和 D 的第一次交互,隐层表示缺少足够的信息交互;而 Compare-Aggregation 模型本质是 interaction-based model,从 word level 就开始进行信息交互,获得了更好的向量表示。

我们认为基于 Bert 上做 fine-tuning 的部分任务也是同理。

▌总结

最后总结和分享一下我们在具体的业务场景进行 NLP 实践的感受:

  • NLP 监督学习任务中样本数据获取是难点,可以考虑弱监督与数据增强。在模型方面,深度学习越来越工具化,可以针对实际问题在模型结构上做些思考和创新。

  • 针对业务场景发现问题、定义问题,是应用算法工程师的核心竞争力;解决问题是应用算法工程师的基础门槛。

  • 建议算法实践以履带式推进,这点与学术界有所不同,工业落地需要小步快跑,低成本试错,稳步迭代。


本文地址:http://www.6aiq.com/article/1569575845555
知乎专栏 点击关注
本文版权归作者和AIQ共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出