个性化推荐系统范文

时间:2023-03-03 15:56:33

引言:寻求写作上的突破?我们特意为您精选了4篇个性化推荐系统范文,希望这些范文能够成为您写作时的参考,帮助您的文章更加丰富和深入。

个性化推荐系统

篇1

随着信息技术和互联网的迅速发展,人们逐渐从信息匮乏时代进入了信息过载时代。这个时代,对于信息生产者而言,如何让自己生产的信息脱颖而出,收到广大用户的关注是一件很困难的事情。对于用户而言,信息量的增大加重了找到感兴趣信息的负担,从而降低了信息的使用效率。推荐系统正是在这一环境中诞生的,它是根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户的个性化信息推荐系统

1 推荐系统概念、组成要素

目前被广泛接受的推荐系统的概念和定义是Resnick和Varian在1997年给出的:“它是利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程”。个性化推荐系统主要由三个要素组成,分别是:候选对象、用户、推荐算法。推荐系统把用户模型中兴趣需求信息和推荐对象模型中的特征信息匹配,同时使用相应的推荐算法进行计算筛选,找到用户可能感兴趣的推荐对象,然后推荐给用户。

2 推荐技术

推荐算法是整个推荐系统中核心的部分,在很大程度上决定了推荐系统的质量。目前主要的推荐技术基本包括以下几种:基于关联规则的推荐技术,基于内容的推荐技术,协同过滤推荐技术和混合推荐技术。

2.1 基于关联规则的推荐技术

关联规则是数据中所蕴含的一类重要规律,对关联规则进行挖掘是数据挖掘中的一项根本任务,关联规则挖掘就是从数据项目中找出所有的并发关系,这种关系也称为关联。关联规则挖掘的经典应用就是购物篮数据分析,目的是找出顾客在商场(或普通店铺)所选购商品之间的关联。

关联规则可以这样表述。设I={i1,i2,…,in}为所有项的集合,事务T表示事务集合。数据库D为事务数据库。关联规则形如XY的蕴含式,其中X、Y均为项目集,并且X、Y没有交集。关联规则的强度可以用支持度和置信度表示。支持度为同时包含X、Y 项集的事务在数据库D中的百分比。置信度为包含X的事务同时也包含Y在数据库D中的百分比。目前已有大量文献提出关联规则挖掘算法,在众多算法中,最著名的是Apriori 算法。

Apriori算法是由Agrawal等人在1994年提出来的,是一种最有影响的挖掘布尔关联规则频繁项集的算法。该算法分两步进行:第一步,生成所有繁琐项目集,繁琐项目集是支持度高于最小支持度的项目集;第二步,从繁琐项目集中生成所有可信的关联规则,可信关联规则是置信度大于最小置信度的规则。

基于关联规则的推荐技术其优点是:简单直接,领域通用性强,规则的挖掘可以离线进行,可以保证推荐算法的实时性要求。其缺点是:存在着严重的"冷启动"问题,新加入的项目由于缺少相关的用户数据,难以被系统中的规则发现,从而得不到推荐,并且随着系统项目数量的不断增加,规则也会呈出相应的增长趋势,使得规则的管理成本相应升高,降低了系统的运行效率。

2.2 基于内容的推荐技术

基于内容的推荐算法重要的是建立项目特征属性库,系统通过用户已关注项目的特征属性值,来掌握目标用户兴趣点,依据用户兴趣点与待推荐项目属性值的匹配程度进行推荐。用户兴趣点的产生依赖于系统所采用的机器学习算法,如基于向量的表示、文本挖掘、判别树、神经网络等技术。基于内容的推荐结果直观易理解,不需要过多的领域知识,但是需要有足够数据构造分类器,一些例如稀疏问题、新用户问题和复杂属性等问题不易处理。

2.3 协同过滤推荐技术

基于协同过滤推荐技术是当前主流的,应用最为广泛的一种推荐技术。该推荐技术可以分为两种,一种是基于用户的协同过滤推荐技术;另一种是基于项目的协同过滤推荐技术,这两种协同过滤推荐技术的不同之处在于两者针对的对象不同。基于用户的协同过滤推荐技术是给用户推荐和他有共同兴趣的用户喜欢的物品;基于项目的协同过滤推荐技术是给用户推荐和他之前喜欢的物品相似的物品。

2.3.1 基于用户的协同过滤推荐技术

基于用户的协同过滤技术是推荐系统中最古老的算法。该算法在1992年被提出,并应用于邮件过滤系统,1994年被GroupLens应用于新闻过滤。该算法主要包括两个步骤:第一步,找到和目标用户兴趣相似的用户集合;第二步,找到这个集合中用户喜欢的,且目标用户还没有听说过的物品,将该物品推荐给目标用户。

