推荐系统用户长序列建模

news2024/11/28 6:46:58

目录

一、背景

二、技术方案

2.1 DIN

简介

论文细节

优缺点

2.2 DINE

简介

论文细节

2.3 MIMN

简介

论文细节

2.4 SIM

简介

论文细节

优缺点

2.5 DSIN

简介

论文细节


一、背景

阿里巴巴的精排模型从传统lr,到深度学习,再到对用户长历史序列进行建模的演变。传统的深度模型(如GwEN),一般采用Embedding&MLP的形式,它会将用户的所有兴趣信息转化为一个定长的向量。但用户的兴趣是多样的,定长的向量可能不足以表达。而且评估用户对于不同资源的兴趣时,应该使用不同的行为(判断用户是否喜欢衣服,应该关注用户对衣服的历史行为与兴趣程度;判断用户是否喜欢包包,则关注用户对包包的历史行为)。

因此盖坤团队提出DIN,从用户行为中提取与目标商品相关的多峰兴趣;DIN模型更多是从挖掘多峰兴趣角度出发,没有考虑行为的序列信息,兴趣的变化也能给模型提供信息,因此有了DIEN;这两个模型后,用户兴趣建模划分出了2个研究分支,一个是用户长期兴趣建模(MIMN、SIM),该分支依然是盖坤团队主导的;另一个分支则是从session的角度,对行为做进一步划分(DSIN)

二、技术方案

2.1 DIN

简介

如上左图是传统的Embedding&MLP模型,处理行为数据采用sum-pooling得到定长的embedding。

这里行为的定义可以是广告点击、商品购买、加购物车等,每个行为节点由3个embedding拼接组成(商品ID、商品类别ID、商铺ID)

右图是DIN的模型结构,作者将每个行为节点与候选节点做交叉得到权重(即途中的activation unit),再通过weighted-sum-pooling的模型得到行为的embedding,这样,对于每个候选商品,提取的用户行为embedding是不同的。

作者在实验部分可视化了activation unit的结果,和候选商品相关的行为节点会贡献较大的权重,符合认知

论文细节

这种行为兴趣的建模方式,在实际应用时会遇到一些问题

1、行为数据的参数量巨大(商品ID可能就百/千万),模型容易过拟合;引入L2正则,参数量大训练缓慢

2、针对不同的候选节点,用户的兴趣embedding不同,波动大会影响MLP部分的模型收敛

解决方案

1、提出Mini-batch Aware Regularization。L2正则缓慢的原因是每个mini-batch会对模型的所有参数做正则,但其实每个minibatch只使用了部分的商品ID。因此更好的做法是,每个mini-batch只对使用到的商品ID计算L2正则。实验证明,通过这种方式,能有效缓解过拟合现象,同时确保训练效率

2、作者针对MLP部分的激活函数(PReLU)做优化,提出更具泛化性的Dice,这种激活函数可以根据输入数据的均值和方差,动态调整函数形态。在后续的论文中,模型也延用了这种激活函数

优缺点

1、该模型能动态获取用户的多种兴趣。但没有考虑行为的先后关系(序列)、兴趣的变化过程等

2、候选商品与每个行为节点计算权重,仅适用较短的行为序列(论文中采用14天的曝光日志,每个用户平均35个行为)

3、对比传统的Embedding&MLP的模型,计算复杂度提升。上线时也做了一些GPU-CPU的计算优化

2.2 DINE

简介

针对DIN没有考虑行为先后关系、兴趣变化过程的问题,盖坤团队继续优化模型结构,引入GRU提取行为序列中的信息,并结合DIN中目标AD与行为节点计算权重的模式(Attention),提出AUGRU进一步挖掘兴趣变化中的信息

论文细节

Interest Extractor Layer

Interest Extractor Layer ,也就是兴趣提取层。用户行为是用户兴趣的载体,兴趣也会随着用户采取某个行动之后改变。因此要对兴趣建模,首先要对行为之间的依赖关系进行建模。考虑到效率与性能,文中使用 GRU 对行为之间的依赖关系进行建模。GRU 的公式如下:

由于 GRU 的特性,候选广告商品是否被点击的这个 label 在反向梯度传播的过程中仅仅能够对 GRU 的最终状态形成有效的监督作用,而对于中间的行为序列隐含状态缺少有效的监督信息。因此,为了使得中间的隐含能够有效的学习兴趣信息,使用下一个时刻的行为来监督当前隐含状态的学习。为此,选择真实的下一个商品作为正样本,选择其他商品作为负样本,进而计算一个二分类的辅助损失函数:

其中 ht表示第 t 个隐含状态,eb表示有真实点击行为的正样本,eb^表示没有点击行为的负样本。

