当前位置:论文网 > 论文宝库 > 经济管理论文 > 电子商务论文 > 正文

数据挖掘在电子商务图书推荐

来源:UC论文网2016-06-09 09:08

摘要:

在这样庞大的图书信息中选择自己想要的信息是比较困难的,这样反而是增加了用户购 买图书的难度。为了有效的解决 这一问题,出现了图书推荐系统。 本文将从数据挖掘方面对电子

  1.数据挖掘中关联规则的概念
  
  数据挖掘就是大量数据中提取或者挖掘知识,这种数据应该是海量的。还有另一种说法是把数据挖掘看成是数据库中知识的发现过程的一个基本步骤。
  
  1.1关联规则的概念
  
  关联规则可以说是在数据挖掘中相对来说比较常用的一种方法了,Agmwal等于1993年首先提出了挖掘顾客交易数据库中项集间的关联规则问题。在这以后有诸多的研宄员对数据挖掘中的关联规则进行了大量的研究。他们的工作有很多,其中就包括对原有的算法进行了优化处理。比如,引进了随机采样、并行思想等。
  
  关联规则挖掘的过程是这样的一个流程,首先利用算法根据最小支持度找到频繁项集,再依托找到的频繁项集结合置信度生成形如X—Y的强关联规则。在关联关联规则挖掘过程中用到两个最重要的参数,支持度和置信度。
  
  设I={il’i是项集,其中ik(k=l,2,…,m)可以是购物篮中的物品,也可以是保险公司的顾客。设任务相关的数据D是事务集,其中每个事务T是项集,使得TSI。设A是一个项集,且A£T。关联规则是如下形式的逻辑蕴涵:A=>B,ASI,BGI,且AnB=A关联规则具有如下两个重要的属性:
 
  支持度:P(AUB),即A和B这两个项集在事务集D中同时出现的概率。
  
  置信度:P(BIA),即在出现项集A的事务集D中,项集B也同时出现的概率。
  
  同时满足最小支持度阈值和最小置信度阈值的规则称为强规则。给定一个事务集D,挖掘关联规则问题就是产生支持度和可信度分别大于用户给定的最小支持度和最小可信度的关联规则,也就是产生强规则的问题。
  
  1.2  Apriori算法
  
  Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。很多的的挖掘算法是在Apriori算法的基础上进行改进的,比如基于散列(Hash)的方法,基于数据分割(Partition)的方法以及不产生候选项集的FP-GROWTH方法等。因此要了解关联规则算法不得不先要了解Apriori算法。
  
  Apriori算法使用的是频繁项集性质的先验知识,是使用了一种称为逐层搜索的迭代方法,其中k项集用于探索(k+1)项集。首先,通过对数据库的扫描,累计每一项的计数,并收集满足最小支持度的项,这样就能找出频繁项的集合。这样得到的集合可以标记L,。然后,使用3^找出频繁项集L2,使用L2找出L3。这样循环下去,直到找到频繁项集k项集为止。这样就对数据库进行了一次完整的扫描。
  
  2.关联规则在电子商务图书推荐系统中的具体应用
 
  2.1数据收集、预处理
  
  用户可以通过登录到公司的网站进行个人信息的注册,从而形成用户个人信息注册表。用户可以进行图书信息浏览,或查看其他用户对图书产品的评价和感受。当用户对某件图书产品进行购买行为,形成订单之后。数据就会被采集,并进行清洗、集成和转换。当此用户再次进行图书购买行为时,购买记录同样会被采集,并根据图书类别进行分析,逐渐形成关联数据。并存储到图书交易数据库中。
  
  2.2生成关联规则
  
  假设某个项目集S={sl,s2...,sn}是频繁项目集,假设D是一个数据集,其中T是一个非空的项集。再假设A是一个项集并且有T包含A。有这样一个式子形如A=>B。其中A£I,B£i, B^0,并且AHB=0。
  
  这样的规则人=>8在事物集D中是成立的,具有支持度s。概率是P(AUB),还有就是置信度c,概率是P(BIA)。规则人=>8在事物集中的支持度为support,即
  
  support(AUB)=support(AUB,D)=So(3)规则A=>B的置信度可以容易的从A和AUB的支持度计数推出,即表示为P(Y|X)=c%。这样给出式子:
  
  confidence(A^B)=P(B|A)=support(AUB^D)/siq)port(A*D)(4)
  
  其中,support(AUB,D)是包括项集AUB的支持度,support(A,D)是项集X的支持度。
  
  对于已经给定的数据集D,求出同时满足最小支持度minsup和最小置信度minconf的关联规则。关联规则须满足这样两个条件:support(A=»B)>minsup;confidence(A=>B)>minconf。
  
  2.3关联规则的改进方法
  
  大部分关联规则挖掘算法都使用支持度-置信度框架。但是由于算法本身的原因,可能即使满足了最小支持度和最小置信度对用户不感兴趣的信息的探查,仍然会产生一些让用户感到不用的信息。
  
  在获得用户购买的行为模式后,并不一定所有的强关联规则都能成为用户所感兴趣的,这样就使得这个规则的可用性并不理想。此时,就需要用到其他的方法来判断用户的兴趣所在。
  
  假设我们分析涉及购买“Java入门经典”和购买“Java实战”两本书的事务兴趣。假设事务A表示包含“Java入门经典”,事务B表示包含“Java实战”。在接下来要进行分析的10000个事务中,得到数据显示为6000个顾客事务包含“Java入门经典”,7500个事务包含“Java实战”,而4000个事务同时包含“Java入门经典”和“Java实战”。现在假设有一个关联规则要在这样的数据上进行分析,可以使用最小支持度为30%,最小置信度为60%。将发现下面规则:
  
  buys(X,’’A”)=>buys(X,”B”)[support=40%,confidence=66%]
  
  这样可以很容易的看出来这个关系式是属于强关联的,因为它的支持度为4000/10000=40%。置信度为4000/6000=66%,同时满足了最小支持度和最小置信度阈值。实际上,这是一种误导,因为购买“Java实战”的概率是7500/10000=75%,比66%还高,这就容易出现不明智的商业营销策略。
  
  正如上面出现的问题,支持度和置信度度量不足以过滤掉无趣的关联规则。为了解决这个问题,可以使用其他关系式来进行同时筛查强关联规则,比如,使用相关性度量来进行扩充,可以使用这样的相关规则(correlationrule):
  
  A=>Bfsupport,confidence,correlation]
  
  通过这个关系式可以看出,相关规则不仅用支持度和置信度,而且还用项集A和B之间的相关度量。
  
  2.4 使用提升度相关分析
  
  提升度(lift)是一种简单的相关性度量,相关度的定义是:项集A的出现独立于项集B的出现,如果P(AUB)=P(A)P(B);否则,作为事件,项集A和B是依赖的和相关的.这样就得到计算式: .
  
  lift(A,B)=P(AUB)/P(A)P(B)(4)
  
  如果这个值小于1,则A的出现与B的出现是负相关的,意味着一个出现可能导致另一个不出现。如果值大于1,则A和B是正相关的,如果值等于1,则A和B是独立的。这个式子也称关联规则A=>B的提升度。
  
  这样我们再去看前面的例子,容易得到购买“Java入门经典”的概率P(“A”)=0.6,购买“Java实战”的概率P(“B”)=0.75,而购买两者的概率是P({“A”,”B”})=0.4。则提升度为:
  
  P({“A”,”B”})/(P(“A”)xp(“B”))=0.4/(0.6x0.75)=0.89
  
  该值小于1,从而得出购买这两本书的事务是负相关的,因此这两种图书的购买行为不会进行推荐,但这种负相关是不能被支持度-置信度框架识别的。
  
  2.5 电子商务图书推荐过程
  
  首先根据每个顾客的图书产品购买记录或则是浏览记录的数据进行预处理,形成交易数据库。在己经得到的数据库的基础上使用选用好的关联规则挖掘算法对数据库进行关联规则分析和挖掘,形成关联规则数据集合R。之后在通过分析得到的数据集合R为每个顾客设置一个候选推荐集,并将初始值设置为空。对每个用户搜索关联规则数据集合R,找出该用户支持的所有关联规则集合。将符合与当前用户购买图书产品相关联的所有图书产品加入到当前用户的候选推荐集中。将候选推荐集中用户己经购买的图书产品删除。然后可以根据置信度对候选推荐集中的候选项进行排序,从候选推荐集中选择置信度高的图书项作为推荐结果。
  
  3.结束语
  
  现在越来越多的电子商务网站都在出售图书类产品,这可以使用户几乎足不出户就能购买到需要的图书,但是不像在以前到书店购买图书,没有导购员向顾客介绍图书产品信息,顾客也就不会知道那种或那类图书销售最好,最受欢迎。电子商务图书推荐系统的出现,有效的解决了顾客对图书类产品进行“盲选”的尴尬状态。这也成为各商家竞争的一大“主力”。关联规则作为数据挖掘的主要方法之一,也逐渐的引起了人们越来越多的关注。在不久的未来,我相信像这一类推荐系统,一定可以使得将来的电子商务网站更加的人性化,个性化,更符合不同顾客的需求。
  
  文/赵伟毅  作者单位  北方工业大学计算机学院北京市100144

核心期刊推荐