数据仓库实验三:分类规则挖掘实验

news/2024/5/21 1:52:04

目录

    • 一、实验目的
    • 二、实验内容和要求
    • 三、实验步骤
      • 1、创建数据库和表
      • 2、决策树分类规则挖掘
        • (1)新建一个 Analysis Services 项目 jueceshu
        • (2)建立数据源视图
        • (3)建立挖掘结构 DST.dmm
        • (4)部署决策树挖掘项目并浏览结果
      • 3、朴素贝叶斯分类规则挖掘
        • (1)建立挖掘结构 Bayes.dmm
        • (2)部署朴素贝叶斯挖掘项目并浏览结果
    • 四、实验结果分析
    • 五、实验总结体会


一、实验目的

  通过本实验,进一步理解决策树算法、朴素贝叶斯算法进行分类的原理,并掌握利用Sql Server等工具平台进行分类规则挖掘的方法,掌握挖掘结构、挖掘模型的基本概念,能够使用数据挖掘向导创建数据挖掘结构和模型,掌握数据挖掘设计器的使用方法,掌握模型查看器方法 ,理解分类规则挖掘常用的参数含义和设置方法。

二、实验内容和要求

  针对实际需求,构建格式规范的数据集,并能够借助于SQL Server、Weka、SPSS等工具平台,利用决策树(Decision tree)算法、朴素贝叶斯(Naïve Bayes)算法进行分类和预测,正确分析实验结果,完成实验报告。

三、实验步骤

  以下以SQL Server作为工具,完成数据集的构建和分类规则的挖掘(利用决策树分类、朴素贝叶斯分类算法)。——以下内容,仅供参考!

1、创建数据库和表

在SSMS中建立DM数据库(模拟不同群体、不同收入、不同信誉的人群是否购买计算机的事实),分别设计DST表(用于建立分类模型的事例表)、DST1表(用于预测的事例表)。DST表的结构和内容如下所示。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
DST1表的结构和DST表相同,被用于预测/验证,DST1的内容如下:

在这里插入图片描述

DST1有3条记录,其中“是否购买计算机”列为空,待预测后确定。

2、决策树分类规则挖掘

在 Sql Server Business Intelligence Development Studio (BIDS) 采用如下步骤,基于决策树挖掘分类规则。

在这里插入图片描述

(1)新建一个 Analysis Services 项目 jueceshu

定义数据源DM.ds,对应的数据库为前面建立的DM数据库。

在这里插入图片描述

(2)建立数据源视图

定义数据源视图DM.dsv,它包含DST表,用于基于决策树建立分类模型;
定义数据源视图DM1.dsv,它包含DST1表,基于建立的决策树分类模型进行预测。

数据源视图DM.dsv:

在这里插入图片描述
数据源视图DM1.dsv:

在这里插入图片描述

(3)建立挖掘结构 DST.dmm

新建挖掘结构,在“创建数据挖掘结构”页面的“您要使用何种数据挖掘技术?”选项下,选中列表中的“Microsoft决策树”。

在这里插入图片描述
选择数据源视图为DM。

在“指定表类型”页面上,在DST表的对应行中选中“事例”复选框,并单击下一步按钮。

在这里插入图片描述
在“指定定型数据”页面中,将“编号”列设为键列,把“是否购买计算机”设为可预测列,把其它所有列设为输入列。

在这里插入图片描述
在“创建测试集”页面上,“测试数据百分比”选项的默认值为30%,将该选项更改为0.

在这里插入图片描述
在完成向导页面的“挖掘结构名称”和“挖掘模型名称”中,都输入DST。

在这里插入图片描述
单击“挖掘模型”选项卡,右击“Microsoft_Decision_Trees”选项,在出现的快捷菜单中选择“设置算法参数”命令。将COMPLEXITY_PENALTY,MINIMUM_SUPPORT,SCORE_METHOD,SPLIT_METHOD等参数值进行适当设置。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(4)部署决策树挖掘项目并浏览结果

