发布时间:2022-2-28 分类: 电商动态
虽然大量内容满足了我们的需求,但它也使我们更难找到我们需要的内容。在这种情况下,个性化推荐应运而生。
在当前的移动互联网时代,除了丰富的专业内容外,UGC内容也在不断涌现,每个用户都是内容的消费者和内容的创造者。这些大量内容满足了我们的需求,使得查找我们需要的内容变得更加困难。在这种情况下,个性化建议应运而生。
个性化推荐基于大数据分析和人工智能技术。通过研究用户的兴趣偏好和个性化计算,用户可以提供高质量的个性化内容,解决信息过载问题,更好地满足用户。需求。
爱奇艺推荐系统简介
我们的推荐系统分为两个阶段,即召回阶段和排序阶段。
召回阶段根据用户的兴趣和历史行为从数千万个视频库中选择一个小的候选集(数百到数千个视频)。这些候选者都是用户感兴趣的内容。排序阶段基于可以执行更准确的计算。每个视频都可以准确评分,然后少数高质量用户最感兴趣的是在数千名候选人中进行选择。内容(十几个视频)。
推荐系统的总体结构如图所示。每个模块的功能如下:
用户肖像:对用户的人口统计属性,历史行为,兴趣内容和偏好倾向的多维分析,这是个性化的基石
特征工程:包含视频类别属性,内容分析,人群偏好和统计特征的全面描述和测量,这是视频内容和质量分析的基础
召回算法:包括多个渠道召回模型,如协同过滤,主题模型,内容召回和SNS渠道,从视频库中选择不同的偏好
排序模型:按相同分数对多个召回通道的内容进行排序,并选择最佳的少量结果。
除此之外,推荐系统还考虑到建议的多样性,新鲜度,财富和惊喜等,以满足用户的多样化需求。
推荐的分拣系统架构
在召回阶段,多个渠道的召回内容不具有可比性,并且由于数据量太大,很难做出更准确的偏好和质量评估。因此,有必要在分拣阶段统一和准确地对召回结果进行分类。 。
用户对视频的满意度取决于许多维度因素。这些因素在用户满意度方面也不同。每个因素都涉及多个因素。很难实现复杂的规则。良好的结果,但不可维护,需要使用机器学习方法,使用机器学习模型集成多个因素进行排序。
分类系统的体系结构如图所示,主要由用户行为收集,特征填充,训练样本筛选,模型训练,在线预测分类等模块组成。
机器学习的主要过程更为通用,设计架构不需要复杂的理论,更需要仔细审查细节,数据流和架构逻辑。
该架构设计借鉴了以往的经验和教训,并基于通用机器学习的架构解决了两个问题:
培训预测的一致性
机器学习模型的训练和预测之间的差异将对模型的准确性产生很大影响。特别是,模型培训与在线服务不一致。例如,来自用户的关于推荐结果的反馈将实时影响用户的偏好特征。在训练期间用户特征的状态已经改变,并且该模型此时基于用户特征产生非常大的错误。
我们的解决方案是保存在线服务的功能,然后将其填充到收集的用户行为样本中,从而确保培训和预测功能的一致性。
连续迭代
互联网产品的不断迭代是常态。在架构设计中,数据准备,模型培训和在线服务必须能够支持连续迭代。
我们的解决方案是分离数据准备和模型培训阶段,并配置策略。这种架构使模型测试非常简单,并且可以快速并行多个迭代测试。
推荐的机器学习排序算法进化
古代
当我们第一次上网学习排序模型时,我们选择了一个简单的Logistic回归来专注于架构设计,并尝试确保架构的正确性。此外,LR模型具有高度说明性,便于调试,特征权重可以解释推荐内容并找出模型的不足之处。
在模型培训之前,我们首先解决了评估指标和优化目标的问题。
评估指标
在线绩效指标需要与长期目标相匹配,例如用户参与度和活动。在我们的实验中,业界流行的点击率不是一个很好的评价指标,它会更偏向于缩短视频,标题派对和粗俗内容。
针对业务量身定制离线评估指标以匹配在线指标,以便在离线阶段消除离线策略,从而避免浪费在线流量。
优化目标(目标)
机器学习将根据优化目标解决最优解决方案。如果优化目标存在偏差,则获得的模型也存在偏差,并且在迭代中,模型将不断地从该偏差的方向学习,并且偏差将更加严重。
我们的方法是为样本增加权重,并将样本权重添加到损失函数中,以使优化目标和评估指标尽可能一致,以达到控制模型的目的。
LR是线性分类模型,要求输入是线性独立特征。我们使用的密集特征(数十到数百之间)通常是非线性的并且具有依赖性,因此需要转换特征。
特征转换需要分析特征的分布,特征和标签的关系,然后是适当的转换方法。我们使用以下:多项式变换,对数或指数变换,交互变换和累积分布函数。
尽管LR模型简单且高度解释,但当特征逐渐增加时,缺点是显而易见的。
功能需要手动转换为线性功能,这是非常耗费人力的,质量无法保证
在两个相互作用的情况下,模型预测的复杂性是。在100维密集特征的情况下,将存在10,000维特征,高复杂性和增加的特征困难的组合
几乎不可能与三个以上的功能进行交互
中世纪
为了解决LR的上述问题,我们将模型升级到Facebook的GBDT + LR模型,模型结构如图所示。
GBDT是基于Boosting理念的集成模型。它由多个决策树组成,具有以下优点:
不需要输入功能的分发
根据熵增益,自动进行特征转换,特征组合,特征选择和离散化,以获得高维组合特征,消除了手动转换过程,支持多种特征的交互。
预测复杂性与特征数量无关
假设特征数n=160是决策数k=50,树的深度是d=6,并且如下比较两代模型的预测复杂度。升级后,模型复杂度降低到2.72%。
GBDT和LR堆叠模型比GBDT略有改进。更大的好处是防止GBDT过度拟合。升级到GBDT + LR后,在线效果增加了约5%,并且通过消除手动转换新功能的需要,可以更轻松地进行迭代测试以添加功能。
现代史
GBDT + LR排序模型的输入特征维度是几百维,这些都是密集的一般特征。
此功能的泛化能力很好,但内存能力相对较差,因此有必要增加高维(超过一百万)内容功能,以增强推荐的内存功能,包括视频ID,标签,主题和其他特性。
GBDT不支持高维稀疏功能。如果将高维特征添加到LR,则一方面需要人工组合高维特征。另一方面,模型尺寸和计算复杂度将在O(N ^ 2)水平上增加。因此,GBDT + FM模型的设计如图所示,LR由分解机器模型取代。
分解机器(FM)模型如下所示,具有以下几个优点:
模型公式
前两个是线性模型,相当于LR模型的作用
第三个术语是自动交叉组合特征的二次项
通过增加隐藏向量,模型训练和预测的计算复杂度降低到O(N)
支持稀疏功能
这些优点使GBDT + FM具有良好的稀疏功能支持。 FM使用GBDT的叶节点和稀疏特征(内容特征)作为输入。模型结构如下。 GBDT + FM模型在线后与GBDT +进行比较。 LR对各种指标的影响增加了4%至6%。
典型的FM模型使用用户id作为用户特征,这导致模型维度的快速增加,并且只能覆盖一些流行的用户,并且泛化能力相对较差。在这里,我们使用用户的观看历史和兴趣标签而不是用户ID,这减少了特征维度,并且因为用户兴趣是可重用的,所以它还提高了相应特征的泛化能力。
我们主要尝试解决L-BFGS,SGD和FTRL(跟随正则化领导者)的三种优化算法:
SGD和L-BFGS的影响差别不大,L-BFGS的影响与参数初始化密切相关。
与SGD相比,FTRL具有以下优势:
随着L1规律性,学习特征更加稀疏
使用累积梯度加速收敛
根据样本的出现频率确定特征的学习率,并确保每个特征都有足够的学习
FM模型中特征的出现频率差异很大。 FTRL可以确保每个功能都可以完全学习,更适合稀疏功能。在线测试表明,在稀疏特征下,FTRL比SGD提高了4.5%。
当代模特
GBDT + FM模型不能充分利用深层特征,例如嵌入结构信息,而深度神经网络可以学习嵌入特征和常见密集特征,提取深层信息并提高模型的准确性。性已成功应用于许多机器学习领域。因此,我们将DNN引入到排序模型中,以提高排序的整体质量。
DNN + GBDT + FM的集成模型架构如图所示。 FM层是模型的最后一层,即融合层。它的输入由三部分组成:DNN的最后一层,GBDT的输出层和高维稀疏特征。 DNN + GBDT + FM的整体模型架构如下所示。该模型在线后,比GBDT + FM提高了4%。
DNN模型
使用具有三个隐藏层的完全连接的网络。
隐藏节点的数量分别为1024,512和256。
为预先训练的用户和视频嵌入向量,包括基于用户行为和语义内容的两个嵌入。
DNN可以从具有良好数学分布的特征中提取深层信息,例如嵌入特征,规范化统计特征等。
尽管DNN不需要对要素进行标准化,但测试发现某些特征因为异常值的波动范围过大会导致DNN效应下降。
GBDT模型
训练是单独执行的,输入包含标准化和非标准化的密集特征。
可以处理非标准化的连续和离散特征。
输入特征可以根据熵增益自动离散化和组合。
调频融合层
FM模型和DNN模型同时作为同一网络进行训练。
DNN功能,GBDT输出和稀疏功能被合并和交叉。
使用分布式TensorFlow进行培训
使用基于TensorFlow服务的微服务进行在线预测
DNN + GBDT + FM的集合模型使用Adam优化器。 Adam结合了自适应梯度算法(AdaGrad)和均方根传播(RMSProp)算法。具有更好的收敛速度,每个变量具有其自己的下降步长,并且根据当前梯度调整整体下降步长以适应噪声承载数据。该实验测试了各种优化器,Adam的效果是最佳的。
行业DNN排名状态
Youtube于2016年推出了DNN排序算法。
上海交通大学和伦敦大学学院于2016年推出了基于产品的神经网络(PNN)网络,用于用户点击预测。 PNN等同于DNN层中的特征交集。我们的方法是将功能交叉到FM,DNN专注于提取深层信息。
Google于2016年推出了Wide and Deep Model,这是我们当前型号的基础。基于此,Cross Feature LR被FM取代,这简化了计算复杂度并改善了交叉的泛化。
阿里今年使用注意机制启动深度兴趣网络(DIN)来估计产品点击率并优化嵌入向量的准确性。
总结
推荐系统的排名是经典的机器学习场景,对推荐结果的影响也非常重要。除了模型算法的卓越性之外,还需要仔细考虑业务的特征,项目的体系结构,数据处理的细节和流水线过程。有意识和深入的优化。
将DNN引入排名只是一个开始。它需要在模型架构,嵌入功能,多样性,冷启动和多目标学习方面进行更多实验,以提供更准确,更用户友好的建议并优化用户体验。
端。
作者:迈克尔
资料来源:http://www.36dsj.com/archives/102164
本文来自大家都是产品经理合作媒体@36大数据,作者@Michael
该地图来自PEXELS,基于CC0协议