加词,加产品,调价是广告主的核心问题,为了解决广告主加词的问题在阿里巴巴以及速卖通的账户后台提供了加词利器——先知,一键解决广告主烦恼,从此不再为加词而忧愁。

一 引言

在目前付费搜索引擎中,买词和竞价成为广告主竞争流量的主要手段。因此在付费搜索引擎的广告主账户后台中,所有的功能都是围绕三个点在展开,第一:推广产品(product),第二:购买关键词(keyword),第三:关键词出价(bidprice)。在广告主加入新的产品时,第一诉求就是购买关键词。在目前国际B类电商平台上,广告主如何在网站千万级的关键词中选择适合该产品的关键词对于用户来说是一个艰难的任务。并且考虑到网站整体的检索质量,网站展示的广告必须和用户的搜索意图相符,所以在广告主购买关键词时必须要求购买的关键词和产品能够绑定,所谓绑定就是keyword和product的相关性分(mlrscore)必须保证在良及以上。千万级的keyword集合,挑选适合购买的关键词少之又少。如何给用户提供高效选词的渠道成为广告后台账户的重点。

在阿里巴巴国际站投放广告开始,广告后台就有了产品推词模块——先知。先知主要提供根据产品给用户推荐适合购买的关键词。在广告主进入后台进行买词时先知都会实时计算出广告主可以购买的关键词集合,为广告主提供高效的买词解决方案。

二 模块及算法设计

产品推词包含四个模块:

  1. QueryProcess模块,完成title中心短语的抽取。
  2. query特征抽取模块,为离线模块,抽取完特征后导入引擎,由引擎建立倒排索引。
  3. 检索引擎模块,完成匹配query的召回。
  4. mlrscore计算模块,完成offer和query的文本相关性计算。

模块间的调用关系如下图所示:

2.1 中心短语抽取

2.1.1 中心短语构造

TermWeight作为底层基础模块,完成query以及产品title中的term权重分析。TermWeight使用同session的点击query作为训练数据,使用GBDT模型进行训练,构建成query以及title的term权重分析的算法模块。

通过TermWeight分析后,term权重越高表明该term在title中的价值越大,因此通过分析后的weight排序,取top n的term作为title的核心短语。

在QP模块中,TermWeight分析后的term,取top50%的term为有用的term记为Tu,有用term的top50%为重要的term记为Ti如果term长度小于6,则所有的query都作为有用的term。如果term的长度大于16,最多取8个term为有用term。

使用重要term集合Ti和有用Term Tu进行两两组合,再组合时考虑term在title中的位置信息。考虑组合的位置信息,共有4种位置,分别如下:

  1. w1 w2型

表示在title中w1是出现在w2前面,所以组合的中心短语只有w1 w2一种。

  1. w2 w1型

表示在title中w2出现在w1前面,组合成w2 w1的中心短语。

  1. w1 w2 w1型

表示在title中w1即在w2前面出现,也在后面出现,所以组合的中心短语有两种,分别为:w1 w2和w2 w1。

  1. w2 w1 w2型

表示在title中w1前后都出现了w2。可以组合成w2 w1和w1 w2两种query。

根据上述四种组合并去重,得到title的初步组合中心短语。中心短语的权重使用组合的两个term中权重较高者表示。

2.1.2 中心短语语言模型处理

根据3.1.1中的方式初步构造出了title的中心短语,组合出的中心短语很多并不符合语法规范。在3.1.1中组合的只有bigram,所以使用bigram语法对组合的中心短语进行过滤。

bigram语法的线下训练方式如下:

bigram训练数据由网站所有offer的title和搜索query组成。bigram的权重使用在文本中出现的频率来表示是否符合语法,如果两个单词经常一起出现,则对应的频率也会比较高。

统计bigram的方法如下:

  1. 对每条文本进行归一化,然后进行切分。得到有序的word.
  2. 按照有序的方式分别统计bigram出现的次数以及每个单词出现的次数。
  3. 计算bigram的频率。P(xi,xj)=C(xi,xj)/C(xi)。C(xi,xj)是xi xj出现的次数,C(xi)是xi出现的次数。为了减小索引的大小在计算频率是过滤C(xi)<100的term。

3.1.1中得到的bigram经过语言模型处理,得到bigram的频率。结合bigram在termweight中的权重,得到bigram总的权重。总权重计算方式如下:

finalweight=0.4*(bi_weight/max_bi_weight)+0.6*(t_weight/max_t_weight)

其中bi_weight为当前bigram的语言模型频率,max_bi_weight为title的所有bigram中语言模型频率的最大值。t_weight为bigram的termweight权重,max_t_weight为title的所有bigram中termweight的最高权重。最后的结果再按照线性组合。

在上述语言模型中,对于未登录词在训练bigram时并没有进行平滑,所以在处理是如果是未登录词,则返回MIN_WEIGHT=0.000001的极小值。

2.2 线下Query特征抽取

为了满足产品推词的精准以及买词的合理性,需要对offer能够推荐的词进行筛选,所以需要对Query进行特征分析,检索时根据query的特征计算排序分。

