基于数据挖掘的Apriori算法(毕业论文)_第1页
基于数据挖掘的Apriori算法(毕业论文)_第2页
基于数据挖掘的Apriori算法(毕业论文)_第3页
基于数据挖掘的Apriori算法(毕业论文)_第4页
基于数据挖掘的Apriori算法(毕业论文)_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学海无涯苦作舟!基于关联规则的个性化推荐系统摘要现今随着网络迅速地发展,信息量的快速膨胀,各种数据量变的庞大且分散,用户利用传统关键词检索搜寻数据的方式变得相当费时且不容易聚焦。因此,为了要降低使用户在网络上的搜寻时间,提供用户更适切的内容信息,自动化推荐系统(AutomaticRecommenderSystem)便应运而生,也越来越受到重视与青睐。自动化推荐系统有许多种不同的推荐方式,如content-based,filtering-based等。本研究主要针对应用在B2C网上商城上的个性化推荐系统,探讨如何有效地运用数据挖掘的技术从大量的数据库中挖掘出完整知识,以推荐适当的信息给使用者,帮

2、助人们在浩大的信息流中找到他们真正需要、有用的商品信息。本文特别选择了在B2C电子商务领域具有代表性的网上商城网站作为个性化推荐系统的研究对象。在分析该类网站特点的基础上,对不同的推荐技术进行了详细的比较。着重分析了当前流行的基于内容、基于效用、基于用户信息、关联规则、协同过滤这几种推荐技术对于B2C网上商城网站的适用性。在此基础上,提出了适用于该类网站的个性化推荐系统总体技术方案、系统结构和工具实现方法。在系统实现方面本文不但给出了对交易数据进行清洗的一半策略和方法,而且针对传统关联规则挖掘算法的不足,提出了基于数据分块的Apriori改进算法。最后本文分析了基于关联规则的个性化推荐系统在实

3、际使用过程中的不足,提出了特别针对B2C网上商城网站的解决方案。关键词:自动化推荐系统,数据挖掘,关联规则,电子商务学海无涯苦作舟!AbstractNowadays,withtherapiddevelopmentofnetwork,expansionofinformationisfast.Alargenumberofhandwrittendocumentsarefleetlybeingconvertedintoelectronicforms.Varietiesofdatabecomehugeandscattered.Usingtraditionalkeywordtosearchthedatai

4、smoreandmoretime-consumingandnoteasytofocus.Therefore,inordertoreduceuserssearchtimeonthenetworkandprovidethemmoreappropriateinformation,theautomaticrecommendersystememergesasrequired,andalsopurchasesincreasinglyattentionandfavor.Therecommendersystemhasbeenstudiedinmanycategories,suchascontent-based

5、,filtering-based,etc.Aimattheonlinerecommendationsystemappliedonnetwork,thisstudymainlydiscusseshoweffectivelyusedataminingtechniquestominethecompleteknowledgefromalargenumberofdatabases,thenrecommendtheappropriateinformationtouserstohelpthemtofindreallyneededandusefuldocumentsorinformationinthevast

6、flowofinformation.ThisthesisparticularlychoosesshopmarketsalesB2CE-commercewebsiteasarespectivestudyobject.Firstly,weanalyzedthecharacteristicsofdifferentpersonalizedreconnendationtechnology.Onthebaseofthisanalysis,thesisdesignedarecommendationsystemthatsuitsforshopmarketsalsesB2CE-commercewebsite.S

7、econdly,asfortraditionalAssociationRule-basedRecommendationalgorithmsshorttage,thesisutilizeddatapartitioncomceptionandApriorigainedanefficientAssociationRule-basedalgorithm.Usingthisalgotithmwecanminecustomerstradedataandprovidethempersonalizedrecommendation.Finally,thesissummarizedthelimitationsof

8、AssociationRule-basedTecommendationandpresentssomesuggestionthatmaysolvetheseproblems.Keywords:Automaticinquiry;PowerBuilder;Fixed-pointtransfer;Informationofrailway学海无涯苦作舟!目录第一章绪论1系统开发背景11.2系统研究目的和意义11.3研究内容和组织结构2第二章电子商务个性化推荐关键技术42.1信息检索42.2信息过滤42.3自动化推荐系统42.3.1基于内容的推荐方式52.3.2合作过滤的推荐方式52.3.3推荐技术的分类

9、6TOC o 1-5 h z HYPERLINK l bookmark26 数据挖掘(DataMining)概述72.4.1数据挖掘的发展历史72.4.2数据挖掘的方法82.4.3数据挖掘的研究领域11 HYPERLINK l bookmark44 B2C网上商城网站推荐技术的选择132.5.1基于内容推荐132.5.2基于用户推荐信息的推荐132.5.3基于知识和效用的推荐142.5.4协同过滤和关联规则14第三章基于关联规则的个性化推荐系统设计143.1引言143.2关联规则的基本概念153.2.1基于概念和问题描述153.2.2关联规则的总类163.3关联规则挖掘的算法17核心算法17T

10、OC o 1-5 h z HYPERLINK l bookmark68 3.4在线自动化推荐机制20第四章利用挖掘的关联规则实现个性化推荐23基于Apriori算法的推荐系统23 HYPERLINK l bookmark108 Apriori算法的Java实现264.3推荐系统功能演示37第五章工作总结和展望435.1总结435.2展望43参考文献44鸣谢45第1章绪论系统开发背景随着电子信息技术、网络技术、Internet技术的发展,人们的生产和生活方式发生了革命性的变化。电子信息技术使存储和处理海量的信息称为可能:网络技术又使这些信息的存储和处理可以分布到不同的信息系统中,从而大大提高了信