引入损失函数的好处有:

  1. 有助于 GRU 每个隐含状态学习到兴趣表示。

  2. 有助于降低长序列建模中梯度反向传播的难度。

  3. 辅助损失函数还有助于嵌入层学习更多的语义信息,得到更好的嵌入矩阵。

Interest Evolving Layer

Interest Evolving Layer,如上图中红色区域所示,结合了注意力机制的局部激活能力以及GRU的序列学习能力来实现对与候选广告商品相关的兴趣演化过程建模。

具体而言,需要对用户兴趣与候选商品计算 attention:

GRU with attention update gate(AUGRU),作者提出了增加了attentional update gate的GRU结构实现attention机制和GRU的无缝结合:

2.3 MIMN

简介

DIN、DIEN处理的序列长度都有限(最大为150),而离线实验验证,采用的行为序列越长,模型收益越大。因此意愿上是期望使用更长(1000)的行为序列(long-life),但长的行为序列会带来两个问题

1、存储限制:天猫广告业务上,6亿用户,14天行为序列(最大长度150),消耗1TB的存储,如果序列长度放开到1000,预计消耗6TB(估计也用不到,毕竟大序列的可能都属于长尾)

2、时延限制:精排一般是10ms,DIEN上线已经达到14ms,如果继续拉大序列长度,预计时延会达到30ms

针对上述两个问题,作者开始了优化MIMN的优化之路

论文细节

计算分离

维护一个离线的用户兴趣中心,存储当前时刻的兴趣embedding结果(存储序列消耗资源大,存不下),每次有新的用户行为进来时更新embedding。广告请求来时,给UIC发请求,获取兴趣embedding供线上计算。

长序列兴趣提取

UIC的解决方案会引入一个新问题,如果保存当前时刻的embedding,并且这个结果是能增量更新的?作者借助记忆网络NTM来处理这个问题。整体模型结构如下,左下角部分为行为序列处理结构,Controller、Read Head、Witer Head、M均为NTM的原始模型结构,Memory Induction Unit为作者创新的部分

离线计算时,左下角的结构能得到当前时刻每个用户的行为序列特征S,兴趣矩阵M,并存储在TAIR存储系统中。线上请求到来时,查询TAIR里对应用户的特征序列和兴趣矩阵,并将候选AD的embedding,输入模型的Controller部分,继而提取相关的兴趣和序列结果,作为MLP模型输入的一部分

论文重点介绍了NTM、Memory Induction Unit两部分

1、NTM

这是Google于14年提出的记忆网络结构,该结构由Controller、Memory两部分构成,Memory存储了一个记忆矩阵 。这里,作者把矩阵的每一行想象成一种兴趣类型。Controller可以想象成MLP/LSTM等结构

整个模型包括两种操作

(1)

  • 将外部输入经过Controller得到读操作头

  • 计算存储矩阵中每一行结果(论文里作者当作用户某种类型的兴趣)与读操作的相关性,作为特征的权重,即

(2)写操作:离线计算,初始训练/用户新增行为时用

2、创新点

(1)存储利用的归一化(Memory Utilization Regularization)

这是针对写操作的一种优化。行为序列中的Item也存在马太效应,大量热门item的进入,导致写操作存在大量相同的输入(写操作头相同),此时存储矩阵中的某些行被频繁更新,某些行却被忽略。作者提出优化写操作头的构造方法

具体的,假设原来的写操作权重为,作者引入累积更新权重、对写操作头做了新一层的封装,如下:

(2)Memory Induction Unit(MIU)

优缺点

1、时延:提出计算分离的模式,使得模型处理长序列(序列长度为1000)都不存在时延的压力,如下图

2、存储:提出NTM的结构,存储系统只需要为每个用户维护存储矩阵Mt和序列矩阵S,不需要单独保存行为序列,存储量从6T转为2.7T

3、效果:计算分离后,兴趣的提取无法很好的和候选AD/商品交互(仅通过存储矩阵实现交互),可能会对效果有损

4、同步:时序模块的结果和ctr模型是异步更新的,行为序列频繁更新可能导致模型效果波动,需要有一定的回滚机制

5、适用性:当用户行为丰富且行为更新频率没有远高于请求时,可以使用该模型。这是因为该模型时针对长序列行为建模的,行为数据不丰富当然不必使用。而如果用户行为更新频繁,ctr模型都来不及更新,可能会使预测结果产生波动

6、其他:作者提到双11时虽然行为数据丰富,但用户行为特殊,提取出来做特征效果反而下降

2.4 SIM

简介

MIMN虽然通过计算分离的方式确保了时延方面无压力,但也带来了更新频率不一致,行为序列无法与候选AD更好的交互等问题。线上使用时,作者发现当序列长度超过1k时,MIMN效果会变差(也是因为无法与候选AD交互)。

