推荐系统技术原理与实践
上QQ阅读APP看书,第一时间看更新

1.3 推荐系统的技术架构

通过1.1节和1.2节的介绍,读者应该对推荐系统有了大致的了解。推荐系统本质上是解决用户和“资源”的匹配问题,其中的“资源”既可以是资讯推荐系统里面的新闻,也可以是视频推荐系统里面的视频。推荐系统的作用就是根据用户的历史先验行为,从候选集中推荐匹配度最高的资源,可以表示为下面的形式:

其中,user profile表示用户信息,item表示需要推荐的资源(比如音乐、电影、物品、新闻等),context表示场景的上下文信息,user behavior seq表示用户行为序列,f是推荐模型。

在实际的推荐系统中,我们可以将推荐系统按功能模块划分为离线、近线、在线和前端应用4个模块,如图1-4所示。

图1-4 推荐系统的技术架构

(1)离线模块,主要包含日志收集、语料(点击日志、展现日志以及特征日志)对齐,以及模型训练。

(2)近线模块,主要包含构建索引、生成用户画像、构建特征库,以及模型更新。

(3)在线模块,主要是推荐系统模型的调用,包含召回、粗排、精排和重排4个阶段。对于像淘宝、天猫这样的电商平台的推荐系统,召回的规模超过1000万件商品,粗排的规模超过1万件商品,精排和重排的规模达到上百件商品。

(4)前端应用模块,主要是不同的场景展示不同的资源,比如图1-4展示了电商网站、新闻网站、视频网站、音乐网站和邮件5个不同的应用场景。

本书将详细地介绍图1-4中推荐系统的在线模块。按照一般工业推荐系统的多阶段级联架构,在线模块分为召回、粗排、精排和重排4个阶段。