时间:2021-07-15 | 标签: | 作者:Q8 | 来源:阿猫阿狗网络
小提示:您能找到这篇{Youtube推荐双塔模型——SBCNM}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的Youtube推荐双塔模型——SBCNM内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您! |
< ">Sampling-Bias-Corrected Neural Modeling for Large Corpus Item Recommendations是youtube推荐在2019年的一篇论文,可以把他看作2016年那篇经典论文(Deep Neural Networks for YouTube Recommendations)里,召回模型的升级版本。 < ">同样,先简单介绍一下论文,再谈谈自己的理解和相关实践。 < ">< font-size: 18px;">论文速读 < ">这篇理论文是Deep Neural Networks for YouTube Recommendations中召回模型的升级版本。使用了经典的双塔结构,从而可以加入item侧的各种特征,提升泛化和新资源的预估能力。论文的主要贡献包括四点: < ">Streaming Frequency Estimation:流式词频预估,or流式展现次数预估。主要为了危机公关5s原则及举例解决batch内负采样时,词频有偏的问题。 < ">Modeling Framework:双塔召回模型,使用batch softmax交叉熵,同时使用batch内负采样。 < ">YouTube Recommendation:大规模数据场景应用,不多赘述。 < ">Ofline and Live Experiments:离线测试和在线效果,不多赘述。 < ">< font-size: 18px;">Modeling Framework < ">模型训练大的方面都比较常规,双塔结构+负采样(这套DNN召回方式,在这篇论文之前我们就已经在用了)。 < ">网络结构上是一个典型的双塔,分别产出用户和item的向量表达,方便召回时从全量候选集中快速选取top。 < ">样本方面,采用百万级label上的softmax多分类(每个item视作一个分类,和16年的论文一样)。负样本采用batch内负采样,来消除item频次对召回准确性的bias。 < ">论文里提到,batch内softmax,所以分布上和全局softmax肯定存在bias:高频item因为在batch内出现的概率高,会被过度惩罚。因此,论文提到一种做法,在sotmax前的输出上加一个和频次(or随机batch内出现的概率)相关的惩罚项。大致效果是item在batch内出现的概率越高,softmax的输入会在原来的基础上越小,从而降低高频item的预估概率,消除bias。 < ">下面贴几个公式,公式细节我就不解释了,细节可以看原文,功能和思想参考我上面的解释。 < ">在sotmax前的输出上加一个和频次相关的惩罚项: < ">是item在batch内出现的概率越高,softmax的输入会在原来的基础上越小,从而降低高频item的预估概率: < ">ok,以上这个处理是这篇论文的核心之一! < ">以上,引入了另外一个核心问题,如何知道item在随机batch内出现的概率?从而有了论文的另外一个核心:Streaming Frequency Estimation。 (论文里还提到一个标准化和热度的东西,预估的时候用一个热度超参来调节score,这里不是很理解论文的思路和具体做法,就先不谈了,有清楚的朋友可以评论和我讨论下) < ">< font-size: 18px;">Streaming Frequency Estimation < ">这里我同样先说思想,再贴论文的算法和简述。 < ">论文采用两个矩阵来记录和更新item出现的step和频率。 < ">以下,贴一段论文的描述: < ">这里矩阵A记录的是item y上一次出现的step,所以t-A[y]就是y最近一次的出现间隔。从而不断更新B,得到的就是y出现间隔的期望(这里我也是大致意会了一下,详细的推导和说明建议看原文)。也可以理解为,每次出现的间隔是一个样本,通过SGD和学习率不断学习得到了平均间隔的预估B。附一段原论文,个人感觉理解这一段就可以了。 < ">ok,上面得到了item y的出现间隔预估B,那么frequency企业公关危机 对其处理方 estimate就等于1/B[y]。 < ">到这里,整篇论文的精华就解释完了。 < ">之后,论文提到了一个streaming frequency estimate的改进方法,主要解决算法2中hash碰撞的问题。也很简单,就是用多个hash,记录多个B,最后用max(Bi)。 < ">个人感觉hash算法用的好,外加item的更新淘汰,小概率的碰撞其实没啥影响。 < ">最后,再贴一个网络结构图,其他的应用和评估细节就先不赘述了, < ">其他tips: < ">1.论文使用了观看进度做为loss weight,短点击权重为0,完播权重1,其他是否有平滑处理不确定。这里做一点衍生,其实用观看进度做为权重会有时长bias,倾向于较短的视频,用观看时长的话有会倾向于较长的视频,这里可以做不少结合业务的微处理。 < ">2.用户和item侧会共享部分id特征 < ">< font-size: 18px;">个人理解 < ">结合我自己的业务经验,谈谈理解吧 < ">1.首先说一个自己特别疑惑的地方,一直没搞明白具体区别和效果。youtube的做法是softmax,把每个item当作一个分类,从而预估用户在整个items集合上的偏好分布。我自己的业务场景里,是用的sigmoid二分类(点击和负采样),更像是预估一个item被展现且点击的概率。这里不确定两种方式效果的具体差异,也没对比过,有清楚的大佬可以教我一下。个人猜测,二分类的方式泛化会更强,softmax的方式准确会更高? < ">2.这个模型还有一个点,是我很想尝试一下的,就是用户侧的行为和item侧共享id这一类的emb表达。可能会对session序列的刻画更好,以及上文和当前item的关系预估更准确。 < ">3.效果:从我个人的业务线和周围其他的业务线情况看,类似这种端到端的召回效果和整体占比都不算太高;我甚至试过用粗排模型做召回,效果更弱。这也是我一直思考,却没有明确答案的:为什么这种端到端的DNN召回很难占据绝对优势呢? < ">4.DNN召回目前没有特别好的演进方向。我个人理解几个点比较合适:a.摆脱顶层cross的结构,引入更多交叉特征和负责结构,使得整体学习更加充分。b.摆脱单目标建模优化的方式,毕竟单目标没法刻画用户的满意或者令用户喜悦的感受,更多的考虑多目标的融合,比如,展现率,点击率,观看进度,是否点赞评论关注等等。 < ">5.疑问,论文里描述模型是天级更新,感觉有点落后。。。对新视频不够友好,而且反馈能力也会偏弱吧 |
上一篇:Youtube是怎么知道是否有版权问题的???
下一篇:Google Admob移动广告快速集成步骤
基于对传统行业渠道的理解,对互联网行业的渠道我们可以下这样一个定义:一切...
小米应用商店的后台操作和苹果是比较相似的,因为都能填写100字符关键词,允许...
小米的规则目前是在变更中的,但是根据经验小米的搜索排名评分的高低是个很重...
为了恰饭,有时候是要接入一些广告的,所以FB也专门有一个广告的SDK,这就是A...
在 2018 年于旧金山举行的游戏开发者大会上,Amazon Web Services (AWS) 曾宣布,目前世...
关于Facebook Audience Network如何收款的问题,其实官方已经给了详细的步骤。本文主要...
本文介绍了Audience Network对广告载体的质量检查,以及它重点广告形式需要注意的问...
随着iOS开发,作为开发者或公司需要针对iOS App开发涉及的方方面面作出对应的信息...
Facebook和谷歌对出海企业广告渠道都很熟悉,但事实上,在国外还有一些渠道也很...
卖家从做号的第1分钟开始,就一定要想好变现路径是什么?一定要以变现为目的去...
小提示:您应该对本页介绍的“Youtube推荐双塔模型——SBCNM”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通Youtube推荐双塔模型——SBCNM的相关事宜。
关键词:Youtube推荐双塔模型——