再看同义变换在百度搜索广告中的应用总结

一、概述

原文:同义变换在百度搜索广告中的应用,https://mp.weixin.qq.com/s/ybkbU8p_3jgKuCGdNWeG8w

在这里插入图片描述

二、 关键词匹配问题定义

2.1 定义
  1. 输入:query、匹配模式、关键词库
  2. 输出:满足匹配的全部关键词
  3. 限制:匹配模式
2.2 例子:
  • ○ query:双眼皮手术多少钱?
  • ○ Match type:精确匹配
  • ○ 一些典型的目标召回关键词:
    • ■ 双眼皮手术的价格?
    • ■ 双眼皮手术多少钱?
    • ■ 割一个双眼皮花多少钱?

三、 问题挑战

Semantic Gap:用户和广告主表达不一样?

3.1 对于医疗:同一个tab可能能代表多个意思。
  1. 例如:实体:糖尿病: tab:治疗
    a. 1. 糖尿病的治疗方法
    b. 2. 得了糖尿病该如何治疗?
    c. 3. 糖尿病有哪些治疗方法?
    d. 4. 患者得了糖尿病一般有哪些治疗方法?:https://wap.sogou.com/web/searchList.jsp?from=index&pid=sogou-waps-7880d7226e872b77&t=1639982337252&s_t=1639982338943&s_from=index&pg=webSearchList&inter_index=&keyword=%E6%82%A3%E8%80%85%E5%BE%97%E4%BA%86%E7%B3%96%E5%B0%BF%E7%97%85%E4%B8%80%E8%88%AC%E6%9C%89%E5%93%AA%E4%BA%9B%E6%B2%BB%E7%96%97%E6%96%B9%E6%B3%95&suguuid=c9f2b141-8d02-40c7-b628-508733d9a961&sugsuv=AAEdW%2FhZOgAAAAqgMiUbAwEAAAA&sugtime=1639982338943
    e. 5. 患者得了2型糖尿病一般有哪些治疗方法? https://wap.sogou.com/web/searchList.jsp?dp=1&pid=sogou-waps-7880d7226e872b77&t=1639982385377&s_t=1639982391067&s_from=result_up&n_s_from=up_input&htprequery=%E6%82%A3%E8%80%85%E5%BE%97%E4%BA%86%E4%B8%80%E5%9E%8B%E7%B3%96%E5%B0%BF%E7%97%85%E4%B8%80%E8%88%AC%E6%9C%89%E5%93%AA%E4%BA%9B%E6%B2%BB%E7%96%97%E6%96%B9%E6%B3%95&keyword=%E6%82%A3%E8%80%85%E5%BE%97%E4%BA%862%E5%9E%8B%E7%B3%96%E5%B0%BF%E7%97%85%E4%B8%80%E8%88%AC%E6%9C%89%E5%93%AA%E4%BA%9B%E6%B2%BB%E7%96%97%E6%96%B9%E6%B3%95&pg=webSearchList&rcer=QNz_aJ4iY4Gcw-M3&s=%E6%90%9C%E7%B4%A2&suguuid=367c32b0-5190-4684-9540-d263b28ecc2e&sugsuv=AAEdW%2FhZOgAAAAqgMiUbAwEAAAA&sugtime=1639982391066
    f. 6. 小孩子患者得了2型糖尿病一般有哪些治疗方法?https://wap.sogou.com/web/searchList.jsp?dp=1&pid=sogou-waps-7880d7226e872b77&t=1639982450524&s_t=1639982453334&s_from=result_up&n_s_from=up_input&htprequery=%E5%AE%9D%E5%AE%9D%E6%82%A3%E8%80%85%E5%BE%97%E4%BA%862%E5%9E%8B%E7%B3%96%E5%B0%BF%E7%97%85%E4%B8%80%E8%88%AC%E6%9C%89%E5%93%AA%E4%BA%9B%E6%B2%BB%E7%96%97%E6%96%B9%E6%B3%95&keyword=%E5%B0%8F%E5%AD%A9%E5%AD%90%E6%82%A3%E8%80%85%E5%BE%97%E4%BA%862%E5%9E%8B%E7%B3%96%E5%B0%BF%E7%97%85%E4%B8%80%E8%88%AC%E6%9C%89%E5%93%AA%E4%BA%9B%E6%B2%BB%E7%96%97%E6%96%B9%E6%B3%95&pg=webSearchList&rcer=QNz_aJ4iY4Gcw-M3&s=%E6%90%9C%E7%B4%A2&suguuid=3d4343e5-703f-431e-b1ff-a5dd61e70a52&sugsuv=AAEdW%2FhZOgAAAAqgMiUbAwEAAAA&sugtime=1639982453334
    g. 7. 患者眼睛得了白内障该如何治疗? https://wap.sogou.com/web/searchList.jsp?dp=1&pid=sogou-waps-7880d7226e872b77&t=1639982454129&s_t=1639982494605&s_from=result_up&n_s_from=up_input&htprequery=%E5%B0%8F%E5%AD%A9%E5%AD%90%E6%82%A3%E8%80%85%E5%BE%97%E4%BA%862%E5%9E%8B%E7%B3%96%E5%B0%BF%E7%97%85%E4%B8%80%E8%88%AC%E6%9C%89%E5%93%AA%E4%BA%9B%E6%B2%BB%E7%96%97%E6%96%B9%E6%B3%95&keyword=%E6%82%A3%E8%80%85%E7%9C%BC%E7%9D%9B%E5%BE%97%E4%BA%86%E7%99%BD%E5%86%85%E9%9A%9C%E8%AF%A5%E5%A6%82%E4%BD%95%E6%B2%BB%E7%96%97&pg=webSearchList&rcer=QNz_aJ4iY4Gcw-M3&s=%E6%90%9C%E7%B4%A2&suguuid=a4732cac-a3f1-4a63-ad21-07172bac6202&sugsuv=AAEdW%2FhZOgAAAAqgMiUbAwEAAAA&sugtime=1639982494605
    h. 8. 患者鼻子得了白内障该如何治疗? https://wap.sogou.com/web/searchList.jsp?dp=1&pid=sogou-waps-7880d7226e872b77&t=1639982495345&s_t=1639982630036&s_from=result_up&n_s_from=up_input&htprequery=%E6%82%A3%E8%80%85%E7%9C%BC%E7%9D%9B%E5%BE%97%E4%BA%86%E7%99%BD%E5%86%85%E9%9A%9C%E8%AF%A5%E5%A6%82%E4%BD%95%E6%B2%BB%E7%96%97&keyword=%E6%82%A3%E8%80%85%E9%BC%BB%E5%AD%90%E5%BE%97%E4%BA%86%E7%99%BD%E5%86%85%E9%9A%9C%E8%AF%A5%E5%A6%82%E4%BD%95%E6%B2%BB%E7%96%97&pg=webSearchList&rcer=QNz_aJ4iY4Gcw-M3&s=%E6%90%9C%E7%B4%A2&suguuid=3ac2cab6-d0e9-4062-9b2c-d3069ff0c641&sugsuv=AAEdW%2FhZOgAAAAqgMiUbAwEAAAA&sugtime=1639982630036

