本文重点介绍一下推荐系统的技术框架,借用王喆老师常说的一句话:“不谋全局者,不足谋一域”。在学习推荐系统的过程中,我们需要建立自己的知识体系,总揽全局。必须要有一个像书中总结的推荐系统架构图一样的全局的技术框架在心中,只有这样,才能够提出全局最优的技术决策,和充分考虑各方利弊的技术权衡。
推荐系统中技术框架大体可以分为两个部分:数据部分和模型部分。 如下图所示:
数据部分主要负责“用户”“物品”“场景”的信息收集和处理。
推荐系统的模型部分是推荐系统的总体,模型的结构一般由召回层,排序层,和补充策略层组成。
召回层:利用召回规则,算法,或者机器算法模型等从海量的(百万级)数据中快速的筛选召回用户可能感兴趣的物品。
排序层:利用机器学习或者深度学习方法对召回后的数进行精排序。
补充策略与算法层:也被称作是再排序层或者调整层,可以在推荐列表返回用户之前,为了兼顾结果的多样性,流行性,新鲜度等等对排序进行调整。
Netflix公司曾经发布过一个经典的推荐系统架构
从上到下分别为 在线层,近线层,和离线层。