2.3.2 基于项目的协同过滤推荐技术

基于项目的协同过滤技术是基于这样一个假设:用户更倾向于选择与用户喜欢的项目相近的项目。该推荐过程分为两个步骤,第一,计算物品之间的相似度;第二,根据物品的相似度和用户的历史行为为用户生成推荐列表。

2.4 混合推荐技术

目前,推荐技术已经发展出了很多种,但每种推荐技术都在不同程度上存在各自的缺点,每种推荐技术在针对特定的用户或者项目时才能发挥出自己的优势。因此人们提出了混合推荐来互补推荐技术各自的不足,已达到一个理想的推荐效果。在大部分的混合推荐技术研究当中,是将基于内容的推荐技术和基于协同过滤技术相结合。相对于使用单一途径算法的推荐技术,基于混合推荐技术往往表现出更高的推荐精度和更好的推荐质量。

3 推荐系统的应用

自推荐系统诞生近20年的时间里,推荐系统的应用领域迅速扩展。从电子商务、音乐视频网站,到作为互联网经济支柱的在线广告和新颖的在线应用推荐,到处都有推荐系统的身影。下面简单介绍个性化推荐系统的应用以及该领域较成功的网站。

3.1 电子商务

电子商务网站是个性化推荐系统的一大应用领域。著名的电子商务网站亚马逊是个性化推荐系统的积极应用者和推广者,被读写网称为“推荐系统之王”。亚马逊的推荐系统深入到了各类产品中,其中最主要的应用有个性化商品推荐列表和相关商品的推荐列表。

3.2 电影和视频网站

在电影和视频网站中,个性化推荐系统能够帮助用户在大量视频信息中找到令他们满意的视频。该领域较成功的一家公司就是Netflix。Netflix在2006年开始举办著名的Netflix Prize推荐系统比赛。该比赛对推荐系统的发展起到了重要的推动作用。

3.3 个性化音乐网络电台

个性化推荐的成功应用需要具备两个条件。第一是存在信息过载的问题,第二是用户大部分时候没有明确的需求。在这两个条件下,个性化网络电台无疑是最合适的个性化推荐产品。目前国际上著名的有Pandora和Last.fm,国内的代表则是豆瓣电台。

3.4 个性化阅读

阅读文章是很多互联网用户每天都会做的事情。目前互联网上的个性化阅读工具很多,国际知名的有Google Reader,国内有鲜果网等。同时,随着移动设备的流行,移动设备上针对个性化阅读的应用也很多,其中具有代表性的有Zite和Flipboard。

[参考文献]

[1]Resnick P.Varian HR Recommender systems[外文期刊].1997(03).

[2]许海玲.互联网推荐系统比较研究[J].软件学报,2009.20(2):350.362.

[3]王国霞,刘贺平.个性化推荐系统综述[J].计算机工程与应用,2012,48(7).

[4]刘兴涛,石冰,解英文.挖掘关联规则中Apriori算法的一种改进[J]. 山东大学学报,2008,43(11):67-71.

[5]胡斌.基于高阶潜在语义分析的音乐推荐系统的研究,硕士论文.北京工业大学计算机学院,2009.

[6]Schafer JB,Konstan J,Riedl J.Recommender systems in e-commerce[M].On Electronic Commerce,1999.P367-461.

篇2

互联网近十来的飞速发展,使之成为了人们获取信息的主要渠道之一。人们在互联网上获取信息不仅方便,而且得到的信息量比较全面,最重要的是互联网上的信息查询不受时间和空间的限制。同时,网络信息的海量性增加了用户信息查询的负担,导致了人们很难在浩淼的信息海洋中找到自己真正感兴趣的信息。用户对信息有不同的需求,而现在互联网对用户的表达相同的信息查询需求返回的是同样的信息内容,不会考虑用户的个性化。在科技飞速发展的环境下,我们不仅要满足用户信息查询的方便性的要求,还要在实现这个前提下尽量保证返回信息的质量,这样个性化的信息服务就应时而生。个性化的信息服务因能根据用户的不同信息查询需求返回用户真正感兴趣的信息而逐渐取代了传统的信息服务模式成为一种新的信息服务方式。

1.本体的概念及应用

从20世纪90年代初ontology(本体)引入计算机领域以来,不同研究者给ontology(本体)的定义虽然形式各不相同,但从真正涵义上来讲都是统一的,他们都认为本体都是对一个共享的概念模型的形式化描述。即本体的本质是概念模型。它对某个领域的具体的现象或知识进行抽象,形成该领域人们共同认可的概念或知识及其之间的关系,最后形成计算机可读的一种描述。简而言之,Ontology(本体)就是从不同层次形式化描述领域内的概念,概念含义及之间关系的理论,是领域内部各个概念之间进行交流的语义基础,这就把简单的术语明确到了某个领域。本体是以获取所属领域内的知识,提供对该领域的共同理解为目标的。

