Bundle Recommendation

Matching User with Item Set: Collaborative Bundle Recommendation with Deep Attention Network

Liang Chen, Yang Liu, Xiangnan He, Lianli Gao and Zibin Zheng

IJCAI 19

挑战:

  • bundle是item集合,不能按照普通item来处理
  • User-Bundle的交互会更加稀疏

解决办法:

  • 聚合item的embedding 来得到bundle的embedding
  • 多任务的方式共享底层网络,集成User-item交互中的协同信号用于User-Bundle推荐。

模型设计:

image-20200806140726919

image-20200806140726919

Bundle embedding生成:

中间这个部分是对注意力做一个归一化,用来抵消不同Bundle可能有不同数量的item造成的影响,保证不管bundle含有多少item,最后的embedding数值不会有过大差异。

整体思路为Bundle的embedding等于各个item的embedding*注意力权重的和。

a(i,j):User对item的注意力

是类似矩阵分解的方法计算得到的

aj为item的注意力嵌入

Bundle Recommendation with Graph Convolutional Networks

Jianxin Chang, Chen Gao, Xiangnan He, Yong Li, Depeng Jin

切入点:

  • User和Bundle的层级关系没有显示建模
  • Bundle和Bundle的关系没有考虑
  • User会因为一个不喜欢的Item而拒绝Bundle,所以两个Bundle直接的差异是交互的关键

解决办法:

  • 显示建模User item Bundle的关系
  • 利用图上bundle-item-bundle的源路径,表示bundle和bundle之间的关系
  • training with hard-negative samples 探索bundle之间的差异

模型设计:

image-20200806155228519

image-20200806155228519
  • 异构图构造

    三种节点两种边

    User item bundle 节点

    User-item交互边, item-bundle交互边

  • 两个level的embedding传播

    item level

    类似传统User-item模型,用邻居信息和自身旧信息 更新自身

    最后聚合item来表示bundle

    Bundle level

    User 是通过自身和邻居信息更新

    Bundle还利用Mb 加入了 bundle-item-bundle路径中其他bundle的item重叠性信息,便于学到更精细的嵌入,解决切入点3

  • 预测打分

    类似NGCF把多次传播后得到的embeddings拼接在一起

    用两个level内积之和来生成最后的预测打分。

优化方法:

hard-negative samples

模型大致收敛后,专门学习用户跟大多数item有交互,但是没有跟bundle交互的样本以及和正样本重叠度高的负样本。

Bundle Recommendation认识

  • 数据稀疏:User-Bundle交互数据很少

    解决办法:和交互多的User-item共享权重 / 合理选择采样手法来深入学习稀疏的交互

  • User-Item-Bundle三者关系表示

    DAM 分开考虑 User-item User-bundle Bundle-item

    BGCN 用异构图整合三种节点

  • Bundle嵌入的学习策略

    DAM设计注意力机制,把item整合成bundle嵌入

    BGCN 有两套学习路线:整合item 和 从Bundle的邻居中学习

