冷启动推荐旨在解决当系统中出现新用户或新产品时如何进行推荐的问题,相比于热启动用户或产品,冷启动用户或产品缺少用户-产品交互数据,因此用传统的热启动推荐方法往往不能解决这类问题。
冷启动研究主要涉及三个问题:
- 将冷启动产品推荐给热启动用户
- 将热启动产品推荐给冷启动用户
- 将冷启动产品推荐给冷启动用户
当前的冷启动推荐建模的主要思路是:通过学习映射函数将用户或产品的辅助信息表示转换为协同过滤表示。冷启动算法建模的示意图如下:
具体流程如下:
- 基于热启动用户和热启动产品的交互数据,构建热启动用户和热启动产品的协同过滤表示;
- 基于热启动用户和热启动产品的辅助信息,使用学习到的热启动用户和热启动产品的协同过滤表示作为监督信号,构建从用户或产品的辅助信息表示到用户或产品的协同过滤表示的映射函数;
- 对于冷启动用户和冷启动产品,基于其辅助信息,通过学习到的映射函数,得到冷启动用户和冷启动产品的协同过滤表示;
- 基于冷启动用户和冷启动产品的协同过滤表示,通过相似度度量,推断冷启动用户对冷启动产品的偏好得分,对得分进行排序即可得到推荐列表。
可见当前针对冷启动推荐问题的研究采用的是一种同时利用热启动用户和热启动产品的交互数据(基于协同过滤的推荐),以及用户和产品的辅助信息(基于内容的推荐)的混合推荐方法。