作者/严宁
一、引 言
讨论关联规则之前,我们首先要了解什么是数据挖掘。数据挖掘是从大量数据中寻找其规律的技术,主要有数据准备、规律寻找和规律表示三个步骤。数据准备是从各种数据源中选取和集成用于数据挖掘的数据;规律寻找是用某种方法将数据中的规律找出来;规律表示是用尽可能符合用户习惯的方式(如可视化)将找出的规律表示出来。数据挖掘在自身发展的过程中,吸收了数理统计、数据库和人工智能中的大量技术。
关联规则挖掘是数据挖掘中重要的研究方法之一。它主要用于发现大量数据中项集之间有趣的关联或相关联系。关联规则挖掘的一个典型例子是购物篮分析:研究发现交易数据库中不同商品(项)之间的联系,找出顾客购买行为模式,如购买了某一商品对购买其他商品的影响,哪些商品作为一个组合会被顾客经常购买等。分析结果可以应用于商品货架布局、货存安排以及根据购买模式对用户进行分类。
诸多的研究人员对关联规则的挖掘问题,进行了大量的研究。他们的工作涉及关联规则挖掘理论的探索、原有算法的改进和新算法的设计、并行关联规则挖掘以及数量关联规则挖掘等问题。在提高挖掘规则算法的效率、适应性、可用性以及应用推广等方面,诸多学者进行了不懈的努力。
二、关联规则挖掘的基本概念和步骤
为了进行后面的实例研究,首先我们要了解几个关联规则的基本概念:
1. 项目、项目集合
一个项目,我们可以理解为一个商品。所有项目(商品)形成一个项目集合。一个项目或多个项目的组合,是项目集合的子集。
客户每一次购买的商品组合就是一个项目子集。
2. 事务数据(交易数据)
事务数据库或者称交易数据库,保存了所有客户的一系列交易,每个交易记录中,都包括购买的商品组合信息和其他信息。
3. 支持度
假设有一个商品组合1,那么商品组合1的支持度就是:在所有交易记录中,出现商品组合1的交易记录数占交易记录总数的百分比。支持度反映了商品组合1在所有购买中出现的程度,支持度越高,说明顾客越习惯购买这种商品组合。
我们在分析数据的时候,都会设定一个最小支持度,小于这个最小支持度的商品组合,由于购买可能性比较小,分析的价值不高,我们就不去分析了。
4. 可信度(置信度)
它反映的是两个商品组合之间的关系。假设有两个商品组合:商品组合1和商品组合2。购买了商品组合1的顾客也购买了商品组合2的可信度定义为:同时包含商品组合1和商品组合2的交易记录数,与包含商品组合1的记录数之比。
我们也会设定一个最小的可信度,小于这个可信度的,说明商品组合1与商品组合2关系微弱,可以不去考虑的。
5. 关联规则挖掘分析的基本步骤
关联规则数据挖掘分析主要经过以下几个步骤:
(1) 明确分析目标和分析思路
这是一个非常重要的步骤,同时也是一个容易被忽视的步骤。任何挖掘分析必须要明确分析目标和分析的思路,不能为了挖掘而挖掘。换句话说,在分析之前首先要理解数据所承载的业务概念和相关知识,要明确分析工作是为了什么,主要在哪些业务范围进行分析,有哪些可以利用的数据,这些数据的状况如何,分析的成果将用于指导哪些方面的业务等等。
( 2 )准备数据
根据分析目标和思路,开始准备数据,一般来说,交易数据库的数据结构与关联规则挖掘所需要的数据结构往往相差比较大,需要进行转换。例如:一个交易数据库可能是这种样子:
交易
序号 |
客户
编号 |
客户
姓名
|
购买商
品编号 |
单 价 |
数量 |
时 间 |
1 |
001 |
张三 |
G0001 |
5.00 |
2 |
2007-5-22
|
1 |
001 |
张三 |
G0004 |
1.00 |
1 |
2007-5-22 |
2 |
002 |
李四 |
G0001 |
5.00 |
1 |
2007-5-30
|
3 |
003 |
王五 |
G0002 |
10.00 |
3 |
2007-5-31 |
|
…… |
|
|
|
|
|
而关联规则挖掘需要的数据结构可能是下面这样的:
交易
序号 |
商品
G0001 |
商品
G0002
|
商品
G0003 |
商品
G0004 |
…… |
时 间 |
1 |
T |
F |
F |
T |
|
2007-5-22 |
2 |
T |
F |
F |
F |
|
2007-5-30 |
3 |
F |
T |
F |
F |
|
2007-5-31 |
…… |
|
|
|
|
|
|
其中:T表示购买了该商品,F表示没有购买
数据的转换工作可能是个非常复杂,工作量巨大的工作,特别是当涉及到的数据范围和数量都比较多的时候。对于企业比较全面的数据挖掘分析,可能还必须借助数据仓库来作为数据挖掘分析的数据源。
(3 ) 挖掘关联规则
应用数据挖掘软件进行关联规则的挖掘。目前市场上的数据挖掘软件非常多,使用起来也不尽相同,对来源数据的要求也有所不同,需要注意。
本文实例分析使用的数据挖掘软件是SPSS Clementine 10.1。
( 4) 结果分析和应用
根据挖掘结果进行分析,提出无意义的规则,保留具有业务价值的规则,并以此为业务提供决策建议。
三、 实例分析——保险产品关联分析
1. 分析目标和分析思路
目前中国保险业正在蓬勃的发展,市场潜力巨大,各家保险公司竞争激烈。如何不断提升市场占有率、扩大客户群、提高客户质量,成为各保险公司必争的首要方面。我们希望通过对历史保险产品销售情况分析,发现两个方面的规律性:
一是,客户的特征与他们购买产品之间的规律性。
探询客户不同特征,例如:性别、年龄、婚姻状况、职业等方面,对其购买产品的影响。最终发现具有哪些特征的客户倾向于购买哪些产品。这不论是对一次销售还是二次销售,都具有很好的指导意义。
二是,哪些产品之间具有组合销售的可能性,如何开拓客户的二次购买行为。
因为在目前保险产品销售中,促成客户的首次购买,换句话说也就是开拓一个新的客户,它所付出的成本是比较高的。保持一个老客户,并使他们继续购买更多的保障,相对成本比较低。但是在对老客户进行二次销售的时候,不能盲目进行。如果能够根据产品间的关联性,有针对性地销售,将能够大大提高销售的成功率。
此外,在使用关联规则分析保险产品销售的时候,我们必须意识到保险产品与一般超市零售商品的区别:
一,超市零售商品一般具有反复频繁消费的性质,比如:啤酒、尿布等;而保险产品中除了短期产品之外,都不是频繁消费的,保险产品的保障期间,短则三、五年,长则几十年甚至终身。即便是短期产品,也多在1年期,而且短期产品在种类和销售额方面都不占主导地位。因此,在分析购买行为时,应当在相对较长的时间区间内进行分析,至少应当在1年以上;
二,针对保险产品类型分析,而不是针对具体产品分析。由于保险产品的长期性,带来购买行为的低频率。然而同时,保险公司的产品却不断推陈出新,老的产品不断停售,新的产品在原来的基础上略加改动就可取代老的产品,然而在产品类型上却没有本质的区别。即便在同一时期销售的产品,也有不少是属于同一类的产品,只有细微上的差别。如果我们将每一个产品作为一个分类进行分析,就会发现,购买行为在这些产品上过于分散,难以得出规律性的结论。
基于以上两点,决定针对产品类型而不是产品进行关联分析。初步划定的产品类型包括:两全保险、终身保障、终身寿险、终身重疾、定期寿险、定期重疾、女性重疾、教育年金、养老金、医疗、意外伤害、住院补贴、投资型。
对于客户特征,主要关注:性别、年龄、婚姻状况、职业。
2. 数据准备
注:以下数据来自某保险公司某地区2005年销售情况,出于商业和客户隐私保密的考虑,对于来源数据只作结构描述,不展示真实数据。
来源数据有以下几部分组成:
(1)保单信息
形如:
保单号 |
险种 |
投保日期 |
被保人客户编号 |
……
|
P00001 |
X01 |
2005-1-13 |
C00001 |
|
P00001 |
X05 |
2005-6-28 |
C00001 |
|
P00007 |
X09 |
2005-3-13 |
C00015 |
|
…… |
|
|
|
|
(2 )客户信息
形如:
客户编号 |
性别 |
出生日期 |
婚姻状况 |
职业类别 |
…… |
C00001 |
0 |
1971/12/08 |
1 |
1 |
|
C00015 |
1 |
1959/12/06 |
1 |
1 |
|
…… |
|
|
|
|
|
(3)险种与险种分类的对应表
险种 |
险种类别 |
|
X01 |
两全保险 |
|
X02 |
终身保障 |
|
X03 |
终身寿险 |
|
…… |
|
|
经过数据转换,我们得到以下形式的中间数据
客户
编号 |
性别 |
出生
日期 |
婚姻
状况 |
职业
类别 |
年龄
档 |
两全
保险 |
终身
保障 |
终身
寿险 |
…… |
C00001 |
0 |
1971/12/08 |
1 |
1 |
2 |
T |
F |
T |
|
C00015 |
1 |
1959/12/06 |
1 |
1 |
3 |
F |
T |
T |
|
…… |
|
|
|
|
|
|
|
|
|
说明:
(1)数据范围
2005年销售的保单,即投保日期在2005年;
选取购买了两种或两种以上类别的保险产品的被保人。(因为仅购买了一种产品无法进行关联分析)
(2)数据说明
婚姻:0:未婚,1:已婚;
性别:0:男,1:女;
职业类别:1~6,共6类职业,1类风险最小,6类风险最高;
年龄档:以2005年12月31日为基准,根据出生日期计算年龄,然后再按下面规则分档:1:[0,18], 2:[19,35], 3:[36,50], 4:[51,70], 5:[71]。
3. 挖掘关联规则
将上述中间数据,读入Clementine,针对两种不同的关联分析,进行不同的设置:
这里有一个关于模型输入输出变量的设置问题,变量的输入输出类型分为:in, out, both, none等。作为前件的变量,要设成in;作为后件的变量,要设成out;既作为前件,也作为后件的变量,要设成both。例如,我想知道买了面包、香肠的顾客,是否会购买啤酒,那就把面包、香肠设置成in,啤酒设置成out;如果我不确定先决条件,就在面包、香肠、啤酒三件商品中任意组合,找出其中的关联关系,那就把他们都设置成both。
(1)分析产品类之间的关联规则
我们是分析产品类字段之间的关联规则,那么每一个产品类既是模型输入变量也是输出变量,因此利用Clementine的TYPE节点,将“两全保险”、“终身保障”等产品类变量的输入输出类型都设置为“both”,将其余所有变量设置为“none”。
设置完成后,利用Apriori模型节点,进行分析挖掘。系统默认的支持度是10%,信任度是80%。在80%的信任度下,得到规则可能过少,甚至于没有得到规则,这样就难以进行分析。我建议可以将支持度和信任度设置得再小一点,这样可以得到更多的规则,再从中分析有用的规则。在此实例中,我将支持度和信任度都设置为10%。
(2)分析客户特征与产品类之间的关联规则
这方面,我关注的是具有某种特征的客户会倾向与购买哪类产品,也就是想知道客户?产品的规则。因此作为客户特征信息,将作为模型的输入便来能够,而产品销售情况作为模型的输出变量。利用Clementine的TYPE节点,将客户性别、年龄档、婚姻状况、职业类别等变量的输入输出类型设置为“in”,将“两全保险”、“终身保障”等产品类字段的输入输出类型都设置为“out”,将其余所有变量设置为“none”。
设置完成后,利用Apriori模型节点,进行分析挖掘。我将支持度和信任度都设置为10%。
4. 结果分析
(1)产品类之间的关联规则分析结果
下面就是针对产品类进行的关联规则挖掘,得出的关联规则。
Consequent |
Antecedent |
Rule
ID |
Support
% |
Confidence
% |
Rule Support
% |
投资型= T |
终身重疾 = T |
7 |
13.63 |
57.30 |
7.81 |
投资型=T |
定期寿险 = T |
13 |
53.60 |
55.43 |
29.71 |
投资型=T |
定期重疾 = T |
11 |
46.25 |
53.97 |
24.96 |
投资型=T |
意外伤害 = T |
4 |
12.40 |
48.15 |
2.97 |
定期重疾=T |
意外伤害 = T |
1 |
12.40 |
45.68 |
5.67 |
定期寿险=T |
投资型 = T |
14 |
67.23 |
44.19 |
29.71 |
定期寿险=T |
定期重疾 = T |
9 |
46.25 |
39.07 |
18.0 |
定期重疾=T |
投资型 = T |
12 |
67.23 |
37.13 |
24.96 |
定期重疾=T |
定期寿险 = T |
10 |
53.60 |
33.71 |
18.07 |
定期寿险=T |
终身重疾 = T |
6 |
13.63 |
31.46 |
4.29 |
定期寿险=T |
意外伤害 = T |
3 |
12.40 |
18.52 |
2.30 |
投资型=T |
定期重疾 = T and 定期寿险 = T |
15 |
18.07 |
17.80 |
3.22 |
定期重疾=T |
终身重疾 = T |
5 |
13.63 |
13.48 |
1.84 |
定期寿险=T |
定期重疾 = T and 投资型 = T |
16 |
24.96 |
12.88 |
3.22 |
意外伤害=T |
定期重疾 = T |
2 |
46.25 |
12.25 |
5.67 |
终身重疾=T |
投资型 = T |
8 |
67.23 |
11.62 |
7.81 |
定期重疾=T |
定期寿险 = T and 投资型 = T |
17 |
29.71 |
10.82 |
3.22 |
通过对上面关联规则的分析,我们注意关注第11、12、13、14号规则。发现以下规律:
投资型产品在所有产品中销售情况最好,67.23%的客户购买了投资型产品(第12、14号规则中投资型产品的Support%最高);其次是定期寿险和定期重疾。
定期寿险和投资型产品的组合,在所有产品组合中销售情况最好。有29.71%的客户购买了这一组合(第13、14号规则中,投资型与定期寿险组合的Rule Support%最高),其次是投资型与定期重疾组合。
购买了定期寿险的客户其中有55.43%购买了投资型产品,信任度最高(第13号规则的Confidence%),其次是购买定期重疾的客户购买投资型产品的规则(第11号)。
那么这些规则对销售业务带来那些指导意义呢?我认为大致可以有以下几点:
继续大力推动投资型产品的销售;
定期寿险、定期重疾与投资型产品的关联规则表示出:客户在购买多份保险时,既会关注保险产品的保障功能,也会关注其投资价值,一个理性的客户,会使自己在保障和投资两个方面达到平衡。因此,针对已有投资型产品的客户,可以大力推荐寿险和重疾类保障产品;对于已有寿险、重疾等保障类产品的客户,可以大力推荐其购买投资型产品。
还有更多的规律大家可以进一步分析。
(2)产品类之间的关联规则分析结果
下面是针对客户特征与产品类进行的关联规则挖掘,得出的关联规则
Consequent |
Antecedent |
Rule
ID |
Support
% |
Rule Support
% |
Confidence
% |
投资型 = T |
婚姻 = 0 |
19 |
17.00 |
80.18 |
13.63 |
…… |
|
|
|
|
|
投资型 = T |
职业类别 = 2 and 年龄档 = 2 |
87 |
16.54 |
76.85 |
12.71 |
投资型 = T |
职业类别 = 2 and 年龄档 = 2 and 婚姻 = 1 |
164 |
13.32 |
75.96 |
10.11 |
投资型 = T |
年龄档 = 2 and 性别 = 1 |
107 |
19.14 |
73.60 |
14.09 |
投资型 = T |
年龄档 = 2 |
25 |
41.81 |
73.26 |
30.63 |
投资型 = T |
年龄档 = 2 and 性别 = 0 |
109 |
22.66 |
72.97 |
16.54 |
投资型 = T |
年龄档 = 2 and 职业类别 = 1 |
102 |
17.30 |
71.68 |
12.40 |
投资型 = T |
年龄档 = 2 and 婚姻 = 1 |
111 |
29.71 |
71.31 |
21.13 |
投资型 = T |
年龄档 = 2 and 性别 = 1 and 婚姻 = 1 |
183 |
14.85 |
71.13 |
10.57 |
投资型 = T |
年龄档 = 2 and 性别 = 0 and 婚姻 = 1 |
185 |
14.85 |
71.13 |
10.57 |
…… |
|
|
|
|
|
投资型 = T |
婚姻 = 1 |
40 |
78.10 |
64.51 |
50.38 |
…… |
|
|
|
|
|
定期寿险=T |
婚姻 = 1 |
39 |
78.10 |
57.25 |
44.72 |
…… |
|
|
|
|
|
通过对上面关联规则的分析,我们可以发现几个有特点的规则:
关注19~35岁年龄档的客户(年龄档2),在87、164、107、25、109、102、111、183、185几个规则中发现,这些都是包含了年龄档2并购买了投资型产品。这个年龄段的客户购买了投资型产品的占所有客户的30.63%,因此,可以向这个年龄段的客户推介投资型产品。另外还发现,这个年龄段的客户,当他们的性别、婚姻状况、职业类别不同时,购买投资型产品的可信度都在70~80%之间,可以认为,性别、婚姻状况、职业类别对这个年龄段客户购买投掷型产品没有显著的影响;
关注未婚客户的购买特点,通过19号规则发现,未婚客户中有80.18%购买了投资型产品,比例相当高。因此,虽然未婚客户在全部客户中仅占17%,但是我们仍然应该关注这个群体,并向其大力推介投资型产品。这说明,我国年轻未婚群体更加关注投资回报,而较少关注保险保障;
关注已婚客户的购买特点,已婚客户可以说是产品购买的主力,他们购买投资型产品和定期寿险产品的,占全部客户的50.38%和44.72%,这也从一个侧面印证了上面针对产品类进行的规则挖掘中得出的“定期寿险、投资型产品”组合的规律性。
以上就是对关联规则挖掘方法和在保险销售分析中应用的简单介绍,实际运用中,还需要反复地分析、调整、比较,力求得到最符合实际、最能达到目标要求的结果。关联规则可以应用的领域非常广,不仅在销售领域,在金融信用管理、医疗等各个方面都能够很好的应用,更多的分析方法和规律等待着大家去探索和挖掘。