本体是用计算机可以理解的形式化语言来描述概念的,解决了人与计算机,计算机与计算机之间的沟通问题,所以被应用在信息交流的很多领域。本体能够明确概念的含义及概念之间的关系,所以在信息检索中引入本体理论后,用来描述查询需求的关键词之间的语义关系会更加明确,可以建立词语间的网状结构,这就提高了检索提问式的有效性和准确性。同时信息检索系统引入本体后能为用户提供多个检索口,用户不仅可以直接从自己比较熟悉的检索口进入系统查询信息,也可以比较完整地找到自己真正需要的信息。另一方面本体也为词语、术语的标准化、形式化提供了理论基础,在信息检索过程中,系统可以参照本体对异构信息进行标引,整合,解决了异构信息之间的交流问题,从而帮助用户在异构信息源中查询信息。领域本体的使用不仅使专业领域内问题的研究变地更加确定,也能够帮助多领域间的信息集成,交流和合作,即使是新用户也能简便而全面地了解本领域知识。

在知识管理中,利用本体规范知识概念及其之间的关系,能有效地将隐性知识转化为显性知识,知识的搜索和共享的几率大大提高,继而为知识共享和知识重用提供了可能。

2.个性化信息推荐系统

个性化信息推荐系统是使用多种数据分析技术,在特定类型的数据库中进行知识发现的一种应用技术,本质上是一种“信息找人”的服务模式。它根据用户的特点和兴趣主动、及时、准确地向用户提供所需信息,再根据用户对于推荐内容的反馈进一步改进推荐结果,继而达到为用户推荐真正所需信息和为用户提供更优质服务的目的。

为了缩短用户寻找到兴趣信息的时间,提高浏览的效率,个性化推荐系统向用户推荐与其兴趣模型相匹配的信息,或者是与目标用户具有相近兴趣模型的用户群浏览过的信息。个性化信息推荐系统根据推荐技术的不同可以分为三种:基于规则的系统,基于内容的系统和基于合作的系统。

2.1 基于规则的推荐系统

基于规则的推荐是根据事先生成的规则向用户推荐其感兴趣的信息的一种信息推荐方式。假如事先生成的一个规则为“如果用户对图书馆学感兴趣的话,则数字图书馆也是其感兴趣的内容”,当用户再次浏览有关图书馆学的网站信息时,系统则可以同时向用户推荐数字图书馆的相关信息。由此可以看出,一个规则本质上就是一个If-Then语句。基于规则推荐信息的基础是系统管理员根据用户访问记录所制定的推荐规则。基于规则的信息推荐系统的优点是方便,简单,直接,容易实现。其缺点是系统事先制定的推荐规则质量很难得到保证,而且随着规则的愈来愈多,系统的管理也变的越来越艰难。

2.2 基于内容的推荐系统

基于内容的推荐是指通过比较资源与用户模型的相似程度向用户推荐信息的一种信息推荐方式,最终系统把与用户兴趣模型相匹配的信息反馈给用户。这种推荐方式优点是实现简单,适合处理文本信息,推荐的结果查准率比较高。缺点是它要求内容与用户兴趣的精确匹配,所以查全率有待提高。基于内容的推荐系统的典型结构如图2.1所示:

图2.1 基于内容的推荐系统

2.3 基于合作的推荐系统

基于合作的推荐和基于内容的推荐不同,它不是通过比较资源和用户兴趣模型的相似性,而是通过比较用户兴趣之间的相似性,依据目标用户具有相同或相近兴趣的用户对资源的评价向用户推荐信息的。合作推荐是一个较常用到的一个信息推荐方式,其中具有相同或相近兴趣模型的用户可看做是一个个的用户类。系统在推荐给目标用户信息时通过参照同类用户的兴趣,不仅可以使目标用户发现新的感兴趣的信息,也能提供一些难以用具体概念表达的信息,如质量等,避免了内容分析的不完全和不准确。但是基于合作推荐的前提必须是某些信息必须被用户类中的某个或某些用户浏览过,否则不能把这些信息推荐给其他用户。如果某个人的兴趣比较特殊,不能归为任何一个用户类,则这个用户也可能无法获得个性化系统推荐的信息。基于合作的推荐的典型结构如图2.2所示:

图2.2 基于合作的推荐系统

3.引入本体后的个性化信息推荐系统

