当前位置: 首页 > news >正文

用户行为序列建模(篇六)-【阿里】DSIN

简介

DSIN(Deep Session Interest Network)是阿里巴巴于2019年提出的点击率预估模型。相比于DIN、DIEN,考虑了用户行为序列的内在结构(序列是由session组成的,在每个session内,用户行为是高度同构的,在session间是异构的),实现了对用户兴趣的更精准地刻画,并取得了更好的离线效果(论文中没有给出在线效果)

已有工作

CTR预估

截止目前,已有的CTR预估工作主要集中在两方面:

(1)特征交叉。从Wide&Deep->DeepFM->DCN->AFM。交叉越充分,可提取的信息越丰富,效果越好;

(2)利用用户行为序列。从YoutubeNet->DIN->DIEN。利用序列信息,提升用户表征能力和目标预测准确性

基于Session的推荐

截止目前,session经常被用在序列化推荐中,但是未被用在CTR预估中

已有工作的不足

未考虑用户行为序列的内在结构:序列是由session组成的,在每个session内,用户行为是高度同构的,在session间是异构的

解决的方案

step1:将用户行为序列划分为不同的session,本文是按照至少每30min划分作为一个session。这点和Airbnb的划分方式是一致的。在每个session内通过带bias的self-attention提取用户兴趣;

step2:将step1再经过Bi-LSTM,建模session间的用户兴趣演变

step3:使用“局部激活单元”自适应学习在目标target上的不同session兴趣

模型结构和Loss设计

Base CTR

  • 模型结构

介绍三部分:feature representation、embedding、MLP

(1)feature representation

涉及三种类型的特征:用户画像(如性别、城市等)、内容画像(如卖家id、品牌id等)、用户行为(如用户点击的item id、item的side information等)

(2)embedding

上述三种类型的特征都会表示成embedding的形式。具体处理如下:

(3)MLP

上述特征经过concat、flattened后喂给MLP,再经过激活函数(如RELU),最终用softmax预测用户点击目标item的概率

  • Loss设计

用交叉熵损失函数表示

DSIN的模型结构

如下所示,包含4部分:Session Division Layer、Session Interest Extractor Layer、Session Interest Interacting Layer、Session Interest Activating Layer

第一部分:Session Division Layer

目标:划分session,保证在每个session内,用户行为是高度同构的,在session间是异构的

方式:按照至少每30min划分作为一个session

第二部分:Session Interest Extractor Layer

目标:提取用户兴趣

方式:需要考虑bias,再按照transformer结构进行multi-head Self-attention学习session内的时序信息。包含Bias Encoding、Multi-head Self-attention两部分

  • Bias Encoding

由如下三部分组成,并和用户原session行为求和:

  • Multi-head Self-attention

和transformer的self-attention结构相同

第三部分:Session Interest Interacting Layer

目标:捕捉用户兴趣演变

第四部分:Session Interest Activating Layer

使用“局部激活单元”自适应学习在目标target上的不同session兴趣

DSIN的Loss设计

loss:交叉熵损失函数

模型效果

Baseline

YoutubeNet(有无用户行为两种)、Wide&Deep、DIN、DIN-RNN、DIEN

评估

离线:AUC

数据集

数据集行为类型行为序列周期行为序列长度
阿里妈妈的广告数据集展现、点击训练集:20170506~20170512测试集:20170513max_length>=200
阿里巴巴的推荐数据集展现、点击训练集:20181213~20181219测试集:20181220max_length>=200

离线效果

结论:

(1)DSIN效果最佳;

(2)由于用户行为序列的不连续,导致DIN-RNN的效果比DIN的差

具体效果如下所示:

效果复盘

(1)按照session进行建模的效果

1)从离线结果可知,DIN-RNN比DIN的效果差,DSIN-BE比DSINBE-NO-SIIL的效果好

2)按照session处理,会导致由于用户行为序列的快速跃变、突然停止,带来用户行为的session变得充满噪声,导致信息在RNN传输时带来信息损失,影响用户行为序列建模的用户表征

3)按照session处理,保证在每个session内,用户行为是高度同构的,在session间是异构的,更适合进行序列建模

(2)用户兴趣交叉层的效果

从离线结果可知,DSIN-BE比DSINBE-NO-SIIL的效果好,从而论证必要性

(3)bias编码的效果

