作者 | 十方

一个推荐系统,大致就分为两个模块,召回和排序。再细分下去就是召回,粗排,精排,重排。不管推荐系统多么复杂,无非是为了两个目标,推荐的准确,且多样化。为了实现多样化,往往是在排序中对同质的item做了指纹去重处理。但是如果召回侧多样性不足,排序无论怎么优化都不能达到最优,所以这篇《Improving Accuracy and Diversity in Matching of Recommendation with Diversified Preference Network》就来探讨如何在召回侧,用一个端到端模型GraphDR实现多样化的召回。

模型结构

GraphDR包含3个模块,如下图所示,包含多样偏好网络(Diversified Preference Network),网络表示学习(Network representation learning)和在线多通道匹配(online multi-channel matching)。

Diversified Preference Network

多样偏好网络是实现多样性召回的基础,本文通过用户多种多样的交互行为对用户偏好进行建模,训练数据包含多种类型:视频,Tag,媒体,用户和文本。视频包含文本(Title),视频提供者是媒体,每个视频又有很多Tag,这些特征对最后的推荐效果有着重要的影响。为了缓解数据稀疏的影响,用户的基础特征也要用进来。可以按年龄,性别,地域等特征对用户进行聚类,形成用户组。在GraphDR模型中,有6种类型的边。

  • Video-Video边:如果一个用户先后看完了两个video(看完指的是看视频的时间超过视频本身时间的70%),这两个video之间就存在一条边,这些边反映了用户直接的观看习惯。

  • Video-User边:如果一个用户组在一周内看一个视频超过3次,那么该视频和用户组就存在一条边,这种粗粒度的边反应了社群特征。

  • Video-Tag边:该边反应了视频粗粒度的语义特征。

  • Video-Word边:该边反应了视频细粒度的语义特征。

  • Video-Media边:该边刻画了视频提供者特征。

  • Tag-Tag边:如果两个Tag同时出现在一个视频上,则这两个Tag存在一条边,反应了Tag之间的联系。

所有边都是无向无权的,相比较直接用用户,item进行建模,这些多样性的边给模型带来了更多信息,值得注意的是,在这种模型框架下,我们很容易增加更多类型的node和边来丰富多样性。

表示学习网络

不同类型的节点如何表示呢?首先把所有不同类型的节点映射到一个特征空间,对第K个节点而言,它的所有邻居节点Nk可以被分类为5种类型,视频(v)、tag(t)、媒体(m)、用户(u)、文本(d),直接分别embedding后concat就是该节点的embedding。

图中Field-level HGAT就是把第K个节点的所有邻居节点通过上述方式embeding后(f1~fk)作为输入,该文还提出了权重向量组下式:

为的是从中f1~fk提取5种类型的特征。如生成视频特征的embedding如下式所示:

然后把5种特征embeding concat后做非线性映射:

同时还要带上中心节点的特征:

最后把所有特征融合:

训练目标和deep walk类似,用的neighbor-similarity based loss,如下公式所示:

在线模块

在线模块使用一个多通道打分召回策略,综合考虑被通道召回情况,时间因素,相似度各种因素,用每一个看过的有效视频的embedding,用cos相似度召回100个视频,m表示通过m个有效观看视频,一共召回了100 * m个视频,然后通过下面公式计算分数。

首先是视频通道打分:

在tag和media通道,通过下式计算:

最后融合所有通道分数,给出最后打分,在100 * m个video中,选top 500的video。

实验

准确率:

多样性:

一起交流

想和你一起学习进步!『NewBeeNLP』目前已经建立了多个不同方向交流群(机器学习 / 深度学习 / 自然语言处理 / 搜索推荐 / 图网络 / 面试交流 / 等),关注公众号回复『入群』加入吧!

参考文献

1. Improving Accuracy and Diversity in Matching of Recommendation with Diversified Preference Network.   From https://arxiv.org/pdf/2102.03787.pdf

END -

炼丹宝典 |  Deep Learning 调参 tricks

2021-05-14

对 比 学 习 小 综 述

2021-05-12

Embedding技术回顾

2021-05-11

阿里、腾讯 | 算法岗面试复盘

2021-05-10

