写点什么

eBay 开发新的推荐模型,从数据中挖掘商机

作者:Claudio Masolo

  • 2023-03-02
    北京
  • 本文字数:1109 字

    阅读完需:约 4 分钟

eBay开发新的推荐模型,从数据中挖掘商机

eBay 基于自然语言处理(NLP)技术,特别是BERT模型开发了一个新的推荐模型。这个被称为“Ranker”的新模型使用词袋之间的距离得分作为特征,从语义角度分析商品标题信息。与之前的模型相比,Ranker 帮助 eBay 将原生应用(Android 和 iOS)和 Web 平台上的购买、点击和广告指标分别提升了 3.76%、2.74%和 4.06%。

 

eBay Promoted Listing Similar Reccomendation Model(PLSIM)由三个阶段组成。其中获取 Promoted Listing Similar,也就是所谓的“召回集”,是最为相关的。应用使用离线历史数据训练过的 Ranker,根据购买的可能性对召回集进行排序,通过合并卖家广告率对列表进行重新排序。这个模型的特征包括:推荐商品历史数据、推荐商品与种子商品的相似性、产品类别、国家和用户个性化特征。使用梯度提升树对模型进行连续训练,根据相对购买概率对商品进行排序。在相似度检测中加入基于深度学习的特征显著提升了性能。

 

之前的推荐排名模型使用 Term Frequency-Inverse Document Frequency(TF-IDF)和Jaccard相似度来评估产品标题。这种基于节点标记的方法存在最基本的局限性,并且它不会考虑句子的上下文和同义词。相反,基于深度学习的 BERT 在语言理解方面表现出色。由于 eBay 语料库不同于书籍和维基百科,eBay 工程师引入了 eBERT,一种 BERT 变体,使用 eBay 商品标题数据进行了预训练。它使用维基百科的 2.5 亿个句子和 eBay 的 30 亿个多语言标题进行了训练。在离线评估中,这个 eBERT 模型在 eBay 的一组标记任务上的表现显著优于开箱即用的 BERT 模型,F1 得分为 88.9。

 

eBERT 架构对于高吞吐量推断来说太重了,可能无法及时推送推荐结果。为了解决这个问题,eBay 开发了另一个模型 microBERT,它是 BERT 的另一个轻量级版本,并针对 CPU 推理进行了优化。microBERT 将 eBERT 作为训练阶段的老师,使用了知识蒸馏过程。通过这种方式,microBERT 保留了相当于 eBERT 95%到 98%的推理质量,而时间减少了 300%。

 

最后,microBERT 使用了叫作InfoNCE的对比损失函数进行微调。商品标题被编码成词袋向量,模型的训练目标为增加已知彼此相关的这些向量(表示标题的词袋)之间主题距离的余弦相似度,同时降低迷你批次中所有其他商品标题对的余弦相似度。

 

这种新的排名模型在购买排名(售出商品的平均排名)方面有 3.5%的改进,但其复杂性导致难以进行实时的推荐。这就是为什么要通过日批处理作业生成标题词袋,并存储在 NuKV(eBay 的云原生键值存储)中,将商品标题作为键,词袋作为值。通过这种方法,eBay 能够满足其在延迟方面的要求。

 

原文链接

https://www.infoq.com/news/2023/01/ebay-recommendations-odel/


相关阅读:

构建生产可用的推荐系统需要注意哪些问题?

京东电商推荐系统的应用实践|InfoQ 公开课

推荐系统的未来发展

2023-03-02 08:002838

评论

发布
暂无评论
发现更多内容

龙蜥自动化平台 SysOM 2.1 热补丁中心介绍 | 第 74 期

OpenAnolis小助手

直播 系统运维 龙蜥大讲堂 SysOM 补丁

面试被怼:技术更新这么快,你还不懂响应式微服务就out了

Java spring 微服务 响应式

初学后端,如何做好表结构设计?

王中阳Go

Go golang 数据库 表结构 golang 面试

苹果M1芯片的Mac怎么关闭SIP?M1 mac关闭Sip方法教程!

互联网搬砖工作者

Flink 在中泰证券的实践与应用

Apache Flink

大数据 flink 实时计算

还在stream中使用peek?不要被这些陷阱绊住了

程序那些事

Java java8 程序那些事 JDK20

2023中国儿童防敏市场发展洞察

易观分析

医疗 防敏 儿童

好用的Java开发工具:IntelliJ IDEA 2022v2022.3.3汉化激活版

真大的脸盆

Java Mac Mac 软件 Java 开发

pytest学习和使用4-pytest和Unittest中setup、teardown等方法详解和使用(最全)

Python 自动化测试 unittest 测试框架 pytest

中国全屋智能市场将达万亿级,仅3.5%住宅渗透率拥有巨大潜力

极客天地

adobe安装提示错误“Error:SyntaxError:JSON Parse error:Unexpected EOF”

互联网搬砖工作者

软件测试/测试开发丨接口测试必备技能-常见接口协议解析

测试人

软件测试 自动化测试 测试开发

百度CTO王海峰:全栈AI技术加持,打造新一代大语言模型文心一言

飞桨PaddlePaddle

CloudCanal 落地 StarRocks 数据迁移同步的实践与思考

StarRocks

数据库

软件测试/测试开发丨一文带你了解接口测试价值与体系

测试人

软件测试 自动化测试 测试开发

快速掌握网站监控关键数据:仪表盘的创建与管理

云智慧AIOps社区

监控 监控宝 监控工具 云智慧 网站监控

软件工程高效学 | 软件的内涵与危机

TiAmo

软件工程 软件开发

不可错过!Arm 、Intel 及阿里云等资深技术专家现场解读系统安全

OpenAnolis小助手

系统安全 Meetup 龙蜥社区 sig 机密计算

ByteHouse:基于ClickHouse 的实时计算能力升级

字节跳动数据平台

大数据 云原生 flink 消费 kafka Clickhouse 企业号 3 月 PK 榜

百度文库接入文心一言,国内首个生成式AI文档服务即将上线

极客天地

pytest学习和使用3-对比unittest和pytest脚本在pycharm中运行的方式

Python 自动化测试 pytest

使用流水线插件实现持续集成、持续部署

北京好雨科技有限公司

Kubernetes CI/CD rainbond

开源订单管理系统

源字节1号

开源 软件开发 小程序开发

如何通过Java代码在Word中创建可填充表单

在下毛毛雨

Java 表单 word文档

跟着字节AB工具DataTester,5步开启一个实验

字节跳动数据平台

大数据 云服务 AB testing实战 ab测试 企业号 3 月 PK 榜

腾讯大神耗时三年,立足实际开发的巅峰之作,详解高并发程序设计

Java 程序设计 高并发

NFTScan 与 DeBox 达成合作,双方在 NFT 社交数据层面展开合作

NFT Research

NFT

企业数智化转型不仅是可行的,还是必行!

加入高科技仿生人

人工智能 低代码 制造业 数智化

eBay开发新的推荐模型,从数据中挖掘商机_AI&大模型_InfoQ精选文章