个性化信息推荐系统的目的是向具有不同兴趣的用户推荐个性化即满足其需求的信息。现有的推荐系统虽有优点但也不可避免的具有一些缺点,如基于内容的推荐中关键词之间是没有任何语义关系的,但是现实中还存在同义词等,系统是将信息和用户兴趣进行精确匹配的,所以一些表达方式不同但本质相同的信息就可能不被推荐,从而导致查全率不高等。因此为了提高系统推荐的质量,就要在信息推荐系统中引入本体的理论。本体作用是在领域中提取共同认可的词汇形成概念,进而对概念及其之间的关系进行形式化表达。它能充分考虑关键词之间的关系,这样系统在向用户进行信息推荐时就不再是单纯的关键词匹配,有助于提高推荐信息的质量。

3.1 引入本体后基于规则的推荐系统

基于规则的信息推荐系统的中的规则是系统管理员根据用户的访问记录制定的,可能每个访问记录就对应一个规则,所以规则就变得多而乱,难以管理,而且很难处理复杂抽象的用户请求。例在图书馆领域内的以下三个规则:

(1)如果用户对图书馆自动化感兴趣的话,则情报检索系统也是其感兴趣的内容。

(2)如果用户对图书馆自动化感兴趣的话,则检索系统也是其感兴趣的内容。

(3)如果用户对图书馆学感兴趣的话,则用户对检索系统也感兴趣。

在数字图书馆领域,概念“图书馆学”和概念“图书馆自动化”之间是父类和子类的关系,“情报检索系统”与“检索系统”具有相同的内涵,由此规则(1)和规则(2)其实实质相同,规则(3)中“图书馆学”是“图书馆自动化”的父类,用户在实际的选择中如果对父概念感兴趣则一定也对其对应的子概念感兴趣。而以上三个规则中认为“图书馆学”,“图书馆自动化”,“情报检索系统”和“检索系统”四个概念之间是没有任何联系的,所以就造成了规则的繁多。

在本体中我们已经定义了“图书馆学”是“图书馆自动化”的父类,“情报检索系统”与“检索系统”是同义词,所以以上三个规则就可以缩减为“如果用户对图书馆学感兴趣的话,则用户对情报检索系统也感兴趣”一条规则,如此就大大减少了规则的数量,节省了储存规则的空间,方便系统对规则进行管理。引入本体后基于规则的信息推荐模式如图3.2所示:

3.2 引入本体后基于内容的推荐系统

基于内容的推荐系统中关键词之间的匹配是精确匹配,而表达不同本质相同或者具有上下位关系的关键词之间就不能形成联系,从而影响查准率或查全率。如基于规则的信息推荐系统中的关于数字图书馆的例子,在引入本体后用户如果输入的查询关键词是“图书馆自动化”,系统则会考虑到“图书馆自动化”和“数字图书馆”的上下位关系,最终把关键词为“图书馆自动化”的信息资源也推荐给用户。本体也可以引入用户的查询语句中,如用户要查询“情报检索系统”的相关信息,系统考虑“检索系统”和“情报检索系统”的同义关系,把“检索系统”也当做用户的兴趣之一,修正用户兴趣模型。基于内容的信息推荐系统中,在用户兴趣模型和信息资源中引入本体后,表示资源的关键词和用户模型关键词之间就不再是简单的匹配,而是会考虑到关键词之间的语义关系的语义层面的匹配,推荐结果的质量大大提高。引入本体后基于内容的信息推荐系统过程如图3.4所示。

3.3 引入本体后基于合作的推荐系统

基于合作的推荐系统是根据用户兴趣模型之间的相似度来推荐信息的。用户模型是用关键词表示的,所以分析用户兴趣模型的相似度就变成了用来表示兴趣模型关键词的匹配,可能也就会出现和基于内容的推荐一样的问题。

如某个用户的兴趣关键词之一是“图书馆,另一个用户的兴趣关键词之一是“图书馆自动化”,因为不理解两个关键词之间的上下文关系,所以系统就会认为这两个关键词是不匹配的,继而认为两个用户的感兴趣的内容是不一样的。引入本体之后,表示各个用户兴趣的关键词之间就有了语义关系,如上下位,同义词关系等,这就增加了系统分析用户兴趣的准确度,扩大了相似用户类。系统在某个用户的表示兴趣模型的关键词中引入本体分析,形成新的兴趣模型关键词集,接着与系统中储存的经过处理的其他用户兴趣模型再进行匹配,就会大大增加匹配的可能性。具体过程如图3.6所示。

4.结语

