简单对推荐算法进行总结,后期通过学习会进行扩充
一、传统算法
- 基于内容的推荐
- 基于协同过滤的推荐(CF)
- 混合的推荐
二、深度学习模型
三、知识图谱推荐
将知识图谱引入推荐系统主要有三个作用
- 缓解冷启动
- 缓解数据稀疏
- 可解释性
基于知识图谱的推荐系统一般包括知识图谱,推荐模块和连接模块三部分。其中知识图谱存储丰富的实体语义信息,推荐模型计算用户与项目之间的交互信息,并且通过连接模块,将图谱中的语义信息映射成低维向量结合推荐模块计算实现项目的推荐功能。
根据算法思想的差异可以分为三类:
- 基于连接的推荐
基于连接的推荐主要利用知识图谱中实体之间的连接关系来计算节点相似性而实现推荐。该方法将知识图谱视为一个异构信息网络,然后构建基于节点之间的路径规则进行匹配计算。
典型的模型有:HeteroMF,Hete-MF,Hete-CF等
- 基于嵌入的推荐(KGE)
基于嵌入的推荐需要对图谱中的实体和关系进行一个低维向量的映射。主要由两个模块组成,即图嵌入模块和推荐模块。图嵌入模块实现对于知识图谱的特征学习,推荐模块对图嵌入模块学到的信息进行处理实现内容的个性化推荐。
基于图嵌入模块根据特征学习模块又可以分为两类:
- 基于距离的翻译模型: TransE系列,高斯嵌入系列和其他距离模型
- 基于语义的匹配模型:SME,NAM,MLP等
根据图嵌入与推荐模块之间的关系,可以将推荐系统分为依次学习,联合学习和交互学习三个类别。
典型的模型有:Node2Vec,entity2rec,DKN与RKGE等
-
基于混合的推荐
主要包含三个模型: RippleNet,KGCN和KGAT及其衍生系列