先处理(部署)、再浏览。

在这里插入图片描述

在挖掘模型查看器中,浏览决策树分类的结果。

在这里插入图片描述
上面已经建立了决策树分类模型。接下来,就可以利用这个分类模型,对DST1表中3个数据样本的“是否购买计算机”列的值进行预测,步骤如下:

① 单击“挖掘模型预测”选项卡,再单击“选择输入表”对话框中的“选择事例表”命令,指定DM1数据源视图中的DST1表。

在这里插入图片描述
② 保持默认的字段连接关系,将DST1表中的各个列拖放到下方的列表中,选中“是否购买计算机”字段前面的“源”,从下拉列表中选择“DST”选项,而其它字段的数据直接来源于DST1表,只有“是否购买计算机”字段是采用前面训练样本集得到的决策树模型来进行预测的。

在这里插入图片描述
③ 在任一空白处右击,并在下拉菜单中选择“结果”,出现如下所示的分类结果。

在这里插入图片描述

3、朴素贝叶斯分类规则挖掘

  朴素贝叶斯分类的应用,还是基于DM数据库的DST和DST1表,DST用于训练,DST1用于预测,过程此处不再进行描述(预测结果与前面的决策树预测的结果相同),请同学们自行模索。

在这里插入图片描述

具体步骤与决策树分类规则挖掘类似:

(1)建立挖掘结构 Bayes.dmm

在这里插入图片描述

在这里插入图片描述

(2)部署朴素贝叶斯挖掘项目并浏览结果

在这里插入图片描述
查看“挖掘模型”:

在这里插入图片描述
点击“挖掘模型查看器”:

在这里插入图片描述
点击“挖掘模型预测”:

在这里插入图片描述
查看预测结果:

在这里插入图片描述
预测结果和决策树预测结果相同。

四、实验结果分析

1、决策树

在这里插入图片描述

在这里插入图片描述 在这里插入图片描述

学生中,有87.5%购买计算机;非学生中,58.33%购买计算机。由此可见,学生购买计算机的概率比较大。

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

在非学生中,收入“高”的有75%购买计算机;收入“中”的有50%购买计算机;收入“低”的有25%购买计算机。由此可见,收入越高,购买计算机的概率越高。

2、依赖关系网络

在这里插入图片描述

{ \{ {学生 } \} } ⇒ \Rightarrow { \{ {是否购买计算机 } \} }是强关联规则。

在这里插入图片描述

五、实验总结体会

  在挖掘数据仓库中的分类规则实验前,需要对数据进行预处理和清洗,确保数据的质量和完整性,数据的完整性和准确性直接影响了挖掘结果的可信度。这包括去除重复值、处理缺失值和异常值等。
  选择合适的特征对于挖掘有效规则至关重要。使用特征选择技术来排除不相关或冗余的特征,以及特征提取技术来创建新的、更有信息量的特征。用特征选择算法来确定最相关的特征,以提高分类模型的准确性和效率。根据实验的目标和数据的特点,选择适合的分类模型。常用的分类算法包括决策树、朴素贝叶斯、支持向量机等。可以通过交叉验证等方法来评估模型的性能。
  决策树是一种基于树形结构的分类算法,通过对特征进行逐步划分来进行决策。易于理解和解释,可视化效果好。适用于离散型和连续型数据,处理分类和回归问题都有效。对数据的预处理要求相对较低,对异常值和缺失值有一定的鲁棒性。可以处理大规模数据集,对于非线性关系的数据有较好的适应能力。能够输出清晰的规则,便于理解和应用。
  朴素贝叶斯是一种基于贝叶斯定理的概率分类算法,假设特征之间相互独立。计算简单,适用于大规模数据集。主要用于文本分类和情感分析等任务,对于高维度数据和稀疏数据表现较好。需要注意处理连续型数据和处理缺失值的方法。训练和预测速度快,对于数据量大、特征维度高的情况下表现优秀。对于噪声数据有一定的鲁棒性。
  在实验结束后,需要对分类模型进行评估。常用的评估指标包括准确率、召回率、F1值等。同时,可以使用混淆矩阵来分析分类结果的详细情况。对于实验结果,需要进行解释和分析。可以通过特征重要性分析、规则提取等方法来理解分类模型的决策过程。


