推荐系统概述、分类

一、推荐系统的基本思想

  • 知你所想,精准推送
    利用用户和物品的特征信息,给用户推荐那些具有用户喜欢的特征的物品。
  • 物以类聚
    利用用户喜欢过的物品,给用户推荐与他喜欢过的物品相似的物品。
  • 人以群分
    利用和用户相似的其他用户,给用户推荐那些和他们兴趣爱好相似的其他用户喜
    欢的物品。

二、推荐系统的数据分析

1、用户

  • 个人信息(注册信息)
  • 喜好标签(勾选)
  • 上下文信息(浏览过什么,浏览记录,用户的行为习惯)

2、物品

  • 内容信息(基本信息)
  • 分类标签(类别)
  • 关键词
    假如物品的特征和用户相匹配,即可。

3、行为数据
用户和物品之间的相互——>用户的行为数据,评分、标签、评价、点击、浏览、收藏、购买
具体来说,可以总结如下:

  • 要推荐物品或内容的元数据,例如关键字,分类标签,基因描述等;
  • 系统用户的基本信息,例如性别,年龄,兴趣标签等
  • 用户的行为数据,可以转化为对物品或者信息的偏好,根据应用本身的不同,可能包括用户对物品的评分,用户查看物品的记录,用户的购买记录等。这些用户的偏好信息可以分为两类:
    ----显式的用户反馈:这类是用户在网站上自然浏览或者使用网站以外,显式的提供反馈信息,例如用户对物品的评分,或者对物品的评论。(存在数据库中)
    ----隐式的用户反馈:这类是用户在使用网站是产生的数据,隐式的反应了用户对物品的喜好,例如用户购买了某物品,用户查看了某物品的信息等等。(用户日志)

三、推荐系统的分类

1、根据实时性分类

  • 离线推荐
  • 实时推荐

2、根据推荐是否个性化分类

  • 基于统计的推荐(所有人都一样,可以用于解决冷启动问题)
  • 个性化推荐

3、根据推荐原则分类

  • 基于相似度的推荐(物以类聚,人以群分)
  • 基于知识的推荐(标签,定义)
  • 基于模型的推荐(发现、学习、训练一个模型,机器学习)

4、根据数据源分类(一说,根据策略分类Strategies)

  • 基于人口统计学的推荐(数据源是关于用户的,用户画像,可以用于解决冷启动问题,用户勾选)
  • 基于内容的推荐(数据源是物品item,建立用户档案,Content-based filtering,可以解决 data
    sparsity and cold-start问题)
  • 基于协同过滤(Collaborative filtering (CF))的推荐(数据来源基于行为数据)
    ----基于近邻(neighborhood-based)的协同过滤推荐(也叫基于内存Memory-based的方法,CiteULike,Youtube和Last.fm等实际应用程序中采用,但非常耗时)
    -----------基于用户的协同过滤推荐(User-CF)
    -----------基于物品的协同过滤推荐(Item-CF)
    ----基于模型(model-based)的协同过滤推荐(可以将辅助信息side information馈入到预测模型中,从而助于解决数据稀疏和冷启动问题)
    -----------潜在因子模型(latent factor models)
    -----------表示学习模型(representation learning models)
    -----------深度学习模型(deep learning models,最新的方法)
  • 混合推荐(Hybrid methods)
    ----加权混合
    ----切换混合
    ----分区混合
    ----分层混合

Content-based filtering.(CBF)

它主要利用用户个人资料和商品说明来推断用户对商品的偏好。基本过程是根据用户的个人属性或对她已购买或喜欢的历史项目的描述来建立用户的档案。通过将项目的内容与用户个人资料进行匹配来创建建议。特别是,可以使用一系列辅助数据(例如类别,标签,品牌和图像)来构造商品的描述性特征。由于这些方法主要依赖于用户和项目的丰富内容功能,因此它们能够更好地处理数据稀疏性和冷启动问题。同时,它们使我们能够深入了解最新算法如何利用辅助信息。

Collaborative filtering(CF)

该技术旨在通过从用户与商品的历史交互中学习来预测用户对商品的偏好,这种互动可以是显式反馈(例如评分和评论)或隐式反馈(例如点击和查看)形式。通常,有两种基于CF的技术:基于内存(memory-based)和基于模型(model-based)的方法。
memory-based approaches(neighborhood-based)
基于内存的方法(Hwang等,2012; Guo等,2012)通常利用原始的用户-项目交互数据(例如,评分矩阵)通过汇总相似用户(User-CF)或相似项目(Item-CF)的偏好来预测未观察到的评分。
User-CF
Item-CF
缺点:耗时,不能用在大型数据集上

model-based approaches

