爱奇艺个性化推荐排序实践 | 人人都是产品经理

标签: | 发表时间:2018-08-20 16:30 | 作者:
出处:http://www.woshipm.com

在海量的内容在满足了我们需求的同时,也使我们寻找所需内容更加困难,在这种情况下个性化推荐应运而生。

在当前这个移动互联网时代,除了专业内容的丰富,UGC内容更是爆发式发展,每个用户既是内容的消费者,也成为了内容的创造者。这些海量的内容在满足了我们需求的同时,也使我们寻找所需内容更加困难,在这种情况下个性化推荐应运而生。

个性化推荐是在大数据分析和人工智能技术的基础上,通过研究用户的兴趣偏好,进行个性化计算,从而给用户提供高质量的个性化内容,解决信息过载的问题,更好的满足用户的需求。

爱奇艺推荐系统介绍

我们的推荐系统主要分为两个阶段,召回阶段和排序阶段。

召回阶段根据用户的兴趣和历史行为,同千万级的视频库中挑选出一个小的候选集(几百到几千个视频)。这些候选都是用户感兴趣的内容,排序阶段在此基础上进行更精准的计算,能够给每一个视频进行精确打分,进而从成千上万的候选中选出用户最感兴趣的少量高质量内容(十几个视频)。

推荐系统的整体结构如图所示,各个模块的作用如下:

  1. 用户画像:包含用户的人群属性、历史行为、兴趣内容和偏好倾向等多维度的分析,是个性化的基石
  2. 特征工程:包含了了视频的类别属性,内容分析,人群偏好和统计特征等全方位的描绘和度量,是视频内容和质量分析的基础
  3. 召回算法:包含了多个通道的召回模型,比如协同过滤,主题模型,内容召回和SNS等通道,能够从视频库中选出多样性的偏好内容
  4. 排序模型:对多个召回通道的内容进行同一个打分排序,选出最优的少量结果。
  5. 除了这些之外推荐系统还兼顾了推荐结果的多样性,新鲜度,逼格和惊喜度等多个维度,更能够满足用户多样性的需求。

推荐排序系统架构

在召回阶段,多个通道的召回的内容是不具有可比性的,并且因为数据量太大也难以进行更加精确的偏好和质量评估,因此需要在排序阶段对召回结果进行统一的准确的打分排序。

用户对视频的满意度是有很多维度因子来决定的,这些因子在用户满意度中的重要性也各不相同,甚至各个因子之间还有多层依赖关系,人为制定复杂的规则既难以达到好的效果,又不具有可维护性,这就需要借助机器学习的方法,使用机器学习模型来综合多方面的因子进行排序。

排序系统的架构如图所示,主要由用户行为收集,特征填充,训练样本筛选,模型训练,在线预测排序等多个模块组成。

机器学习的主体流程是比较通用的,设计架构并不需要复杂的理论,更多的是需要对细节,数据流和架构逻辑的仔细推敲。

这个架构设计吸取了以前的经验和教训,在通用机器学习的架构基础上解决了两个问题:

训练预测的一致性

机器学习模型在训练和预测之间的差异会对模型的准确性产生很大的影响,尤其是模型训练与在线服务时特征不一致,比如用户对推荐结果的反馈会实时影响到用户的偏好特征,在训练的时候用户特征的状态已经发生了变化,模型如果依据这个时候的用户特征就会产生非常大的误差。

我们的解决办法是,将在线服务时的特征保存下来,然后填充到收集的用户行为样本中,这样就保证了训练和预测特征的一致性。

持续迭代

互联网产品持续迭代上线是常态,在架构设计的时候,数据准备,模型训练和在线服务都必须能够对持续迭代有良好的支持。

我们的解决方案是,数据准备和模型训练各阶段解耦,并且策略配置化,这种架构使模型测试变得非常简单,可以快速并行多个迭代测试。

推荐机器学习排序算法演进

上古时期

我们第一次上线机器学习排序模型时,选用了比较简单的Logistic Regression,将重点放到架构设计上,尽量保证架构的正确性。除此之外,LR模型的解释性强,方便debug,并且通过特征权重可以解释推荐的内容,找到模型的不足之处。

在模型训练之前,我们首先解决的是评测指标和优化目标的问题。

评测指标(metrics)

线上效果的评测指标需要与长远目标相匹配,比如使用用户的投入程度和活跃度等。在我们的实验中,业界流行的CTR并不是一个好的评测指标,它会更偏向于较短的视频,标题党和低俗内容。

