近几年短视频类应用的用户消费时长逐年变长,催生了抖音快手等一大批短视频软件。而在短视频推荐中,短视频的播放时长预估又是最核心的,今天主要讨论一下短视频时长建模。
推荐系统经过了三代迭代,第一代推荐系统的代表是90年代中期的亚马逊,直接离线计算几个协同然后在线吐出去,经典的是基于物品的item-cf和基于用户的user-cf,第一代推荐系统可以定义为有没有推荐,只要有cf就是有推荐,当然cf类模型现在依然是召回端的核心模型。第二代推荐系统的一个核心标志是开始有机器学习模型了,相比于第一代是在cf召回的后边接了一个模型,当然我们现在都把这个模型称为精排模型;在业务上,第二代推荐系统基本都是单目标的,而且目标基本都是二分类点击率,第二代的模型现在成了精排环节的核心模型。到了第三代推荐系统,在业务上的代表是变成间接目标了,常见的比如时长和留存,这些目标往往无法直接建模,只能进行拆解成多个相关目标;在系统内,已经变成了一个很复杂的系统工程了,现在一般拆分为四级漏斗,召回、粗排、精排、重排,每一个阶段都有很细化的东西。
简述
基于上面信息,第三代推荐系统对应到短视频推荐上,假设目标就是典型的时长和留存,对应的直接目标常见的有三种,二分类是否完播、二分类是否互动、回归播放时长。前两个都有一些各自的衍生目标,比如是否完播衍生出来有效播放、长播放;是否互动衍生出来点赞、评论、分享、进入作者主页。
预测播放时长基本是短视频推荐中最核心的,时长建模我们最容易想到的就是直接回归建模,损失函数用MSE。
从0-1建模时长这样做没有问题,肯定是有效的,但是随着优化的深入,会发现分视频时长的准度随着视频时长的变长逐渐变差。
这很符合预期,因为短视频分发量大,在模型侧也训练更充分。
短视频分发好不一定是好事,短视频制作成本低,用户看完获得感差,长期对于平台不是好事。
那么怎样才能发长视频分发好呢?
时长建模里,视频本身的时长是一个很强的bias,长的视频有天然的播放时间长的特性。