非内积级联学习

1.首页推荐非内积召回现状

非内积召回源是目前首页推荐最重要的召回源之一。同时非内积相比于向量化召回最终仅将user和item匹配程度表征为embeding内积,非内积召回仅保留item embedding,不构造user显式表征,而是通过一个打分网络计算用户-商品匹配程度,极大的提升了模型精准度的上限,有很大优化空间。

模型:采用dot-product attention对用户行为和目标商品进行交互,结合用户画像、原始商品表征生成打分

索引与检索

索引:离线模型训练完成后,对 item embedding 基于l2距离构造hnsw索引

检索:线上召回时,实时根据用户请求,在hnsw索引中逐层向下进行beam-search寻找最优结果

多样性保证:在最后一层检索过程中,进行类目维度多样性剪枝

样本

◦正样本:首页点击和订单作为正样本,

◦负样本:全站点击随机负采样 + 底池均匀负采样

特征:用户点击序列、用户画像特征、商品侧特征等

学习目标: 对正负样本采用sampled softmax loss建模为多分类问题

2.非内积召回优化-级联学习与负样本扩充

非内积召回模型整体有更好的拟合能力,但目前方案中原有训练样本相对较为简单,并且负样本量级较少,阻碍了非内积召回能力的发挥。为提升召回与后续链路一致性,现加入曝光未点击、精排top打分样本进行级联学习。学习目标从原有的点击正样本和随机负采样多分类问题从升级为包含点击、曝光未点击、精排序样本、随机负采样之间的精细化序关系融合;同时扩充负样本量级,提升模型打分精准性。

2.1 相关工作

2.1.1 级联学习相关工作

级联学习旨在引入多种推荐系统链路中样本,采用排序学习方式拟合真实系统分布。京东搜索多目标实践引入订单、点击、曝光样本之间的级联[1],有效提升大盘效果。list-MLE[2]是广泛应用的学习排序方法,将list内样本给出预测分数,优化预测分数分布和真实排序一致。plist_MLE[3]解决了连续多目标优化问题,使用线性标量化策略将其转换为一个单目标优化问题。

2.1.2 负样本扩充相关工作

batch内负样本扩充主要分为inbatch、crossbatch两种方式。CBNS[4]采用crossbatch,既维护一个队列,存储之前batch的embedding,在每次迭代后,把当前batch的embedding和采样概率存入队列中,并将最早的embedding出队,在计算sampled softmax的时候可以用到batch内的和队列中的负样本。SBC[5]采用inbatch方式,随机采样同一个batchsize中的样本作为负样本。MNS[6]在采样时,使用了混合负采样,应用多种采样生产负样本。

2.2 级联学习与负样本扩充优化点

加入曝光未点击、精排top打分样本进行级联学习;同时扩充负样本量级,提升模型打分精准性。

2.2.1 级联学习

•样本优化:

◦**加入曝光未点击样本、精排序样本。**点击正样本:曝光未点击=1:4;将每个正样本对应的请求精排序分段采样,分段为精排打分序1-10、11-50、51-100、101-200、201-400、401-900,每个分段采样4条。

•学习目标优化:

1.原始学习目标: 正样本和负采样多分类问题

2.升级后学习目标:点击正样本、曝光未点击、精排序样本、随机负采样之间的精细化序关系融合:

1.点击正样本>曝光未点击>随机负采样

2.点击正样本>精排序top>精排序middle>精排序tail>随机负采样

| 新增曝光未点击精细化学习 | 新增精排序关系精细化学习 |
|

参考工作:京东搜索多目标召回模型实践 [1] |

参考工作:Position-Aware ListMLE: A Sequential Learning Process for Ranking [3] |
|

|

2.2.2 负样本扩充

之前的非内积优化实验及参考工作[4,5,6]验证扩充负样本可提升模型精准性。模型训练过程中,随机采样同一个batch中的样本作为负样本[6]可大幅扩充负样本个数。

优化点:负样本个数由百级别扩充至千级别。

3.离线&线上实验

通过离线消融实验验证各优化点对模型打分精准性提升。

3.1 离线实验