文中在分析现有个性化信息推荐系统的基础上,发现了基于规则的信息推荐技术存在规则多而繁,不易管理;基于内容和合作的信息推荐技术存在关键词之间缺乏语义关系的弊端,于是在现有个性化信息推荐技术的基础上引入了本体理论。引入本体后的信息推荐系统在用户兴趣模型的表达上考虑到了关键词之间的关系,能更为准确地表达用户的兴趣所在,用来表示文档内容的关键词之间也具备了同义或上下位等语义关系,能更详细而精确地表达信息内容。在传统信息推荐系统的基础上引入了本体的理论克服了现有三种推荐技术的不足之处,使得文档信息和用户模型的匹配成为了语义层次的匹配,提高了推荐结果的质量。

参考文献

[1]刘凯.信息可视化概念的深入探讨[J].情报杂志,2004 (12):20-25.

[2]李健康,张春辉.本体研究及其应用进展[J].图书馆论坛,2004,24(6):80-86.

[3]仇利克.领域Ontology的构建方法论及其存储研究[D].[硕士学位论文].青岛:中国海洋大学,2006.

[4]李衍淼.基于本体的智能信息检索系统研究[D].[硕士学位论文].山东:山东科技大学,2006.

[5]史忠植.知识发现[M].北京:清华大学出版社,2002:135-155.

[6]潘红艳.个性化信息服务的研究与实现[D].[硕士学位论文].大连:大连理工大学,2005.

篇3

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)10-2446-04

Abstract: On the base of social computing personalized recommendation system design, design of the acquisition module is a data source, but also the basis for system data analysis, related to the quality of the system. Therefore, a collection module as a personalized recommendation system, play a decisive role, this paper makes a detailed study of the module, which provides a theoretical foundation for designing the back modules, and also provides some useful experience in development and design for the system.

Key words: acquisition; module; system

基于社会计算的个性化推荐系统的采集模块,关系到系统的质量,为系统的性能指标提供可靠的保证。采集模块实现了对网页文档信息的自动采集“爬虫”功能,能够基于用户的信息关键词来搜索。

采集模块由网页文档信息采集模块、lucene索引建立模块和搜索推荐主干模块构成,分别从模块的描述、功能、输入项、输出项、流程逻辑和接口详细介绍了其实现的原理。

1 网页文档信息采集模块

1)模块描述

本模块的重点之一是网络爬虫的编制。网络爬虫需要实现自动地抓取网页文档,提取网页地址,并且循环进行。尽管网络资源在同一个域之内,但为了提高爬取效率,还需要实现多线程才能保证更新的效率。另外,对于抓取到的文本存储路径相对于网页的网址,必须进行转换,才能更快速地在本地数据库中搜寻到该网页。而对于 IP地址则要做一个判断,以实现在规定范围的搜索。

2)模块功能

主要功能由start函数实现,其原型为:Start(UribaseURI ,intthreads) ,UribaseURI参数是表示需要下载的链接,后面的函数表示线程数量。路径的转换则需要通过转换字符实现。基本功能如表1网页文档信息采集功能表所示:

3)模块输入项

模块输入主要是对爬虫参数的设置,爬虫参数的设置要求如表2爬虫参数设置说明表所示:

4)模块输出项

本系统主要进行新浪博客的网页文档抓取,数据采集结果主要包括该博客网页文档以及该博客的地址,博客的题目、内容、作者以及采集的时间等。

5)模块逻辑流程

本模块的逻辑流程:首先分析源地址,然后获得地址列表,接下来反复循环每个地址,并调用相关方法来获取内容,通过计算,并得到文章相关信息,最后将获得的信息保存在数据库中。

6)模块接口

数据的采集是从新浪服务端将博客网页文档数据存储到本地数据库的过程,模块的接口如图1所示。

2 lucene索引建立模块

1)模块描述

索引建立模块独立于运行平台,实现了文档的解析和索引的创建,在本系统中解析的文档类型主要是html文档。

以 IndexWriter 建立索引 IndexWriter 的构造函数有三种接口,针对目录 Directory 文件 File文件路径 String 三种情况在索引结束时使用 Lucene 的 wirter. optimize( ) 方法优化索引。

2)模块功能

实现模块功能之前需要利用IKAnalyzer中文分词器对文档内容进行分词。分词器IKAnalyzer可以进行文档的筛选,获取目标文档,无用部分则剔除掉。其常用接口有org ,apache, Lucene, analysis,Analyzer 虚构类。

在该模块中主要利用格式转换类的方法,对格式文件采用与其相对应的解析方式来实现格式的转换,HTML文档利用 POI 解析。下一步则是将实现了转换的文件作为分词器的输入,对其进行处理,最后编写框架为所有文档实现索引的创建,通过为字节流创建索引来实现为所有文档建立索引的目标,如表3索引建立模块功能表所示。

3)模块输入项

a)采用IKAnalyzer分析器进行目标文档筛选;

b)利用POI对HTML文档进行解析;

a)后台管理页面数据输入手动操作,下达“索引创建”命令;