总结:一个tab下的内容比较泛,并且句子和句子间存在gap

3.2. 工程性能:关键词量级比较大,无论在线还是离线,计算资源都非常有限。
  1. 队列压缩:在keyword端,关键词匹配中,一个query通常会触发得到大量的候选关键词,基于同一关系,压缩关键词,减少计算量。
  2. 基于代表元来触发:原始keyword词库->压缩->代表元库->触发线上query

四、方案

  1. 从规则触发,短语粒度同义词替换,句子级别同义pair挖掘
  2. 数据驱动的模型泛化,数据,模型,泛化
4.1 数据源:
  • ● 系统外部
    • ○ 搜索点击日志 query-title
    • ○ Session日志,query-query,共点query
    • ○ 协同过滤
      • ■ query-query相似度计算,基于用户点击url
      • ■ keyword-keyword相似度计算
    • ○ 规则替换
  • ● 系统内部
    • ○ 商业点击日志query-keyword
4.2 模型:

● 三种模型思路:seq2seq生成模型,双塔模型(语义的度量模型),或者图模型

4.2.1 基于seq2seq模型来泛化召回

Q1原来有3个召回结果A、B、C,基于模型,定向再关键词库中做召回,有可能把A1,B1也召回出来。

  • ● 优点:
    • ○ end2end建模
    • ○ 语料ok的情况下,质量很好
    • ○ 简单,正例驱动
  • ● 缺点:
    • ○ 效率低
      • ■ decode阶段比较慢
      • ■ 冗余翻译
    • ○ 定向翻译
      • ■ 不能保证decode出来的结果都是keyword
    • ○ 训练和预测不一致,训练是一对一,目标是一对多
4.2.2 效率问题改进一之规范化
  1. 翻译->冗余度高->在query和keyword端,都先进行归一化,然后再规范化的空间中来做匹配。

规范化步骤:冗余词去除,副词,标点符号处理
统一模型来校验

