推荐系统之推荐引擎
Posted 比尔的新世界
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了推荐系统之推荐引擎相关的知识,希望对你有一定的参考价值。
推荐引擎在推荐系统当中起到类似于一个调度器的作用,用户的请求从APP后端发往推荐引擎,推荐引擎调用各种服务,比如召回服务和排序服务,然后按照规则对各种服务返回的结果进行处理,最后将处理好的TopK内容返回给用户。以信息流推荐系统为例,典型的推荐引擎架构如下:
上图红色虚线框当中的内容是一个典型的推荐引擎的工作流程,包括:
用户属性和文章特征的加载
调用多路召回服务,从万级别内容库当中初步选择出千级别的待排序内容
调用过滤服务,从召回的内容池当中剔除不符合要求的文章,比如敏感的、低质的、重复的
调用粗排服务,如果过滤后文章量级还是比较大,一般还会有一个粗排服务,进一步减轻精排服务的压力
调用精排服务,这里就是各种精心设计的模型发挥作用的主战场,精排模型的特点是特征多、任务多、模型复杂
调用重排服务,这里是各种机制(规则)发挥作用的地方,比如针对各个目标调权、相似性调整、刷内类型限制、强插等等,产品在这里发挥的作用比较大,到这里基本流程已经结束了,推荐给用户的TopK内容已经确定
数据上报,包括推荐出去的内容的特征、预估分,上报对象有特征服务、频控服务等,特征可以通过ack的方式在预估服务里面落,也可以通过预估透传特征的方式直接在这里落
推荐引擎的一个重要功能是支持AB实验,所以也会调用AB实验平台的接口来调整用户属性以支持各种实验。AB实验平台的重要功能就是根据实验配置对用户进行划分,将用户合理分配到不同的实验当中去,以对比各种实验的实际效果。
推荐引擎的业务逻辑多且复杂,而且改动也很频繁,各种机制的调整都在这里,所以这里发生线上事故的概率相对比较高。清晰的项目结构、简洁的代码文件、良好的编程习惯的重要性,在推荐引擎框架的搭建与使用中体现的淋漓尽致。
以上是关于推荐系统之推荐引擎的主要内容,如果未能解决你的问题,请参考以下文章
深度学习核心技术精讲100篇(七十七)-主流推荐引擎技术及优缺点分析