今天介绍的论文是阿里IDST在2018年AAAI上发表的paper《A Multi-task Learning Approach for Improving Product Title Compression with User Search Log Data》。
其应用背景是,现在越来越多的用户开始习惯于使用手机、PAD等移动端进行网购行为,而这些移动端产品相比于传统的PC端来讲,其屏幕尺寸更小,对于同一个商品来说其相关信息的展示空间也会越小,特别是对于商品的标题信息来说,如何使用最少的词语(一般来说是10个词语以内)反应商品最本质的信息,从而尽最大可能的吸引用户的眼球成了移动端电商最值得考虑的问题。

目前来讲,淘宝上很多商品的标题都是由卖家自己根据经验描述填写的,虽然能够比较准确、全面地反应商品的信息,但是往往比较长(超过10个词),很难在一行之内全部展示出来,这类问题往往在移动端上会更加的显著,如何对商家填写的商品描述词进行合理地压缩成了本文解决的第一个问题;

同时由于这些描述词都是从商家的角度来看待商品,有时候和用户的看法角度并不是完全地一致,这样当用户填入搜索词进行搜索的时候,很可能最相关的商品因为标题描述词的原因并不能完美的显示出来,所以如何综合考虑淘宝所有用户使用的搜索词从而优化标题描述词汇成了本文解决的第二个问题。

为了能够合理地简化商品的标题描述语,并使简化后的描述词更能够合理地反应用户输入的搜索词信息,本文使用了一种基于encoder-decoder架构的multi-task权值共享网络。在真正介绍网络的具体结构之前,我先来介绍一下本文的dataset是如何构造的,因为这篇paper用到的数据集比较特殊,是一个三元组<S,T,Q><S,T,Q><S,T,Q>,其中SSS代表了原来商家输入的商品标题描述词汇;TTT代表了由专家针对SSS优化后的,更精简的商品描述词汇;QQQ描述了具有最高购买转化率的用户搜索词汇(在本文中就是针对某一类商品,该搜索词对应的商品在一个月有10次成功的购买行为)。

下面就来介绍一下这篇paper的模型架构图,如下所示:

相当于把模型看成了两个encoder-decoder任务(这里的encoder和decoder用的都是LSTM),一个是<S,T><S,T><S,T>,另一个是<S,Q><S,Q><S,Q>,同时这两个任务共享encoder部分参数,并且使用了方式相似的attention机制,公式如下所示(由于encoder过程比较简单,这里只展示decoder过程):
P(yn∣x,y<n;θ)=g(yn−1,sn,cn,θ)P(y_n | x,y_{<n};\theta)=g(y_{n-1},s_n,c_n,\theta)P(yn​∣x,y<n​;θ)=g(yn−1​,sn​,cn​,θ)
sn=f(sn−1,yn−1,cn,θ)s_n=f(s_{n-1},y_{n-1},c_n,\theta)sn​=f(sn−1​,yn−1​,cn​,θ)
cn=∑m=1MA(θ)n,mhmc_n=\sum_{m=1}^MA(\theta)_{n,m} h_mcn​=∑m=1M​A(θ)n,m​hm​ //M是S长度
A(θ)n,m=exp(a(sn−1,hm,θ))∑z=1Mexp(a(sn−1,hz,θ))A(\theta)_{n,m} = \frac{exp(a(s_{n-1},h_m,\theta))}{\sum_{z=1}^Mexp(a(s_{n-1}, h_z,\theta))}A(θ)n,m​=∑z=1M​exp(a(sn−1​,hz​,θ))exp(a(sn−1​,hm​,θ))​
a(sn−1,hm,θ)=vTtanh(W1sn−1+W2hm)a(s_{n-1},h_m,\theta)=v^Ttanh(W_1s_{n-1}+W_2h_m)a(sn−1​,hm​,θ)=vTtanh(W1​sn−1​+W2​hm​)

由于在<S,T><S,T><S,T>和<S,Q><S,Q><S,Q>任务中都会在decoder部分生成attention权值分布,令AT∈RN∗MA^T \in R^{N*M}AT∈RN∗M代表了<S,T><S,T><S,T>过程中的attention权值矩阵,AT∈RK∗MA^T \in R^{K*M}AT∈RK∗M代表了<S,Q><S,Q><S,Q>过程中的attention权值矩阵,其中M是S的长度,N是T的长度,K是Q的长度。为了使这两个部分生成的权值分布具有一致性,因此这里又添加了一个条件限制Lagree=D(AT,AQ)L_{agree}=D(A^T,A^Q)Lagree​=D(AT,AQ),由于ATA^TAT和AQA^QAQ都是矩阵,那么首先就要通过max pooling操作把矩阵转化为向量公式如下:
aT=maxj=1NAjTa^T=max_{j=1}^N A_j^TaT=maxj=1N​AjT​,aQ=maxj=1kAjQa^Q=max_{j=1}^k A_j^QaQ=maxj=1k​AjQ​
aT∈RMa^T \in R^MaT∈RM,aQ∈RMa^Q \in R^MaQ∈RM
那么Lagree=KL(aT∣∣aQ)L_{agree}=KL(a^T || a^Q)Lagree​=KL(aT∣∣aQ)

最终整个模型的损失函数如下所示:
L=λ1LT+λ2LQ+(1−λ1−λ2)LagreeL=\lambda_1 L_{T}+\lambda_2 L_{Q}+(1-\lambda_1-\lambda_2)L_{agree}L=λ1​LT​+λ2​LQ​+(1−λ1​−λ2​)Lagree​