d)执行框架语句,通过为字节流创建索引来实现为所有文档建立索引。

4)模块输出项

此模块的操作是通过登入系统后台管理,在建立索引页面下达命令,进行索引的创建,自动生成,如图2 索引创建界面图所示。

5)模块逻辑流程

本模块的逻辑流程是:首先从本地数据库中获取数据,得到待筛选文档,通过判断该文档信息是否为目标文档。如果不是的话,就剔除,重新原有的操作,如果是目标文档,则将目标文档进行格式转换,从而来建立索引。

6)模块接口

从模块逻辑流程可以知道,本模块的接口也是由本地数据库,通过后台管理程序来自动完成索引的建议,其模块的接口如图3所示。

3 搜索推荐主干模块

1)模块描述

模块中包含服务器 Action 类, Action 类有对应的 Service 类和 Lucene 搜索类。连接应用服务器,下达命令之后可以从索引文件中搜寻出目标文档,其整体框架如图4搜索推荐主干模块整体框架图所示。

服务器接收命令,传递给对应的 Action 类, 然后Action 类调用对应的 Service 类,再利用 Lucene 搜索类从找到目标文档,最后在JSP 页面显示搜索结果。此过程中采用 Action 类解析方法,把字节流以JSP 页面高亮显示出来,检索目标文档则是利用 Lucene 的检索接口 Query 与QueryParser 实现。采用QueryParser.parse 完成对搜索结果的排序,通过org.apache.Lucene.search.Sort 实现,。

2)模块功能

服务器可以利用搜索模块传递文档 URL,进而搜寻到文档的位置,并采用文件系统将文档解析到一个动态页面,即一个可以显示不同文档内容的页面。最后是将搜索结果,即找到的目标文档 URL 集合倒排展示,并且对输入的关键词,以及关键词出现次数等,以高亮显示出来,如表4搜索推荐主干功能表所示。

3)模块输入项

a)前台页面数据输入:名称:搜索关键词;标识:keyword;数据类型:varchar;数据来源:用户键盘输入。

b)模块类调用命令:

服务器识别用户提交的关键词,传递给对应的 Action 类,Action 类再调用对应的的 Service 类,然后交给 Lucene 的搜索类处理。

4)模块输出项

Jsp界面将搜索结果推荐出来,以高亮显示博客作者,搜索关键词以及关键词出现次数等,如图5搜索结果推荐页面图所示:

5) 模块流程逻辑

本模块的逻辑流程是:首先从接收搜索命令获得搜索的目标,传递给Action类,从而找出其对应的Service类,再通过Lucene搜索类来实现目标文档的推荐,最后以设置好的高量度形式显示出来。

6) 模块接口

本模块主要是把数据存储层的数据,通过业务逻辑层的业务处理,来实现表示层的表示,从而实现目标文档的搜索推荐功能,其接口如图6 搜索推荐主干模块接口图所示。

4 模块管理

为了更好的实现资源的统一管理,将其设计在后台统一界面进行管理,其管理页面结构如图7统一管理结构图所示。

参考文献:

篇4

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)27-6067-02

现如今,我们可以看到很多解决信息过载问题的方法。例如,分类目录和搜索引擎。但是这两种方法都不能满足现在用户的个性化需要。因为现在的用户更多的是希望系统能够帮助他们准确、快速地推荐出他们想要的和他们潜在的喜好信息。而搜索引擎只能向那些能够表达出准确的关键词的用户推荐产品,因此不能解决用户的很多其他需求,如果当用户不能够找到准确描述自己需求的关键词时,搜索引擎就无能为力了。而个性化推荐系统就不要求用户给出很清楚的目标,它只要了解用户过去的选择过的信息来对用户的爱好进行建模,进而主动地把那些能够满足用户兴趣需求的信息推荐给用户。个性化推荐算法的出现,让那些对自己需要不明确的用户能够找到他们的兴趣点,主动地去浏览网页。网购已经成为我们生活的一部分了,如果我们不想出门,可以到当当或淘宝网上搜索想要的产品,然后你会搜出很多相关的信息,产品数目非常巨大。同时使用网络的用户数目也很巨大。好的推荐系统能够挖掘出用户可能喜欢,而自己还没有觉察到自己喜欢的产品。尽管现有的推荐系统已经取得了巨大的成功,但是还需要在不同领域中进一步完善和发展。该文简单介绍一些实用的推荐系统和推荐算法。根据推荐算法的不同,推荐系统可以分为如下几类:协同过滤系统;基于内容的推荐系统;基于用户—产品二部图网络结构的推荐系统;混合推荐系统。

1 协同过滤系统

