-
推荐系统意义
信息爆炸的时代,如何将用户和他们感兴趣的内容连接在一起呢?对平台来说,用户得到感兴趣的内容就会提升使用时长;对广告商来说,把广告推荐给更有兴趣的客户可以赚取更加丰厚的利润;对用户来说,仅仅使用应用的推荐功能就可以得到更多的乐趣。 如何对于每个人的性别、好恶以及他的收藏、购买等行为进行独特化个性化的推荐实际上成为了推荐系统的目的所在。对于电商而言,主要评估用户的点击率和购买率等;Youtube等视频平台会评估用户的观看时长。
-
推荐系统架构
架构可以分为数据层和模型层;
2.1 数据部分
在线层:实时更新数据,快速进行计算
近线层:折中产物,可能延时几分钟;进行模型实时训练和特征实时更新
离线层:进行大量计算,并且进行模型更新
2.2 模型部分
召回:从物料库->万级别:不需要准确,但是不要遗漏,所以一般都使用多种方法进行多路召回
粗排:万级别->千级别:进行打分选择,减轻精排模型压力,可能为小型精排模型
精排:千级别->百级别:进行打分排序,尤其是针对点击率等指数进行优化
重排:百级别->百级别:由于精排模型追求分数最高,所以可能会导致同质化严重,这里会加入一些多样性
-
推荐系统技术栈
工程(后端和前端需要返回数据) + 算法方面(2.1的数据存储如spark,flink;2.2的深度学习算法如DIN等)
引用:Funrec;王喆《深度学习推荐系统》