基于模型的方法假定可以用低维潜矢量来表示用户的喜好或商品的特征。更具体地说,基于模型的方法从用户-项目矩阵中学习用户和项目的潜在特征向量,并通过计算用户和项目的潜在向量的点积来预测推荐(Koren等,2009; Mnih和Salakhutdinov 2008)。
基于模型的方法旨在通过在用户项目评分矩阵上采用数据挖掘或机器学习技术来构建预测模型,以发现复杂的用户行为模式。然后,将学习到的模型用于预测用户对未知商品的评分。除了用户项目评分矩阵外,辅助信息还可以用作有价值的特征,这些特征可以馈入预测模型中,从而有助于解决数据稀疏性和冷启动(data sparsity and cold start issues)问题。与基于内存的方法相比,基于模型的方法可以更好地适应并扩展到大规模数据集,从而显着提高性能。通常,基于模型的成功推荐方法可分为三类:

  • Latent factor models (LFMs)
    它们将高维用户-项目评分矩阵分解为低维用户-项目潜在矩阵。由于效率高,LFM主导了最先进的推荐方法(Shi等人,2014)。 LFM的基本思想是,用户和商品都可以通过一些潜在特征来表征,因此可以将预测计算为用户特征和商品特征向量的内积。许多有效的方法都属于此类,例如矩阵分解(MF)(Koren等人2009),非负矩阵分解(NMF)(Zhang等人2006),张量分解(TensorF)(Bhargava等人2015)。 ),分解机(FM)(Rendle 2010,2012),SVD ++(Koren 2008),集合矩阵分解(CMF)(Singh and Gordon 2008)和SVDFeature(Chen et al.2012)。

  • Representation learning models (RLMs)
    通过对单个用户的交互记录中的项目共现进行建模,已证明它们可以有效地捕获本地项目关系。 RLM最初是受词嵌入技术启发的,这种技术可以追溯到经典的神经网络语言模型(Bengio等人,2003),以及Word2Vec技术的最新突破,包括CBOW和Skip-gram(Mikolov等人,2013)。 迄今为止,已经提出了许多基于Word2Vec技术的基于Item2Vec(Barkan和Koenigstein 2016)的推荐方法(Wang等人2015a; Grbovic等人2015; Liang等人2016; Feng等人2017) 。

  • Deep learning models (DLMs)
    它们在计算机视觉,语音识别和自然语言处理等各个领域带来了重大突破(LeCun和Bengio 1995; Socher等人2011; Krizhevsky等人2012; Luong等人2015; Wang等人2016) ),推荐系统也不例外。与LFM和RLM相反,DLM(例如AutoRec(Sedhain等人2015),NCF(He等人2017)和DMF(Xue等人2017))可以通过各种类型的激活函数来学习非线性潜在表示(例如,乙状结肠,ReLU(Nair和Hinton,2010年)。例如,基于递归神经网络(RNN)的方法(Hidasi等人2015; Jing和Smola 2017; Wu等人2017b; Hosseini等人2018)由于具有保存历史信息的能力而显示出强大的顺序推荐功能随着时间的推移。基于卷积神经网络(CNN)的方法(Zhang等人2016; He等人2016b; He等人2016a)能够提取局部特征以捕获更多的上下文影响。总而言之,DLM具有重要的优势,并在推荐方面促进了活跃和进阶的研究。

本质上,LFM(例如矩阵分解)和RLM(例如item2vec)都可以被视为DLM的特例,即浅层神经网络(He et al.2017)。例如,矩阵分解可以看作是一层神经网络,它将一站式用户-项目向量转换为具有这些向量的线性内积的密集表示,以进行预测。尽管DLM相对于其他基于模型的推荐方法而言,具有卓越的性能,但是如何有效地将各种辅助信息整合到DLM中的研究尚未充分发挥其潜力。相比之下,近几十年来,对LFM和RLM的研究问题已经得到了很好的研究,这可能为具有辅助信息的DLM的开发提供启发。另一方面,与DLM相比,后者涉及更多的计算成本,但通常只能实现较小的性能提升,所以传统的基于模型的方法(例如LFM和RLM)则有可能进一步发展以产生更好的推荐精度。因此,在推荐准确性和计算成本之间进行权衡是未来研究的重要方向,即需要对不同类型的推荐方法进行全面审查。为此,我们对最先进的算法以及基本方法的发展进行了系统,全面的回顾,以便在该领域提供完整的信息。
经验研究证明,在大多数情况下,基于模型的方法要优于基于内存的方法。但是,当用户-项目交互数据非常稀疏时,数据稀疏和冷启动问题会固有地阻碍基于CF的方法的有效性。作为推荐的最成功的技术,这些方法使我们能够对该领域中基本方法论的发展有一个全面的了解。

Hybrid methods

他们利用基于CF和基于内容的方法来弥补其缺点。混合不同推荐模型的技术有两种:早期融合和晚期融合。前者是指将显式内容(例如视觉,文本和知识感知功能)与历史用户项交互数据进行组合,然后将其馈入某些基于CF的方法中以提高推荐性能(Zhang et al.2016; Tuan和Phuong(2017)。另一方面,后期融合方法建立了专门针对每种信息的独立推荐系统,然后结合了对这些系统的预测(Park等人,2006; Melville等人,2002; Pero和Horváth,2013)。众所周知,混合推荐方法在经验上优于纯基于CF或基于内容的方法,特别是在解决数据稀疏性和冷启动问题方面。我们的研究主要集中在最新的混合推荐方法上。它们中的绝大多数是在最近10年中开发的。总体而言,约95%的论文在2010-2019年发表,而近60%的论文在最近五年发表。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章