11、息的存储数量、共享程度和信息的处理速度;而Internet的法杖则使这一趋势从一个小的区域中扩展到整个地球。目前这些技术现在已经渗透到人们的学习、工作和生活的各个领域之中,人们可以不受时间、空间的限制,快捷、便利、高效的得到各种信息服务。以前破费周折的事情我们现在通过轻点鼠标就可以办到,比如获悉世界各地的新闻、收发邮件、资料查询、办理银行业务、股票买卖、公交交换等,甚至像上课、开会、组织生产这一的复杂活动也可以通过信息系统和网络进行。正是在这样的背景下一种新型、高效的商务模式应运而生,那就是电子商务。电子商务指交易当事人或参与人利用现代信息技术和计算机网络所进行的各类商务活动,包括货物贸易、服

12、务贸易和知识产权贸易。电子商务在充分利用信息技术和Internet的基础上将人类传统的商务活动推到了一个前所未有的高度。根据业务主体的不同我们又把电子商务分为B2B、B2C以及C2C这三种模式,其中B(Bussiness)代表商业提供商或用户,C(Customer)代表个人提供者或用户。也就是说各种的市场主体和消费主体都可以通过电子商务实现它们的商务活动。自1999年以来电子商务在全球范围内得到了快速发展。电子商务的快速发展一方面极大提高了人类商务活动的效率,另一方面又带来了信息过载的问题。与传统的商务模式相比,用户现在可以了解到的商品、服务信息成指数倍增长,有书籍,研究论文,网络交流论坛,个

13、人网站等等,用户通过互联网了解所有种类的信息几乎是不可能的,然而他们必须需要花费越来越多的时间,从大量的信息流中剔除过滤掉不相关的资源,检索到对自己有价值的信息。由于信息量的不断增大,这个检索的过程将会越来越烦琐。系统研究目的和意义推荐系统(RecommenderSystem)作为解决这类问题的方法之一,已被广泛的应用于电子商务网站中,通过建议商品和提供信息的方式帮助浏览者决定哪些商品需要购买。基于网站总交易记录中商品的销售量推荐商品。或者,基于对所有消费者学海无涯苦作舟!学海无涯苦作舟!以往的购买行为的分析,来进行推荐。被推荐的信息类型包括给用户建议合适的商品、提供个性化的商品信息和总结商品

14、的群体反馈信息等等。因此,推荐系统可以通过以下三种途径对电子商务进行改善。1.将浏览者转变成购买者。浏览者进入一个网站常常只是浏览商品而不购买任何东西。推荐系统可以基于浏览者的兴趣和属性帮助他们寻找商品。这样,浏览者就很容易被转变成购买者。2.增加交叉销售推荐系统通过推荐相关的或相近的额外商品给浏览者来提高交叉销售。而且,这样可以增加平均订购量。例如,在结算的过程中,网站可以基于那些已经在购物车中的商品将额外商品推荐给购买者。从而,激发购买者的购物需求。3.建立忠诚度推荐系统通过获取网站和消费者之间的一个有值的关系来提高忠诚度。网站通过分析了解它们的购买者,提供给购买者所需的相应的个性化服务,

15、从而获得较好的关系。购买者再将他们已获得所需商品的信息反馈给网站。购买者与网站之间的交易越多,那么就体现购买者对该网站的忠诚度越高。推荐系统有多种分类,包括基于内容的、基于过滤的等等。然而,推荐系统的许多进程都是手工创建的,例如手工创建交叉销售列表。然而,包含实时信息的在线推荐进程通常是比较匮乏的。目前,在电子商务领域中,自动推荐系统也已明确采用了交互式电子商务的实时个性化特点。它是专业的数据挖掘系统的一种,能为用户提供实时的个性化信息。主要方法是用人工智能工具挖掘网站交易数据,从而用于识别、预测及了解消费者的购买习惯,挖掘出客户的喜好信息,使系统与消费者的互动得到了优化,从而有效地提高交易效

16、率。因此,数据挖掘是一个影响电子商务长期成功的关键过程。研究内容和组织结构随着网络信息量的日趋膨胀,用户在有限的时间里搜索到有价值的信息变得更加不易。因此自动化推荐系统的个性化推荐功能变得尤为重要。本研究为电子商务网上商城网站提供了一种自动化个性推荐机制。为了给每个用户提供不同的个性化信息,需要收集用户属性和相关交易数据。数据挖掘(DataMining)技术可用于挖掘用户组知识信息和个性化需求。因此,在应用领域中,本研究的目标是:建立一个个性化推荐系统,使用Web界面展示为用户定身量制的个性化推荐信息并以友好的方式呈现给用户。本文的内容结构如下:第1章介绍了本文的研究背景和意义,对本文的研究目

17、标和主要工作进行了阐述。第2章主要归纳综述了自动化推荐系统的相关研究现状,其中包括目前推荐系统常用的推荐技术、聚类分析技术,以及数据挖掘的方法、研究领域、所面临的困难和挑战。最后对关联规则挖掘方法做了简单阐述。第3章提出了一种新的自动化推荐系统的推荐机制。详细介绍了该机制如何将数据挖掘技术相结合应用到推荐程序中,包括该机制的流程模式和结构。为了使系统返回更好的推荐结果,本研究还提出了一种改进的算法,并用实例验证了算法的有效性。第4章将本研究机制实际应用于处理商品推荐的程序上,以此验证本研究的可行性及应用性。第5章对全文进行概括性总结,指出了本文存在的不足,以及未来进一步研究的方向。第2章电子商