离线评测指标是按照业务来定制的,以便与在线评测指标匹配,这样在离线阶段就能够淘汰掉无效策略,避免浪费线上流量。

优化目标(objective)

机器学习会按照优化目标求解最优解,如果优化目标有偏差,得到的模型也存在偏差,并且在迭代中模型会不断地向这个偏差的方向学习,偏差会更加严重。

我们的方法是给样本添加权重,并且将样本权重加到loss function中,使得优化目标与评测指标尽可能的一致,达到控制模型的目的。

LR是个线性分类模型,要求输入是线性独立特征。我们使用的稠密的特征(维度在几十到几百之间)往往都是非线性的,并且具有依赖性,因此需要对特征进行转换。

特征转换需要对特征的分布,特征与label的关系进行分析,然后采用合适的转换方法。我们用到的有以下几种:Polynomial Transformation,Logarithmic or Exponential Transformation,Interaction Transformation和Cumulative Distribution Function等。

虽然LR模型简单,解释性强,不过在特征逐渐增多的情况下,劣势也是显而易见的。

  1. 特征都需要人工进行转换为线性特征,十分消耗人力,并且质量不能保证
  2. 特征两两作Interaction 的情况下,模型预测复杂度是。在100维稠密特征的情况下,就会有组合出10000维的特征,复杂度高,增加特征困难
  3. 三个以上的特征进行Interaction 几乎是不可行的

中古时期

为了解决LR存在的上述问题,我们把模型升级为Facebook的GBDT+LR模型,模型结构如图所示。

GBDT是基于Boosting 思想的ensemble模型,由多颗决策树组成,具有以下优点:

  1. 对输入特征的分布没有要求
  2. 根据熵增益自动进行特征转换、特征组合、特征选择和离散化,得到高维的组合特征,省去了人工转换的过程,并且支持了多个特征的Interaction
  3. 预测复杂度与特征个数无关

假设特征个数n=160决策数个数k=50,树的深度d=6,两代模型的预测复杂度对比如下,升级之后模型复杂度降低到原来的2.72%

GBDT与LR的stacking模型相对于只用GBDT会有略微的提升,更大的好处是防止GBDT过拟合。升级为GBDT+LR后,线上效果提升了约5%,并且因为省去了对新特征进行人工转换的步骤,增加特征的迭代测试也更容易了。

近代历史

GBDT+LR排序模型中输入特征维度为几百维,都是稠密的通用特征。

这种特征的泛化能力良好,但是记忆能力比较差,所以需要增加高维的(百万维以上)内容特征来增强推荐的记忆能力,包括视频ID,标签,主题等特征。

GBDT是不支持高维稀疏特征的,如果将高维特征加到LR中,一方面需要人工组合高维特征,另一方面模型维度和计算复杂度会是O(N^2)级别的增长。所以设计了GBDT+FM的模型如图所示,采用Factorization Machines模型替换LR。

Factorization Machines(FM)模型如下所示,具有以下几个优点:

模型公式

前两项为一个线性模型,相当于LR模型的作用

第三项为一个二次交叉项,能够自动对特征进行交叉组合

通过增加隐向量,模型训练和预测的计算复杂度降为了O(N)

支持稀疏特征

这几个优点,使的GBDT+FM具有了良好的稀疏特征支持,FM使用GBDT的叶子结点和稀疏特征(内容特征)作为输入,模型结构示意图如下,GBDT+FM模型上线后相比GBDT+LR在各项指标的效果提升在4%~6%之间。

典型的FM模型中使用user id作为用户特征,这会导致模型维度迅速增大,并且只能覆盖部分热门用户,泛化能力比较差。在此我们使用用户的观看历史以及兴趣标签代替user id,降低了特征维度,并且因为用户兴趣是可以复用的,同时也提高了对应特征的泛化能力。

我们主要尝试使用了L-BFGS、SGD和FTRL(Follow-the-regularized-Leader)三种优化算法进行求解:

  1. SGD和L-BFGS效果相差不大,L-BFGS的效果与参数初始化关系紧密
  2. FTRL,较SGD有以下优势:
  • 带有L1正则,学习的特征更加稀疏
  • 使用累计的梯度,加速收敛
  • 根据特征在样本的出现频率确定该特征学习率,保证每个特征有充分的学习

FM模型中的特征出现的频次相差很大,FTRL能够保证每个特征都能得到充分的学习,更适合稀疏特征。线上测试表明,在稀疏特征下FTRL比SGD有4.5%的效果提升。