协同过滤系统是最古老的并得到广泛应用的一种推荐系统。这个算法的诞生标志了第一代推荐系统的诞生。其核心思想是,根据该用户之前购买过的产品,来推荐一些该用户可能喜欢的产品(那些和用户之前喜欢的产品相似的产品);也就是根据该用户的需求可以先找到和他有相似兴趣爱好的其他用户,然后把其他用户感兴趣的,而该用户没有听说过的产品推荐给他。

协同过滤推荐系统的算法可以分为两类,基于记忆和基于模型。基于记忆是预测系统中所有被打过分的产品信息,注重于预测用户的相对偏好而不是评分绝对值;缺席投票就是基于记忆方法的一种扩展。基于模型是把打过分的数据收集起来进行研究来得出用户行为模型,然后,再对某个产品进行预测打分。

协同过滤系统现在得到了很好的应用。它具有以下的优点

1)能够帮助用户推荐那些用户本人没有发现的喜欢的产品,相对用户来说的新信息。

2) 能够过滤难以进行基于内容分析的信息。

虽然协同过滤推荐系统得到了很好的应用,但是也面临很多问题。由于是基于用户对产品的评分,所以不论是对新用户还是新产品的推荐,准确度都不是很高。由于用户的数量的不断增加,计算量也不断的加大,直接影响了系统的性能。

2 基于内容的推荐系统

基于内容的推荐(Content-based Recommendation)是信息过滤技术的延续和发展,它是根据用户已有历史信息计算相似性作出推荐的。在基于内容的推荐系统中,产品是通过相关的特征的属性来定义,系统根据用户对产品的评价特征,研究用户的兴趣点,比较用户资料与待预测产品的相似程度。而推荐相似度最高的产品。

基于内容的推荐算法在对信息的获取和信息的过滤两个方面的研究已经很成熟.现在有很多基于内容的推荐系统都是先对产品显示出来的文本信息进行分析,找出相似度比较高的产品进行相应的推荐.

在基于内容的推荐系统中,我们常常把产品的内容用一些关键词来描述出来.基于内容的系统推荐,就是把不同的候选产品和用户过去喜欢的产品进行比较,然后将相似度最高的产品推荐给用户.

基于内容的推荐系统中,通过用户的感兴趣的信息建立用户资料,把用户的兴趣点进行归纳。然后再把归纳出的几个主题文件与文本内容的相似度进行对比,把相似度较高的选择出来展示给用户并更新用户的资料。自动获取或更新用户资料的方法既要考虑用户资料的易更新性也要考虑用户资料的准确性。我们要想准确地挖掘用户感兴趣的信息那就要消耗大量的计算资源,同时也会影响到更新速度。反之,如果更新速度快,其准确性就会受到影响。我们可以通过人机交互的方法来解决这个问题。通过简单的交互式问题来收集用户的信息,从而得出用户的兴趣爱好.然后在根据获得的信息给用户进行更好的高效的推荐.

总的来说,基于内容推荐系统的优点有以下几点:

1)可以解决冷启动问题。

2)可以解决稀疏性问题,用户是否对产品打分都不会影响推荐算法。

3)能够给用户推荐出很新颖的并非很流行的产品。

4)能够提高用户的黏附性。在给用户推荐产品时能够做出很好的解释,从而使得用户能够拥有很好的系统使用体验。

基于内容的推荐系统在技术上还存在一些困难。假设两个相同的产品,用不同的特征词来表示,这样的产品就会被系统认为是相似的产品.又或者用相同的特征词来表示不同的产品,那么这样的产品就很不容易被系统区分.我们可以发现基于内容的推荐系统没有考虑到推荐的多样性.

3 基于网络结构的推荐算法

基于网络结构的推荐算法是利用用户和产品的内容特征作为抽像的节点,再把抽像的节点作为算法的信息.所有算法要用的信息全部都隐含在产品和用户的关系中。

基于二部图资源分配的算法,假设一个由多个用户和多个产品形成的推荐系统.其中如果用户A浏览过产品B,那么A和B之间就会有一条连线(生成一个结点),否则,无连线(无结点).从而,此系统可以用用户和产品之间的所有结点建立一个二部分图.图中显示对于任何一个目标用户A,推荐算法的目的是先把用户A从未浏览过的产品过滤出来,再对这些产品按用户A的喜好程度进行排列,然后把排列在前面的产品推荐给用户A.如果用户A浏览过的全部产品,都具有向用户A推荐用户A没有浏览过的产品的能力.这种能力可以看成关于相关产品的一些可再分的信息资源——拥有信息资源的产品会把更多的信息资源给予他们信赖的产品.

提高精确度的算法有:通过去除重复属性获得高精度的算法(即二阶关联来提高算法的精确程度);通过引入耦合阈值提高算法精确性。