基于这些问题,作者干脆直接模仿推荐系统多阶段过滤的方法,第一阶段通过相对粗略的搜索模式,提取行为序列中与候选AD较相关的节点,第二阶段通过精准搜索的模式,得到序列与候选AD的关系,并形成embedding供MLP使用。这个模型能吃下的最大序列长度为54000,能满足工业界提取长期用户兴趣的需求。

论文细节

泛搜索结构(第一阶段)

如上图左侧所示,作者的重点是提取长期行为中(短期的默认全取,论文的工业数据集中短期指14天内的行为),与候选商品相关的行为节点。作者提出两种匹配方法

1、Hard Search:核心思想是只提取和候选商品相同类目的行为信息。具体的,在线维护一个“用户ID-商品类目ID-行为商品ID”的双层索引数据。请求到来时,直接检索对应类目的行为商品序列

实际业务中,发现两种搜索模式的效果并没有太大差异,而性能上,明显Hard Search更有优势,因此线上采用Hard Search(存储消耗22TB。。。)

精准搜索结构(第二阶段)

该阶段,模型的输入分为4部分,用户画像,候选商品,短期行为序列和筛选出的长期行为序列,短期行为序列的信息提取采用DIEN的结构。而筛选的长期行为序列 ,因为行为发生时间与当前有一定距离,作者单独使用的attention结构去提取特征

优缺点

1、从实验看,SIM基本能满足工业界对用户长期兴趣提取的要求,对比DIEN,模型在对长期兴趣的提取效果是显著的。如下左图,横坐标表示的是用户当前时刻点击了某类别商品与上一次点击该类别商品的时间差,曲线表示样本分布情况,可以看到点击样本的 基本在14天以内。直方图表示对比DIEN,SIM的AUC提升情况,可以看到对于命中长期兴趣的点击样本,SIM的效果远优于DIEN

2、时延方面,SIM因为要处理1w+的序列信息,性能比MIMN要弱一些,但18ms的时延也基本满足实时性的要求

3、SIM号称能够处理的序列长度是54000,对于阿里广告业务而言,相当于180天的广告行为,已基本覆盖用户长期兴趣建模所需的时间长度

2.5 DSIN

简介

这篇论文没有从提取长期行为的角度出发,而是在时间间隔上做文章。DIEN直接将14天的行为无差别的拼接,没有考虑session的概念,但是用户的行为,在不同的Session中有明显差异。如下图,作者将行为间隔不超过30min的部分归纳为一个session,发现,同一个session内,用户点击的商品具有明显的指向性,而不同session间,用户的点击行为有明显差异

论文细节

针对这一现象,作者将行为划分为多个session,并提出兴趣抽取、兴趣交互(序列)、兴趣激活层3部分

 

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

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

相关文章

使用云服务器可以做什么?十大使用场景举例说明

使用阿里云服务器可以做什么?阿里云百科分享使用阿里云服务器常用的十大使用场景,说是十大场景实际上用途有很多,阿里云百科分享常见的云服务器使用场景,如本地搭建ChatGPT、个人网站或博客、运维测试、学习Linux、跑Python、小程…

6年测试,不断磨炼升级打怪自动化测试,一路晋升他终于冲出月35k+

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 Python自动化测试&…

ViT 论文逐段精读

https://www.bilibili.com/video/BV15P4y137jb Vision Transformer 挑战了 CNN 在 CV 中绝对的统治地位。Vision Transformer 得出的结论是如果在足够多的数据上做预训练,在不依赖 CNN 的基础上,直接用自然语言上的 Transformer 也能 CV 问题解决得很好…

如何学习web前端开发?这样学前端事半功倍,能救一个是一个!

非常理解想要自学前端的伙伴,因为好程序员的学员一开始也是自学插画的,很多同学,自学到最后真的非常枯燥乏味,且走了很多弯路。小源想着能帮一把是一把的原则,这两天整理了一份前端的高效学习路线,想学web前…

接口测试常用工具及测试方法(基础篇)

首先,什么是接口呢? 接口一般来说有两种,一种是程序内部的接口,一种是系统对外的接口。 系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给…

Windows管理内存的3种方式——堆、虚拟内存、共享内存

一、操作系统管理内存概述 在 Windows 操作系统中,每个进程都被分配了 4GB 的虚拟地址空间,这被称为进程的虚拟地址空间。虚拟地址空间提供了一个抽象的地址空间,使得每个进程都可以认为它拥有自己的独立内存空间。这个虚拟地址空间被分为两…

720度沉浸式体验,VR虚拟展馆的价值有哪些?

展馆作为一个展示商品、会议交流、信息传播、经济贸易的场所,能够创造巨大的经济效益和社会效益。什么是VR虚拟展馆呢?VR虚拟展馆是基于VR全景技术打造的线上展厅,可以应用在多种领域中展示各式的商品和内容,观众通过VR虚拟展馆可…