当代模型

GBDT+FM模型,对embedding等具有结构信息的深度特征利用不充分,而深度学习(Deep Neural Network)能够对嵌入式(embedding)特征和普通稠密特征进行学习,抽取出深层信息,提高模型的准确性,并已经成功应用到众多机器学习领域。因此我们将DNN引入到排序模型中,提高排序整体质量。

DNN+GBDT+FM的ensemble模型架构如图所示,FM层作为模型的最后一层,即融合层,其输入由三部分组成:DNN的最后一层隐藏层、GBDT的输出叶子节点、高维稀疏特征。DNN+GBDT+FM的ensemble模型架构介绍如下所示,该模型上线后相对于GBDT+FM有4%的效果提升。

DNN模型

  • 使用全连接网络,共三个隐藏层。
  • 隐藏节点数目分别为1024,512和256。
  • 预训练好的用户和视频的Embedding向量,包含基于用户行为以及基于语义内容的两种Embedding。
  • DNN能从具有良好数学分布的特征中抽取深层信息,比如embedding特征,归一化后统计特征等等。
  • 虽然DNN并不要求特征必须归一化,不过测试发现有些特征因为outlier的波动范围过大,会导致DNN效果下降。

GBDT模型

  • 单独进行训练,输入包含归一化和未归一化的稠密特征。
  • 能处理未归一化的连续和离散特征。
  • 能根据熵增益自动对输入特征进行离散和组合。

FM融合层

  • FM模型与DNN模型作为同一个网络同时训练。
  • 将DNN特征,GBDT输出和稀疏特征进行融合并交叉。

使用分布式的TensorFlow进行训练

使用基于TensorFlow Serving的微服务进行在线预测

DNN+GBDT+FM的ensemble模型使用的是Adam优化器。Adam结合了The Adaptive Gradient Algorithm(AdaGrad)和Root Mean Square Propagation(RMSProp)算法。具有更优的收敛速率,每个变量有独自的下降步长,整体下降步长会根据当前梯度进行调节,能够适应带噪音的数据。实验测试了多种优化器,Adam的效果是最优的。

工业界DNN ranking现状

  1. Youtube于2016年推出DNN排序算法。
  2. 上海交通大学和UCL于2016年推出Product-based Neural Network(PNN)网络进行用户点击预测。PNN相当于在DNN层做了特征交叉,我们的做法是把特征交叉交给FM去做,DNN专注于深层信息的提取。
  3. Google于2016年推出Wide And Deep Model,这个也是我们当前模型的基础,在此基础上使用FM替换了Cross Feature LR,简化了计算复杂度,提高交叉的泛化能力。

阿里今年使用attention机制推出了Deep Interest Network(DIN)进行商品点击率预估,优化embedding向量的准确性,值得借鉴。

总结

推荐系统的排序是一个经典的机器学习场景,对于推荐结果影响也十分重大,除了对模型算法的精益求精之外,更需要对业务的特征,工程的架构,数据处理的细节和pipeline的流程进行仔细推敲和深入的优化。

Ranking引入DNN仅仅是个开始,后续还需要在模型架构,Embedding特征,多样性,冷启动和多目标学习中做更多的尝试,提供更准确,更人性化的推荐,优化用户体验。

End.

 

作者:Michael

相关 [爱奇艺 个性 排序] 推荐:

爱奇艺个性化推荐排序实践 | 人人都是产品经理

- -
在海量的内容在满足了我们需求的同时,也使我们寻找所需内容更加困难,在这种情况下个性化推荐应运而生. 在当前这个移动互联网时代,除了专业内容的丰富,UGC内容更是爆发式发展,每个用户既是内容的消费者,也成为了内容的创造者. 这些海量的内容在满足了我们需求的同时,也使我们寻找所需内容更加困难,在这种情况下个性化推荐应运而生.

垂直个性化排序之Solr如何支持

- - 淘宝网综合业务平台团队博客
个性化得分排序:类似 Score=. 目前直接支持的排序、全部候选方案. 这里offlinevalue*fa. 这里score *fa. 其中fa有很多理解,可要是document boost或者field boost . 或者payload,offline可以是域值. 这个场景本质上回到了 score*fa了,又回到了payload.

标签个性化数据在推荐排序中的应用