一个模型使召回阶段又准确又多样相关推荐

  1. 推荐系统(一)召回阶段

    (目前理解不深,待补充完整) 前言 推荐系统的三个阶段分为 召回 粗排 精排 粗排精排阶段又可统称为排序阶段. 召回是推荐系统的第一个阶段,当然前面还有user embedding阶段也就是提取用户和 ...

  2. 拒绝暴力调参!推荐一个模型Debug神器!

    近些年深度学习在视觉.自然语言处理.语音等各个技术方向都诞生了不少创新应用,如智能识别医疗图像中的病灶,辅助医生做病情诊断:智能判别生产线上有质量问题的产品,减轻人工质检压力:对政务.金融等流程中的证 ...

  3. 如何用FM模型做召回模型

    FM怎么用在召回中? 极简的模式 第一,离线训练.这个过程跟在排序阶段采用FM模型的离线训练过程是一样的,比如可以使用线上收集到的用户点击数据来作为训练数据,线下训练一个完整的FM模型.在召回阶段,我 ...

  4. NLP通用模型诞生?一个模型搞定十大自然语言常见任务

    翻译 | 于之涵 编辑 | Leo 出品 | AI科技大本营 (公众号ID:rgznai100) AI科技大本营按:目前的NLP领域有一个问题:即使是再厉害的算法也只能针对特定的任务,比如适用于机器翻 ...

  5. NLP通用模型decaNLP诞生,一个模型搞定十大自然语言常见任务

    然而近日,Salesforce发布了一项新的研究成果:decaNLP--一个可以同时处理机器翻译.问答.摘要.文本分类.情感分析等十项自然语言任务的通用模型. Salesforce的首席科学家Rich ...

  6. 一个模型能服务所有的点击率模型?

    十方@炼丹笔记 今天我们就来探讨一篇论文<One Model to Serve All: Star Topology Adaptive Recommender for Multi-Domain ...

  7. 谷歌提出Flan-T5,一个模型解决所有NLP任务

    作者:nghuyong 知乎:https://zhuanlan.zhihu.com/p/580468546 「论文」: Scaling Instruction-Finetuned Language M ...

  8. 抱抱脸(hugging face)教程-中文翻译-分享一个模型

    分享一个模型 最后两个教程展示了如何使用 PyTorch. Keras 和 Accelerate 优化分布式设置的模型.下一步就是把你的模型公之于众!我们相信公开分享知识和资源,使人工智能大众化.我们 ...

  9. 一个模型击溃12种AI造假,各种GAN与Deepfake都阵亡

    AI造出的假图片恐怕很难再骗过AI了. 连英伟达本月刚上线的StyleGAN2也被攻破了.即使是人眼都分辨看不出来假脸图片,还是可以被AI正确鉴别. 最新研究发现,只要用让AI学会鉴别某一只GAN生成 ...

最新文章

  1. 开启注册丨全国社交媒体处理大会(SMP 2020)召开,98场报告日程全公开
  2. css 小经验: 重构css的优化与技巧
  3. Webrtc入门——基于阿里云ubuntu 最新webrtc Android平台编译详细说明
  4. 水印生成器第2版[原图质量水印可自定义设置]
  5. mysql identity sql,SQL Server的Identity字段使用/复制/重设
  6. 高调复出却无人买单!预售6小时,仅几百人预约
  7. 让C#语言充当自身脚本!——.NET中的动态编译
  8. 集成学习-幸福感预测案例分析
  9. spring的前后台数据传输。
  10. HTML一片空白, 无法渲染: Empty tag doesn't work in some browsers
  11. activerecord java_GitHub - redraiment/jactiverecord: 实现自己的ORM还是有价值的
  12. 生物学软件大汇总!史上最全
  13. 项目01——图书进、销、存(jxc)系统(单机版)
  14. python爬取同花顺_python 同花顺
  15. xp系统怎么创建服务器新用户,xp系统ftp服务器创建用户
  16. 洛谷 P2123 皇后游戏 解题报告
  17. bootstrap登录模板
  18. 分析称惠普赶走前任CEO赫德堪比苹果赶走乔布斯
  19. RK3126 人体感应模块驱动
  20. 无线物理层安全技术的研究进展

热门文章

  1. 实战篇—关于某产品的切分细则
  2. Axure智慧、智能乡镇通数字管理服务平台+基础数据管理+招商后台管理+web端高保真管理后台
  3. 网易博客挂了,转一篇以前的文章过来纪念一下吧。。
  4. [LUOGU1437] 敲砖块
  5. Dropbox Interview – Design Hit Counter
  6. CentOS6.4下Mysql数据库的安装与配置
  7. 伟大骡子的一生和性能测试
  8. (四)2005年我的第一次软件行业创业,烧掉30万、2年时间打水漂的惨痛教训
  9. 为什么用Ghost备份后会有两个文件?
  10. Java 三个线程依次输出ABC