《数据仓库与数据挖掘》实验指导书
(适用于信息系统与信息管理专业)
编者:XXX
XX大学 管理学院
2010-2
目 录
前 言 .............................................................................................................................................. 1 实验一、SPSS Clementine 软件功能演练 .................................................................................... 6 实验二、SPSS Clementine 数据可视化 ...................................................................................... 10 实验三、决策树C5.0 建模 .......................................................................................................... 18 实验四、关联规则挖掘 ................................................................................................................. 31 实验五、欺诈屏蔽/异常检测/神经网络 ....................................................................................... 39 实验六、分类和回归树节点(C&RT) ........................................................................................... 52 实验七、多项 Logistic 回归 ........................................................................................................ 62 实验八、综合实验:电力负荷预测 ............................................................................................. 68
前 言
一、课程简介
数据挖掘(Data Mining),就是从大量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程。数据挖掘的广义观点:数据挖掘就是从存放在数据库,数据仓库或其他信息库中的大量的数据中“挖掘”有趣知识的过程。数据挖掘,又称为数据库中知识发现(Knowledge Discovery in Database, KDD),因此,数据挖掘和数据仓库的协同工作,一方面,可以迎合和简化数据挖掘过程中的重要步骤,提高数据挖掘的效率和能力,确保数据挖掘中数据来源的广泛性和完整性。另一方面,数据挖掘技术已经成为数据仓库应用中极为重要和相对独立的方面和工具。
数据挖掘有机结合了来自多学科技术,其中包括:数据库、数理统计、机器学习、高性能计算、模式识别、神经网络、数据可视化、信息检索、图像与信号处理、空间数据分析等,这里我们强调数据挖掘所处理的是大规模数据,且其挖掘算法应是高效的和可扩展的。通过数据挖掘,可从数据库中挖掘出有意义的知识、规律,或更高层次的信息,并可以从多个角度对其进行浏览察看。所挖掘出的知识可以帮助进行决策支持、过程控制、信息管理、查询处理等等。因此数据挖掘被认为是数据库系统最重要的前沿研究领域之一,也是信息工业中最富有前景的数据库应用领域之一。当前数据挖掘应用主要集中在电信、零售、农业、网络日志、银行、电力、生物、天体、化工、医药等方面。而据Gartner的报告也指出,数据挖掘会成为未来10年内重要的技术之一。
1
二、课程的任务和实验的教学目标
课程编号:5405190 课程属性:专业任选课 实验学时:12
适用专业:信息管理与信息系统
先修课程:管理信息系统、计算机基础、数据库技术、统计学
《数据仓库与数据挖掘》是一门理论和实践相结合的课程,它在整个信息系统与信息管理专业中处于信息系统应用的前沿应用的地位,是计算机科学的算法理论基础和数据库、数据仓库技术、统计技术的结合,以及在管理实践中应用。其上机实验的目的主要是实现数据挖掘的主要算法,训练学生实际动手进行数据挖掘设计和软件应用的能力,加深对数据挖掘相关概念和算法的理解。
本课程具有技术性和实践性较强的特点,因此,配合基本原理的讲授,应当安排相应的实习操作。通过实验和操作,使学生巩固和加深数据仓库与数据挖掘理论知识,进一步加强学生独立分析问题和解决问题的能力、综合设计及创新能力的培养,为今后工作打下良好的基础。经过多层次、多方式的全面训练后,学生应达到下列要求:
1.进一步巩固和加深数据仓库与数据挖掘基本知识的理解,提高综合运用所学知识,建立和管理数据的能力。
2.能根据需要选学参考书,查阅相关的工具,通过独立思考,深入钻研有关问题,学会自己独立分析问题、解决问题,具有一定的创新能力。
3.能正确处理大规模数据,选择数据挖掘工具的开发平台和相关的软件解决实践问题。
2
4.能独立撰写实验报告,准确分析实验结果,总结有关的问题,提出相关的建议。
三、实验教材及参考书
理论课教材及参考书:
数据仓库与数据挖掘教程(丛书名: 高等院校信息管理与信息系统专业系列教材)作者: 陈文伟 编著,清华大学出版社,2006.8
数据仓库和数据挖掘,苏新宁 等编著,清华大学出版社,2006.4
数据仓库与数据挖掘技术(第2版),陈京民 编著,电子工业出版社,2007.11
Jiawei Han, Micheline Kamber. Data Mining: Concepts and Techniques.高等教育出版社(影印版),2001.5.
Ian H. Witten, Eibe Frank. Data Mining: Practical Machine Learning Tools and Techniques (第二版). 机械工业出版社(影印版),2005.
Richard J. Roiger, Michael W. Geatz. Data Mining: A Tutorial-Based Primer.清华大学出版社,2003.
实验教材:
数据挖掘Clementine应用实务,谢邦昌 主编,机械工业出版社,2008.4
数据挖掘原理与SPSS Clementine应用宝典,元昌安 主编,电子工业出版社,2009.8
3
四、实验基本内容及学时分配
按照《数据仓库与数据挖掘》实验教学大纲的要求,共设立实验8个,总计20学时。试验基本内容与学时分配如下表:
每组序号 实验名称 实验学时 人数 1 SPSS Clementine 软件功能演练 实验二、SPSS Clementine 数据2 可视化 3 4 5 6 7 决策树C5.0 建模 关联规则挖掘 欺诈屏蔽/异常检测/神经网络 分类和回归树节点(C&RT) 多项 Logistic 回归 实验八、综合实验:电力负荷预8 测 6 1 综合实验 本科 必开 2 2 2 2 2 1 1 1 1 1 验证综合 本科 验证综合 本科 验证综合 本科 验证综合 本科 验证综合 本科 必开 必开 必开 必开 必开 2 1 演练 本科 必开 2 1 演练 实验属性 类别 本科 要求 必开 实验者开出
五、实验方式与基本要求
1、本课程的实验为非单独设课,因此,应该课程的内容安排和进度,配合技术原理的讲授,进行相应的操作和实验。
2、该课以综合性实验为主,教师给出实验题目,实验前学生必须进行预习,
3、在规定的时间内,由学生独立完成,出现问题,教师要引导学生独立分析、解决,不得包办代替。
4
4、实验中按要求做好学生实验情况及结果记录,实验后认真填写实验记录。
5、 实验指导书仅作为上机时的参考步骤,不能作为唯一的依据,以教材和课堂讲授为准。
5
实验一、SPSS Clementine 软件功能演练
【实验目的】
1、熟悉SPSS Clementine 软件功能和操作特点。
2、了解SPSS Clementine 软件的各选项面板和操作方法。 3、熟练掌握SPSS Clementine 工作流程。 【实验内容】
1、打开SPSS Clementine 软件,逐一操作各选项,熟悉软件功能。 2、打开一有数据库、或新建数据文件,读入SPSS Clementine,并使用各种输出节点,熟悉数据输入输出。(要求:至少做access数据库文件、excel文件、txt文件、可变文件的导入、导出) 【实验步骤】
1、启动 Clementine:
请从 Windows 的“开始”菜单中选择: 所有程序
SPSS Clementine 11.1 SPSS Clementine client 11.1
2、Clementine窗口
当第一次启动 Clementine 时,工作区将以默认视图打开。中间的区域称作流工作区。在 Clementine 中,这将是用来工作的主要区域。
6
Clementine 中绝大部分的数据和建模工具都在选项板中,该区域位于流工作区的下方。每个选项卡都包含一组以图形表示数据挖掘任务的节点,例如访问和过滤数据,创建图形和构建模型。
要将节点添加到工组区,可在节点选项板中双击图标或将其拖拽至工作区后释放。随后可将各个图标连接以创建一个表示数据流动的流。
7
窗口的右上方是输出和对象管理器。这些选项卡用于查看和管理各种 Clementine 对象。
“流”选项卡包含了当前会话中打开的所有流。可以将这些流保存并关闭,也可将其添加到工程中。
“输出”选项卡包含了由 Clementine 中的流操作产生的各类文件。可以显示、重命名和关闭此处所列的表格、图形和报告。
“模型”选项卡是一个功能强大的工具,包含了在一次会话中产生的所有模型(即,已在 Clementine 中构建完毕的模型)。通过它,可以对模型作更深入的查看、将其添加至流中、导出或为其加注解。
8
窗口右侧底部的部分是工程工具,它用来创建和管理数据挖掘工程。查看在 Clementine 中创建的工程有两种方式 - 类视图或 CRISP-DM 视图。 “CRISP-DM”选项卡提供了一种组织工程的方式。“类”选项卡提供了一种在 Clementine 中按类别(即,按照所创建对象的类别)组织工作的方式。当要获取数据、流、模型等对象的详尽目录时,这种视图十分有用。
9
实验二、SPSS Clementine 数据可视化
【实验目的】
1、熟悉SPSS Clementine 绘图。
2、了解SPSS Clementine 图形选项面板各节点的使用方法。 3、熟练掌握SPSS Clementine 数据可视化流程。 【实验内容】
1、打开SPSS Clementine 软件,逐一操作各图形选项面板,熟悉软件功能。 2、打开一有数据库、或新建数据文件,读入SPSS Clementine,并使用各种输出节点,熟悉数据输入输出。(要求:至少做分布图、直方图、收集图、多重散点图、时间散点图) 【实验步骤】
1、启动 Clementine:
请从 Windows 的“开始”菜单中选择: 所有程序
PSS Clementine 11.1
SPSS Clementine client 11.1
2、建立一个流、导入相关数据,打开图形选项面板
3、绘制以下各类图形
10
(1)以颜色为层次的图
(2)以大小为层次的图
11
(3)以颜色、大小、形状和透明度为层次的图
(4)以面板图为层次的图
12
(5)三维收集图
(6)动画散点图
13
(7)分布图
(8)直方图
14
(9)收集图
15
(10)多重散点图
未标准化时的多重散点图
标准化后的多重散点图
16
(11)网络图
17
实验三、决策树C5.0 建模
【实验目的】
1、熟悉SPSS Clementine建模方法。
2、掌握SPSS Clementine分布图、散点图、网络图的创建方法。 3、掌握决策树C5.0决策方法。 【实验内容】 1、创建散点图。 2、创建分布图。 3、创建网络图。 【实验步骤】
假设你是一位正在汇总研究数据的医学研究员。已收集了一组患有同一疾病的患者的数据。在治疗过程中,每位患者均对五种药物中的一种有明显反应。的任务就是通过数据挖掘找出适合治疗此疾病的药物。
此示例使用名为 druglearn.str 的流,此流引用名为 DRUG1n 的数据文件。可以从任何 Clementine Client 安装软件的 Demos 目录下找到这些文件,也可以通过从 Windows 的“开始”菜单选择 Start > [All] Programs > SPSS Clementine 11.1 > Demos访问这些文件。文件 druglearn.str 位于 Classification_Module 目录中。此 demo 中使用的数据字段包括: 年龄 (数值) 性别 M 或 F BP 血压:高、正常或低 胆固醇 血液中的胆固醇含量:正常或高 Na K 血液中钠的浓度 血液中钾的浓度 药品 对患者有效的处方药 1、读取文本数据 18
使用变量文件节点读取定界文本数据。可以从选项板中添加变量文件节点,方法是单击源选项卡找到此节点,或者使用收藏夹选项卡(默认情况下,其中包含此节点)。然后,双击新添加的节点以打开相应的对话框。
单击紧挨“文件”框右边以省略号“...”标记的按钮,浏览到系统中的 Clementine 安装目录。打开 demos 目录,然后选择名为 DRUG1n 的文件。选择从文件读取字段名,并注意已载入此对话框中的字段和值。
19
单击数据选项卡,覆盖和更改某个字段的存储。注意,存储不同于类型或数据字段的用途。类型选项卡可帮助了解数据中的更多字段类型。还可以选择读取值来查看各个字段的实际值,具体取决于在值列中的选择。此过程称为实例化。
20
类型选项卡可帮助了解数据中的更多字段类型。还可以选择读取值来查看各个字段的实际值,具体取决于在值列中的选择。此过程称为实例化。
21
2、添加表。
现在已载入数据文件,可以浏览一下某些记录的值。其中一个方法就是构建一个包含表节点的流。要将表节点添加到流中,可双击选项板中的表节点图标或将其拖放到工作区。
双击选项板中的某个节点后,该节点将自动与流工作区中的选定节点相连接。此外,如果尚未连接节点,则可以使用鼠标中键将源节点与表节点相连接。要模拟鼠标中键操作,请在使用鼠标时按下 Alt 键。
22
要查看表,请单击工具栏上的绿色箭头按钮执行流,或者右键单击表节点,然后选择执行。
3、创建分布图
数据挖掘过程中,创建汇总视图通常有助于研究数据。Clementine 提供了若干不同类型的图表供您选择,具体取决于要汇总分析的数据类型。例如,要找出每种药物的对症患者的比例,请使用分布节点。
23
将分布节点添加到流,并将其与源节点相连接,然后双击该节点以编辑要显示的选项。选择药品作为要显示其分布的目标字段。然后,在对话框中单击执行
最终图表将有助于查看数据的“结构”。结果表明,药品 Y 的对症患者最多,而药品 B 和药品 C 的对症患者最少。
24
此外,还可以添加并执行数据审核节点,同时快速浏览所有字段的分布图和直方图。
可以在“输出”选项卡中找到数据审核节点。
4、创建散点图
现在我们来看一下有哪些因素会对药品(目标变量)产生影响。作为研究员,您一定知道钠和钾的浓度在血液中有着重要的影响。由于两者都是数值,您可以用颜色区分药品,创建一个关于钠和钾的散点图。
25
将散点图节点放在工作区中,并将其与源节点相连接,然后双击该节点对其进行编辑
在“散点图”选项卡中,选择 Na 作为 X 字段,选择 K 作为 Y 字段,并选择药品作为交叠字段。然后单击执行。
26
此散点图清楚地显示一个阈值,在此阈值上方,对症药品始终是 Y,在此阈值下方,对症药品均不是 Y。此阈值是一个比率,即钠(Na)和钾(K)的比率。
27
5、创建网络图
因为很多数据字段均可分类,也可尝试绘制网络图,此图表将反映不同类别之间的联系。首先,将网络节点与您工作区中的源节点相连接。
在“网络节点”对话框中,选择 BP(血压)和药品。然后单击执行。
28
此图显示,药品 Y 与三种级别的血压均相关。Y 是最佳药品。
。
29
30
实验四、关联规则挖掘
【实验目的】
1、熟悉C5.0 规则归纳 2、掌握购物篮分析的方法。 【实验内容】
1、字段和记录的筛选。 2、规则归纳 (C5.0)分类。 3、购物篮分析。 【实验步骤】
本示例处理描述超级市场购物篮内容(即,所购买的全部商品的集合)的虚构数据,以及购买者的相关个人数据(可通过忠诚卡方案获得)。目的是寻找购买相似产品并且可按人口统计学方式(如按年龄、收入等)刻画其特征的客户群。
本示例说明了数据挖掘的两个阶段:
• 关联规则建模和一个揭示所购买商品之间联系的 Web 显示 • C5.0 规则归纳(描绘已标识产品组的购买者的特征)
注意:此应用不直接使用预测建模,因此,不对最终模型进行准确性度量,在数据挖掘过程中也不存在与之相关的训练/检验两个步骤的区分。
本例使用名为 baskrule 的流,该流引用名为 BASKETS1n 的数据文件。任何 Clementine Client 安装的 Demos 目录中都具有这些文件,通过从 Windows 的“开始”菜单中选择 Start > [All] Programs > SPSS Clementine 11.1 > Demos 可访问这些文件。文件 baskrule 位于 Classification_Module 目录下。
1、访问数据
使用“变量文件”节点连接到数据集 BASKETS1n,选择要从该文件读取的字段名称。将“类型”节点连接到数据源,然后将该节点连接到“表”节点。将字段卡 ID 的类型设置为无类型(因为每个忠诚卡 ID 在数据集中只出现一次,因此对于建模没有用处)。选择集作为字段性别的类型(这是为了确保 GRI 建模算法不会将性别视为标志)。
31
现在,执行该流以将“类型”节点实例化并显示表。数据集包含 18 个字段,其中每条记录表示一个购物篮。
下列标题中会显示 18 个字段。 购物篮摘要:
cardid.购买此篮商品的客户的忠诚卡标识符。 value.购物篮的总购买价格。 pmethod.购物篮的支付方法。 卡持有者的个人详细信息:
sex
homeown.卡持有者是否拥有住房。 收入 age
购物篮内容—产品类别的出现标志:
fruitveg freshmeat dairy cannedveg cannedmeat frozenmeal beer wine softdrink
32
fish confectionery 3、发现购物篮内容的关系
首先,需要使用一般规则归纳 (GRI) 大致了解购物篮内容的关系(关联)以生成关联规则。选择要在此建模过程中使用的字段,方法是:编辑“类型”节点,将所有产品类别的方向设置为双向,并将所有其他方向设置为无。(双向表示该字段可以是结果模型的输入或输出。)
注意:通过按住 Shift 键并单击以选择多个字段,然后指定列中的选项,可为多个字段设置选项。
指定了用于建模的字段后,请将 GRI 节点附加到“类型”节点,编辑它,选择选项只显示值为真的标志变量,然后执行 GRI 节点。结果(管理器窗口右上角“模型”选项卡上的非精练模型)包含您可以查看(使用上下文菜单,然后选择浏览)的关联规则。
33
这些规则显示冻肉、罐装蔬菜和啤酒之间存在多种关联;酒和糖果也具有关联。出现双向关联规则
(如:frozenmeal ⇦ beer beer ⇦ frozenmeal)
Web 显示(只显示双向关联)可能会突出显示此数据中的一些模式。 将 Web 节点附加到“类型”节点,编辑 Web 节点,选择所有购物篮内容字段,选择仅显示 true 标志,然后执行 Web 节点。
34
因为大多数产品类别组合都会出现在多个购物篮中,所以此 Web 上的强链接太多,无法显示 GRI 模型表示的客户群。要提高临界值以便只显示最强的链接,请使用工具栏上的滑块来实现最多只显示 50 个连接。
要指定弱连接和强连接,请单击工具栏上的黄色双箭头按钮。这会展开显示 Web 输出摘要和控件的对话框。
选择大小表示强/正常/弱。将弱链接设置为低于 90。将强链接设置为高于 100。
在最终显示中,会有三个客户群突出显示:
购买鱼和果蔬的客户,可将这类客户称为“健康食客”
35
购买酒和粮果的客户
购买啤酒、冻肉和罐装蔬菜(“啤酒、豆类和比萨”)的客户
请注意,GRI 仅标识这些客户群中的最后两个;健康食客未形成足够强的模式,GRI 无法发现它。
4、描绘客户群的特征
现在,已经根据客户购买的产品类型标识了三个客户群,但是还要知道这些客户是谁,即,他们的人口统计学特征。通过为每个群中的每名客户添加标志,并使用规则归纳 (C5.0) 来基于规则描绘这些标志的特征,可以实现这一点。
首先,必须获取每个群的标志。使用刚刚创建的 Web 显示,可以自动生成每个群的标志。使用鼠标右键,单击fruitveg和fish之间的链接,并选择为链接生成“派生”节点。
编辑最终的“派生”节点以将“派生”字段名称更改为健康。使用从wine
36
到confectionery的链接重复该练习,并将最终的“派生”字段命名为 wine_chocs。
对于第三个群(涉及三个链接),首先要确保未选择任何链接。然后,在按住 shift 键的同时单击鼠标左键,从而选择cannedveg、beer和frozenmeal中的全部三个链接。(一定要处于“交互”模式而不是“编辑”模式。)然后,从 Web 显示菜单中选择:生成:导出节点(“和”)将最终“派生”字段的名称更改为 beer_beans_pizza。
要描绘这些客户群的特征,请连续将现有的类型节点连接到这三个导出节点,然后附加另一个类型节点。在新类型节点中,请将除以下字段外的所有字段的方向都设置为无:value、pmethod、sex、homeown、income和age(这些字段的方向应该设置为输入),以及相关的客户群(例如,beer_beans_pizza,它们的方向应该设置为输出)。附加 C5.0 节点,将输出类型设置为规则集,然后执行它。最终模型(用于 beer_beans_pizza)包含此客户群的明确人口统计学特征:
Rule 1 for T: if income <= 16900 and sex == M then -> T
通过在第二个类型节点中选择其他客户群标志作为输出,可将同一方法应用到这些标志。通过在此上下文中使用 GRI 代替 C5.0,可生成更多替代特征描绘;GRI 也可用于同时描绘所有客户群标志的特征,原因是,GRI 并非被限制到一个输出字段。
37
示例说明如何使用 Clementine 通过建模(使用 GRI)和直观化(使用 Web 显示)发现数据库中的关系(即链接)。这些链接与数据中的案例组相对应,并且,通过建模(使用 C5.0 规则集)可详细研究这些组并描绘其特征。
例如,在零售领域,可能会使用这种客户组确定特殊优惠目标,以提高直接邮寄的响应率,或自定义某分部的存货产品范围以与其人口统计学基础的需求匹配。
1、 2、。 3、。
38
实验五、欺诈屏蔽/异常检测/神经网络
【实验目的】
1、熟悉各种聚类分析方法 2、了解神经网络分析方法与过程 3、掌握异常检测的方法。 【实验内容】 1、聚类分析。 2、神经网络建模。 3、异常检测。 【实验步骤】
此示例显示了 Clementine 在检测诈欺行为方面的应用。这一领域涉及农业发展财政补贴申请。有两种财政补贴类型在考虑之列:耕地开发财政补贴和退役田地财政补贴。
本例使用虚拟数据演示如何通过分析方法来发现与标准数据的偏差,同时突出了有必要进一步调查的异常记录。财政补贴申请金额取决于田地的类型和大小,您会特别关注其中的不合理部分。
分析通过两个阶段执行:先使用“异常检测”进行预筛选,然后使用“神经网络”模型进行深入分析。
本例使用名为 fraud_anomalies.str 的流,该流引用名为 grantfraudN.db 的数据文件。可以从任何 Clementine Client 安装软件的 Demos 目录下找到这些文件,也可以通过从 Windows 的“开始”菜单选择 Start > [All] Programs > SPSS Clementine 11.1 > Demos访问这些文件。文件 fraud_anomalies.str 位于 Classification_Module 目录下。
此示例显示了 Clementine 在检测诈欺行为方面的应用。这一领域涉及农业发展财政补贴申请。有两种财政补贴类型在考虑之列:耕地开发财政补贴和退役田地财政补贴。
39
本例使用虚拟数据演示如何通过分析方法来发现与标准数据的偏差,同时突出了有必要进一步调查的异常记录。财政补贴申请金额取决于田地的类型和大小,您会特别关注其中的不合理部分。
分析通过两个阶段执行:先使用“异常检测”进行预筛选,然后使用“神经网络”模型进行深入分析。
本例使用名为 fraud_anomalies.str 的流,该流引用名为 grantfraudN.db 的数据文件。可以从任何 Clementine Client 安装软件的 Demos 目录下找到这些文件,也可以通过从 Windows 的“开始”菜单选择 Start > [All] Programs > SPSS Clementine 11.1 > Demos访问这些文件。文件 fraud_anomalies.str 位于 Classification_Module 目录下。
此数据包含 9 个字段: • ID。唯一标识符。 • 姓名。申请人姓名。
• 区域。地理位置(中部/北部/西南部/东南部)。 • 田地质量。以整数为计量单位 - 农户申报的田地质量。 • 降雨量。以整数为计量单位 - 田地年降雨量。 • 田地收入。以实数为计量单位 - 申报的田地年收入。 • 主要农作物。主产农作物(玉米/小麦/马铃薯/油菜籽)。 • 申请类型。申请的财政补贴类型 (decommission_land/arable_dev)。 • 申请金额。以实数为计量单位 - 申请的财政补贴额。
1、预筛选
要快速筛选异常记录,可以使用异常检测节点(如样本文件 fraud_anomalies.str 中所示)。
首先使用变量文件节点连接到数据集 grantfraudN.db。此数据集包含字段名称,因此可以将表节点添加到流并执行以检查其构成。此外,还可以通过单击源节点中的类型选项卡并读取值对数据有一些初步了解。
40
在类型选项卡中,单击读取值读取数据,然后将姓名和 ID 字段的方向设置为无,因为建模过程中不使用这些字段。所有其他字段的方向应设置为输入,这样他们将作为输入内容包含在异常检测模型中。
41
在异常检测节点的“模型”选项卡中,选择训练数据中大多数异常记录的数目,然后输入值 10。然后执行此节点,并将生成的节点添加到流。
在已生成模型的“设置”选项卡中,可以选择相应选项放弃非异常记录,这样在评分过程中,只有标记为潜在异常的记录才保留在流中。
42
添加表节点并执行,以查看得分数据。模型生成的 $0-Anomaly 字段表明哪些记录为潜在异常记录。由于在“设置”选项卡中选中了放弃记录选项,所以仅列出标记为潜在异常的记录。还列出了每条记录的整体异常指数值,同时给出了对等组和最有可能造成记录异常的三个字段。
您可以使用图表更方便地查看要标记的记录。例如,您可以针对申请金额绘制田地大小,并附上 $0-Anomaly 字段来查看异常记录。(将散点图节点添加到生成的异常检测模型中。要查看显示所有记录(不仅仅是异常记录)的完整散点
43
图,请取消选择已生成模型中“设置”选项卡上的放弃记录选项。)
如您所期望的那样,将标志出金额最高的申请。不过,还标志出了许多其他金额的申请,其中包括某些金额最低的申请。要弄清事情缘由,有必要进一步观察数据。
44
2、数据调查。
要继续分析诈欺数据,可以使用勘察表来调查数据(如样本文件 fraud.str 中所示)。此操作可帮您设立对建模很有用的假设条件。在本例中,我们将逐步讲解从访问数据到训练神经网络的具体操作步骤。
45
首先,思考数据中可能存在的诈欺类型。一种可能是一块田地同时出现多份财政补贴资助申请表。
要检查重复申请,请将分布节点连接至数据集,然后选择姓名字段(假定该字段具有识别每块田地的唯一值)。最终的分布图将显示一些进行了多次申请的田地。(要查看结果,请单击计数列标题,按计数对行进行降序排列。)
46
要继续分析诈欺数据,可以使用勘察表来调查数据(如样本文件 fraud.str 中所示)。此操作可帮您设立对建模很有用的假设条件。在本例中,我们将逐步讲解从访问数据到训练神经网络的具体操作步骤。
首先,思考数据中可能存在的诈欺类型。一种可能是一块田地同时出现多份财政补贴资助申请表。 要检查重复申请,请将分布节点连接至数据集,然后选择姓名字段(假定该字段具有识别每块田地的唯一值)。最终的分布图将显示一些进行了多次申请的田地。(要查看结果,请单击计数列标题,按计数对行进行降序排列。)
以此为基础,您可以使用选择节点放弃具有多个记录的田地所对应的记录。 然后,您只需关注申请资助的单块田地的特征就可以了。您可以使用 Clementine 构建一个模型,根据田地的大小、主要农作物类型、土壤类型等来评估该田地的期望收入。要准备建模,您需要在导出节点中使用 CLEM 语言导出新字段。例如,您可以通过 farmsize * rainfall * landquality 这一简单公式评估收入。
47
要查明偏差,需要绘制 diff 的直方图。通过叠加申请类型来检查其会不会影响评估收入之间的差距很有意思。
48
既然所有大偏差都发生在 arable_dev 财政补贴上,就可以只选择 arable_dev 财政补贴申请。为此,将选择节点添加到名为 diff 的导出节点,然后使用 CLEM 表达式 claimtype == 'arable_dev' 选择记录。
3、训练神经网络
在最初的数据调查中,在考虑各种因素的情况下将实际申请金额与期望金额进行比较很有用。这就是神经网络的意义所在。在数据中使用变量,神经网络可以根据目标变量或相关变量来进行预测。通过这些预测变量,您可以查明偏差的记录或记录组。在最初的数据调查中,在考虑各种因素的情况下将实际申请金额与期望金额进行比较很有用。这就是神经网络的意义所在。在数据中使用变量,神经网络可以根据目标变量或相关变量来进行预测。通过这些预测变量,您可以查明偏差的记录或记录组。
建模准备过程中,应首先将类型节点添加到当前流中。由于要使用数据中的其他变量来预测申请值,您可以使用类型节点将申请金额的方向设置为输出。
49
添加神经网络节点并执行。一旦神经网络训练结束,可以将已生成模型添加到流,然后绘制一张预期申请金额与实际申请金额的比较图。
大多数案例的预期申请金额与实际申请金额都基本相符。导出另一个 claimdiff 字段(与之前导出的“收入差额”字段类似)。此导出节点使用 CLEM 表达式
(abs(claimvalue - '$N-claimvalue') / 'claimvalue') * 100
为了说明实际申请金额与预估申请金额之间的差异,请使用 claimdiff 直方图。您主要想了解申请金额比预估金额(由神经网络判断)高的人。
50
通过在直方图划出区域,您可以右键单击划出的区域,然后生成一个选择节点以进一步调查 claimdiff 值相对较大(如大于 50%)的人。这些申请有待进一步调查。。
51
实验六、分类和回归树节点(C&RT)
【实验目的】
1、掌握C&RT分类算法。 2、掌握决策树的建立和修剪
3、了解C&RT分类算法在管理决策中的应用 【实验内容】
1、C&RT分类算法建立决策树 【实验步骤】
分类和回归树节点 (C&RT) 是一种基于树的分类和预测方法,此方法使用递归分区将训练记录分割为多个具有相似的输出字段值的段。在本示例中,将 C&RT 应用于某市场研究,其中的目标字段为有意预订有线电视交互服务。预测变量字段包括年龄、性别、教育、收入类别、每天看电视的时间和子女数(按有序集合编码,因为值 8 表示 8 个或更多)。
此示例使用名为 Newschancart.str 的流,此流引用名为 NewsChan.sav 的数据文件。可以从任何 Clementine Client 安装软件的 Demos 目录下找到这些文件,也可以通过从 Windows 的开始菜单下选择 Start > [All] Programs > SPSS Clementine 11.1 > Demos 来访问这些文件。文件 Newschancart.str 位于 Base_Module 目录下。
1、创建树
要创建流,可执行下列操作:
在 Demos 文件夹中添加指向 NewsChan.sav 的 SPSS 文件源节点。为流添加类型节点。
52
在类型节点中选择读取值以实例化字段。选择 NEWSCHAN 并将其类型设置为标志,将其方向设置为输出。其他所有字段用作预测变量(输入)。
将 C&RT 节点连接到类型节点。在“模型”选项卡上,选择启动交互会话作为构建选项。这样,在执行节点时将启动“交互树”窗口,通过该窗口可以在生成模型之前生成并编辑树。
53
在“专家”选项卡上选择专家模式并选择修剪树和使用标准误规则。将最小杂质改变值设置为 0.003。增加此值可避免进行改进意义十分微小的分割,从而倾向于生成较简单的树。
54
要指定停止标准,可在“专家”选项卡上单击停止。在“停止标准”对话框中选择使用绝对值。将最小绝对临界值更改为 25 和 10,然后单击确定。
行节点。此时将出现交互树窗口,在其中可以生成并编辑树。
最初,仅显示根节点。统计显示训练数据中有 442 个记录。因为尚未分割树,因此所有的记录 (100%) 都落在此节点中。在整个示例中,有 215 个记录对预订的响应为是,其总响应率为 48.6%。使用树模型,我们可以尝试是否能够通过找到最有可能作出积极响应的子组来提高此匹配率。
提示:要查看字段标签,例如否和是响应的标签,可单击菜单栏上的显示字段和值的标签按钮
在“查看器”选项卡上,单击根节点以选中它并从菜单中选择以下项: 树 生成树和修剪
55
生成的树具有五层和五个终端节点。(要查看整个树,可使用缩放工具或单击工具栏右侧的图窗口工具按钮。)如果尚未选中修剪选项,则树可能会复杂得多。修剪操作基于成本复杂性算法,此算法可根据终端节点数调整风险评估。
56
2、生成模型和节点以便评分
使用决策树时,共有几个选项可用于生成或导出会话结果。其中两个常用的选项为根据当前树生成模型或根据当前树生成选择节点。这些选项会在下面各节中进行说明。
有关其他选项的说明,例如过滤节点和规则集,请参阅 Clementine 帮助。
57
根据当前树生成模型
可使用此流生成模型,该模型可根据分配到节点的记录的积极响应率对这些记录进行评分。在交互树窗口的“查看器”选项卡上,从“生成”菜单中选择生成模型。
此时将出现“生成新模型”对话框。 在“生成新模型”对话框中,输入新模型的名称(可选),然后单击确定。 该模型位于流工作区中。
在流工作区中,将生成的 NEWSCHAN1 模型连接到类型节点。
在生成的 NEWSCHAN1 模型中,单击设置选项卡,选择计算置信度和规则 ID,然后单击确定。
58
连接表节点并执行流。
已执行的表中显示了可能接受有线电视服务预订的用户的记录。
59
$R-NEWSCHAN 列显示了对这些记录的预测结果。如果某记录显示的值为 1,则可以预测该用户对预订的响应为是。
如果需要,可将此生成的模型保存到模型选项板上以备将来的数据使用。右键单击流中的 NEWSCHAN1 模型并选择添加到模型选项板。然后单击模型选项板上的模型并选择保存模型。
生成选择节点
还可以生成选择节点,该节点包括所有落在节点 2 和 13 中的记录。然后,可以使用具有新数据的选择节点确定哪些用户最有可能对预订做出积极的响应。
► 在交互树窗口中,使用按住 Ctrl 键并单击的方法选中节点 2 和 13。 ► 从“生成”菜单中,选择选择节点。 生成的选择节点位于流工作区中。
60
。
该生成的选择节点可根据在交互树窗口中为节点 2 和 13 选择的标准来构建表达式。
► 将生成的选择节点连接到流中的类型节点上。
► 将表连接到选择节点并执行该表以查看记录。注意,此次仅选中 226 个记录而不是原来的 442 个记录。
今后还可将此选择节点应用于其他数据集中;可根据同样的已定义的年龄、收入、教育和性别属性过滤这些新数据。
本示例演示了如何在市场研究中应用 C&RT 节点和决策树来确定那些愿意预订有线电视交互服务的用户。通过使用预测变量,例如年龄、性别、教育、收入类别、每天看电视的时间和子女数,我们可以预测和分类响应以便在商业竞争中获取最高响应率。
树模型使用简单,易于理解。系统将构建树并递归分割每个分支直到符合一个或多个停止标准为止。然后,可根据使用的建模方法在每个分割处自动选择最合适的预测变量。
如本示例所示,可使用树生成模型或选择节点并将其应用到以后的数据集中。
61
实验七、多项 Logistic 回归
【实验目的】
1、熟悉Logistic 回归。
2、掌握Clementine 中Logistic 回归建模方法。 【实验内容】
1、在Clementine 中建立多项Logistic 回归 【实验步骤】
Logistic 回归是一种统计方法,它可根据输入字段的值对记录进行分类。这种统计方法类似于线性回归,但是它使用的是分类目标字段而非数值目标字段。
例如,假设某个电信服务提供商已按照服务使用模式对其客户群进行了划分,将这些客户分类到四个组中。如果可使用人口数据预测组成员,则可以为单个预期客户定制服务使用模式。
此示例使用名为 telco_custcat.str 的流,此流引用名为 telco.sav 的数据文件。可以从任何 Clementine Client 安装软件的 Demos 目录下找到这些文件,也可以通过从 Windows 的“开始”菜单下选择 Start > [All] Programs > SPSS Clementine 11.1 > Demos 来访问这些文件。文件 telco_custcat.str 位于 Classification_Module 目录下。
本示例将焦点集中于使用人口数据预测使用模式。目标字段 custcat 有四个可能的值对应于四个客户组,如下所示:
值标签 1服务 2服务 3服务 附加基本电子62
4服务 全套因为目标含有多个类别,因此将使用多项模型。如果目标含有两个截然不同的分类,例如是/否,真/假,或流失/保持,则会转而创建二项模型。
1、构建流
在 Demos 文件夹中添加指向 telco.sav 的 SPSS 文件源节点。
添加一个用来定义字段的类型节点,确保所有类型均设置正确。例如,可以将值为 0 和 1 的大多数字段视为标志字段,但对于某些字段(如性别),将其视为具有两个值的集合字段更为准确。
提示:要更改具有相似值(如 0/1)的多个字段,请单击值列标题,以便按值对字段进行排序,然后按住 Shift 键的同时使用鼠标或箭头键选择所有要更改的字段。然后您可以右键单击这些选择,以更改所选字段的类型或其他特性。
63
因为将性别视为集合比视为标志更精确一些,所以请单击其“类型”值,然后将其更改为集合。将客户类别字段的方向设置为输出。所有其他字段的方向都应设置为输入。因为此示例主要关注人口统计,所以请使用过滤节点以选取相关字段(地区、年龄、婚姻状况、地址、收入、教育程度、行业、退休、性别、居住地和客户类别)。其他字段可以排除在此分析之外。
(另外,您可以将这些字段的方向更改为无,而不要排除这些字段,或者选择要在建模节点中使用的字段。)
64
2、浏览模型
在 Logistic 节点上,单击模型选项卡并选择逐步法。选中多项、主效应和将常量纳入方程式。
将目标的底数类别保留为 1。模型将对其他客户与预订基本服务的客户进行比较。
在“专家”选项卡上,选中专家模式,选中输出,然后在“高级输出”对话框中选中分类表。
运行节点以生成模型,该模型会添加到右上角的模型选项板中。要查看其详细信息,请在生成的模型节点上用右键单击并选择浏览。
“模型”选项卡中显示了用于将记录分配到目标字段的每个类别的方程式。因为共有四个可能的类别,而其中之一是底数类别,因此选项卡中有三个方程式,其中类别 3 表示附加服务,等等。
65
“汇总”选项卡显示了(包括其他内容)模型中使用的目标字段和输入字段(预测变量字段)。注意,这些字段是根据逐步法实际选择出来的字段,不是为进行分析而提交的完整列表。
“高级”选项卡上显示的项目取决于在建模节点的“高级输出”对话框中选中的选项。其中通常显示的一个项目是观测值处理概要,它显示了落在目标字段每个类别中的记录的百分比。这将生成一个空模型用作比较的基础。在不构建使用预测变量的模型的情况下,最好的预计结果可能是将所有的客户分配到最普通的组 3(附加服务组)中。
如果基于训练数据将所有客户分配到空模型,则得到的正确率将是 281/1000 = 28.1%。“高级”选项卡还包括其他信息,使您能够检查模型的预测。然后,可将这些预测与空模型的结果相比,以查看使用此数据的模型的执行效果。
66
在“高级”选项卡底部,分类表显示了此模型的结果,其正确率为 39.9%。特别是,此模型在识别全套服务客户(类别 4)时表现优异,而在识别电子服务客户(类别 2)时表现很差。如果想提高预测类别 2 中客户的准确性,可能需要再找到一个预测变量来识别此类客户。
依赖于您所期望的预测,模型可充分满足您的需求。例如,如果您对识别类别 2 中的客户并不关心,那么该模型的准确性足以满足需求。这种情况可能是,电子服务仅是一种为吸引顾客而出售且获利微薄的产品。
例如,如果投资的最高回报来自于落在类别 3 或类别 4 中的客户,则该模型能够提供所需的信息。
当构建模型时,可使用“高级输出”对话框中的大量诊断信息来评估模型实际拟合数据的程度。请参阅Logistic 回归模型高级输出 详细信息。 Clementine 中用到的建模方法的数据原理的说明在《Clementine 算法指南》中列出,该指南位于任何 Clementine Client 安装软件的文档目录下;也可以通过从 Windows 的“开始”菜单下选择 Start > [All] Programs > SPSS Clementine 11.1 > 文档来访问此文档。
67
实验八、综合实验:电力负荷预测
【实验目的】
1、熟悉数据挖掘预测技术。 2、掌握Clementine 中预测方法。 【实验内容】
1、对给定的数据进行预处理, 2、在Clementine 中建立预测模型
3、方法采用回归、广义线性Genlin模型、支持向量机模型回归各做一次预
测,分析预测结果的准确率。 4、比较各自的预测结果 【实验要求】
1、考试前,上交打印的实验报告
a) 写清楚实验名称
b) 写清楚自己的专业、年级、学号、姓名。
2、对各项实验内容都有实验步骤的截图。 3、对各项实验内容都要有分析结论。
68
实验九、综合实验:信用卡数据综合分析
【实验目的】
1、熟悉Clementine软件从数据导入到结果输出的全过程。 2、复习Clementine 软件中聚类方法。 3、复习Clementine 软件中的关联分析方法 【实验内容】
1、对给定的数据进行预处理,
2、在Clementine 中建立信用卡数据分析模型;
3、聚类分析:使用K-Means、Kohonen、两步法,进行聚类,并简单给出
结论;
4、异常点分析:使用“异常”节点进行异常分析,并简单给出结论; 5、关联规则分析:对其中感兴趣的字段进行关联分析,画出网络图,并简
单给出结论。 【实验要求】
1、考试前,上交打印的实验报告
c) 写清楚实验名称
d) 写清楚自己的专业、年级、学号、姓名。
2、对各项实验内容都有实验步骤的截图。 3、对各项实验内容都要有分析结论。
69
因篇幅问题不能全部显示,请点此查看更多更全内容