http://www.mrgr.cn/p/34562273

相关文章

cap和base分布式理论

一、分布式理论 1.CAP理论 CAP理论是说对于分布式数据存储,最多只能同时满足一致性(C,Consistency)、可用性(A, Availability)、分区容忍性(P,Partition Tolerance&…

JVM的垃圾回收机制(GC机制)

在Java代码运行的过程中,JVM发现 某些资源不需要再使用的时候,就会自动把资源所占的内存给回收掉,就不需要程序员自行操作了。“自动回收资源”就是JVM的“垃圾回收机制”,“垃圾回收机制”也称"GC机制"。 对于Java代码…

python的多继承中的方法重写

前言 多继承势必要解决同名属性冲突。今天测试一下。 正文 左右同名(左侧优先)当左侧基类和右侧基类中存在同名方法时,不管是否包含重写,都是左侧优先。今天主要探讨的是,左侧基类中不直接包含同名方法。约定我们约定,下面的标题情况全都是在左侧基类不直接包含同名方法的。…

【自动化测试】关键字驱动接口自动化测试

1. 概念:  在软件测试领域,"数据驱动"和"关键字驱动"是两种自动化测试的设计模式, 它们都旨在提高测试效率,减少重复劳动,但它们的实现方式和应用场景有所不同。(1) 数据驱动(Data-Driven Testing, DDT):**优点**     a. 可变数据:测试数据的…

2024年教你学浪视频如何导出

学浪视频已成为知识探索的灯塔。2024年掌握学浪视频的导出技巧,就如同握住了一把开启智慧宝库的钥匙。想象一下,无论是在通勤的地铁上,还是在宁静的咖啡馆角落,你都能随时观看自己的学习视频 下面是我已经打包好的学浪视频下载工…

AlphaFold3(AF3)简单介绍:预测各种生物分子结构和它们之间相互作用的深度学习模型

参考: 文章地址: https://www.nature.com/articles/s41586-024-07487-w https://blog.google/technology/ai/google-deepmind-isomorphic-alphafold-3-ai-model/ AlphaFold3体验官网: https://golgi.sandbox.google.com/ 《Accurate structure prediction of biomolecula…

实验4:代码审查

实验4 代码审查 一、实验题目 :代码审查 二、实验目的 1、熟悉编码风格,利用开发环境所提供的平台工具对代码进行自动格式审查; 2、根据代码规范制定代码走查表,并按所制定的审查规范互审代码。 三、实验内容 1、IDEA环境和PyCharm环境二选一; IDEA环境 (1)预先准备在ID…

html格式化压缩美化工具

html格式化工具为您提供html格式化,html美化排版,html压缩工具,html在线格式化,html代码在线格式化,html在线压缩,html格式化,可以将凌乱的前端html代码整理的整整齐齐,凌乱的html代码不好调试,冗余代码多了也会严重影响速度,当你在为提高了用户体验,做出了很绚丽的效果而欣喜…

微服务领域的寻路者 —— Eureka深度探索与实战秘籍

文章目录 一、引言定义目标一个接地气的例子引言小结 二、Eureka架构2.1 Eureka Server一个有趣的例子2.2 Eureka Client一段简单的代码示例架构小结 三、工作流程1. 服务注册2. 心跳检测3. 服务发现4. 健康检查与失效剔除工作流程小结 四、核心机制4.1 服务注册与续约4.2 服务…

英码科技推出昇腾系列AI加速卡:专为视频解析与模型推理场景打造,更具成本竞争力!

当前,人工智能的发展已进入加速渗透千行百业的阶段,算力已然成为数字化转型关键的新质生产力。随着国际挑战的加剧,国产算力的发展趋势愈发明显,市场需求也呈现出激增的态势。在这一大背景下,华为昇腾以其强大的技术实…

地下管线管网三维参数化建模软件MagicPipe3D V3.5

经纬管网建模系统MagicPipe3D(www.magic3d.net)自主安全可控,本地离线参数化构建三维管网模型(管道、接头、附属物等),输出标准3DTiles、Obj等格式,支持Cesium、Unreal、Unity等引擎可视化查询分…

实验四-代码审查

一、实验题目 :代码审查 二、实验目的 1、熟悉编码风格,利用开发环境所提供的平台工具对代码进行自动格式审查; 2、根据代码规范制定代码走查表,并按所制定的审查规范互审代码。 三、实验内容 1、IDEA环境和PyCharm环境二选一; IDEA环境 (1)预先准备在IDEA环境下实现对输…

基于FPGA的去雾算法

去雾算法的原理是基于图像去模糊的原理,通过对图像中的散射光进行估计和去除来消除图像中的雾霾效果。 去雾算法通常分为以下几个步骤: 1. 导引滤波:首先使用导引滤波器对图像进行滤波,目的是估计图像中散射光的强度。导引滤波器…

json在线解析及格式化工具

JSON 可以将程序语言对象中表示的一组数据转换为字符串,然后就可以在网络或者程序之间轻松地传递这个字符串,并在需要的时候将它还原为各编程语言所支持的数据格式,例如在 PHP 中,可以将 JSON还原为数组或者一个基本对象。在用到AJAX时,如果需要用到数组传值,这时就需要用…

Docker 桥接模式下端口映射会绕过防火墙

问题描述 使用Docker桥接模式启动了一个MySQL容器 查看防火墙发现并未开启3306端口,但该宿主机3306端口仍能被第三方机器访问telnet 152.51.32.11 3306 问题本质 Docker 在进行端口映射时,已经自动使用iptables命令修改了防火墙规则;并且这个规则不会被ufw显示、管理;甚至…

什么是Facebook付费广告营销?

Facebook作为全球最大的社交平台之一,成为了跨境卖家不可或缺的营销阵地。它不仅拥有庞大的用户基数,还提供了丰富的广告工具和社群互动功能,让商家能够精准触达目标市场,提升品牌影响力。云衔科技通过Facebook付费广告营销的专业…

ElementUI——elementui重复引入样式

前言 按着文档操作后发现存在样式重复引入的问题,尝试了一系列的配置都未生效,最终是直接生成样式导入解决; 文档:https://element.eleme.io/#/zh-CN/component/custom-theme#yin-ru-zi-ding-yi-zhu-ti 工具:https://elementui.github.io/theme-chalk-preview/#/zh-CN 内容…

【元对象系统概述】

元对象系统概述 🌟 元对象🌟 元对象系统🌟 QT官方文档中给出的定义🌟《Qt5.9 C开发指南》中给出的定义 🌟 元对象 元对象是一个描述类的信息的数据结构,在qt中常常与QObject的类相关联。 可以通过QObject::…

LeetCode 404.左叶子之和

LeetCode 404.左叶子之和 1、题目 题目链接:404. 左叶子之和 给定二叉树的根节点 root ,返回所有左叶子之和。 示例 1: 输入: root [3,9,20,null,null,15,7] 输出: 24 解释: 在这个二叉树中,有两个左叶子,分别…

通过Dockerfile创建海量数据库VastbaseG100的docker镜像

1.Dockerfile文件内容 FROM centos:centos8LABEL maintainer="xh"COPY Vastbase-G100-installer-2.2_Build15\(17408\)-kylin_v10sp2-x86_64-no_mot-20231221.tar.gz /opt COPY db_install.rsp /opt COPY docker-entrypoint.sh /optRUN set -x \&& cd /etc/y…