解读:全民K歌直播推荐算法

重磅推荐专栏: 《大模型AIGC》《课程大纲》
本专栏致力于探索和讨论当今最前沿的技术趋势和应用领域,包括但不限于ChatGPT和Stable Diffusion等。我们将深入研究大型模型的开发和应用,以及与之相关的人工智能生成内容(AIGC)技术。通过深入的技术解析和实践经验分享,旨在帮助读者更好地理解和应用这些领域的最新进展

1. 业务背景

直播推荐与内容推荐的异同,K歌直播与其他直播(如虎牙)的区别:
在这里插入图片描述

2. 推荐系统架构及挑战

推荐系统架构
在这里插入图片描述

3 召回模型算法设计

召回模型迭代
在这里插入图片描述

3.1 双塔模型(DSSM)

在这里插入图片描述

3.2 召回多模态模型实践

在这里插入图片描述
对item侧性多模态的embedding:

  • Live Streaming View:我理解就是直播间表格特征,如主播id等
  • Song View:K歌直播业务中,很多直播间会绑定一个Song ID,基于Song ID做embedding。我理解可能是主播在唱的歌 或者 背景音乐吧
  • Multi-media View:这部分就是直播间的内容理解——直播间视频、音频的embedding。我理解线上服务这部分特征应该是异步计算出来的,但是直播间的视频、音频特征具有实时性。如何异步的截取?这是一个问题。此外,我认为相比视频、音频特征,其实对直播间头像图片、房间title的内容理解应该来的会更加直接。毕竟推荐直接展示给user的是直播间的头像图片和房间title,比如某些男性user就偏好某些女性主播直播间头像。

另外还有一个多模态融合的问题。看上图示意,应该是每个模态embedding单独与user embedding进行相似度训练。**这样做的话,每个item就会存在3个embedding。线上服务召回TopK时需要去重。但这种方案就忽略了不同模态之间的权重。**我想到的另外一种方案是,将各模态的embedding concat起来,全连接映射到user embedding 相同维度(即 item embedding),再做相似度训练。但这会出现的问题是:有些直播间可能不存在Song ID,需要做特征缺失处理。

4. 精排模型算法设计

精排模型多维度迭代
在这里插入图片描述

4.1.1 特征处理

在这里插入图片描述

4.1.2 采样及加权

在这里插入图片描述

4.2.1 特征交叉——KFM

在这里插入图片描述
这里定义了所谓的KFM,其实可以简单理解将 ϕ \phi ϕ视为一个全连接神经网络函数 ϕ i , j \phi_{i,j} ϕi,j就是将j维映射到i维向量的全连接神经网络。这样不同bit维的特征就能进行自由的交叉了。

4.2.2 特征交叉——DeepKFM&Cross|AutoInt

用Cross、AutoInt引入了高阶特征:
在这里插入图片描述

4.2.3 特征交叉——DeepBitInt

在这里插入图片描述
其实就是从每个field做emb,变成每个bit unit做emb,在实现上反而更加统一方便。

4.3.1 CVR预估——ESMM

在这里插入图片描述

4.3.2 CVR预估——GradNorm

参阅:《多任务学习——【ICML 2018】GradNorm》
在这里插入图片描述

4.3.3 CVR预估——CGC

参阅:《多任务学习——【RecSys 2020】【腾讯视频】PLE》
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
全民K小程序的前端代码主要涉及用户界面的搭建和交互的实现。首先,我们需要设置小程序的主题和样式,包括背景色、字体、图标等,以确保用户体验的一致性。 其次,我们需要设计并开发各个页面,包括登录页面、首页、曲列表页面、个人中心页面等。在这些页面中,我们可以利用小程序框架提供的组件进行布局和样式的定义,比如使用wx-view、wx-text、wx-image等标签来渲染页面的内容。 在曲列表页面中,我们可以通过调用小程序的API或者与后台服务器进行交互,获取曲的信息,并显示在页面上。用户可以通过点击曲来进入播放页面,这涉及到页面跳转的实现。 在播放页面中,我们可以使用Audio组件来实现曲的播放和暂停功能,并通过绑定事件的方式实现相关操作,比如播放、暂停和切换曲等。 另外,全民K小程序还需要实现一些功能,如用户的注册和登录、评论和点赞等,这些功能涉及到用户输入和数据的存储,我们可以使用表单组件来实现用户输入的收集,使用Storage API来进行数据的存储和读取。 最后,为了提高用户体验,我们可以进行页面的优化和加载速度的提升,比如合理使用缓存、压缩静态资源、开启gzip等。 综上所述,全民K小程序的前端代码主要包括用户界面的搭建和交互的实现,涉及到页面的设计、数据的获取和展示、用户输入的处理等方面。通过合理的代码编写和优化,可以提供用户一个流畅、易用且具有吸引力的全民K体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小爷毛毛(卓寿杰)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值