作者 | gongyouliu
编辑 | auroral-L
全文共11900字,预计阅读时间60分钟
目录
一、基于标签的推荐算法应用场景
1.完全个性化推荐
2.标的物关联标的物推荐(相似视频推荐)
3.主题推荐
二、基于标签的推荐算法原理介绍
1.个性化推荐(完全个性化范式)
2.视频相似推荐(标的物关联标的物范式)
3.主题推荐
三、整体架构及工程实现
1.个性化推荐
2.视频相似推荐
3.主题推荐
四、个性化推荐的召回与排序策略
1.召回策略
2.排序策略
3.电视猫个性化推荐实时更新策略
五、冷启动策略
六、未来优化方向
1.增加模型排序模块
2.对重复的节目做过滤
3.整合用户负反馈
4.针对标签的优化
※写在最后
※参考文献
作者在《基于内容的推荐算法》这篇文章中对基于内容的推荐算法做了比较详细的讲解,其中一类非常重要的内容推荐算法是基于标签的倒排索引算法,也是工业界用的比较多的算法,特别是新闻资讯类、短视频类产品大量采用该类算法。
在本篇文章中作者会结合电视猫的业务场景及工程实践经验来详细讲解基于标签的倒排索引算法的原理及工程落地方案细节。希望读者读完本文,可以完整地了解基于标签的倒排索引算法的产品形态、算法原理、工程实现方案,并且能够基于本文的思路,具备从零开始搭建一套基于标签的算法体系的能力。
本文会从基于标签的推荐算法应用场景、基于标签的推荐算法原理介绍、整体架构及工程实现、召回与排序策略、冷启动策略、未来优化方向等6个方面来介绍基于标签的实时视频推荐系统。
一、基于标签的推荐算法应用场景
在讲具体的算法原理及工程实践之前,我们先对基于标签的推荐算法可行的产品形态做简单介绍,让读者知道该类算法可以用到哪些业务场景中,从而有一个直观的印象,方便更好地理解后续讲解的内容。这些产品形态电视猫都落地到了真实业务场景中,下面的图例也是拿电视猫的产品形态来举例说明的。
在《基于内容的推荐算法》这篇文章第三节我们简单描述了基于内容的推荐算法的应用场景,而基于标签的推荐是内容推荐的一种,应用场景也是类似的:完全个性化推荐、标的物关联标的物推荐(相似视频推荐)、主题推荐这3类应用场景都是可行的,我们下面对这3大业务场景简单一一说明。
1.完全个性化推荐
完全个性化推荐是为每个用户生成不一样的推荐结果,下图是电视猫小视频实时个性化推荐,基于用户的(标签)兴趣画像,为用户推荐跟用户兴趣偏好相似的视频,用户可以无限右滑(由于电视猫是客厅端的视频软件,靠遥控器交互,所以产品交互方式上跟头条等手机端的下拉交互是不一样的)获取自己感兴趣的推荐结果,整个算法会根据用户的兴趣变化实时为用户更新推荐结果。
图1:电视猫小视频实时个性化推荐
2.标的物关联标的物推荐(相似视频推荐)
短视频相似推荐基于视频标签构建视频之间的相似度,为每个视频推荐相似的视频。下图是电视猫短视频的相似推荐,采用的产品形态是连播推荐的形式,当用户播放主视频后,相关联的相似视频会按照相似度列表连续播放,最大程度提升用户体验。
图2:电视猫短视频信息流连播推荐
3.主题推荐
主题推荐根据用户播放行为历史,构建用户兴趣画像,这里是基于节目的标签来构建用户画像,基于用户画像标签为用户推荐最感兴趣的标签关联的节目。下图是电视猫音乐频道的主题推荐,根据作者最近看过的音乐视频,为作者推荐了“国语”和“器乐教学”两个主题相关的音乐短视频。
图3:电视猫音乐频道主题推荐
讲解完了基于标签的推荐产品形态,相信读者对基于标签的推荐有了较直观的认知,那么我们在实际业务中怎么实现这些产品形态呢?怎么构建合适的基于标签的推荐算法呢?在下节我们会详细讲解算法基本原理。
二、基于标签的推荐算法原理介绍
我们在《基于内容的推荐算法》中对基于标签的个性化推荐算法原理已经做过初略介绍,读过该文章的读者应该有印象,不熟悉也没关系,本节我们会对上节提到的三个产品形态:个性化推荐、相似视频推荐、主题推荐的算法实现原理做细致的介绍,方便读者深入理解算法的实现细节。
1.个性化推荐(完全个性化范式)
基于标签的个性化推荐算法具体推荐过程见下面图4:从用户画像中获取用户的兴趣标签,基于用户的兴趣标签从标签->节目倒排索引表中获取该标签对应的节目,这样就可以从用户关联到节目了。其中用户的每个兴趣标签及标签关联到的节目都是有权重的。
图4:基于倒排索引的视频推荐
假设用户的兴趣标签及对应的标签权重如下,其中是标签,
是用户对标签的偏好权重。
假设标签关联的视频分别为:
......
其中、
分别是标的物及对应的权重,那么