一、推荐系统的概述
个性化推荐是根据用户的兴趣特点和购买行为,向用户推荐用户感兴趣的信息和商品。随着电子商务规模的不断扩大,商品个数和种类快速增长,顾客需要花费大量的时间才能找到自己想买的商品。这种浏览大量无关的信息和产品过程无疑会使淹没在信息过载问题中的消费者不断流失。为了解决这些问题,个性化推荐系统应运而生。个性化推荐系统是建立在海量数据挖掘基础上的一种高级商务智能平台,以帮助电子商务网站为其顾客购物提供完全个性化的决策支持和信息服务。
定义:它是利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程"。
推荐系统有3个重要的模块:用户建模模块、推荐对象建模模块、推荐算法模块。通用的推荐系统模型流程如图。推荐系统把用户模型中兴趣需求信息和推荐对象模型中的特征信息匹配,同时使用相应的推荐算法进行计算筛选,找到用户可能感兴趣的推荐对象,然后推荐给用户。
二、推荐系统的常见评价方法
评价方法分为离线评估,用户调查,在线评估。由于用户调查和在线评估代价要求高,目前大多数的研究采用的是离线测试。其中文献[3]总结了离线评价中用到的指标,包括准确度指标、基于排序加权的指标、覆盖率、多样性和新颖性等。本文的研究工作采用了几种离线评估指标。将其归纳为准确性指标和非准确性指标。
2.1 准确性指标
准确性指标是推荐系统中最重要的指标。最常使用的准确性指标包括准确率和召回率。
准确率 | 召回率 |
---|---|
推荐列表中用户喜欢的物品所占的比例。 | 测试集中有多少用户喜欢的物品出现在推荐列表中。 |
准确性指标局限性:
(1)不适合评估排序性能。
(2)离线的准确率的提高并不意味着实际线上系统效果的提高。
2.2 非准确性指标
推荐系统中,除了推荐准确性外,还有其他一些重要的指标。包括推荐的多样性、新颖性、惊喜度和覆盖率等等。本文将这些指标统称为非准确性指标。其中非准确性指标又可以分为用户级非准确性指标和系统级非准确性指标。
用户级非准确性指标 | 系统级的非准确性指标 |
---|---|
个体多样性;新颖性。 | 整体多样性;覆盖率 。 |
具体指标计算请点击链接:推荐系统的评价指标总结
三、常见的推荐算法总结
3.1 基于内容推荐
3.2 协同过滤推荐
3.3 基于关联规则推荐
3.4 基于效用推荐
3.5 基于知识推荐
3.6 组合推荐
(1)不需要其它用户的数据,没有冷开始问题和稀疏问题;
(2)能为具有特殊兴趣爱好的用户进行推荐。
(3)能推荐新的或不是很流行的项目,没有新项目问题。
(4)通过列出推荐项目的内容特征,可以解释为什么推荐那些项目。
(5)已有比较好的技术,如关于分类学习方面的技术已相当成熟。
缺点是要求内容能容易抽取成有意义的特征,要求特征内容有良好的结构性,并且用户的口味必须能够用内容特征形式来表达,不能显式地得到其它用户的判断情况。
(1) 能够过滤难以进行机器自动内容分析的信息,如艺术品,音乐等。
(2)共享其他人的经验,避免了内容分析的不完全和不精确,并且能够基于一些复杂的,难以表述的概念(如信息质量、个人品味)进行过滤。
(3)有推荐新信息的能力。可以发现内容上完全不相似的信息,用户对推荐信息的内容事先是预料不到的。这也是协同过滤和基于内容的过滤一个较大的差别,基于内容的过滤推荐很多都是用户本来就熟悉的内容,而协同过滤可以发现用户潜在的但自己尚未发现的兴趣偏好。
(4)能够有效的使用其他相似用户的反馈信息,较少用户的反馈量,加快个性化学习的速度。
虽然协同过滤作为一种典型的推荐技术有其相当的应用,但协同过滤仍有许多的问题需要解决。最典型的问题有稀疏问题(Sparsity)和可扩展问题(Scalability)。
(1)加权(Weight):加权多种推荐技术结果。
(2)变换(Switch):根据问题背景和实际情况或要求决定变换采用不同的推荐技术。
(3)混合(Mixed):同时采用多种推荐技术给出多种推荐结果为用户提供参考。
(4)特征组合(Feature combination):组合来自不同推荐数据源的特征被另一种推荐算法所采用。
(6)层叠(Cascade):先用一种推荐技术产生一种粗糙的推荐结果,第二种推荐技术在此推荐结果的基础上进一步作出更精确的荐。
(7)特征扩充(Feature augmentation):一种技术产生附加的特征信息嵌入到另一种推荐技术的特征输入中。
(8)元级别(Meta-level):用一种推荐方法产生的模型作为另一种推荐方法的输入。