Que2Search: Fast and Accurate Query and Document Understanding for Search at Facebook论文笔记
0、论文资料
论文地址:Que2Search: Fast and Accurate Query and Document Understanding for Search at Facebook | Proceedings of the 27th ACM SIGKDD Conference on Knowledge Discovery & Data Mining
1、摘要
提出Que2Search,利用多任务和多模态训练方法,学习query和product的表征,在召回阶段召回query查询想要的商品,主要应用在Facebook的电商搜索平台。
2、介绍
Que2Search是一个query对应product相似度模型,考虑了多模特征和利用XLM编码器提取文本信息,在弱监督的数据集中训练,效果比facebook的baseline还好。Que2Search支持基于向量检索的query-to-product系统,并可以在后续的排序阶段当作一个特征,提高排序的效果。
Que2Search模型的挑战:
1)带噪声product描述:店家提供product描述的质量参次不齐,有一些还缺失或者拼写错误
2)支持国际化语言
3)多模态特征的有效处理:模型需要考虑文本和照片信息
4)严格的响应时间:部署在线上,需要满足响应要求
3、模型
模型由双塔构成,在训练模型时,使用多任务学习和多阶段训练技巧。
3.1模型结构
1)query塔:三个输入特征:字符级tri-gram特征;搜索者的国家特征;query文本特征;
字符级tri-gram特征:在query上滑动窗口为3,获得字符级tri-gram特征,并应用hash函数(e.g.MurmurHash)映射到hash ids,把hash ids喂入EmbeddingBag,可以学习到id表征,最后求和得到每个query的字符级表征。
搜索者的国家特征:同样使用EmbeddingBag学习国家表征
query文本特征:应用2层的XLM编码器学习文本表示
最后使用注意力加权方法获得query的最终表征
2)product塔:输入的特征有:product标题,描述和图片。
使用共享参数6层的XLM-R网络编码标题和描述,同样使用EmbeddingBag编码字符级tri-gram特征,MLP学习图片信息。最后使用注意力机制获得product的最终表征,计算方法:
3)双塔的分类任务
对于每个文档,收集了与文档相关的query集合,可以看作一个多标签的分类任务,使用多标签交叉熵。并在product侧加入product分类任务,可以有效提升0.61%的ROC AUC.
3.2模型训练
1)训练数据:正样本对(query, product pairs),搜索者的query查询到的product,并发生转化,当成正样本对;
2)批量负样本:query的embedding向量与product的embedding向量乘积生成余弦相似度矩阵,对角线表示正样本对的相似度得分,每一行表示每个query与bath中所有product的相似度得分,每一列表示prodct与所有的query相似度得分。对于每条query,除了正样本producr,其他都是负样本product。论文使用 scaled multi-class cross-entropy loss,scale有助于损失函数的收敛。
3.3多阶段训练
第一阶段使用交叉熵损失函数,第二阶段triplet loss函数。在第二阶段训练时,使用的是难负样本,效果提升了1% ROC AUC。生成难负样本的方法:在余弦相似度矩阵中,找到除了对角线分数的最高得分的product当作难负样本。
公式四:第一阶段的训练损失函数,公式五:第二阶段损失函数
两阶段训练的AUC,注意需要第一阶段训练收敛后才开始第二阶段训练,要不然第二阶段训练没有效果。
4、总结
这篇facebook的基于embedding检索的Que2Search,在电商平台取得很好的效果,提升了5%的离线相关性改善和4%的线上效果,并且模型推断响应时间为1.5ms。
论文还有挺多细节,感兴趣的读者,可以看原文。
有错误的地方,可以指正,谢谢。
Que2Search: Fast and Accurate Query and Document Understanding for Search at Facebook论文笔记相关推荐
- 《SiamMask:Fast Online Object Tracking and Segmentation:A Unifying Approach》论文笔记
参考代码:SiamMask 1. 概述 导读:这篇文章在基于孪生网络的目标跟踪算法离线训练的过程中嵌入一个mask分割分支,从而可到一个既可以做VOT也可以做VOS(分割性能这块可以还有很大空间)的网 ...
- CSRNet: Dilated Convolutional Neural Networks for Understanding the Highly Congested Scenes2018—论文笔记
本论文来自CVPR2018, 读于20190409. Abstract 我们提出的Congested Scene Recognition(CSRNet)包含了两个部分,一个是获得二维特征的前端,一个是 ...
- 论文Fast and accurate short read alignment with Burrows-Wheeler transform
Fast and accurate short read alignment with Burrows-Wheeler transform BWT(Burrows–Wheeler transform) ...
- Fast and Accurate Detection of Unknown Tags for RFID Systems – Hash Collisions are Desirable 理解+笔记
Fast and Accurate Detection of Unknown Tags for RFID Systems – Hash Collisions are Desirable 理解+笔记+翻 ...
- Fast and Accurate Detection of Unknown Tags for RFID Systems – Hash Collisions are Desirable 翻译
Fast and Accurate Detection of Unknown Tags for RFID Systems – Hash Collisions are Desirable 翻译 链接:h ...
- The genome polishing tool POLCA makes fast and accurate corrections in genome assemblies
The genome polishing tool POLCA makes fast and accurate corrections in genome assemblies 基因组抛光工具POL ...
- Fast and accurate short read alignment with Burrows-Wheeler transform
Fast and accurate short read alignment with Burrows-Wheeler transform 快速和准确的短读对准Burrows-Wheeler变换 本文 ...
- 消失点:Fast and Accurate Vanishing Point Detection in Complex Scenes
消失点:Fast and Accurate Vanishing Point Detection in Complex Scenes 1.韦伯定律 1.1 WLD 1.2 WOD 算法实现 获得WOD ...
- 【CVPR2020视频超分辨率】Zooming Slow-Mo: Fast and Accurate One-Stage Space-Time Video Super-Resolution 阅读笔记
paper:Zooming Slow-Mo: Fast and Accurate One-Stage Space-Time Video Super-Resolution code:Zooming-Sl ...
最新文章
- TCP/IP 协议栈4层结构及3次握手4次挥手
- 狎昵关系和依恋情结辨诠
- 尚学堂requireJs课程---2、模块
- python redis事务_python redis事务源码及应用分析
- openCV中的findHomography函数分析以及RANSAC算法的详解(源代码分析)
- iOS9 白名单问题 -canOpenURL: failed for URL: xx - error:This app is not allowed to query for scheme x...
- vue 原型设计 拖拽_设计即开发,如何打通软件研发的“任督二脉”?
- 语音识别系统_智能语音识别系统_第三方语音识别系统 - 云+社区 - 腾讯云
- java在dos命令_JAVA中如何执行DOS命令
- Office groove系统的术语
- MTA18ASF2G72PDZ-2G6D1内存条MTA18ASF2G72PDZ-2G6E1
- 【剑指Offer(专项突击版)】001~059题目题解汇总
- android 命令截图,Android截图命令screencap与视频录制命令screenrecord
- delphi xe 10 程式外观
- 5款实用报表工具分析,报表工具这样选!
- “十三五”公共安全规划涉及哪些安防概念?
- poi-tl实现word文档按模板下载
- Opencv色彩空间(GRAY、XYZ、HSV、YCrCb、HLS)展示,以及利用HSV标记指定的颜色
- grbl源码解析——速度前瞻(1)
- Markdown-img使用指南
热门文章
- Corn Fields 玉米田
- 场景化支付的关键技术
- 字符设备驱动程序之poll机制(韦大仙)
- PHP------继承、多态
- iOS学习笔记-retain/assign/strong/weak/copy/mutablecopy/autorelease区别
- GDI+ 中发生一般性错误(在 OutputStream 中保存 PNG 格式图像时遇到的问题)
- js:select的选择改变事件,获取当前选择的值
- oc_转_类的数组的实现和操作
- 在asp.net2.0中使用存储过程
- Linux打开端口iptables