4.2.2 泛化能力提高之基于概念来泛化
  • ● 数据驱动的硬伤
    • ○ 没有数据就驱动不了
    • ○ 往往只学到了数据上的共线,缺乏概念抽象推理功能
      • ■ 样本:眼睛得了白内障该如何治疗 = 白内障治疗方法
        • ● https://wap.sogou.com/web/searchList.jsp?dp=1&pid=sogou-waps-7880d7226e872b77&t=1639985538116&s_t=1639985556479&s_from=result_up&n_s_from=up_input&htprequery=%E5%98%B4%E5%B7%B4%E5%BE%97%E4%BA%86%E5%8F%A3%E8%85%94%E6%BA%83%E7%96%A1%E8%AF%A5%E5%A6%82%E4%BD%95%E6%B2%BB%E7%96%97%EF%BC%9F&keyword=%E7%9C%BC%E7%9D%9B%E5%BE%97%E4%BA%86%E7%99%BD%E5%86%85%E9%9A%9C%E8%AF%A5%E5%A6%82%E4%BD%95%E6%B2%BB%E7%96%97&pg=webSearchList&rcer=hNz_aRIBWIwCGa7H&s=%E6%90%9C%E7%B4%A2&suguuid=53352eda-e172-4537-b305-7249783b9fd5&sugsuv=AAEdW%2FhZOgAAAAqgMiUbAwEAAAA&sugtime=1639985556479
      • ■ 概念推理?:嘴巴得了口腔溃疡该如何治疗?口腔溃疡治疗方法
        • ● https://wap.sogou.com/web/searchList.jsp?dp=1&pid=sogou-waps-7880d7226e872b77&t=1639983300865&s_t=1639985537209&s_from=result_up&n_s_from=up_input&htprequery=%E9%BC%BB%E7%82%8E%E4%BC%9A%E5%BC%95%E8%B5%B7%E5%A4%B4%E7%97%9B%E5%90%97&keyword=%E5%98%B4%E5%B7%B4%E5%BE%97%E4%BA%86%E5%8F%A3%E8%85%94%E6%BA%83%E7%96%A1%E8%AF%A5%E5%A6%82%E4%BD%95%E6%B2%BB%E7%96%97%EF%BC%9F&pg=webSearchList&rcer=hNz_aRIBWIwCGa7H&s=%E6%90%9C%E7%B4%A2&suguuid=a26ea590-2863-4d2d-bd24-c6669f22a461&sugsuv=AAEdW%2FhZOgAAAAqgMiUbAwEAAAA&sugtime=1639985537209
  • ● 解决办法
    • ○ UNK问题:copyNet,pointerNet
    • ○ 概念实体识别
      • ■ 眼睛得了白内障该如何治疗
      • ■ 【body】【disease】治疗方法 -> disease治疗方法
      • ■ 嘴巴得了口腔溃疡该如何治疗?=> 口腔溃疡治疗方法
4.2.3 基于语义度量来做同义泛化

翻译模型改成:=>语义向量模型,在语义向量空间寻找k近邻

  • ● 思路:
    • ○ 投影到共同的语义度量空间中
    • ○ 同义的query-keyword在度量空间中近邻
  • ● 分两步
    • ○ 投影
    • ○ 寻找k近邻

获得投影算子

  • ● 投影算子
    • ○ BOW/CNN/RNN/Transformer
  • ● 度量
    • ○ Euclidean distance / cosine
  • ● 数据
    • ○ 整理:base data
    • ○ 负例:Random negative,other match type data

基于度量空间=>层次kmeans构建树形索引=>log(n)时间定为到分桶

4.2.4 基于图模型来做同义泛化
  • ● 思路:
    • ○ query和keyword都看成node
    • ○ 是否同义看成是边
    • ○ 优点:
      • ■ 引入更多图的数据,融入异构数据
        • ● session日志
        • ● 用户点击日志
  • ● 通过预测query-keyword是否存在边来做吗?

步骤

  1. 构造图
  2. 计算每个节点的低纬表达
  3. 为每个节点寻找k近邻
4.2.5 总结

● 基于高质量的种子数据=>抽象出模型=>泛化得到delta数据

4.3 badcase修复方法
4.3.1 定义:定义成一个同义判定的问题
  • ● F(query, keyword) = 0 or 1
4.3.2 方法1. Feature-driven: 人工特征+少量标记数据+浅层模型
  • ○ 词粒度的匹配度计算
    • ■ 最大匹配长度,miss/match,bm25
    • ■ 命名实体的相似度、句法依存、文档分类
    • ■ 语义相似性
      • ● DSSm搜索点击数据
    • ■ 搜索检索结果的相似度
    • ■ 数据
      • ● 少量人工标记数据
    • ■ 模型
      • ● 浅层DNN,GBDT
4.3.3 方法2. Data-driven:transformer+弱监督预训练+domain finetuning
  • ○ 多阶段预训练+finetuning
    • ■ ERNIE Large -> 弱监督数据 -> 人工标记数据
  • ○ 数据
    • ■ 海量弱监督数据
      • ● 用户侧query-query,商业侧keyword-keyword,query-keyword,负反馈数据
    • ■ 少量人工标记数据
      • ● 主动学习、概念增强
    • ■ 训练
      • ● 多阶段预训练 + finetuning + 对抗训练
    • ■ 效果
      • ● 远超特征驱动的模型
        • ○ 大模型容量+海量的数据预训练=>更多同义知识
        • ○ Transformer中多头注意力起到了软对齐的作用
4.3.4 数据增强,为标记样本做最充分的数据增强
  • ○ 人工标记样本太少
  • ○ 基于同义变换来增强
  • ○ 基于概念标注来增强
    3.3.5. 开放性问题,盲区数据补充
  • ○ 其他盲区 => 弱监督数据起到了盲区补充的作用
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值