推荐系统之综述
推荐系统之综述
在信息过载时代,信息及其传播形式多样化,用户对信息的需求成多元化和个性化发展趋势。搜索引擎已不能满足不同背景、不同目的、不同时期的个性化信息需求,于是个性化服务概念应运而生。个性化服务根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户,从而为不同用户提供不同的服务或信息内容,推荐系统就是个性化服务研究的一个重要分支。推荐系统的任务是联系用户和信息,帮助用户发现有价值的信息,并让信息展现在对它有兴趣的用户面前,其本质是信息过滤。
推荐系统尚无公认的定义,目前广为接受的是Resnick和Varian在1997年提出的:推荐系统是利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程。
推荐系统一般包括用户建模模块、推荐对象建模模块、推荐算法模块。推荐系统将用户模型中兴趣需求信息和推荐对象模型中的特征信息匹配,同时使用相应的推荐算法进行计算筛选,找到用户可能感兴趣的推荐对象,然后推荐给用户。
推荐系统(Recommender System)通过挖掘用户与项目之间的二元(user-item)关系,帮助用户从大量数据中发现其可能感兴趣的项目,并生成个性化推荐以满足个性化需求。
用户模型能获取、表示、存储和修改用户兴趣偏好,能进行推理,对用户进行分类和识别,帮助系统更好地理解用户特征和类别,理解用户的需求和任务,从而更好的实现用户所需要的功能。用户模型的表示主要有基于向量空间的表示、基于神经网络的表示、基于用户-项目评价矩阵的表示、基于案例的表示、基于本体论的表示。用户模型的数据来源分显式获取、隐式获取、启发式获取三类。数据获取后,用户模型可通过TF-IDF、贝叶斯分类器、决策树归纳、神经网络和聚类分析等方法学习,分离噪声,并形成关于用户兴趣的知识。当前用户模型的热点研究有:面向用户多兴趣的建模研究、面向用户群体的建模研究、用户长期和短期兴趣的集成研究、用户建模过程可视化技术研究。
推荐系统通过建立用户与项目之间的二元关系,利用已有的选择过程或相似性关系挖掘每个用户潜在兴趣的对象,从而进行个性化推荐。推荐算法是整个推荐系统中最核心和关键的部分,在很大程度上决定了推荐系统类型和性能的优劣。从信息过滤角度,目前主要的算法有基于内容的推荐、协同过滤推荐、基于知识的推荐、基于网络结构的推荐、组合推荐:
l 协同过滤:利用当前用户或其他用户对部分项目的已知偏好数据来预测当前用户对其他项目的潜在爱好。分启发式方法和基于模型的方法。可细分为基于用户的协同过滤、基于项目的协同过滤、基于模型的协同过滤三类。
Ø 优点:复杂的非结构化化对象可以应用协同过滤,善于发现用户新的兴趣点,无需专业知识即可推荐,以用户为中心的推荐,用户越多,推荐效果越好。
Ø 缺点:存在数据稀疏性、可拓展性问题,用户行为不确定性问题,开始时推荐质量取决于历史数据集。
l 基于内容的过滤:系统获取用户对项目属性的偏好,通过计算已知用户偏好和待预测项目的描述文件之间的匹配度,按偏好排序结果想用户推荐。但不能对非文本对象进行信息自动提取。
Ø 优点:简单、有效,推荐结果直观,容易理解,无需领域知识,无需用户历史数据,没有数据稀疏性问题,数据挖掘和聚类分析为之提供成熟技术支持。
Ø 缺点:受限于推荐对象特征提取能力,很难出现新的推荐结果,推荐对象内容分类需要的数据量大。
l 基于知识的推荐技术:基于知识的推荐技术不依赖于用户对商品的评分数据量,而是通过推断用户的需要和偏好来做出推荐。主要分数据库知识发现KDD、基于案例推理CBR、知识推理KR。
l 基于网络结构的推荐:该方法不用考虑用户和推荐对象的内容,将用户和推荐对象抽象为节点,用户选择了某一推荐对象就会在用户和对象之间存在选择关系,该方法认为信息隐藏在这种选择关系中。
l 基于社会网络分析方法:将社会网络分析理论应用于推荐系统的一类方法,主要研究协同过滤的延伸。
l 组合过滤:按不同的混合策略将不同推荐类型或推荐算法进行组合并推荐。
当前,推荐系统的主要评价指标有:平均绝对误差MAE、平均平方误差MSE、标准平均误差NMAE、推荐准确度、分类准确度、预测打分关联。此外还有推荐的流行性、多样化、覆盖率、新鲜性、意外性、用户满意度等度量指标。
当前,推荐系统研究中主要的难点与热点:上下文感知推荐系统(Context-Aware Recommender Systems,简称CARS)、用户兴趣偏好获取方法和推荐对象的特征提取方法、推荐系统的安全性研究、基于复杂网络理论及图方法的推荐系统研究、推荐的多维度研究、稀疏性和冷启动问题、推荐系统的评价指标研究、新用户问题、精确适用的用户和对象特征、相关性反馈研究、元推荐系统研究、推荐系统规模性研究、实时推荐研究。
在上下文感知推荐系统方面,由于“用户-项目”二元关系,并未考虑它们所处的上下文环境。为此,上下文感知推荐系统将上下文信息引入推荐系统。由Adomavicius和Tuzhilin等提出。该思想将传统的“用户-项目”二维评分效用模型拓展为包含多种上下文信息的多维评分效用模型。
不过,目前对于“上下文”尚无统一认知,广受引用的Dey的定义为:上下文是用于描述实体状态的任何信息,其中实体可以是人、地点或者用户和应用程序之间交互相关的客体。
上下文感知推荐系统流程分四个阶段:数据采集、用户偏好提取、上下文感知推荐生成、评价与自适应改进。上下文通过显示、隐式方法获取,基于键值对模型、标记语言模型、图模型、面向对象模型、逻辑模型、本体模型等建立上下文模型,通过定量或定性分析提取上下文用户偏好。通过基于协同过滤的上下文感知推荐生成技术、基于内容的上下文感知推荐生成技术、上下文预过滤、上下文后过滤、上下文建模生成上下文感知推荐。
当前上下文感知推荐系统的难点与热点有:可拓展性问题、CARS的效用评价问题、将CARS与其他学科结合展开交叉研究、CARS的隐私与安全问题、推荐系统中的上下文建模技术、推荐系统中基于上下文感知的用户建模、上下文推荐数据集、检测上下文数据相关性的算法、将上下文信息融入推荐过程的算法、在上下文特征和用户评分之间建立显示关联的算法、与上下文感知推荐系统的交互、上下文感知推荐系统的新应用、大规模上下文感知推荐系统、上下文感知推荐系统的评测、移动上下文感知推荐系统、上下文感知的群组推荐。
此外,为解决数据稀疏性问题,张富国提出使用社会化标签为推荐系统获得用户的偏好信息提供新的数据来源;邓爱林等提出了基于项目评分预测的协同过滤推荐算法;针对现有推荐技术忽略推荐结果总体多样性的问题,彭飞等提出在推荐系统排名模型中加入用户评分偏置,以实现总体多样性和精准度的精细控制。
目前,推荐系统已经广泛应用于电子商务(如Amazon、eBay、Netflix、阿里巴巴、当当网、豆瓣网)、信息检索、移动应用、电子旅游、互联网广告等领域。Amazon已有35%的产品销售来源于推荐,Netflix有60%的出租业务源于推荐。
目前,推荐系统的国际会议或期刊主要是:2009年起ACM推出的推荐系统年会(ACM Conference on Recommender Systems,简称RecSys)及上下文感知推荐系统专题研讨会(Workshop on Context-Aware Recommender Systems,简称CARS)、ACM EC、KDD、 SIGIR、UMAP、IUI、CHI、CIKM、ECAI、ECIR、IEEE TKDE、 IEEE Intelligent System、ACM TKDD、 Communication of the ACM等。
上一篇: 自制的一个操作sqlite数据库的库文件
下一篇: Symfony2函数用法实例分析