| 实验 vs base | 点击hitrate@50 | 点击hitrate@100 | 点击hitrate@1200 | 订单hitrate@50 | 订单hitrate@100 | 订单hitrate@1200 |
| 消融实验-仅扩充负样本 | +18.2% | +27.1% | +9.2% | +9.1% | +13.9% | +1.1% |
| 扩充负样本+只加曝光未点击 | +20.3% | +30.0% | +12.5% | +16.8% | +18.6% | +18.2% |
| 扩充负样本+完整级联学习 | +65.7% | +56.6% | +12.1% | +67.3% | +54.9% | +26.7% |

离线实验结论:

1.多组消融实验验证了加入曝光未点击、精排样本的完整级联学习引入能带来离线明显受益,尤其在订单维度。

3.2 线上实验

大盘指标:外页uctr +0.02%(0.8),引商点击 +0.53%, uctr含内页 +0.14%,外页ucvr+4.93%(0.00),含内页ucvr+4.17%(0.00),外页推荐用户转化率 +4.64%(0.00),含内页推荐用户转化率 +3.67%(0.00)

召回源指标:非内积召回线上召回源曝光相对+25%,ctr持平、cvr相对+4%

4.总结与思考

1.精排top打分样本、曝光未点击样本引入+级联学习 可大幅提升离线hitrate指标,线上召回源曝光大幅增长(+25%),ctr持平、cvr显著提升。

2.负样本扩充实验中,随着负样本扩充hitrate增长。后续将继续摸底负采样扩量上限。

5.参考文献

[1] 京东搜索多目标召回模型实践

[2] Listwise approach to learning to rank: theory and algorithm

[3] Position-Aware ListMLE: A Sequential Learning Process for Ranking

[4] Cross-Batch Negative Sampling for Training Two-Tower Recommenders

[5] Sampling-bias-corrected neural modeling for large corpus item recommendations

[6] Mixed Negative Sampling for Learning Two-tower Neural Networks in Recommendations

作者:京东零售 张树旺

来源:京东云开发者社区 转载请注明来源

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/658433.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Log4j2-24-log4j2 相同的日志打印 2 次

现象 相同的日志打印了两次,且因为日志的配置不同,导致脱敏的情况不一致。 代码与配置 代码 package com.ryo.log4j2.cfg.additivity;import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger;public class SimpleDemo…

12.MySql服务

目录 1. 什么是数据库 1.1. 数据: 1.2. 数据库: 2. mysql概述 3. 版本及下载 4. yum仓库安装 4.1. 添加yum源 4.2. 安装 5. 本地RPM包安装 5.1. 使用迅雷下载集合包 5.2. 上传数据 5.3. 安装 6. 生产环境中使用通用二进制包安装 6.1. 作用…

十一、常用API——练习

常用API——练习 练习1 键盘录入:练习2 算法水题:练习3 算法水题:练习4 算法水题:练习5 算法水题: 练习1 键盘录入: 键盘录入一些1~100之间的整数,并添加到集合中。 直到集合中所有数据和超过2…

汽车标定技术(十七)--Bypass的前世今生

目录 1.Bypass的诞生 2.Bypass的发扬光大 2.1 基于XCP的Bypassing 2.2 基于Debug的Bypass 2.3 小结 3.Bypass的实际应用 1.Bypass的诞生 下图我相信只要用过INCA的朋友都非常熟悉。 这是远古时期(2000年左右?我猜)ETAS针对发动机控制参数标定设计的一种并行数据…

opencv-python计算视频光流

光流基本概念 光流表示的是相邻两帧图像中每个像素的运动速度和运动方向。具体:光流是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系&#xf…

嵌入式Qt中实现http服务接收POST请求

嗨喽,大家好!以下知识点做个简单记录分享给小伙伴们! 首先我们来理解几个概念 websocket服务器和http服务器的区别 “ WebSocket服务器和HTTP服务器是两种不同的服务器类型,它们在协议、连接方式和通信模式等方面有所区别。 协议…

计算机网络-物理层设备(中继器 集线器)

文章目录 中继器中继器的功能再生数字信号和再生模拟信号同一个协议 集线器(多口中继器)不具备定向传输的原因集线器是共享式设备的原因集线器的所有接口都处于同一个碰撞域(冲突域)内的原因 小结 中继器 中继器的功能 中继器的…

中移(苏州)软件技术有限公司面试问题与解答(5)—— Linux进程调度参数调优是如何通过代码实际完成的1

