数据挖掘方法案例介绍
分类是用于识别什么样的事务属于哪一类的方法,可用于分类的算法有决策树、bayes分类、神经网络、支持向量机等等。
例1
一个自行车厂商想要通过广告宣传来吸引顾客。他们从各地的超市获得超市会员的信息,计划将广告册和礼品投递给这些会员。
但是投递广告册是需要成本的,不可能投递给所有的超市会员。而这些会员中有的人会响应广告宣传,有的人就算得到广告册不会购买。
所以最好是将广告投递给那些对广告册感兴趣从而购买自行车的会员。分类模型的作用就是识别出什么样的会员可能购买自行车。
自行车厂商首先从所有会员中抽取了1000个会员,向这些会员投递广告册,然后记录这些收到广告册的会员是否购买了自行车。
数据如下:
事例列 |
会员编号 |
12496 |
14177 |
24381 |
25597 |
………… |
输入列 |
婚姻状况 |
Married |
Married |
Single |
Single |
|
性别 |
Female |
Male |
Male |
Male |
||
收入 |
40000 |
80000 |
70000 |
30000 |
||
孩子数 |
1 |
5 |
0 |
0 |
||
教育背景 |
Bachelors |
Partial College |
Bachelors |
Bachelors |
||
职业 |
Skilled Manual |
Professional |
Professional |
Clerical |
||
是否有房 |
Yes |
No |
Yes |
No |
||
汽车数 |
0 |
2 |
1 |
0 |
||
上班距离 |
0-1 Miles |
2-5 Miles |
5-10 Miles |
0-1 Miles |
||
区域 |
Europe |
Europe |
Pacific |
Europe |
||
年龄 |
42 |
60 |
41 |
36 |
||
预测列 |
是否购买自行车 |
No |
No |
Yes |
Yes |
在分类模型中,每个会员作为一个事例,居民的婚姻状况、性别、年龄等特征作为输入列,所需预测的分类是客户是否购买了自行车。
使用1000个会员事例训练模型后得到的决策树分类如下:
※图中矩形表示一个拆分节点,矩形中文字是拆分条件。
※矩形颜色深浅代表此节点包含事例的数量,颜色越深包含的事例越多,如全部节点包含所有的1000个事例,颜色最深。经过第一次基于年龄的拆分后,年龄大于67岁的包含36个事例,年龄小于32岁的133个事例,年龄在39和67岁之间的602个事例,年龄32和39岁之间的229个事例。所以第一次拆分后,年龄在39和67岁的节点颜色最深,年龄大于67岁的节点颜色最浅。
※节点中的条包含两种颜色,红色和蓝色,分别表示此节点中的事例购买和不购买自行车的比例。如节点“年龄>=67”节点中,包含36个事例,其中28个没有购买自行车,8个购买了自行车,所以蓝色的条比红色的要长。表示年龄大于67的会员有74.62%的概率不购买自行车,有23.01%的概率购买自行车。
在图中,可以找出几个有用的节点:
1. 年龄小于32岁,居住在太平洋地区的会员有72.75%的概率购买自行车;
2. 年龄在32和39岁之间的会员有68.42%的概率购买自行车;
3. 年龄在39和67岁之间,上班距离不大于10公里,只有1辆汽车的会员有66.08%的概率购买自行车;
4. 年龄小于32岁,不住在太平洋地区,上班距离在1公里范围内的会员有51.92%的概率购买自行车;
在得到了分类模型后,将其他的会员在分类模型中查找就可预测会员购买自行车的概率有多大。随后自行车厂商就可以有选择性的投递广告册。
数据挖掘的一般流程 第一步,建立模型,确定数据表中哪些列是要用于输入,哪些是用于预测,选择用何种算法。这时建立的模型内容是空的,在模型没有经过训练之前,计算机是无法知道如何分类数据的。 第二步,准备模型数据集,例子中的模型数据集就是1000个会员数据。通常的做法是将模型集分成训练集和检验集,比如从1000个会员数据中随机抽取700个作为训练集,剩下300个作为检验集。 第三步,用训练数据集填充模型,这个过程是对模型进行训练,模型训练后就有分类的内容了,像例子图中的树状结构那样,然后模型就可以对新加入的会员事例进行分类了。由于时效性,模型内容要经常更新,比如十年前会员的消费模式与现在有很大的差异,如果用十年前数据训练出来的模型来预测现在的会员是否会购买自行车是不合适的,所以要按时使用新的训练数据集来训练模型。 第四步,模型训练后,还无法确定模型的分类方法是否准确。可以用模型对300个会员的检验集进行查询,查询后,模型会预测出哪些会员会购买自行车,将预测的情况与真实的情况对比,评估模型预测是否准确。如果模型准确度能满足要求,就可以用于对新会员进行预测。 第五步,超市每天都会有新的会员加入,这些新加入的会员数据叫做预测集或得分集。使用模型对预测集进行预测,识别出哪些会员可能会购买自行车,然后向这些会员投递广告。
|
Naïve Bayes是一种由统计学中Bayes法发展而来的分类方法。
例1
有A、B两个政党对四个议题进行投票,A政党有211个国会议员,B政党有223个国会议员。下表统计了政党对四个议题赞成或反对的票数。
|
国家安全法 |
个人财产保护法 |
遗产税 |
反分裂法 |
总计 |
||||
|
赞成 |
反对 |
赞成 |
反对 |
赞成 |
反对 |
赞成 |
反对 |
|
A政党 |
41 |
166 |
87 |
114 |
184 |
11 |
178 |
23 |
211 |
B政党 |
214 |
4 |
211 |
6 |
172 |
36 |
210 |
1 |
223 |
|
|
|
|
|
|
|
|
|
|
A政党 |
20% |
80% |
43% |
57% |
94% |
6% |
89% |
11% |
49% |
B政党 |
98% |
2% |
97% |
3% |
83% |
17% |
99.50% |
0.50% |
51% |
A政党的议员有20%概率赞成国家安全法,43%概率赞成个人财产保护法,94%概率赞成遗产税,89%概率赞成反分裂法。
B政党的议员有98%概率赞成国家安全法,97%概率赞成个人财产保护法,83%概率赞成遗产税,99.5%概率赞成反分裂法。
基于这样的数据,Naïve Bayes能预测的是如果一个议员对国家安全法投了赞成票,对个人财产保护法投了反对票,对遗产税投了赞成票,对反分裂法投了赞成票。哪么,这个议员有多大的概率属于A政党,又有多少的概率属于B政党。
例2
一个产品在生产后经检验分成一等品、二等品、次品。生产这种产品有三种可用的配方,两种机器,两个班组的工人。下面是1000个产品的统计信息。
|
配方 |
机器 |
工人 |
总计 |
||||
|
配方1 |
配方2 |
配方3 |
机器1 |
机器2 |
班组1 |
班组2 |
|
一等品 |
47 |
110 |
121 |
23 |
255 |
130 |
148 |
278 |
二等品 |
299 |
103 |
165 |
392 |
175 |
327 |
240 |
567 |
次品 |
74 |
25 |
56 |
69 |
86 |
38 |
117 |
155 |
|
|
|
|
|
|
|
|
|
一等品 |
16.91% |
39.57% |
43.53% |
8.27% |
91.73% |
46.76% |
53.24% |
27.80% |
二等品 |
52.73% |
18.17% |
29.10% |
69.14% |
30.86% |
57.67% |
42.33% |
56.70% |
次品 |
47.74% |
16.13% |
36.13% |
44.52% |
55.48% |
24.52% |
75.48% |
15.50% |
使用Naïve Bayes模型,每次在制定生产计划,确定生产产品所用的配方、机器及工人,便能预测生产中有多少的一等品、二等品和次品。
下面是银行用来识别给申请信用卡的客户发放何种信用卡的神经网络。
图中每个椭圆型节点接受输入数据,将数据处理后输出。输入层节点接受客户信息的输入,然后将数据传递给隐藏层,隐藏层将数据传递给输出层,输出层输出客户属于哪类信用卡。这类似于人脑神经元受到刺激时,神经脉冲从一个神经元传递到另一个神经元。
每个神经元节点内部包含有一个组合函数∑和激活函数f。X1, X2是其他神经元的输出值,对此神经元来说是输入值,组合函数将输入值组合后传递给激活函数。激活函数经过特定的计算后得到输出值y,y有被传递给其他神经元。
输入边上的w1和w2是输入权值,用于在组合函数中对每个输入值进行加权。训练模型时,客户事例输入,神经网络计算出客户的类别,计算值与真实值比较后,模型会修正每个输入边上的权值。在大量客户事例输入后,模型会不断调整,使之更吻合真实情况,就像是人脑通过在同一脉冲反复刺激下改变神经键连接强度来进行学习。
分类算法是建立事例特征对应到分类的方法。分类必须是离散的,像信用卡的种类只有三种,如果是要通过客户收入、婚姻状况、职业等特征预测客户会使用信用卡消费多少金额时,分类算法就无能为力了,因为消费金额可能是大于0的任意值。这时只能使用回归算法。
例如,下表是工厂生产情况。
机器数量 |
工人数量 |
生产数量 |
12 |
60 |
400 |
7 |
78 |
389 |
11 |
81 |
674 |
…… |
使用线性回归后,得到了一个回归方程:生产数量=α+β·机器数量+γ·工人数量。代表每多一台机器就可以多生产β单位的产品,每多一个工人就可以多生产γ单位的产品。
除了简单的线性回归和逻辑回归两种,决策树可以建立自动回归树模型,神经网络也可以进行回归,实际上,逻辑回归就是去掉隐藏层的神经网络。
例如,服装销售公司要根据各地分销店面提交的计划预计实际销售量。
使用自动回归树得到上图的模型,假如山东销售店提交的计划童装数量是500套,预计销售量是-100+0.6×500=200套,按6Sigma原则,有99.97%的概率实际销售量可能是200±90套。广州提交计划童装300套,预计销售量是20+0.98×300=314±30套。广州的销售店制定的童装计划比山东的准确。
分类算法的目的是建立事例特征到类别的对应法则。但前提是类别是已存在的,如已知道动物可以分成哺乳类和非哺乳类,银行发行的信用卡有银卡、金卡、白金卡三种。
有时在分类不存在前,要将现有的事例分成几类。比如有同种材料要分类装入到各个仓库中,这种材料有尺寸、色泽、密度等上百个指标,如果不熟悉材料的特性很难找到一种方法将材料分装。
又例如,银行刚开始信用卡业务时,没有将客户分类,所有的客户都使用同一种信用卡。在客户积累到一定的数量后,为了方便管理和制定市场策略,需要将客户分类,让不同类别的客户使用不同的信用卡。但问题是,银行该把客户分成几个类别,谁该属于哪一类。
假定银行仅仅要参照客户的收入和使用信用卡销售金额两个指标对客户分类。通常情况下,仅仅是衡量这些指标的高低来分类,如规定收入小于4000,且消费小于2000的客户分成第一类;收入在4000至8000,消费在2000至4000的客户分成第二类;收入在8000至12000,消费在4000至6000的客户分成第三类;收入在12000以上,消费在6000以上分成第四类。下面的图展示了这种分类。
图中三角形的点代表客户,图中的红色线条是对客户的分类。可以看到这种不合理,第一类别没有包含任何事例,而第四类也只有少量事例,而第二和第三类分界处聚集着大量事例。
观测图像,发现大部分客户事例聚集在一起形成了三个簇,下图中用三个椭圆标出了这些簇。
同在一个簇中的客户有着类似的消费行为,黑色簇中的客户消费额与收入成正比;蓝色簇中的客户不习惯使用信用卡消费,可以对这类客户发放一种低手续费的信用卡,鼓励他们使用信用卡消费;绿色簇中的客户消费额相对收入来说比较高,应该为这类客户设计一种低透支额度的信用卡。
聚类模型就是这种可以识别有着相似特征事例,把这些事例聚集在一起形成一个类别的算法。
聚类模型除了能将相似特征的事例归为一类外,还常用来发现异常点。
像上图中用红圈标出的点,这两个客户偏离了已有的簇,他们的消费行为异于一般人,消费远超出收入。意味他们有其他不公开的收入来源,这些客户是有问题的。
科学试验中,研究人员对异常点很感兴趣,通过研究不寻常的现象提出新的理论。
聚类的另一个用途是发现属性间隐含的关系。例如有30名学生考试成绩:
学号 |
美术 |
语文 |
物理 |
历史 |
英语 |
音乐 |
数学 |
化学 |
31001 |
74 |
50 |
89 |
61 |
53 |
65 |
96 |
87 |
31002 |
70 |
65 |
88 |
55 |
50 |
65 |
92 |
87 |
31003 |
65 |
50 |
86 |
54 |
63 |
73 |
91 |
96 |
…… |
教师想知道学科之间是否有关联,如果学生某门学科成绩优秀,是否会在另一门学科上也有优势。
通过聚类后将30名学生分成了3个类:
变量 |
状态 |
总体(全部) |
分类 3 |
分类 2 |
分类 1 |
大小 |
|
30 |
10 |
10 |
10 |
语文 |
平均值 |
74 |
71.6 |
89.6 |
59.4 |
语文 |
13.39 |
4.38 |
3.95 |
5.46 |
|
英语 |
平均值 |
72 |
72.7 |
88.1 |
56.1 |
英语 |
14.27 |
4.4 |
6.9 |
4.46 |
|
音乐 |
平均值 |
78 |
89.1 |
74.4 |
71 |
音乐 |
9.71 |
7.31 |
4.12 |
5.27 |
|
物理 |
平均值 |
75 |
74 |
56.6 |
93.4 |
物理 |
15.96 |
|
数据分析咨询请扫描二维码
在准备数据分析师面试时,掌握高频考题及其解答是应对面试的关键。为了帮助大家轻松上岸,以下是10个高频考题及其详细解析,外加 ...
2024-12-20互联网数据分析师是一个热门且综合性的职业,他们通过数据挖掘和分析,为企业的业务决策和运营优化提供强有力的支持。尤其在如今 ...
2024-12-20在现代商业环境中,数据分析师是不可或缺的角色。他们的工作不仅仅是对数据进行深入分析,更是协助企业从复杂的数据信息中提炼出 ...
2024-12-20随着大数据时代的到来,数据驱动的决策方式开始受到越来越多企业的青睐。近年来,数据分析在人力资源管理中正在扮演着至关重要的 ...
2024-12-20在数据分析的世界里,表面上的技术操作只是“入门票”,而真正的高手则需要打破一些“看不见的墙”。这些“隐形天花板”限制了数 ...
2024-12-19在数据分析领域,尽管行业前景广阔、岗位需求旺盛,但实际的工作难度却远超很多人的想象。很多新手初入数据分析岗位时,常常被各 ...
2024-12-19入门数据分析,许多人都会感到“难”,但这“难”究竟难在哪儿?对于新手而言,往往不是技术不行,而是思维方式、业务理解和实践 ...
2024-12-19在如今的行业动荡背景下,数据分析师的职业前景虽然面临一些挑战,但也充满了许多新的机会。随着技术的不断发展和多领域需求的提 ...
2024-12-19在信息爆炸的时代,数据分析师如同探险家,在浩瀚的数据海洋中寻觅有价值的宝藏。这不仅需要技术上的过硬实力,还需要一种艺术家 ...
2024-12-19在当今信息化社会,大数据已成为各行各业不可或缺的宝贵资源。大数据专业应运而生,旨在培养具备扎实理论基础和实践能力,能够应 ...
2024-12-19阿里P8、P9失业都找不到工作?是我们孤陋寡闻还是世界真的已经“癫”成这样了? 案例一:本硕都是 985,所学的专业也是当红专业 ...
2024-12-19CDA持证人Louis CDA持证人基本情况 我大学是在一个二线城市的一所普通二本院校读的,专业是旅游管理,非计算机非统计学。毕业之 ...
2024-12-18最近,知乎上有个很火的话题:“一个人为何会陷入社会底层”? 有人说,这个世界上只有一个分水岭,就是“羊水”;还有人说,一 ...
2024-12-18在这个数据驱动的时代,数据分析师的技能需求快速增长。掌握适当的编程语言不仅能增强分析能力,还能帮助分析师从海量数据中提取 ...
2024-12-17在当今信息爆炸的时代,数据分析已经成为许多行业中不可或缺的一部分。想要在这个领域脱颖而出,除了热情和毅力外,你还需要掌握 ...
2024-12-17数据分析,是一项通过科学方法处理数据以获取洞察并支持决策的艺术。无论是在商业环境中提升业绩,还是在科研领域推动创新,数据 ...
2024-12-17在数据分析领域,图表是我们表达数据故事的重要工具。它们不仅让数据变得更加直观,也帮助我们更好地理解数据中的趋势和模式。相 ...
2024-12-16在当今社会,我们身处着一个飞速发展、变化迅猛的时代。不同行业在科技进步、市场需求和政策支持的推动下蓬勃发展,呈现出令人瞩 ...
2024-12-16在现代商业世界中,数据分析师扮演着至关重要的角色。他们通过解析海量数据,为企业战略决策提供有力支持。要有效完成这项任务, ...
2024-12-16在当今数据爆炸的时代,数据分析师是组织中不可或缺的导航者。他们通过从大量数据中提取可操作的洞察力,帮助企业在竞争激烈的市 ...
2024-12-16