Query特征抽取模块为线下模块,设计的特征主要为Query的预测类目,Query的中心词,Query的长度等。

2.3 检索引擎

QP获得的中心短语进行检索,使用query的特征和中心短语的特征计算整体检索的排序分,然后最终取top的检索结果作为offer推词的初步结果,然后在调用rs计算QSScore,根据QS分最为最终的推词结果。

广告主产品推词中的NLP相关推荐

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

    导读:本次分享的主题为阿里妈妈品牌广告中的 NLP 算法实践,主要内容包括: 1. 品牌广告业务模式与技术架构的简要介绍 2. NLP 算法在品牌搜索广告中的实践,以两个具体的算法问题展开:品牌意图识 ...

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

    分享嘉宾:肖国锐 阿里 高级算法专家 编辑整理:陈道昌 内容来源:DataFun AI Talk 出品社区:DataFun 注:欢迎转载,转载请在留言区内留言. 导读: 本次分享的主题为阿里妈妈品牌广 ...

  3. NLP判断语言情绪_机器学习中的NLP简介

    在1970年代,许多程序员开始编写"概念本体",将现实世界的信息结构化为计算机可理解的数据.例子有MARGIE(Schank,1975),SAM(Cullingford,1978) ...

  4. 了解情感分析中的NLP技术么?

    ●今日面试题分享● 了解情感分析中的NLP技术么? 解析: 人际交往不仅仅是文字和其明确的含义,而且它还是微妙且复杂的.即使在完全基于文本的对话中,你也可以根据单词选择和标点符号判断客户是否感到愤怒. ...

  5. 用户画像在科技期刊微信公众号精准推送中的应用

    闵甜1,2), 孙涛3),赖富饶1,2), 侯湘4) 1)华南理工大学<现代食品科技>编辑部,广东省广州市天河区五山路381号 510640 2)华南理工大学食品科学与工程学院,广东省广州 ...

  6. 斯坦福NLP名课带学详解 | CS224n 第12讲 - NLP子词模型(NLP通关指南·完结)

    作者:韩信子@ShowMeAI,路遥@ShowMeAI,奇异果@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/36 本文地址:https://ww ...

  7. 【数字孪生】数字孪生模型在产品构型管理中应用探讨;不可忽视的轻量级三维可视化技术...

    针对MBD技术的深层次应用,论述了数字线和数字孪生定义的概念和应用,指出数字线和数字孪生模型技术实施的重点和核心问题.指明全三维产品研制模式下对产品构型管理的新需求,探讨了基于数字孪生模型的产品构型管 ...

  8. 以网易云音乐为例,分析产品笔面试中介绍类问题

    作者:五星小兵 全文共 4647 字 6 图,阅读需要 9 分钟 ---- / BEGIN / ---- 一年一度的春季招聘季又来了,俗话说工要善其事必先利器其,这在笔试面试中也适用.要想在众多竞争者 ...

  9. 产品设计过程中,如何理解用户任务

    我们做产品时有时候会陷入一个困境,我们以为用户需要的是功能,从功能入手设计感觉就像是雾里看花,不知道什么样的东西是用户想要的. 本文分享一种站在用户角度去思考"用户任务"的方法,希 ...

最新文章

  1. 13装饰器和内置函数
  2. sudo配置文件详解及实战
  3. MD5数据加密于文件加密
  4. python 判断类型_青少年之Python编程课程安排lt;第一季gt;
  5. AndroidStudio中提示:This project uses AndroidX dependencies, but the ‘android.useAndroidX‘ property is
  6. DM8168_ETV_V1.1开发板mount主机常见问题
  7. java 二进制文件拷贝_Java复制二进制文件
  8. “低代码”开发管理应用,这家大型连锁企业也说好
  9. T183637-变异距离(2021 CoE III C)【单调栈】
  10. 大数据该如何运行与分析
  11. python工厂方法_Python设计模式:工厂方法模式初探
  12. 【办公自动化】国土“三调”用地分类“一键”转南京分类
  13. python在统计专业的应用_Python统计学statistics实战
  14. 二维码和一维码生成器
  15. PS2汉化2 - 自制程序的运行与调试
  16. 神经网络分类效果评价——多元分类交叉熵
  17. Nginx动静分离配置
  18. linkerd mysql_《Linkerd官方文档》在本地运行Linkerd
  19. 太秀了!用Pandas秒秒钟搞定24张Excel报表,还做了波投放分析!
  20. 7-4 sdust-Java-字符串集合求并集 (20分)

热门文章

  1. java实现的小程序_Java实现 微信小程序 + 消息推送
  2. this关键字+super关键字
  3. 学习笔记-canny边缘检测
  4. kprobe原理解析
  5. C++ STL 优先队列
  6. oracle字符乱码的解决方法
  7. 设计理念 : popup login 在前后台
  8. mysql一些写常用命令
  9. node.js Lordofpomelo点击登录(login)终端提示成功,页面不跳转无反应
  10. OFBiz的探索进阶