接前一篇文章:中移(苏州)软件技术有限公司面试问题与解答(0)—— 面试感悟与问题记录 本文对于中移(苏州)软件技术有限公司面试问题中的“(11)Linux进程调度参数调优是如…

python爬虫爬取网站

流程: 1.指定url(获取网页的内容) 爬虫会向指定的URL发送HTTP请求,获取网页的HTML代码,然后解析HTML代码,提取出需要的信息,如文本、图片、链接等。爬虫请求URL的过程中,还可以设置请求头、请求参数、请求…

EasyExcel使用,实体导入导出

简介 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中…

深入浅出AI落地应用分析:AI个人助手Monica

前言:铺天盖地的大模型以及所谓的应用到目前为止实际还是很少有像Monica这样贴合个人工作习惯的产品落地,比如像Chatgpt等这样的产品,绝大多数人不会专门买🪜翻墙出去用,而且大多数场景下素人或小白都不知道该怎么用,但是Monica这款产品就很好的以浏览器的插件的形式始终…

PyTorch][chapter 12][李宏毅深度学习][Semi-supervised Linear Methods-1]

这里面介绍半监督学习里面一些常用的方案: K-means ,HAC, PCA 等 目录: K-means HAC PCA 一 K-means 【预置条件】 N 个样本分成k 个 簇 step1: 初始化簇中心点 (随机从X中抽取k个样本点作为) Repeat: For all in X: 根据其到 &…

[Bug] [OpenAI] [TypeError: fetch failed] { cause: [Error: AggregateError] }

[Bug] [OpenAI] [TypeError: fetch failed] { cause: [Error: AggregateError] } ubuntu20 win10 edge浏览器访问 服务器部署 页面打开后想使用chatgpt报错了 rootcoal-pasi1cmp:/www/wwwroot/ChatGPT-Next-Web# PORT3000 yarn start yarn run v1.22.19 warning package.json:…

LeetCode160. 相交链表

160. 相交链表 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,…

【科技素养题】少儿编程 蓝桥杯青少组科技素养题真题及解析第23套

少儿编程 蓝桥杯青少组科技素养题真题及解析第23套 1、英国计算机科学家艾伦图灵于 1950 年提出了著名的“图灵测试”,用于判断计算机是否具有智能。“图灵测试”是通过()的方法进行判断的 A、让两台计算机对话 B、让人类与计算机对话 C、给计算机出题 D、让计算机分辨图…

【轮式平衡机器人】——TMS320F28069片内外设之ADC

一、ADC概述 这一部分不是我们的重点,原理分类啥的这里简要说明! 步骤:采样、保持、量化、编码 将采样电平(模拟值)转换为数字值的方法:直接比较型(并行ADC、逐次逼近型ADC)&…

2024.1.30 GNSS 学习笔记

站星双差Kalman滤波伪距差分定位流程 1. RTK定位技术(实时载波相位差分技术)原理-站间单差浮点解 1.RTK技术其实就是在RTD技术的基础上增加载波观测值的使用。由于伪距的噪声在分米量级,即使我们通过站间单差消除了绝大部分的误差影响&…

【React】前端项目引入阿里图标

【React】前端项目引入阿里图标 方式11、登录自己的iconfont-阿里巴巴矢量图标库,把需要的图标加入到自己的项目中去;2、加入并进入到项目中去选择Font class 并下载到本地3、得到的文件夹如下4. 把红框中的部分粘贴到自己的项目中(public 文…

爬虫入门到精通_基础篇4(BeautifulSoup库_解析库,基本使用,标签选择器,标准选择器,CSS选择器)

1 Beautiful说明 BeautifulSoup库是灵活又方便的网页解析库,处理高效,支持多种解析器。利用它不用编写正则表达式即可方便地实线网页信息的提取。 安装 pip3 install beautifulsoup4解析库 解析器使用方法优势劣势Python标准库BeautifulSoup(markup,…

Web3.0初探

Web3.0初探 一、互联网发展史二、什么是Web3.0?三、现在的发展方向(衍生出来的产品):四、目前问题五、Web3.0与元宇宙 一、互联网发展史 Web3.0也就是第三代互联网。最新版本的Web3.0是以太坊的创始合伙人Gavin Wood在2014年提出…