这里我们要重点考虑的是,当用户的兴趣爱好相同的时候,推荐冷门的产品要比推荐热门的产品意义更大。因为有些热门产品有时对有些用户你不推荐也会购买或者浏览这些产品,而对于那些冷门的产品,如果没有好的推荐,就很难被可能喜欢他的用户发现。所以挖掘这些暗信息对推荐系统的意义也很大。一个好的推荐系统就是帮助用户发现那些他们感兴趣但很难发现的商品,满足用户的个性化需求,这也是个性化推荐系统应该主要解决的问题。

基于网络结构的算法为个性化推荐系统的推荐算法研究指明了新的方向。但是,该算法在处理新用户,新产品等问题上还存在不足。因为在新用户或新产品第一次进入系统时(用户没有选择过任何产品,产品也没有被任何用户选择过),这个时候系统里的用户和产品没有任何信息,所以系统无法与其他用户或产品建立关联关系网络。关联网的建立时间会影响到长期兴趣点和短期兴趣点的区分及推荐的准确性。

4 混合推荐算法

协同过滤,基于内容和基于协同的推荐系统,它们都有各自的优点和缺点。现在有很多学者都在研究基于多种方法的混合推荐系统,并提出了混合推荐算法.经过实际数据的研究显示,混合推荐系统中的推荐算法有更好的准确率。因为它把两种不同的推荐系统结合起来,尽可能的实现他们两者的优点,不断地提高推荐系统的性能为目标的。现在,最常见的混合推荐系统是基于协同过滤和基于内容的,同时也发展出了其他类型的组合,下面简单进行介绍。

4.1 在协同过滤系统中加入基于内容的算法

一些混合推荐系统都是基于内容的协同过滤算法.即利用用户资料来实现传统的协同过滤计算.该算法用户的相似度与那些共同打分的产品信息无关,而是通过基于内容的用户资料计算得出。这种算法不仅可以解决协同过滤系统中的稀疏性问题,而且当产品和用户资料很相似时会被直接推荐,不再是只有当产品被用户资料相似的用户打了分才能被推荐..

该算法通过增加一个附加打分,可以向用户推荐附加分高的信息产品.这个附加打分是通过分析文本在协同过滤系统中用户的打分向量上增加的一个打分.此外,把基于文本分析与基于网络的推荐算法相结合,值得我们去研究.我们可以从标签和关键词之间建立的关系出发,再结合于基于网络的推荐算法来实现.

4.2 其他混合推荐系统

基于内容和协同过滤算法的统一概率方法,把用户喜欢的数据信息通过浅层语义分析,把信息分成相关的主题,然后预测出用户喜欢的主题.该方法能够有效的解决稀疏数据的问题.混合效用回归模型是根据用户已打过分的信息,用户和产品的相关资料建立用户模型,通过回归分析进行估计和预测出用户对某一个产品特性的要求程度,来给用户推荐满足用户要求的产品.有关混合推荐系统还有,利用基于知识的方法进行的推荐(通过用户的历史行为来挖掘用户下一个喜好的内容),基于神经网络的混合推荐系统.基于知识和协同过滤的混合推荐系统(能够向用户推荐有用的知识和相关的知识).基于知识的自动问答系统(通过系统与用户的交流从中提取用户喜欢的内容)。

4 结束语

随着信息技术和Internet的发展,人们已经进入了信息过载的时代。大量的数据信息同时涌现在用户的面前,使得用户无从下手,很难获得他们想要的那部分信息,从而使信息利用率不断降低.相应的在现在网络中也出现了很多搜索工具,尽管他们都可以帮助用户来过滤并获取他们想要的信息.然而这些工具只能满足主流需求,没有考虑到个性化的需求.所以,仍然不能很好地解决信息过载的问题。那些“暗信息”很难被用户挖掘,如果没有外界的帮助,普通用户根本无法找到它们。采用合适的推荐算法,可以帮助用户找到用户根本就不可能找到的信息。推荐系统的作用就是帮助用户和信息之间建立相应的联系。一方面帮助用户发现对自己有价值的感兴趣的信息,另一方面让信息能够展现在对它感兴趣的用户面前,从而实现信息消费者和信息生产者的双赢.

文中根据4种不同的推荐系统简单地介绍了几种不同的推荐算法。虽然这些推荐系统都有一定的应用领域,并且取得了巨大的经济利益。但是这些系统不管从理论角度还是从应用角度来看都面临着许多问题,还需要进一步的深入研究。

参考文献:

免责声明:以上文章内容均来源于本站老师原创或网友上传,不代表本站观点,与本站立场无关,仅供学习和参考。本站不是任何杂志的官方网站,直投稿件和出版请联系出版社。
友情链接
发表咨询 加急咨询 范文咨询 杂志订阅 返回首页