ubuntu系统下使用ros控制UR真实机械臂,逻辑清晰,亲测有效

梳理一下在ubuntu系统使用ros控制UR真实机械臂的思路,逻辑清晰,亲测有效,并记录踩过的坑。从0开始,使用ros控制真实UR机械臂。 环境:ubuntu18.04 ros版本:melodic 机械臂型号:UR5e 一&#xff…

当我与单链表分手后,在酒吧邂逅了双向循环链表.....

链表的种类有8种,但我们最常用的为无头单向非循环链表和带头双向循环链表。 带头双向循环链表 当带头双向循环链表只有哨兵位头的时候,双向链表的指向如下图。 head->pre和head->next都是指向自己,这个是有巨大优势的,代码…

CTFHub | 文件包含

0x00 前言 CTFHub 专注网络安全、信息安全、白帽子技术的在线学习,实训平台。提供优质的赛事及学习服务,拥有完善的题目环境及配套 writeup ,降低 CTF 学习入门门槛,快速帮助选手成长,跟随主流比赛潮流。 0x01 题目描述…

一篇文章让你上手Canal数据同步神技~

视频教程传送门: Canal极简入门:一小时让你快速上手Canal数据同步神技~_哔哩哔哩_bilibiliCanal极简入门:一小时让你快速上手Canal数据同步神技~共计13条视频,包括:01.课前导学与前置知识点、02.Canal组件了解、03.My…

光纤收发器可以连接光模块吗?

随着科技的进步发展,城市信息化速度的加快,光通信产品在数据中心和安防监控等场景中的运用越来越广泛,而这之间的连接则需要光模块和光纤收发器来实现。很多用户对光模块和光纤收发器的使用有些疑虑,两者该如何连接?又…

2023年5月实时获取地图边界数据方法,省市区县街道多级联动【附实时geoJson数据下载】

首先,来看下效果图 在线体验地址:https://geojson.hxkj.vip,并提供实时geoJson数据文件下载 可下载的数据包含省级geojson行政边界数据、市级geojson行政边界数据、区/县级geojson行政边界数据、省市区县街道行政编码四级联动数据&#xff0…

第7章链接:重定位、可执行目标文件、加载可执行目标文件

文章目录 7.7 重定位7.7.1 重定位表目7.7.2 重定位符号引用重定位PC相关的引用重定位绝对引用 7.8 可执行目标文件7.9 加载可执行目标文件 7.7 重定位 一旦链接器完成了符号解析这一步,它就把代码中的每个符号引用和确定的一个符号定义(也就是&#xff…

自学成材的黑客很多,但还是得掌握方法,给你黑客入门与进阶建议

建议一: 黑客七个等级(仅供参考) 黑客,对很多人来说充满诱惑力。很多人可以发现这门领域如同任何一门领域,越深入越敬畏,知识如海洋,黑客也存在一些等级,参考知道创宇 CEO ic&#…

如何把图片无损放大?教你图片怎么无损放大

随着数字图像技术的不断发展,图片无损放大成为了许多人关注的问题。当我们需要将小图片放大到更大的尺寸时,使用传统的放大方法可能会导致图片失真、模糊等质量问题。那么如何在保持高清晰度和精度的同时进行无损放大,一直是一个备受关注的课…

数字化时代,如何从战略设计到架构来打造智慧银行?

导语 | 随着人工智能、大数据、云计算等技术向纵深发展,数字化转型已成为银行发展的“必答题”。调整战略规划和架构重组、加大信息科技投入、推进科技人才队伍建设、持续推出数字化产品……近年来,深化数字化转型,以科技赋能金融服务已成为不…

【C++初阶】第十三篇:模板进阶(非类型模板参数、模板的特化以及模板的分离编译)

文章目录 一、非类型模板参数二、模板的特化2.1 概念2.2 函数模板特化2.3 类模板特化2.3.1 全特化2.3.2 偏特化/半特化 三、模板的分离编译3.1 什么是分离编译3.2 模板的分离编译3.3 解决方法 四、模板总结 一、非类型模板参数 模板参数类型可分为:类型形参和非类型…

通达信SCTR强势股选股公式,根据六个技术指标打分

SCTR指标(StockCharts Technical Rank)的思路来源于著名技术分析师约翰墨菲,该指标根据长、中、短三个周期的六个关键技术指标对股票进行打分,根据得分对一组股票进行排名,从而可以识别出强势股。 与其他技术指标一样,SCTR的设计…

中国社科院与美国杜兰大学能源管理硕士项目是你职场通关的密码吗

职场是一场没有硝烟的战争,想要在职场取得取胜,就要拥有超能力。从职场小白晋升到管理层一路走来诸多不易,想要坐稳或升得更高,要不断提升自己能力,要不间断地学习。社科院与美国杜兰大学能源管理硕士项目是你通关的密…