关联规则挖掘 之 空间关联
周涛  |  2011-06-03  |  科学网  |  372次阅读

关联规则挖掘的根本目的是寻找商品销售记录中的相关性,从而更好地指导销售策略的制定。一个典型的规则是:“43%购买了雀巢速溶咖啡的顾客都会购买雀巢咖啡伴侣”。基于这个规则,在实体超市中,应当把这两种产品放到相近的地方,而在网上超市中,如果顾客购买了雀巢速溶咖啡却没有购买咖啡伴侣,则可以在关联商品栏目中添加相应的推荐。现在很多企业已经认识到详细的原始购买记录的重要性,并且建立了规范的数据仓库,这些都为关联规则挖掘技术的应用奠定了良好的基础。

商品之间关联规则可以分为空间关联和时间关联两种,时间关联又可以分为周期关系和顺序关联两种。在一般研究中提到的关联规则,其实仅仅是空间关联[1],也就是在同一个时间(同一次购买)里,对消费者经常一起购买的商品进行分析,这也是所谓“购物篮分析”的主要支撑技术。

在介绍空间关联之前,我们再回顾一下关联规则挖掘中最经典的例子——啤酒与尿布的关联。沃尔玛通过对原始交易数据的分析,发现跟尿布一起购买最多的商品竟是啤酒!调查显示,美国的太太们常叮嘱她们的丈夫下班后为小孩买尿布,而丈夫们在买尿布后又随手带回了他们喜欢的啤酒。对于隐藏在啤酒和尿布这类表面上风马牛不相及的商品背后的关联,如果不通过数据挖掘的技术,是没有办法靠拍脑袋的办法想出来的。

 

附表1:消费者购买记录示例

消费者/商品

生泥鳅

绿豆

分歧终端机

任意门

满神牌洗发水

A

×

×

×

B

×

×

C

×

×

×

D

×

E

×

×

 

最常见的关联规则挖掘技术,是所谓的“支持-置信”分析。我们还是以消费者在超市购买商品为例,如果把每一个消费者的一次购买看作一个事件,考虑从商品X到商品Y的关联规则,支持度是指在所有事件中同时购买商品X和商品Y的比例,置信度则是在所有购买了商品X的事件中也购买商品Y的比例[1]。如果支持度和置信度都超过了相应的阈值,则从XY的规则被认为是有效的。附表1给出了一个示例,如果把支持度和置信度的阈值分别设为50%60%,则从生泥鳅到绿豆的规则是有效的(支持度为60%,置信度为75%),而从分歧终端机到任意门的规则是无效的(支持度40%,置信度100%)。对于一个销售量非常大的电子商务企业或者实体超市,支持度往往是千分之一甚至万分之一这样的数量级,在难以选择合适的置信度阈值的时候,可以按照置信度从高到低的优先顺序进行商品推荐。

“支持-置信”分析存在很多缺陷,譬如说需要人为设定支持度阈值——如果阈值太低,则会出现很多可信度很低的关联规则,仅仅可能来自于个别消费者偶然的行为,如果阈值太高,很多冷门商品之间的关联规则无法被挖掘出来。一种可能的替代方法是直接分析商品之间销售记录的相似度,认为与商品X关联最强的商品就是和它相似性最大的商品。这时候需要注意两点,首先,一般的相似度指标[2]都是对称的[2],也就是说XY的相似性与YX的相似性相同,但是此处要选择不对称的定义方式[3]。譬如说商品X卖了10000件,商品Y卖了5件,其中XY共同卖了5次。那么给一个购买了X的消费者推荐Y不一定合适,因为只有千分之零点五的购买概率,而给一个购买了Y的消费者推荐X就比较靠谱,因为看起来似乎买了Y的消费者都会买X。这就是为什么要选择不对称的相似度指标的原因。其次,因为放弃了支持度阈值,会造成一个销量很低的产品因为随机波动的原因出现非常高的关联,这个时候往往要通过对销量低的商品相似度进行惩罚,惩罚的力度可以设定为商品销售量(或者包含该商品的事件数目)的方根倒数[4]。举例而言,在为商品X选择关联商品的时候,如果商品Y销售了49次,则商品Y对应的相似度应该减去1/7。商品卖得越好,可信度越高,惩罚也越少。

刚才说了支持度的缺陷,另外一个缺陷体现在置信度上。考虑一个销售量很大的商品X(设销售事件总数为100万,包含该商品的销售事件数为5万)和一个销售量很小的商品Y(包含该商品的销售事件数为200),假设商品XY之间的销售完全是独立的,那么在Y看来,商品X的置信度为5/100=0.05;而在X看来,和Y关联置信度是200/10=0.002。也就是说,在一对产品的销售记录超过了支持度阈值的条件下,系统总是倾向于推荐销售量大的产品。我们曾将在某家网上超市的关联推荐栏中发现,当该超市超低价促销苏菲卫生巾的时候,不管购买军刀、箱包、零食,都会推荐苏菲卫生巾;而当该超市力推金龙鱼油的时候,则经常在推荐栏中连续出现多款金龙鱼油,尽管你只是买了50支一次性纸杯。这些推荐会造成广告信息冗余(首页上已经用更大幅的广告低价促销了),并且用户体验较差(用户理解不了这些关联,会认为这不是来源于一种数据挖掘技术,而是一种打着数据挖掘幌子的变相广告投放)。从信息熵[5]或者资源分配[6]的角度出发,在设计相似度指标的时候,适度向少量较少的长尾商品倾斜,有望大幅度提高关联规则挖掘的价值。

 

[1] J. Hipp, U. Güntzer, G. Nakhaeizadeh, Algorithms for association rule mining - A general survey and comparison, SIGKDD Explorations 2(2) (2000) 1-58.

[2] L. Lü, T. Zhou, Link prediction in complex networks: a survey, Physica A 390 (2011) 1150-1170.

[3] T. Zhou, J. Ren, M. Medo, Y. –C. Zhang, Bipartite network projection and personal recommendation, Physical Review E 76 (2007) 046115.

[4] M. Medo, Y.-C. Zhang, T. Zhou, Adaptive model for recommendation of news, Europhysics Letters 88 (2009) 38005.

[5] L. A. Adamic, E. Adar, Friends and neighbors on the Web, Social Networks 25(3) (2003) 211-230.

[6] T. Zhou, L. Lü, Y.-C. Zhang, Predicting missing links via local information, European Physical Journal B 71 (2009) 623-630.


[1] 注意,从商品X到商品Y的关联规则和从商品YX的关联规则一般而言是不同的。

[2] Jaccard相似度为例,两个商品XY的相似度定义为共同购买XY的事件数目比上所有至少购买了XY的事件数目。附表1中绿豆和生泥鳅的Jaccard相似度是0.8,而分歧终端器和任意门的相似度是1




文章原载于作者的科学网文章,所述内容属作者个人观点,不代表本平台立场。
本文经过系统重新排版,阅读原内容可点击 阅读原文