最后该模型生成的简化商品的标题描述被真正应用到了淘宝的系统中,使用A/B test的方式验证了其在一周的广告预测中,确实显著地提高了CTR和CVR值,帮助平台增加了经济效益。

利用用户搜索词生成商品标题信息——阿里巴巴IDST相关推荐

  1. 京东搜索页爬虫商品店铺信息

    京东搜索页爬虫商品店铺信息 1.写好整个爬虫框架 2.用requests库获取网页源代码 3.正则表达式获取需要的相关信息 4.把获取的信息写入excel中并保存到电脑 完整代码 工作需要需获取京东商 ...

  2. 搜索引擎对用户搜索词如何处理,怎么判断用户搜索词的结果?

    搜索引擎接收到用户输入的搜索词后,需要对搜索词做一些处理,才能进入排名过程. 搜索词处理包括以下几方面: (1)中文分词.与页面索引时一样,搜索词也必须进行中文分词,将查询字符串转换为以词为基础的关键 ...

  3. python通过关键字搜索淘宝商品详细信息

    # coding=utf-8 import urllib.request import re from urllib.request import urlopen, urlretrieve#打开网页, ...

  4. 搜索引擎——用户搜索意图的理解及其难点解析,本质是利用机器学习用户的意图分类...

    用户搜索意图的理解及其难点解析 搜索引擎涉及的技术非常的繁复,既有工程架构方面的,又有算法策略方面的.综合来讲,一个搜索引擎的技术构建主要包含三大部分: 对 query 的理解 对内容(文档)的理解 ...

  5. 优优聚电商:商品标题优化的注意事项

    标题是很多人头疼的问题,尤其是优化技巧和不能碰的禁忌方面.很多人不知道.所以,下面就带领大家了解一下这些禁忌是什么.以及它制作商品标题的方式,如果这个弱势商家可以借鉴的话. 如何做好商品标题? 1.不 ...

  6. 【Python例】利用 python 进行用户画像词云图的生成 --- wordcloud

    [Python例]利用 python 进行用户画像词云图的生成 - wordcloud 本文主要用于记录,并使用 python 脚本进行用户画像的词云图的生成. 前言 对于词云图来说,是一个用户画像数 ...

  7. php识别名片,用户信息名片怎么利用PHP实现自动生成

    用户信息名片怎么利用PHP实现自动生成 发布时间:2020-12-10 14:29:56 来源:亿速云 阅读:70 作者:Leah 本篇文章为大家展示了用户信息名片怎么利用PHP实现自动生成,内容简明 ...

  8. NLP自然语言处理实例——实现机器自动生成商品的推荐标题和推荐语

    NLP自然语言处理实例--实现机器自动生成商品的推荐标题和推荐语 一.案例目的及实现 二.环境配置 1.安装库时遇到的问题 三.数据预处理 1.移除特殊符号 2.去除停用词 3.文本分词jiaba 四 ...

  9. 搜索2.0:利用用户点击记录改善搜索结果

    /*版权声明:可以任意转载,转载时请务必标明文章原始出处和作者信息 .*/ 搜索2.0:利用用户点击记录改善搜索结果 Author:张俊林 timestamp:2007年7月 现在是WEB2.0时代了 ...

最新文章

  1. 程序猿,如果下次有人让你帮忙开发App,你就这样回答他
  2. Python编程基础:第二十七节 format输出Format
  3. 【MFC两种视频图像採集方法】DirectShow与Opencv
  4. Spring web.xml详解
  5. ACM金牌选手算法讲解《线性表》
  6. c语言遗传算法例子,C++遗传算法类文件实例分析
  7. 英伟达驱动更新记录_手把手教你如何通过NVIDIA(英伟达显卡)官网及时更新升级显卡驱动程序版本-网络教程与技术 -亦是美网络...
  8. c++字符串逆序输出
  9. 如何优雅的(不花钱)获取一本技术图书
  10. Ubuntu 14.04 卸载搜狗拼音输入法及后续问题解决
  11. python父亲节祝福_关于父亲节的祝福语大全(27句),暖心的句子
  12. 每个人都会经历一段迷茫
  13. 嵌入式 课程设计指导书
  14. 高德地图小程序步行路线显示_微信小程序 高德地图路线规划实现过程详解
  15. 关于HTML中上传图片
  16. 简单win32程序创建控件
  17. 三国演义告诉我们的60条真理
  18. Win Server 2016安装Oracle_11gR2数据库
  19. 判断是否是移动端--微信-企业微信
  20. 前端歌谣的刷题之路-第一百四十五题-双列布局-flex

热门文章

  1. oracle s7 2l维护手册,Sun/Oracle S7-2L电源7311826导轨350-1719 7042273卡7317693 7085207
  2. Java——Java泛型
  3. Matplotlib科研画图.cmap颜色反转
  4. 河北传媒学院计算机大四,2020年6月河北传媒学院英语四级报名条件有哪些
  5. Android基础入门教程——8.3.13 Paint API之—— Shader(图像渲染)
  6. 小米6android0root,小米6 lineage16 安卓9.0 极致省电 纯净 完美root Xposed 经典版
  7. 爱普生Epson Stylus C86 打印机驱动
  8. burpsuite解决中文乱码的问题
  9. @NotNull与@NonNull使用笔记
  10. c语言双重for循环流程图_for 循环和while循环区别