18、务个性化推荐关键技术现今随着网络迅速地发展,信息量的快速膨胀,现存许多技术用于解决将人们感兴趣的和有价值的信息从庞大的信息流中筛选出来,帮助人们迅速地确定自己感兴趣的资讯,自动化推荐系统便是其中之一。本章主要介绍自动化推荐系统所涉及的基本概念、特点和相关的技术分类。2.1信息检索信息检索(Informationretrieval)10和信息项的描述、存储、管理和存取有关。有利于用户查询及获取与自身兴趣相关的信息。信息检索系统可以使用文档全文或摘要的形式索引文档。信息检索的主要技术是全文检索、签名文件索引和聚类。输入信息可能是文章中的原话,或是文章的摘录或摘要。根据搜索请求,信息检索系统便输出多

19、组与之相关的参考信息。这些参考信息可能包含着系统使用者感兴趣的资讯。信息检索主要用于挖掘短期兴趣需求的。2.2信息过滤信息过滤技术和信息检索技术类似,然而,信息过滤技术用于挖掘长期性的喜好需求的。它们都可以高效地确定关键字,并且找到符合要求的信息,尽管信息的数量在飞速的增长。然而,假如系统搜索到相同题目的不同文档,这样就很难确定这些文档的质量如何。某种程度上而言,高效的过滤应该是能够最大限度的与人对信息质量的判断相一致。因此,为了解决这一问题,自动化推荐系统便应运而生了。2.3自动化推荐系统自动化推荐系统是利用信息分析技术,分析用户的属性及其喜好信息。经过信息过滤,系统便可以将相关的及用户感兴

20、趣的信息或所需产品,推荐给用户。目前自动化推荐系统主要有两种不同的推荐方式,即基于内容的方式和合作过滤的方式。2.3.1基于内容的推荐方式(ContentBased)基于内容的推荐系统是建立在用户以前的行为模式基础上的。它为用户提供某些信息,包括他们记录中显示的好恶。项目推荐的基础是项目本身的信息,而不是用户本身的喜好。例如,如果一个用户过去常常借阅有关计算机的书籍,自动推荐系统会直接推荐给他(她)与计算机相关的书籍。用户的偏好是一个用于表示用户喜好类型的个人资料。它通常表示为一组关键字。信息检索技术应用于研究和表现用户的喜好。这种方法的优点是能够向具有独特兴趣的用户优先推荐未分级的项目。推荐

21、的内容将以列表的功能展现,还提供对其推荐结果的解释。这样潜移默化地使用户对系统推荐的项目更具有信心。然而,基于内容的推荐系统所存在的不足是,只建议用户以前看过或类似的事物。但实际上,在我们找资料的过程中,经常会意外发现原本没有想到但非常有意义的资料。另外,如果有两篇主题相同的文章,一篇写的很好而另一篇写的很差,则基于内容的推荐方式将无法分辨它们。2.3.2合作过滤的推荐方式(CollaborativeFiltering)合作过滤推荐系统是基于其他用户的选择将一个文档推荐给一个用户。它并不考虑文档的内容,即,它依赖于人对那个文档的判断。Tapestry推荐系统是首批基于计算机合作过滤的系统。它的

22、目的是支持小社区用户。用户可以通过这个系统过滤所有输入的信息,包括电子邮件和互联网中的新闻文章。他们将评价和评级注释文档,这样其他用户就可以查询得到相应的推荐。如果一个系统只有在用户提供很长的查询条件时,才做出相应的回应,这么做是很不理想的。与此同时,大型社区不能依赖小范围用户的查询信息。因此,一些系统,通过使用统计技术,整合统计用户的偏好信息,来提供个性化的推荐。基于用户的偏好和兴趣,系统将用户归类成许多种社区。然后,这些系统为处于相同社区中的用户提供他们所感兴趣的产品和信息。例如,系统分析小明的喜好和行为模式后,将他归类到青少年社区,然后就会将青少年热衷的产品推荐给他(比如游戏机,滑板车等

23、)。通过将个人已经记载的偏好信息与社区的偏好信息进行关联,并共享这个用户的偏好评级给各个社区,系统就可以推断出用户偏好的倾向性信息。合作过滤是一种典型的依赖于用户偏好评级的方法。事实上,它已经应用在许多商业领域。GroupLens系统应用协同过滤的解决方案推荐新闻和电影。Ringo7和VideoRecommender5系统是电子邮件和网络系统,可推荐相关的音乐和电影。协同过滤方法用于信息过滤有三个主要优势,如下所示:(1)它能够通过自动处理为那些内容不容易分析的推荐提供支持。(2)它能在特征和经验的基础上,得出建议项目。(3)它能提供意料之外的建议。然而,研究人员和商业应用已经证明了合作过滤中