- -
个性化是这个时代最耀眼的特征,谁能更好更快的抓住用户的个性化需求,谁就将赢得商业的未来”——《个性化,商业的未来》. 本文share的这个项目,是我们在个性化推荐上的一个小小的尝试. 通过捕捉用户实时的标签快速捕捉用户兴趣变化,用机器学习算法挖掘用户兴趣与实际消费行为的联系,及时调整推荐排序,提高推荐效果.

2015年爱奇艺营收52.9亿 运营亏损23.8亿

- - 199IT互联网数据中心
中国网络视频领域正发生微妙变化. 就在上周,合一集团(优酷土豆)宣布与阿里巴巴集团已完成合并交易,正式成阿里巴巴旗下全资子公司,优酷土豆已经正式从美股市场退市. 优酷土豆CEO古永锵表示,公司选择私有化目的有三个,回归国内资本市场,与阿里联动、超越纽约,现在优酷土豆已启动国内上市计划,目标是3年之内在国内资本市场上市.

爱奇艺短视频打标签技术解析

- - IT瘾-dev
写在前面 最近几年出现了很多以短视频的创作和分发作为主打的手机应用软件,这极大地丰富了文本和图像之外的信息创作和分发方式. 这些短视频应用自从问世以后,便迅速地占领了市场,得到了广大用户的青睐. 目前,短视频正逐渐成为互联网上的一种重要的信息传播方式,由此产生了大量的短视频数据. 为了更好地利用短视频数据,提升短视频的创作和分发效果及效率,需要为短视频打上各种有用的标签,这些标签可以作为短视频所记录的内容的概括和总结.

爱奇艺短视频分类技术解析

- - 机器之心
近年来,短视频领域一直广受关注,且发展迅速. 每天有大量UGC短视频被生产、分发和消费,为生产系统带来了巨大的压力,其中的难点之一就是为每个短视频快速、准确地打上标签. 为了解决人工编辑的时效和积压问题,自动化标签技术成为各大内容领域公司都非常关注的关键课题. 短视频大规模层次分类作为内容理解技术的一个重要方向,为爱奇艺的短视频智能分发业务提供着强力支持,其输出被称为“类型标签”.

爱奇艺微服务监控的探索与实践

- - DockOne.io
作为一线程序猿,是否有过类似经历. 新接手一个系统,各接口入口流量是多少,又是哪些业务方在调用. 系统大量异常报警,如何快速锁定影响范围,恢复故障并定位问题. 监控的重要性不言而喻,可是接入监控的额外工作又让人望而却步. 每天编写代码之余,又要花多少时间定位线上问题. 自己负责的系统故障,是否要等调用方反馈才知道.

OCR技术在爱奇艺的应用实践及演进

- - 掘金 后端
随着人工智能的热度上升,图像识别这一细分领域也渐渐被人们所关注. 在很多公司的业务中,有很多需要对图片进行识别的需求. 为了帮助业务实现对这些图片、文档的识别和结构化,业界进行了一系列的实践和探索,最终确定了一些可行的方法,总结了在实践过程中可能遇到的问题和难点. 为了更好地了解OCR技术在爱奇艺的应用实践,最近,InfoQ“大咖说”栏目邀请爱奇艺智能平台部助理研究员——Harlon 进行了一场直播分享,结合目前的业务需求,为我们陈述了爱奇艺在探索OCR技术发展过程中遇到的痛点和难点,以及识别技术的一些细节,以下是采访实录.

Netflix原创这么厉害 爱奇艺优酷为什么没有追?

- - 今日话题 - 雪球
Netflix 今年计划推出700部影视作品,原创内容风生水起,今年以来涨幅也已超过80%,这么看,自制这条路已经走通了,那么爱奇艺优酷为什么不放手大干呢. 思考一个问题,影视原创,中国的视频网站有没有机会. 这虽然是个老话题了,之所以翻出来,是因为过去市场对互联网公司自制内容还抱有极大的疑问,而现在Netflix已经证明了这条路的可行性.

爱奇艺、虎牙、B站、映客的不同之处 - 老虎社区

- -
$虎牙直播(HUYA)$登录纽交所,IPO首日高开30%,最终收涨34%,热度瞬间冲到中概榜首.   有人总结虎牙上市是占尽天时地利人和,想想不无道理. 天时:上市时间点选得好,踏入5月以来,大盘强劲、相关的中概新股爱奇艺和B站也都大幅反弹,过去一周,. $爱奇艺(IQ)$一周大涨27%,. $B站(BILI)$过去一周累计大涨15%;.