一个模型使召回阶段又准确又多样
作者 | 十方
一个推荐系统,大致就分为两个模块,召回和排序。再细分下去就是召回,粗排,精排,重排。不管推荐系统多么复杂,无非是为了两个目标,推荐的准确,且多样化。为了实现多样化,往往是在排序中对同质的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
一个模型使召回阶段又准确又多样相关推荐
- 推荐系统(一)召回阶段
(目前理解不深,待补充完整) 前言 推荐系统的三个阶段分为 召回 粗排 精排 粗排精排阶段又可统称为排序阶段. 召回是推荐系统的第一个阶段,当然前面还有user embedding阶段也就是提取用户和 ...
- 拒绝暴力调参!推荐一个模型Debug神器!
近些年深度学习在视觉.自然语言处理.语音等各个技术方向都诞生了不少创新应用,如智能识别医疗图像中的病灶,辅助医生做病情诊断:智能判别生产线上有质量问题的产品,减轻人工质检压力:对政务.金融等流程中的证 ...
- 如何用FM模型做召回模型
FM怎么用在召回中? 极简的模式 第一,离线训练.这个过程跟在排序阶段采用FM模型的离线训练过程是一样的,比如可以使用线上收集到的用户点击数据来作为训练数据,线下训练一个完整的FM模型.在召回阶段,我 ...
- NLP通用模型诞生?一个模型搞定十大自然语言常见任务
翻译 | 于之涵 编辑 | Leo 出品 | AI科技大本营 (公众号ID:rgznai100) AI科技大本营按:目前的NLP领域有一个问题:即使是再厉害的算法也只能针对特定的任务,比如适用于机器翻 ...
- NLP通用模型decaNLP诞生,一个模型搞定十大自然语言常见任务
然而近日,Salesforce发布了一项新的研究成果:decaNLP--一个可以同时处理机器翻译.问答.摘要.文本分类.情感分析等十项自然语言任务的通用模型. Salesforce的首席科学家Rich ...
- 一个模型能服务所有的点击率模型?
十方@炼丹笔记 今天我们就来探讨一篇论文<One Model to Serve All: Star Topology Adaptive Recommender for Multi-Domain ...
- 谷歌提出Flan-T5,一个模型解决所有NLP任务
作者:nghuyong 知乎:https://zhuanlan.zhihu.com/p/580468546 「论文」: Scaling Instruction-Finetuned Language M ...
- 抱抱脸(hugging face)教程-中文翻译-分享一个模型
分享一个模型 最后两个教程展示了如何使用 PyTorch. Keras 和 Accelerate 优化分布式设置的模型.下一步就是把你的模型公之于众!我们相信公开分享知识和资源,使人工智能大众化.我们 ...
- 一个模型击溃12种AI造假,各种GAN与Deepfake都阵亡
AI造出的假图片恐怕很难再骗过AI了. 连英伟达本月刚上线的StyleGAN2也被攻破了.即使是人眼都分辨看不出来假脸图片,还是可以被AI正确鉴别. 最新研究发现,只要用让AI学会鉴别某一只GAN生成 ...
最新文章
- 开启注册丨全国社交媒体处理大会(SMP 2020)召开,98场报告日程全公开
- css 小经验: 重构css的优化与技巧
- Webrtc入门——基于阿里云ubuntu 最新webrtc Android平台编译详细说明
- 水印生成器第2版[原图质量水印可自定义设置]
- mysql identity sql,SQL Server的Identity字段使用/复制/重设
- 高调复出却无人买单!预售6小时,仅几百人预约
- 让C#语言充当自身脚本!——.NET中的动态编译
- 集成学习-幸福感预测案例分析
- spring的前后台数据传输。
- HTML一片空白, 无法渲染: Empty tag doesn't work in some browsers
- activerecord java_GitHub - redraiment/jactiverecord: 实现自己的ORM还是有价值的
- 生物学软件大汇总!史上最全
- 项目01——图书进、销、存(jxc)系统(单机版)
- python爬取同花顺_python 同花顺
- xp系统怎么创建服务器新用户,xp系统ftp服务器创建用户
- 洛谷 P2123 皇后游戏 解题报告
- bootstrap登录模板
- 分析称惠普赶走前任CEO赫德堪比苹果赶走乔布斯
- RK3126 人体感应模块驱动
- 无线物理层安全技术的研究进展