24、存在着一些或多或少的问题,如下所示:(1)早期评估者问题如果没有人提供评估信息,那么一个项目就不会存在与其相关的推荐信息。那么第一个使用某信息或产品的用户将不会得到任何的推荐信息。现在合作过滤系统常见的问题是,用户不希望自己是第一个对项目进行评估的用户,但是却希望得到许多的推荐和建议。因此,许多用户选择延迟他们的评估,便等待其他用户为他们提供推荐信息。这可能有必要制定支付机制来处理早期评估问题。(2)稀疏问题对于大型社区,当参与项目评级的人数相对较低的时候,稀疏问题就会变得明显。当和数据库中的项目的数量相比,用户之间似乎没有显著的相似性,因此,稀疏评价可能无法代表大多数意愿的。(3)新近的项目

25、的推荐问题用户对新近的项目往往是特别感兴趣的。然而,新近的项目是不可能被推荐的,因为没有人对它进行评价或购买,这导致了合作过滤无法实现。推荐技术的分类基于应用,可将推荐技术进行分类,总结如下:(1)非个性化的推荐技术(Non-PersonalizedRecommendation)非个人化的推荐方式是依据最近热门的商品或是信息来进行推荐,并不考虑被推荐者的兴趣,因此不同的被推荐者会获得相同的推荐信息。也就是说,它不能提供个性化的推荐。(2)基于属性的推荐技术(Attribute-basedRecommendation)这种类型的推荐技术是以推荐事物的辞义属性(SyntacticPropertie

26、s)为基础进行推荐,被推荐者通常需要将需求告诉推荐者,推荐者才根据所需资讯进行属性比对,继而推荐适当的信息。例如,如果客户输入了一个搜索,来查找一部“娱乐”性质的电影,那么系统就会推荐给客户三部具有“娱乐”属性的电影清单,供其选择。因此,基于属性的推荐又称为Content-basedApproach。物品关联式推荐(Item-to-ItemCorrelation)这种类型的推荐是以被推荐者感兴趣事物之间的关联性进行推荐。例如:消费者已放置一些商品(咖啡、冰糖)于购物篮,推荐系统则根据购物篮内现有商品,找寻具关联性高的商品(奶精、饼干)进行推荐,从而增加客户的订单数量。人物关联式推荐(Peopl

27、e-to-PeopleCorrelation)人物关联式推荐是依消费者与消费群之间的相关性(correlation)来进行产品推荐,人物关联式推荐亦称CollaborativeFilteringApproach。数据挖掘(DataMining)概述随着数据库技术的不断发展及数据库管理系统的广泛应用,数据库中存储的数据量急剧增大,在大量的数据背后隐藏着许多重要的信息,而这种从海量数据库中挖掘信息的技术,就称之为数据挖掘。数据挖掘的发展历史数据挖掘的发展历史是建立在相关学科发展的基础上的。随着数据库技术的发展及数应用,人们积累的数据越来越多。激增的数据背后隐藏着许多重要的信息,简单的查询和统计已经

28、无法满足商业的需求,需要出现一种挖掘数据背后隐藏的知识的手段。同时,计算机技术的另一领域人工智能自1956年诞生之后取得了重大进展。经历了博弈时期、自然语言理解、知识工程等阶段,目前的热点是机器学习。用数据库管理系统来存储数据,用机器学习的方法来分析数据,挖掘大量数据背后的知识,这两者的结合促成了数据库中的知识发现(KDD:KnowledgeDiscoveryinDatabases)的产生。数据库中的知识发现是一门交叉性学科,涉及到机器学习、模式识别、统计学、智能数据库、知识获取、数据可视化、高性能计算、专家系统等多个领域。从数据库中发现出来的知识可以用在信息管理、过程控制、科学研究、决策支持

29、等许多方面。1989年8月在美国底特律召开的第11届国际人工智能联合会议的专题讨论会上首次出现知识发现(KDD)这个术语。此后,由美国人工智能协会主办的KDD国际研讨会已经召开了8次,规模由原来的专题讨论会发展到国际学术大会,研究重点也逐渐从发现方法转向系统应用,注重多种发现策略和技术的集成,以及多种学科之间的相互渗透。数据挖掘(DM)是知识发现(KDD)最核心的部分。1998年第四届知识发现与数据挖掘国际学术会议上不仅进行了学术讨论,并且有30多家软件公司展示了他们的数据挖掘软件产品,不少软件已在北美、欧洲等国得到应用。经历十多年的发展,数据挖掘已经成为一个自成体系的应用学科。数据挖掘的方法

30、数据挖掘的方法意味着从数据库或其他数额特别巨大的信息储存中提取感兴趣的知识。从技术角度来看,它结合了收集和登记分类信息,然后,从大量数据中生成类规则的知识。数据挖掘领域汇集了机器学习,模式识别,统计,数据库,模型库,可视化等技术。通常情况下,数据挖掘的步骤如下所示:数据的清理:这一步是消除一些干扰数据和不一致的数据,例如遗失的数值。数据的整合:这一步是合并多个数据信息资源,被称作为整合。数据的选择:这一步是从数据库中检索用于分析的相关数据信息。数据的转换:这一步是通过执行总结或聚合操作,将数据转换成适当的用于挖掘的格式。数据挖掘:这是一个重要的过程,它应用智能的方法,以提取数据模式。模式的评价

31、:这一步用于确定找出真正有趣的模式,这些模式代表了一些基于首选措施的知识。知识的表示:这一步是利用可视化和知识表示技术将目前的挖掘结果呈现给用户。从数据库特点的角度出发,数据挖掘过程中主要有8个任务。分类(Classification)分类是最常见的数据挖掘任务。这个任务由两部分组成:第一部分是研究新近对象的特点;第二部分是,将它分配给一组预定义的类。与此同时,分类有两个主要的特点:特点一是,要有一个定义明确的类;特点二是,要有一个包括分类例子的训练集。另外,还要构建某种模型,用于将未分类的数据进行分类。首先从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术,建立分类模型,对于