Bundle Recommendation 入门相关推荐

  1. Personalized Bundle Recommendation in Online Games 阅读笔记

    Personalized Bundle Recommendation in Online Games 阅读笔记 CIKM 2020 Qilin Deng, Kai Wang, Minghao Zhao ...

  2. Android App Bundle基础入门

    一.前言 重要提示:从 2021 年 8 月起,新应用需要使用 Android App Bundle 才能在 Google Play 中发布.现在,Play Feature Delivery 或 Pl ...

  3. 一文了解推荐系统中的图神经网络

    来源:RUC AI Box本文约4600字,建议阅读9分钟 本文主要介绍推荐系统中的图神经网络,欢迎交流探讨! [ 引言 ]近年来,GNN技术由于其在图数据学习方面的出色表现,在许多领域得到了广泛的应 ...

  4. 【推荐系统】AAAI2022推荐系统论文集锦

    2022年第36届人工智能顶级会议AAAI论文列表已经放出,此次会议共收到9251篇论文提交,其中9020篇论文被审稿.最终录取篇数为1349篇,录取率为可怜的15%.由于境外疫情形势依然严峻,大会将 ...

  5. 大三本科生获最佳短论文奖,清华大学狂揽信息检索顶会SIGIR 2020多个奖项

    机器之心报道 编辑:魔王.杜伟.小舟 第 43 届国际计算机协会信息检索大会(ACM SIGIR)于本月 25 日举行.昨日,大会公布了最佳论文等奖项.来自清华大学的研究人员获得最佳论文荣誉提名奖.最 ...

  6. SIGIR|乘风破浪的AI华人学者们

    这个夏天,你是否已经在 CVPR, ICLR, ICML 等众多舞台上领略了人工智能领域内华人学者们的出色研究,为自己钟爱的论文疯狂打着Call?乘风破浪的AI华人学者们,你pick谁呢? 不过,精彩 ...

  7. 从信息检索顶会CIKM'20看搜索、推荐与计算广告新进展

    文 | 谷育龙Eric 源 | 搜索推荐广告排序艺术 我是谷育龙Eric,研究方向有深度学习.搜索推荐,喜欢为大家分享深度学习在搜索推荐广告排序应用的文章.CIKM作为信息检索.数据挖掘等领域的国际一 ...

  8. 上百篇论文概览『负采样方法』的前世今生

    Efficient and Effective: 百篇论文概览负采样方法的前世今生 © 作者|徐澜玲 研究方向|推荐系统 引言:负采样方法最初是被用于加速 Skip-Gram 模型的训练,后来被广泛应 ...

  9. RecSys‘22 推荐系统论文梳理

    2022推荐系统论文梳理系列 推荐系统相关顶会整理 IJCAI'22 推荐系统论文梳理 ICML/ICLR'22 推荐系统论文梳理 WWW'22 推荐系统论文之序列推荐篇 WWW'22 推荐系统论文之 ...

最新文章

  1. IJCAI 2019精选论文一览,从底层到应用都有了
  2. Centos nginx 安装 源码方式安装
  3. 【Python】编程笔记4
  4. Sentinel(十五)之在生产环境中使用 Sentinel
  5. Linux内核访问外设I/O--动态映射(ioremap)和静态映射(map_desc) (转载)
  6. java设计模式并发_[高并发Java 七] 并发设计模式
  7. 游戏巨头齐聚 Unite Shanghai 2019,揭秘爆款游戏制作精彩亮点!
  8. SpringAOP之@EnableAspectJAutoProxy如何实现自动代理?
  9. 计算机二级Python公共基础部分
  10. ALSA音频框架理解:machine
  11. QT画贝塞尔曲线 和 曲线与斜率、一阶导数 、二阶导数的关系
  12. 延安干部学院:陕北这处逆天美景不输美国“羚羊谷”
  13. 如何站在巨人的肩膀上学习
  14. 自己动手实现简易光线追踪算法
  15. 如何通过linux的终端命令远程登陆windows主机
  16. 破解虚拟机ESXi服务器密码,esxi虚机Windows server 2012忘记密码解决办法
  17. 多种消息提醒系统的设计模式、实现方案(附功能截图+表结构)
  18. mysql远程连接3306不通问题
  19. java 删除 指定图片_java删除服务器上指定图片
  20. 百事可乐大玩黑罐只换不卖

热门文章

  1. 实现协程的方式及协程的意义 【笔记】
  2. Github邮件联系项目源代码作者简单方法
  3. [转]JSP文件管理器0.5版本,显示目录和文件,支持cmd操作,也可当jsp木马使用...
  4. 计算机桌面隔几秒闪一下,为什么我的电脑桌面总是隔几分钟就自动刷新一下
  5. 毕业设计管理系统之二Excel和数据库之间互存
  6. 电动扫地车的工作原理和使用方法
  7. spark学习之并行度、并发、core数和分区的关系
  8. 最小的Linux系统制作过程详解
  9. C#进行CAD二次开发学习笔记--02
  10. MySQL - 07 SQL函数的使用