`
gaojingsong
  • 浏览: 1211817 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【推荐系统常见的推荐方法】

阅读更多

推荐方法是整个推荐系统中最核心、最关键的部分,很大程度上决定了推荐系统性能的优劣。目前,主要的推荐方法包括:基于内容推荐、协同过滤推荐、基于关联规则推荐、基于效用推荐、基于知识推荐和组合推荐。

 

一、基于内容推荐

基于内容的推荐(Content-based Recommendation)是信息过滤技术的延续与发展,它是建立在项目的内容信息上作出推荐的,而不需要依据用户对项目的评价意见,更多地需要用机 器学习的方法从关于内容的特征描述的事例中得到用户的兴趣资料。在基于内容的推荐系统中,项目或对象是通过相关的特征的属性来定义,系统基于用户评价对象 的特征,学习用户的兴趣,考察用户资料与待预测项目的相匹配程度。用户的资料模型取决于所用学习方法,常用的有决策树、神经网络和基于向量的表示方法等。 基于内容的用户资料是需要有用户的历史数据,用户资料模型可能随着用户的偏好改变而发生变化。

 

基于内容推荐方法的优点是:

 1)不需要其它用户的数据,没有冷开始问题和稀疏问题。

 2)能为具有特殊兴趣爱好的用户进行推荐。

 3)能推荐新的或不是很流行的项目,没有新项目问题。

 4)通过列出推荐项目的内容特征,可以解释为什么推荐那些项目。

 5)已有比较好的技术,如关于分类学习方面的技术已相当成熟。

 

缺点是要求内容能容易抽取成有意义的特征,要求特征内容有良好的结构性,并且用户的口味必须能够用内容特征形式来表达,不能显式地得到其它用户的判断情况。

 

二、协同过滤推荐

协同过滤推荐(Collaborative Filtering Recommendation)技术是推荐系统中应用最早和最为成功的技术之一。它一般采用最近邻技术,利用用户的历史喜好信息计算用户之间的距离,然后 利用目标用户的最近邻居用户对商品评价的加权评价值来预测目标用户对特定商品的喜好程度,系统从而根据这一喜好程度来对目标用户进行推荐。协同过滤最大优 点是对推荐对象没有特殊的要求,能处理非结构化的复杂对象,如音乐、电影。

 

协同过滤是基于这样的假设:为一用户找到他真正感兴趣的内容的好方法是首先找到与此用户有相似兴趣的其他用户,然后将他们感兴趣的内容推荐给此用户。其基本 思想非常易于理解,在日常生活中,我们往往会利用好朋友的推荐来进行一些选择。协同过滤正是把这一思想运用到电子商务推荐系统中来,基于其他用户对某一内 容的评价来向目标用户进行推荐。

 

基于协同过滤的推荐系统可以说是从用户的角度来进行相应推荐的,而且是自动的,即用户获得的推荐是系统从购买模式或浏览行为等隐式获得的,不需要用户努力地找到适合自己兴趣的推荐信息,如填写一些调查表格等。

 

和基于内容的过滤方法相比,协同过滤具有如下的优点:

1) 能够过滤难以进行机器自动内容分析的信息,如艺术品,音乐等。

2) 共享其他人的经验,避免了内容分析的不完全和不精确,并且能够基于一些复杂的,难以表述的概念(如信息质量、个人品味)进行过滤。

3) 有推荐新信息的能力。可以发现内容上完全不相似的信息,用户对推荐信息的内容事先是预料不到的。这也是协同过滤和基于内容的过滤一个较大的差别,基于内容的过滤推荐很多都是用户本来就熟悉的内容,而协同过滤可以发现用户潜在的但自己尚未发现的兴趣偏好。

4) 能够有效的使用其他相似用户的反馈信息,较少用户的反馈量,加快个性化学习的速度。

虽然协同过滤作为一种典型的推荐技术有其相当的应用,但协同过滤仍有许多的问题需要解决。最典型的问题有稀疏问题(Sparsity)和可扩展问题(Scalability)。

 

三、基于关联规则推荐

基于关联规则的推荐(Association Rule-based Recommendation)是以关联规则为基础,把已购商品作为规则头,规则体为推荐对象。关联规则挖掘可以发现不同商品在销售过程中的相关性,在零 售业中已经得到了成功的应用。管理规则就是在一个交易数据库中统计购买了商品集X的交易中有多大比例的交易同时购买了商品集Y,其直观的意义就是用户在购 买某些商品的时候有多大倾向去购买另外一些商品。比如购买牛奶的同时很多人会同时购买面包。

 

算法的第一步关联规则的发现最为关键且最耗时,是算法的瓶颈,但可以离线进行。其次,商品名称的同义性问题也是关联规则的一个难点。

 

四、基于效用推荐

基 于效用的推荐(Utility-based Recommendation)是建立在对用户使用项目的效用情况上计算的,其核心问题是怎么样为每一个用户去创建一个效用函数,因此,用户资料模型很大 程度上是由系统所采用的效用函数决定的。基于效用推荐的好处是它能把非产品的属性,如提供商的可靠性(Vendor Reliability)和产品的可得性(Product Availability)等考虑到效用计算中。

 

五、基于知识推荐

基 于知识的推荐(Knowledge-based Recommendation)在某种程度是可以看成是一种推理(Inference)技术,它不是建立在用户需要和偏好基础上推荐的。基于知识的方法因 它们所用的功能知识不同而有明显区别。效用知识(Functional Knowledge)是一种关于一个项目如何满足某一特定用户的知识,因此能解释需要和推荐的关系,所以用户资料可以是任何能支持推理的知识结构,它可以 是用户已经规范化的查询,也可以是一个更详细的用户需要的表示。

 

六、组合推荐

由 于各种推荐方法都有优缺点,所以在实际中,组合推荐(Hybrid Recommendation)经常被采用。研究和应用最多的是内容推荐和协同过滤推荐的组合。最简单的做法就是分别用基于内容的方法和协同过滤推荐方法 去产生一个推荐预测结果,然后用某方法组合其结果。尽管从理论上有很多种推荐组合方法,但在某一具体问题中并不见得都有效,组合推荐一个最重要原则就是通 过组合后要能避免或弥补各自推荐技术的弱点。

 

在组合方式上,有研究人员提出了七种组合思路:

1)加权(Weight):加权多种推荐技术结果。

2)变换(Switch):根据问题背景和实际情况或要求决定变换采用不同的推荐技术。

3)混合(Mixed):同时采用多种推荐技术给出多种推荐结果为用户提供参考。

4)特征组合(Feature combination):组合来自不同推荐数据源的特征被另一种推荐算法所采用。

5)层叠(Cascade):先用一种推荐技术产生一种粗糙的推荐结果,第二种推荐技术在此推荐结果的基础上进一步作出更精确的推荐。

6)特征扩充(Feature augmentation):一种技术产生附加的特征信息嵌入到另一种推荐技术的特征输入中。

7)元级别(Meta-level):用一种推荐方法产生的模型作为另一种推荐方法的输入。

0
1
分享到:
评论

相关推荐

    python推荐系统合集含10套源码(探探项目、自动车牌推荐系统、网易云音乐推荐系统、电影、知识图谱的推荐系统、新闻推荐系统)

    5. **商品Top50推荐系统** (Python商品top50推荐系统Item-Recommend-System-master):电商领域的推荐系统,常见的是基于用户行为数据和商品属性进行Top-N推荐,旨在提高转化率和用户购买满意度。 6. **基于知识图谱...

    推荐系统实践.pdf,推荐系统实践pdf,Python

    1. **协同过滤**:推荐系统中最常见的方法之一,分为用户-用户协同过滤和物品-物品协同过滤。它基于用户过去的行为,找到相似的用户或物品,然后推荐他们喜欢的内容。 2. **基于内容的推荐**:这种方法基于用户过去...

    基于深度学习的推荐系统的研究.pdf

    协同过滤是推荐系统中最常见的一种方法,它主要分为用户协同过滤和物品协同过滤。用户协同过滤通过分析用户间的相似性来进行推荐,物品协同过滤则侧重于物品之间的相似性。但协同过滤存在一些固有问题,比如数据稀疏...

    基于hadoop商品推荐系统课程设计.zip

    在这个系统中,我们可能会用到协同过滤、基于内容的推荐、混合推荐等方法,以及矩阵分解、深度学习等技术。 三、数据处理与分析 在Hadoop平台上,我们可以利用MapReduce对海量的用户行为数据进行清洗、整合和分析。...

    音乐推荐系统的设计与实现.zip

    3. 推荐算法:推荐系统常见的算法有基于内容的推荐、协同过滤推荐和混合推荐。基于内容的推荐依赖于歌曲的元数据(如流派、艺术家),协同过滤则根据用户的历史行为预测他们可能喜欢的新音乐。混合推荐结合了多种...

    推荐系统教学文档

    推荐系统主要包括基于内容的推荐、协同过滤推荐、混合推荐以及深度学习推荐等多种方法。 1. 基于内容的推荐:这种方法依赖于对用户历史行为的分析,通过比较用户过去喜欢的项目与新项目的相似性来进行推荐。例如,...

    基于大数据的音乐推荐系统(适合本科毕设)

    常见的有基于内容的推荐、协同过滤推荐以及混合推荐等。基于内容的推荐系统主要分析用户过去的音乐偏好,推荐相似风格的歌曲;协同过滤则通过分析用户之间的相似性,预测用户可能喜欢的音乐;混合推荐结合了多种方法...

    SSM混合音乐推荐系统.zip

    协同过滤是推荐系统中最常见的方法之一,它主要依赖于用户的历史行为,如播放、收藏或评分的歌曲。通过计算用户之间的相似性,系统可以预测一个用户可能对未听过的歌曲的喜好,并推荐这些歌曲。例如,如果两个用户在...

    推荐系统论文

    4. **混合推荐系统**:为了克服单一推荐方法的局限性,混合推荐系统结合了多种推荐策略,以提高推荐的准确性和多样性。 #### 四、关键问题及解决方案 - **数据稀疏性和冷启动问题**:对于基于用户的协同过滤算法,...

    Python电影推荐系统源码.zip

    协同过滤是推荐系统中最常见的方法之一,分为用户-用户协同过滤和物品-物品协同过滤。本项目可能采用了其中一种或两种结合的方式。用户-用户协同过滤通过找出具有相似评分行为的用户,将他们喜欢的电影推荐给其他...

    亚马逊推荐系统

    为解决推荐问题,有三种常见的方法:传统的协同过滤、聚类模型和基于搜索的方法。与这些方法相比,亚马逊的推荐算法被称为“项目对项目协同过滤”。与传统的协同过滤不同,亚马逊算法的在线计算规模不依赖于顾客数量...

    Web项目网上商城推荐系统1.0

    基于物品的协同过滤算法是推荐系统中的一个重要方法。这个算法主要依赖于用户的历史行为数据,如购买记录、浏览历史等。它假设如果两个用户在过去都对某个商品有相同的喜好,那么他们可能也会对其他未被共同评价的...

    C#实验用的推荐系统

    在实践中,你可以尝试调整参数,比较不同相似度计算方法的效果,或者探索更复杂的推荐算法,如矩阵分解(Matrix Factorization)、深度学习模型(如神经网络推荐系统)等,进一步提升推荐系统的性能。

    基于协同过滤的推荐系统

    在本项目中,我们将关注一种常见的推荐系统算法——协同过滤(Collaborative Filtering, CF),以及如何使用Java语言来实现这一算法。 **协同过滤原理** 协同过滤分为用户-用户协同过滤(User-Based CF)和物品-...

    Python实现音乐推荐系统.zip

    《Python实现音乐推荐系统》 音乐推荐系统是利用大数据和机器学习技术,为用户个性化推荐符合其音乐口味的歌曲。本项目以Python为开发语言,提供了完整的源码和测试数据,旨在帮助开发者深入理解推荐系统的工作原理...

    电影推荐系统 适用于初学者

    推荐系统常见的分析方法包括协同过滤、基于内容的推荐和矩阵分解等。 4. **矩阵分解**:例如在本案例中提到的FM(Factorization Machines)方法,是一种有效的机器学习模型,它可以捕捉用户和物品之间的复杂交互,...

    基于javaweb + mapreduce的小型电影推荐系统

    MapReduce是Apache Hadoop的一部分,用于分布式处理大规模数据,尤其适合处理推荐系统中常见的协同过滤或基于内容的推荐算法。Java Web是开发Web应用程序的标准技术,用于构建服务器端功能和用户界面。推荐系统则是...

    淘宝推荐系统简介

    协同过滤是推荐系统中的常见方法,分为用户-用户协同过滤和物品-物品协同过滤。用户-用户协同过滤通过找出具有相似购买行为的用户,将一个用户喜欢的商品推荐给其他相似用户;物品-物品协同过滤则是通过分析用户对...

Global site tag (gtag.js) - Google Analytics