32、没有分类的数据进行分类。例子:a.信用卡申请者,分类为低、中、高风险b.分配客户到预先定义的客户分片注意:类的个数是确定的,预先定义好的估值(Estimation)估值是一种用来处理具有连续性预估结果的任务。采用估值的目的是,基于一些输入的数据,为一些未知的、连续的变量,提供一个值。比如收入、身高、信用卡节余等等。估值与分类类似,不同之处在于,分类描述的是离散型变量的输出,而估值处理连续值的输出;分类的类别是确定数目的,估值的量是不确定的。例:根据购买模式,估计一个家庭的孩子个数根据购买模式,估计一个家庭的收入估计realestate的价值一般来说,估值可以作为分类的前一步工作。给定一些输入数

33、据,通过估值,得到未知的连续变量的值,然后,根据预先设定的阈值,进行分类。例如:银行对家庭贷款业务,运用估值,给各个客户记分(Score01)。然后,根据阈值,将贷款级别分类。预测(Prediction)通常,预测是通过分类或估值起作用的,也就是说,通过分类或估值得出模型,该模型用于对未知变量的预测。预测其目的是对未来未知变量的预测,这种预测是需要时间来验证的,即必须经过一定时间后,才知道预测准确性是多少。相关性分组或关联分析(Affinitygroupingorassociationrules)关联的任务是用来确定哪些事情将一起发生或哪些项目应该一起处理。举一个典型的例子,当在逛超市的时候,

34、客户在购买A的同时,经常会购买B,即A=B(关联规则)。除此之外,它还有更具商业价值的用途,它可以应用于鉴别交叉销售机会和设计有吸引力的产品和服务的包装或组合。序列模式(Sequentialpattern)序列化模式检测事务之间的模式,在事务数据库中,一段时间内一组项目是跟在另一组项目的后面而存在的。例如逛超市的时候,客户在购买A后,隔一段时间,会购买B。这有点类似于关联,但是,主要的不同点是序列模式展现出了不同项目之间在特定时间段内的重要关系。聚类(Clustering)聚类的任务是可以将一个多样化的群体分割成一些更具有相似性的群体。聚类不需要预定义的类和例子。聚集是对记录分组,把相似的记录

35、在一个聚集里。这些记录能够组织在一起,是因为他们本身就具有某种相似性。聚集和分类的区别是聚集不依赖于预先定义好的类,不需要训练集。例子:一些特定症状的聚集可能预示了一个特定的疾病租VCD类型不相似的客户聚集,可能暗示成员属于不同的亚文化群聚类也往往是一些其他形式的数据挖掘任务的前奏。例如,聚类可能是市场营销的第一步,因为我们可以根据相似的购买习惯将客户划分为不同的聚类人群,并根据划分的结果,制定适当的营销策略。优化(Optimization)优化指的是优化网站展现的设计和在线销售的设计。一般来说,这需要花很多的时间来考虑最优的解决方案。遗传算法(GA)常常是用于处理优化技术的,如用于寻找解决方

36、案的遗传选择、交叉和变异的优化技术。例如,遗传算法可以为网站的页面创建数以千种的设置和组合。描述和可视化(DescriptionandVisualization)是对数据挖掘结果的表示方式。数据挖掘的目的只是为了描述在复杂的数据库中所陈列的数据。一个好的行为描述,应该提出一个好的解释。可视化技术可以将隐藏在表格或文本中的聚类和联系直观且迅速地展示在人们面前。数据挖掘可以用来描述一个广泛的活动。例如,一家销售公司可以利用这项技术,来挖掘用户反馈的历史数据,建立许多预测模型,并做出相应的对策,比如用一封邮件,或者打一个电话,来对客户进行游说。另外一个例子是,一家制造工厂可以采用数据挖掘技术,分析传

37、感器的数据,将导致计划外生产停顿的一些条件剔除出来。由于电子商务的普及和个性化的社会趋势,数据挖掘技术,也用来分析用户购买的产品项目的行为。这是为了找出用户的偏好,并为用户提供相关产品信息,以增加销售额和销售价格。例如,互联网书店可以根据用户过去的点击和购买记录,利用数据挖掘技术向其推荐产品。数据挖掘的研究领域I、人工智能人工智能(ArtificialIntelligence)的诞生可追溯到二十世纪五十年代,它是计算机科学、控制论、信息论、神经生理学、心理学、语言学等多种学科互相渗透而发展起来的一门综合性新学科。人工智能是研究如何制造出人造的智能机器和智能系统,以模拟人类智能活动的能力。人工智

38、能研究的核心课题包括:知识的模型化和表达方法、启发式搜索理论、各种推理方法(演绎推理、规则、常规性推理、归纳推理等)、人工智能系统结构和语言。目前,人工智能已应用到自然语言理解、数据库的智能搜索、专家咨询系统、定理证明、博弈(GamePlaying)、机器人学、自动程序设计、组合调度问题、感知问题等广泛领域。数据挖掘和人工智能都是从数据中提取知识,其区别在于,人工智能主要针对特定模式的数据进行学习,数据挖掘则是从实际的大量数据源中抽取知识,如数据仓库。由于数据挖掘处理的数据量非常巨大,数据的完整性、一致性及正确性都难以保证,因此,数据挖掘算法的效率、有效性和可扩充性都非常重要。II、数据仓库业

