数据挖掘关联规则
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
双击刚刚拖入的【Input Data Source】节点,选择前面导入的数据集 SAMPSIO.Z HANGXUAN:
关闭对话框,询问是否保存变化时,点击【是(Y)】。 鼠标左键按住上方工具栏中的【Association】节点 不放,拖入右边的空白区域之 后再放开鼠标。将鼠标移向旁边的【SAMPSIO.ZHANGXUAN】节点周围,当变成 十字型时,鼠标左键按住不放,拖向【Association】节点,此时 SAS/EM 界面如下:
1)单一关联规则挖掘:产品之间 单一关联规则要求挖掘产品之间的关系,则属性 NUMSRVID (产品编号)是此次分 析的目标。双击刚刚拖入的【Input Data Source 】节点。切换到【Variables】选 项卡,在【Model Role】列【CUSTID】行处点击右键,选择【Set Model Role】 菜单。设置 CUSID(客户编号)为 id,设置 DATATIME(交易日期)为 rejected,表明此 不为序列规则挖掘,设置 NUMSRVID(产品编号)为 target,即本次分析的目标,并将
面造成不了大范围好的影响,因此不予考虑,选取最小支持度为 1%。项集最大数 目取默认值。最小置信度取 50%。
关闭【Association】对话框,右键【Association】节点图标,在弹出的下拉选项中 选择【Run】,得到运行结果如下:
2) 层次关联规则挖掘:产品类型之间或产品类型与产品之间 层次关联规则挖掘要求挖掘产品类型之间或产品类型与产品之间的关系,则属性 N UMSRVID(产品编号)和 srvClass(产品类型)是此次分析的目标。 因为 SAS EM 的 association 节点只允许一个变量作为 Target,因此在导入数据之 前需要对数据集 association2014.csv 做一些预处理。在 association2014.csv 中, 复制所有数据接在原有数据之后,现在数据集由两部分完全相同的数据构成。然后 用列 srvClass 的值(不重复)替换掉复制的数据部分列 NUMSRVID 的值,因此现 在列 NUMSRVID 中既有原来“产品编号”的值,也有了复制过来的“产品类型”的值。
在 General 选项卡中,设置分析模式为 Sequence,设置支持度为 2%。
结果如下图:
h Gf/ch F D h ’ g /
三、实验总结: 通过本次实验作业, 我掌握了如何使用 SAS EM 来进行关联规则挖掘的方法。 并且 关联规则挖掘来发现事情之间的联系。帮助我们进行预测,在现实中有很强的指导
按照提升度降序排列:
按照支持度降序排列:
3) 多维关联规则挖掘:客户类型与产品之间 多维关联规则挖掘客户类型与产品之间的关系,因此此次分析的目标为 userType (客户类型)和 NUMSRVID(产品编号)。 同样的在用户 SAS 进行分析前要对数据集进行处理。 按照在层次关联规则挖掘中同 样的方法, 新建列“userType&NUMSRVID”, 将“客户类型”和“产品编号”整合到一起。 同样需要对 uerType 进行编号,映射关系如下: 表格 2. 多维关系 userType 映射表
在 Variable 选项卡中,设置列”userType_NUMSRVID”为 target,并将其 Measure ment 由 Interval 改为 nominal,以便进行关联规则分析。
在 Association 节点中,设置关联规则的分析模式。
设置完成后,运行结果如下图:
4) 序列规则挖掘 对序列模式发现,需要第三个变量,用来标识事件发生的顺序。
意义。在关联规则挖掘时主要关注两个问题:找出交易数据库中所有大于或等于用 户指定的最小支持度的频繁项集;以及利用频繁项集生成所需要的关联规则,根据 用户设定的最小可信度筛选出强关联规则。 在关联规则挖掘中有几个指标需要注意,它们是置信度、支持度和提升度。在进行 关联规则的数据挖掘中,通过指定这三个标准的最小值,三个标准的值都大于临界 值的关联规则就被列出。而且以上这三个标准缺一不可,孤立地使用这三个标准中 的任意一个,都可能导致错误结果。
接下来,将数据挖掘外接程序示例数据集中的 association2014.csv 表导入 SAS 逻 辑库。再双击 SAS 资源管理器中的逻辑库,从【File】菜单下调出【Import Data】 对 话 框 :
点 击 【 N e x t
> 】 , 选 择
c s v
文 件 及 相 应 的 工 作 表
原值 编号 动感地 621 全球通 622 神州行 623
在 SAS 中导入处理后的数据集 association2014 – zhangx2.csv,放在的 ASSOCI A TION_ZHANGX2 下。 在 SAS EM 中连接 Input Node 和 Association Node,并设置 Input Node 的数据 源为 association2014 – zhangx2.csv。
使用的数据集: 数据集名称:association2014.csv 数据集字段说明: CUSTID-客户编号 userType-客户类型 NUMSRVID-产品编号 datetime-交易日期 srvClass-产品类型 二、实验过程:
从 SAS 顶端的【 Solutions 】菜单下调出企业数据挖掘【 Enterprise Miner 】:
由于列 NUMSRVID 的类型为数值型,而列 srvClass 的类型为字符型,因此我将列 srvClass 的值编号代替。对应关系如下表: 表格 1. srvClass 的值与编号对应关系
原值
A B C D E F G
编号
661
662
663
664
665
666
667
按照前文所述方法导入数据 association2014-zhangx.csv,放在 ASSOCIATION_Z HANGX 下。 在 EM 中同样的连接 Input Node 和 Association Node, 设置 Input Node 的数据源 为 association2014-zhangx.csv,设置 Variable 属性如下:
其 Measurement 设为 nominal 类型,才可以进行关联规则分析。关闭对话框,询 问是否保存变化时,点击【是(Y)】。
双击右边的【Association】节点,切换到【General】选项卡的界面如下。默认的 分析模式是【By Context】,它根据输入数据源的结点信息选择合适的分析方法。 如果输入数据集包括一个 id 变量和 target 变量,该结点自动执行关联分析。在【A nalysis mode】中选择【Association】模式,下面的选项是设置关联最小支持度、 项集最大数目和规则最小置信度。设置最小支持度(min_sup)为 1%。经过分析,发 现支持度最大为约 8%,有一部分约 2%,大多数小于 1%。作者认为支持度过小的 话,则代表着事务 AB 同时出现只存在于很小的范围内,改善此种情况也对整体局
因为变量 NUMSRVID 已经同时具有”产品编号”和“产品类型”两种值,因此直接将其 设为 target 即可。在 Association 节点中,设置关联规则的分析模式。
设置完毕,点击”运行”。因为分析结果较多,且置信度 Confidence 都在 90%以上, 因此对结ቤተ መጻሕፍቲ ባይዱ按照支持度 Support 和提升度 Lift 排序,结果如下图:
:
点击【Next >】,选择相应的 SAS 逻辑库并命名:
点击【Finish】,完成数据导入操作。回到 SAS/EM 界面,双击 Untitled 节点并重 命名为 Analysis。
鼠标左键按住上方工具栏中的【Input Data Source】节点 不放,拖入右边的空白 区 域 之 后 再 放 开 鼠 标 , 此 时 S A S / E M 界 面 如 下 :
一、实验内容: 1、单一关联规则挖掘:产品之间 2、层次关联规则挖掘:产品类型之间或产品类型与产品之间 3、多维关联规则挖掘:客户类型与产品之间 4、序列规则挖掘
关联规则挖掘(Association rule mining)是数据挖掘中最活跃的研究方法之一, 可以用来发现事情之间的联系。如果两个或者多个事务之间存在一定的关联关系, 那么,其中一个事务就能够通过其他事务预测到。本实验要求根据提供的数据集实 现单一关联规则挖掘,层次关联规则挖掘,多维关联规则挖掘,序列规则挖掘,并 得出相关结论。