基于内容的推荐(Content-based Recommendation)是信息过滤技术的延续与发展,它是创建在项目的内容信息上做出推荐的,而不须要依据用户对项目的评价意见,更多地须要用机 器学习的方法从关于内容的特征描述的事例中获得用户的兴趣资料。在基于内容的推荐系统中,项目或对象是经过相关的特征的属性来定义,系统基于用户评价对象 的特征,学习用户的兴趣,考察用户资料与待预测项目的相匹配程度。用户的资料模型取决于所用学习方法,经常使用的有决策树、神经网络和基于向量的表示方法等。 基于内容的用户资料是须要有用户的历史数据,用户资料模型可能随着用户的偏好改变而发生变化。web
基于内容推荐方法的优势是:算法
1)不须要其它用户的数据,没有冷开始问题和稀疏问题。数据库
2)能为具备特殊兴趣爱好的用户进行推荐。网络
3)能推荐新的或不是很流行的项目,没有新项目问题。svg
4)经过列出推荐项目的内容特征,能够解释为何推荐那些项目。函数
5)已有比较好的技术,如关于分类学习方面的技术已至关成熟。学习
缺点是要求内容能容易抽取成有意义的特征,要求特征内容有良好的结构性,而且用户的口味必须可以用内容特征形式来表达,不能显式地获得其它用户的判断状况。xml
协同过滤推荐(Collaborative Filtering Recommendation)技术是推荐系统中应用最先和最为成功的技术之一。它通常采用最近邻技术,利用用户的历史喜爱信息计算用户之间的距离,而后 利用目标用户的最近邻居用户对商品评价的加权评价值来预测目标用户对特定商品的喜爱程度,系统从而根据这一喜爱程度来对目标用户进行推荐。协同过滤最大优 点是对推荐对象没有特殊的要求,能处理非结构化的复杂对象,如音乐、电影。对象
协同过滤是基于这样的假设:为一用户找到他真正感兴趣的内容的好方法是首先找到与此用户有类似兴趣的其余用户,而后将他们感兴趣的内容推荐给此用户。其基本 思想很是易于理解,在平常生活中,咱们每每会利用好朋友的推荐来进行一些选择。协同过滤正是把这一思想运用到电子商务推荐系统中来,基于其余用户对某一内 容的评价来向目标用户进行推荐。ci
基于协同过滤的推荐系统能够说是从用户的角度来进行相应推荐的,并且是自动的,即用户得到的推荐是系统从购买模式或浏览行为等隐式得到的,不须要用户努力地找到适合本身兴趣的推荐信息,如填写一些调查表格等。
和基于内容的过滤方法相比,协同过滤具备以下的优势:
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):用一种推荐方法产生的模型做为另外一种推荐方法的输入。