39、界公认的数据仓库概念创始人BillInmon在建立数据仓库一书中对数据仓库的定义是:数据仓库就是面向主题的(subjectoriented)、集成的(integrated)、稳定的(nonvolatile)、不同时间的(time-variant)数据集合,用以支持经营管理中的决策制定过程。面向主题的(subjectoriented):数据仓库围绕一些主题,如顾客、供应商、产品和销售组织。数据仓库关注决策者的数据建模与分析,而不是集中于组织机构的日常操作和事务处理。因此,数据仓库排除对于决策无用的数据,提供特定主题的简明视图。集成的(integrated):通常,构造数据仓库是将多个异种数据源,

40、如关系数据库、一般文件和联机事务处理记录集成在一起。使用数据清理和数据集成技术,确保命名约定、编码结构、数据度量等的一致性。稳定的(nonvolatile):数据仓库总是物理地分离存放数据;这些数据源于操作环境下的应用数据。由于这种分离,数据仓库不需要事务处理、恢复和并发控制机制。通常,他只需要两种数据访问:数据的初始化装入和数据访问。不同时间的(time-variant):数据存储从历史的角度提供信息。数据仓库中的关键结构,隐式或显式地包含时间元素。III、联机分析处理(OLAP)60年代,关系数据库之父E.F.Codd提出了关系模型,促进了联机事分析E.F.Codd提出了OLAP概念,认为

41、OLTP已不能满足终端用户对数据库查询分析的需要,SQL对大型数据库进行的简单查询也不能满足终端用户分析的要求。用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不能满足决策者提出的需求。因此,E.F.Codd提出了多维数据库和多维分析的概念,即OLAP。OLAP的目标是满足决策支持或多维环境特定的查询和报表需求,它的技术核心是维这个概念,因此OLAP也可以说是多维数据分析工具的集合。OLAP特性:快速性:用户对OLAP的快速反应能力有很高的要求。系统应能在5秒内对用户的大部分分析要求做出反应。可分析性:OLAP系统应能处理与应用有关的任何逻辑分析和统计分析。多维性:多维性

42、是OLAP的关键属性。系统必须提供对数据的多维视图和分析,包括对层次维和多重层次维的完全支持。信息性:不论数据量有多大,也不管数据存储在何处,OLAP系统应能及时获得信息,并且管理大容量信息。OLAP多维数据分析方法切片和切块(SliceandDice):在多维数据结构中,按二维进行切片,按三维进行切块,可得到所需要的数据。如在城市、产品、时间三维立方体中进行切块和切片,可得到各城市、各产品的销售情况。钻取(Drill):钻取包含向下钻取(Drill-down)和向上钻取(Drill-up)/上卷(Roll-up)操作,钻取的深度与划分的层次相对应。旋转(Rotate)/转轴(Pivot):通

43、过旋转可以得到不同视角的数据。B2C网上商城网站推荐技术的选择电子商务网站要实施个性化推荐首先必须要确定采取什么样的推荐技术,虽然以上介绍的技术都可以用在电子上午的个性化推荐系统中,但对于特定的B2C网上商城网站并非都可以适用。这方面是由于不同推荐技术本身的限制,另一方面也是因为B2C网上商城销售网站也有自己独特的业务特点。2.5.1基于内容推荐基于内容推荐的根本思想是:一个用户会更喜欢那些和他已经购买的产品相似的那些产品,所以该算法的核心是分析每一个产品的相似性,在这个基础上计算应该被推荐的产品。分析产品的相似性首先需要对产品的内容进行描述,描述一般是通过定义一组产品属性,通过产品不同的属性

44、进行相似性计算。计算的主要方法有向量近似度计算和条件相似度计算二种。但对于网上商城网站而言,这种技术并不是十分的使用,主要有以下的原因:表2.1主要推荐方法对比推荐方法优点缺点基于内容推荐推荐结果直观,容易解释;不需要领域知识稀疏问题;新用户问题;复杂属性不好处理;要有足够数据构造分类器协同过滤推荐新异兴趣发现、不需要领域知识;随着时间推移性能提高;能处理复杂的非结构化对象稀疏问题;可扩展性问题;新用户问题;质量取决于历史数据集;系统开始时推荐质量差;基于规则推荐能发现新兴兴趣点;推荐结果直接,容易理解;不需要领域知识规则难抽取、耗时;产品名同一性问题;基于效用推荐无冷开始和稀疏问题;对用户偏

45、好变化敏感;能考虑非产品特性;用户必须输入效用函数;推荐是静态的,灵活性差;属性重叠问题;基于知识推荐能把用户需求映射到产品上;能考虑非产品属性知识难获得;推荐是静态的基于用户统计信息的推荐这种推荐方法需要准确的用户个人信息,因为他是建立在人口统计学的基础之上的。对于现在大多数网上商城网站而言,用户的数据是极其不完善的。因为一方面是用户不愿意提供,另一方面网站为了方便用户注册和购买,一般只要求用户提供个人邮箱和送货地址即可。所以这样的推荐技术并不适用于普通的电子商务模式,但在一些以会员制为主要销售模式的网站却是很有用处,因为这样的网站有详细完备的用户信息资料,而且一般情况下还是比较准确的,比如