DSIN比DSIN-PE的效果好,论证bias编码可以捕捉session的高阶信息

(4)self-attention、激活单元(activation unit)的可视化

论文中进行了可视化,说明了效果

代码实现

TensorFlow实现DSIN

结尾

亲爱的读者朋友:感谢您在繁忙中驻足阅读本期内容!您的到来是对我们最大的支持❤️

正如古语所言:"当局者迷,旁观者清"。您独到的见解与客观评价,恰似一盏明灯💡,能帮助我们照亮内容盲区,让未来的创作更加贴近您的需求。

若此文给您带来启发或收获,不妨通过以下方式为彼此搭建一座桥梁: ✨ 点击右上角【点赞】图标,让好内容被更多人看见 ✨ 滑动屏幕【收藏】本篇,便于随时查阅回味 ✨ 在评论区留下您的真知灼见,让我们共同碰撞思维的火花

我始终秉持匠心精神,以键盘为犁铧深耕知识沃土💻,用每一次敲击传递专业价值,不断优化内容呈现形式,力求为您打造沉浸式的阅读盛宴📚。

有任何疑问或建议?评论区就是我们的连心桥!您的每一条留言我都将认真研读,并在24小时内回复解答📝。

愿我们携手同行,在知识的雨林中茁壮成长🌳,共享思想绽放的甘甜果实。下期相遇时,期待看到您智慧的评论与闪亮的点赞身影✨!

万分感谢🙏🙏您的点赞👍👍、收藏⭐🌟、评论💬🗯️、关注❤️💚~


自我介绍:一线互联网大厂资深算法研发(工作6年+),4年以上招聘面试官经验(一二面面试官,面试候选人400+),深谙岗位专业知识、技能雷达图,已累计辅导15+求职者顺利入职大中型互联网公司。熟练掌握大模型、NLP、搜索、推荐、数据挖掘算法和优化,提供面试辅导、专业知识入门到进阶辅导等定制化需求等服务,助力您顺利完成学习和求职之旅(有需要者可私信联系)

友友们,自己的知乎账号为“快乐星球”,定期更新技术文章,敬请关注!

http://www.lqws.cn/news/575065.html

相关文章:

  • Python爬虫-爬取汽车之家全部汽车品牌及车型数据
  • Linux下基于C++11的socket网络编程(基础)个人总结版
  • 应用层网络编程范式
  • 现代 JavaScript (ES6+) 入门到实战(五):告别回调地狱,Promise 完全入门
  • Origin绘制复合子母饼状图—复合柱饼图、复合环饼图及复合饼图
  • 爬虫实战之图片及人物信息爬取
  • 【IQA技术专题】大模型视觉强化学习IQA:Q-Insight
  • 数据同步工具对比:Canal、DataX与Flink CDC
  • 第二届 Parloo杯 应急响应学习——畸形的爱
  • Mybatis的修改(update)操作
  • 【Linux庖丁解牛】— 文件系统!
  • cJSON 使用方法详解
  • 浅谈AI大模型-MCP
  • 机器学习在智能电网中的应用:负荷预测与能源管理
  • Nginx漏洞处理指南
  • Leetcode 3598. Longest Common Prefix Between Adjacent Strings After Removals
  • 第8篇:Gin错误处理——让你的应用更健壮
  • 【Typst】自定义彩色盒子
  • 【NLP 实战】蒙古语情感分析:从 CNN 架构设计到模型训练的全流程解析(内附项目源码及模型成果)
  • BP-Tools21.02下载 加解密利器 金融安全交易算法工具 PCI认证工具 金融和智能卡的数据加解密和数据转换工具
  • 无人机用shell远程登录机载电脑,每次需要环境配置原因
  • 06_注意力机制
  • (七)集成学习
  • git lfs 提交、拉取大文件
  • 【Linux高级全栈开发】2.4 自研框架:基于 dpdk 的用户态协议栈的实现
  • 华为云Flexus+DeepSeek征文 | 华为云 ModelArts Studio 赋能 AI 法务:合同审查与法律文件生成系统
  • M|艺伎回忆录
  • 从理论到实战:解密大型语言模型的核心技术与应用指南
  • (LeetCode 面试经典 150 题 ) 134. 加油站 (贪心)
  • 日语学习-日语知识点小记-进阶-JLPT-真题训练-N2阶段(5):2022年12月2023年7月