推荐系统总体架构
总体架构图例在这里插入图片描述第一部分推荐系统的数据部分推荐系统的“数据部分”主要负责的是“用户”与 “物品”信息的收集与处理根据处理数据量和处理实时性的不同会用到三种不同的数据处理方式按照实时性的强弱排序的话依次客户端与服务端实时数据处理、流处理平台准实时数据处理、大数据平台离线数据处理大数据计算平台通过对推荐系统日志物品和用户的元数据等信息的处理获得了推荐模型的训练数据、特征数据、统计数据等。大数据平台加工后的数据出口主要有3个:生成推荐系统模型所需的样本数据用于算法模型的训练和评估生成推荐系统模型服务(Model Serving) 所需的“用户特征”“物品特征”和一部分“场景特征”用于推荐系统的线上推断生成监控系统、商业智能(Business Intelligence, BI) 系统所需的统计型数据总结可以说推荐系统的数据部分是整个推荐系统的水源只有保证水源的持续、纯净才能不断地“滋养”系统使其高效地运转并准确地输出第二部分推荐系统的模型部分模型的结构一般由召回层、“排序层”、补充策略与算法组成其中召回层一般由高效的召回规则、算法或简单的模型组成这让推荐系统能快速从海量的候选集召回用户可能感兴趣的物品“排序层” 则是利用排序模型的候选集进行精排序“补充策略与算法层” 也被称为再排序层是在返回给用户推荐列表之前为兼顾结果的多样性“流行度”, 新鲜度等指标结合一些补充的策略和算法对推荐列表进行一定的调整最终形成用户可见的推荐列表模型服务过程从推荐系统模型接收到所有候选物品集到最后产生推荐列表这一过程一般叫做模型服务过程为了生成模型服务过程所需的模型参数需要通过模型训练(Model Training) 确定模型结构、结构中不同参数权重的具体数值以及模型相关算法和策略中的参数取值总结在深度学习中 Embedding 技术在召回层的应用。作为深度学习中非常核心的 Embedding 技术将它应用在推荐系统的召回层中做相关物品的快速召回已经是业界非常主流的解决方案不同结构的深度学习模型在排序层的应用。排序层(精排层)是影响推荐效果的重中之重也是深度学习模型擅长领域深度学习模型的灵活性高表达能力强的特点这让她非常适合于大数据量下的精确排序。深度学习排序模型毫无疑问是业界和学界都在不断加大投入快速迭代的部分增强学习在模型更新工程模型一体化方向上的应用。增强学习可以说是与深度学习密切相关的另一机器学习领域它在推荐系统中的应用让推荐系统可以在实时性层面更上一层楼