46、一些婚介、交友类的网站就可以应用这样的技术为用户推荐合适的人选。基于知识和效用的推荐其实基于知识和效用的推荐同基于内容的推荐有一个共同的特点就是需要对项目即推荐产品的特性进行描述,然后才能推荐。而基于效用的推荐想确定用户的效用函数也比较困难。所以这两种方法对网上商城网站也不是十分适合。协同过滤和关联规则协同过滤和关联规则推荐没有上述技术的那些局限。它们可以依靠网站原有的详细销售记录为用户提供准确度较高的推荐,而且这些推荐不但可以满足用户的个性化偏好,还可以在一定程度上预测用户的购买行为。而且这两种技术的最大特点就是可以充分利用网站的现有资源,不需要特殊数据源的支持。从目前的应用实践来看,这两种

47、技术也是最成功的。本文在接下来的B2C网上商城网站个性化推荐系统将采用关联规则的技术。第3章基于关联规则的推荐系统设计本章介绍了关联规则挖掘的研究情况,提出了关联规则的分类方法,对一些典型算法进行了分析和评1价,指出传统关联规则衡量标准的不足,归纳出关联规则的价值衡量方法,展望了关联规则挖掘的未来研究方向。引言数据挖掘(DataMining),又称数据库中的知识发现(KnowledgeDiscoveryinDatabase),在最近几年里已被数据库界所广泛研究,其中关联规(AssociationRules)的挖掘是一个重要的问题。关联规则是发现交易数据库中不同商品(项)之间的联系,这些规则找出

48、顾客购买行为模式,如购买了某一商品对购买其他商品的影响。发现这样的规则可以应用于商品货架设计、货存安排以及根据购买模式对用户进行分类。Agrawal等于1993年1首先提出了挖掘顾客交易数据库中项集间的关联规则问题,以后诸多的研究人员对关联规则的挖掘问题进行了大量的研究。他们的工作包括对原有的算法进行优化,如引入随机采样、并行的思想等,以提高算法挖掘规则的效率;对关联规则的应用进行推广。最近也有独立于Agrawal的频集方法的工作18,19,以避免频集方法的一些缺陷,探索挖掘关联规则的新方法。同时随着OLAP技术的成熟和应用,将OLAP和关联规则结合20,21也成了一个重要的方向。也有一些工作

49、6注重于对挖掘到的模式的价值进行评估,他们提出的模型建议了一些值得考虑的研究方向。本章第二部分是对关联规则基本概念的介绍,提出了关联规则的分类方法;第三部分是对挖掘算法的介绍,从经典的apriori开始,然后描述了对该算法的优化拓展,接着讲述脱离apriori算法的方法,最后是多层、多维的关联规则挖掘;第四部分归纳出关联规则价值衡量方法,主要从两个方面进行考虑:系统客观层面和用户主观层面;最后展望了关联规则挖掘的未来研究方向。关联规则的基本概念3.2.1基本概念和问题描述挖掘关联规则是数据挖掘中相当重要的一个议题,一般交易资料库中都储存着数量庞大的交易资料,而每一笔交易记录也都记载着相关的项目

50、(item),包含使用者相关资料及交易的项目或时间等;而数据挖掘技术便可从这些大量的资料中,挖掘出各个项目之间的关联规则。例如:80%的学生选修“C语言”同时也会选修“数据结构”。资料库中纪录通常以vTID,item的型式储存(TID为每一笔纪录的唯一的识别码,Item为纪录中的项目)。设1二”,1代表所有元素或项目的集合,T代表记录且T匸1,D二仆9,T代表所有记录的集合,即一个记录数据库。设X代表某些项目集合,称为项集,包含k个数据项的项集称为k-项集。当且仅当X匸T时,称为记录T包含X。记录数据库D中项集X的支持度为:support(X)=P(X)=口/冈,其中TxTeDXT。在用户给定

51、的支持度阈值minisupport下,若support(X)三minisupport,则称X为频繁项集,否则X为非频繁项集。但为下文便于叙述,数据项集X的支持度是用D中包含X的事务数量来表示。一个关联规则是“X=Y”形式的蕴含式,其中X=I,Y=1职业二“秘书”,是布尔型关联规则;性别二“女”=avg(收入)=2300,涉及的收入是数值类型,所以是一个数值型关联规则。基于规则中数据的抽象层次,可以分为单层关联规则和多层关联规则。在单层的关联规则中,所有的变量都没有考虑到现实的数据是具有多个不同的层次的;而在多层的关联规则中,对数据的多层性已经进行了充分的考虑。例如:IBM台式机=Sony打印机

52、,是一个细节数据上的单层关联规则;台式机=Sony打印机,是一个较高层次和细节层次之间的多层关联规则。基于规则中涉及到的数据的维数,关联规则可以分为单维的和多维的。在单维的关联规则中,我们只涉及到数据的一个维,如用户购买的物品;而在多维的关联规则中,要处理的数据将会涉及多个维。换成另一句话,单维关联规则是处理单个属性中的一些关系;多维关联规则是处理各个属性之间的某些关系。例如:啤酒=尿布,这条规则只涉及到用户的购买的物品;性别=“女”=职业=“秘书”,这条规则就涉及到两个字段的信息,是两个维上的一条关联规则。给出了关联规则的分类之后,在下面的分析过程中,我们就可以考虑某个具体的方法适用于哪一类

53、规则的挖掘,某类规则又可以用哪些不同的方法进行处理。关联规则挖掘的算法3.3.1核心算法一种适应关系型数据库的多维关联规则挖掘的算法Agrawal等在1993年设计了一个基本算法Apriori,提出了挖掘关联规则的一个重要方法一这是一个基于两阶段频集思想的方法,关联规则挖掘算法的设计可以分解为两个子问题:找到所有支持度大于最小支持度的项集(Itemset),这些项集称为频集(FrequentItemset)。使用第1步找到的频集产生期望的规则。其算法的实现过程可以描述如下:首先,Apriori算法求出项数为一项的频繁集L1-set,然后,再由L1-set产生项数为二的候选集C2-set,扫描事

54、务数据库D计算支持度求出L2-set,依次类推产生Ck-set扫描D求出Lk-set。一旦从数据库中产生了频繁集,则可以从中直接产生强关联规则(所谓的强关联规则是指既满足最小支持度又满足最小可信度的关联规则)。但是,当项集的个数|l|和数据库的尺寸很大时,如果每一次寻找频繁项集都需要遍历数据库,查找数据库的开销会很大,算法的性能也就不容乐观。一AprioriTid算法AprioriTid算法对Apriori算法做了调整,它的特点是在第一次遍历数据库D之后,就不再使用数据库来计算支持度,而是用集合Ck来完成。集合Ck每个成员的形式为(TID,Xk),其中每个Xk都是一个潜在的大型k项集,在标识符

55、为TID的事务中。对于k=1,C1对应与数据库D,虽然在概念上每个项目i由项目集l代替。对于k1,有算法产生Ck(步骤(10)。与事务t相应的Ck的成员是(t.TID,cGCk|t中包含的c)。若某个事务不包含任何候选k项目集,那么Ck对于这个事务就没有条目(Entry)。这样,Ck中条目数量比数据库中的事务数量少,尤其对于大值的k而言。另外,对于大值的k,每个条目比相应的事务要小,这是因为几乎没有什么候选能包含在此事务中。但是,对于小值的k,每个条目比相应的事务要大,因为Ck中的一个条目包括了此事务中的所有候选k项目集。算法步骤如下:L1二largel-itemsetsC1=数据库D;For

56、(k=2;Lk-1H?;k+)dobeginCk=apriori-gen(Lk-1);/新的候选集Ck=?;for所有条目tGCk-1dobegin/确定事务toTID中包含的候选Ct=ceCk|(c-ck)st.项目集的集合A(c-ck-1)et.项目集的集合;for所有候选cSCtdoc.count+;if(CtH?)thenCk+=;endLk=cSCk|c.count三min.suppend;二AprioriTidList算法AprioriTid算法比Apriori算法有了很大的改善,且适用于大型数据库,但是它必须通过多次搜索交易数据集得到所有的候选项集的支持度。虽然数据都是在本地内存

57、中存储,但如果数据集的数量很大的话,运算量还是很大,而且对于每一个候选项都要通过搜索所有的事务条目来计算支持度,搜索的结果不能重复利用,造成资源的浪费。AprioTidList算法通过链表结构,存储包含每个候选项的所有条目的ID,计算K层候选项的支持度时,只要比较k-1层候选项链表中有几个相同的条目ID就可以得到结果,算法描述如下:Lz1=1-itemsetsalongwiththeirtidlistL1=largel-itemsetsFor(k=2;Lk-1H?;k+)dobegin(4)Lk=?;Lk=?(5)Forallitemsetsl1eLk-1dobegin(6)forallite

58、msetsl2eLk-1dobegin(7)ifl11=l21Al12=l22AAl1k-1Buys(X,“taptop)对于这类n维关联规则的查找,现有的比较流行的做法是建立数据立方体存储多维数据,每维共有ldi|+l个值,其中Idi丨是指第i维中互不相同的属性值,每维中再加上一个Any值,共|di|+l个不同值。假设存在一个n维空间,由每一维中各取一个具体的属性值,则可对应一个n维空间中的点,这个点我们称之为方格,每个方格内存贮了与其对应的各属性的值同时出现的次数,用count表示。然后采用Apriori算法分别求出各个维的频繁项集,支持度直接使用立方体中的统计信息来计算,小于最小支持度的

59、项集被剪枝,然后依次求的维间的频繁项集,得到最终结果。这种基于立方体的算法虽然可以在求频繁项集的支持度的时候使用立方体的统计信息而不用去检索数据库,但是构建立方体的代价却是昂贵的,一个n维属性的数据集,如果每维属性中的不同值是k的话,那么构建一个数据立方体需要检索数据库的次数是(k+1)的口次方,所以这种算法只能适用于多维数据库的挖掘,对于关系型数据库,计算成本太高。AprioriTidList算法的链式结构可以很好的解决这个问题,同样是n维属性的数据集,每个属性中不同值的个数为k,只需要n*k次数据库访问就可以了。下面,我们把AprioriTidList算法进行改进,使它适用于关系数据库的多

60、维关联规则的挖掘。可以首先把数值维度进行量化,然后针对每一个维度使用AprioriTidList算法找出所有得1-itemsets频繁项集L1,然后陆续找出k-itemsets频繁项集Lk。算法通过对Lk-1维间连接产生k-itemsets的候选集Ck。对于每一个k-itemsets候选I$Ck,检查它的支持度是否大于最小支持度,将符合要求的放入Lk中。算法如下:k=1;C1=?;C1=?;/对于每一维,生成1-itemsetsForeachdimensedobeginC1.di=1-itemsetsalongwiththeirtidlistC1.di=1-itemsetsif(Cl.coun

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论