数据挖掘(DM)

目录

2.1 概念、主要任务

DM与数据仓库的关系

DM与统计的关系

DM与商务智能关系

DM与大数据的关系

数据预处理

方法

2.2 关联分析:

1. 概念

2. 先验知识和Apriori算法

3. Apriori算法工作原理

4. 计算规则 A->B 的置信度,判断规则是否强规则

5. 实验和程序实现

2.3 分类与决策树

分类与聚类的不同点

决策树概念、覆盖率、准确率计算

决策树算法

基本框架工作原理

实验:WEKA-J48输入数据、参数设置

2.4 聚类

聚类概念与与分类的不同点

聚类方法 — K均值法(K-Means)

实验:WEKA-SimpleKMeans模块输入数据、参数设置

2.5 离群点概念


2.1 概念、主要任务

数据挖掘(Data Mining) 是从大量数据中自动或半自动地发现有用信息和知识的过程。主要任务包括:

  • 数据清洗和预处理: 清理数据中的噪声和异常值,处理缺失数据。
  • 数据集成和转换: 整合不同的数据源,将数据转换成适合挖掘的格式
  • 数据挖掘模型构建: 应用算法和技术发现模式和关联。
  • 模式评估和解释: 对挖掘到的模式进行评估,解释模型的意义和可靠性
  • 模型部署和应用: 将挖掘到的知识应用于实际业务中,通常与商务智能系统集成。

DM与数据仓库的关系

数据挖掘通常依赖于数据仓库提供的数据集,因为数据仓库中存储了大量结构化数据,适合进行分析和挖掘。数据仓库提供了数据挖掘所需的统一和一致的数据视图,帮助分析师和数据挖掘专家更有效地发现模式、趋势和关联。

DM与统计的关系

数据挖掘和统计学都关注从数据中提取信息和推断结论,但方法和目标略有不同。统计方法通常更侧重于推断性分析和参数估计,而数据挖掘更注重在大规模数据集上发现隐藏的模式和关联,通常使用机器学习和模式识别技术

DM与商务智能关系

商务智能(Business Intelligence,BI)利用数据分析和报告工具来理解当前和历史数据,帮助企业做出战略决策。数据挖掘则更进一步,通过探索性分析和模式发现来发现新的见解和机会。因此,数据挖掘可以被视为商务智能的一部分,为BI系统提供更深层次的分析和预测能力。

DM与大数据的关系

大数据环境下的数据挖掘面临更大的数据量和多样性,需要处理复杂的数据结构和实时或近实时的数据流。数据挖掘在大数据中的应用通常依赖于分布式计算和并行处理技术,以处理高速增长的数据量,并从中提取价值和见解。

数据预处理

数据预处理是数据挖掘过程中至关重要的步骤,它涉及清洗和转换原始数据,以使数据适合分析和挖掘。主要作用包括:

  • 缺失值处理: 填充缺失数据或删除缺失数据,以避免对分析结果产生不良影响。
  • 噪声数据光滑: 通过平滑技术(如移动平均、局部平均等)来减少或消除数据中的噪声,以改善数据质量和挖掘结果的准确性。

方法

  • 缺失值处理方法: 可以使用均值、中位数、众数填充缺失值,或者通过预测模型来估算缺失值。
  • 噪声数据光滑方法: 包括移动平均、局部平均、插值等技术,选择合适的方法平滑数据,减少异常值和噪声的影响。

数据预处理的目标是减少数据挖掘过程中的误差,提高模型的准确性和可靠性,从而更有效地发现有用的模式和知识。

 

2.2 关联分析:

1. 概念

关联分析: 发现数据集中项之间的关联关系或规律,包括频繁项集和关联规则的挖掘。

  • 支持度(Support)或支持度计数(Support Count): 一个项集的支持度指在数据集中包含该项集的记录所占的比例或数量。支持度计数是指包含该项集的记录数。

  • 频繁项集(Frequent Itemset): 在数据集中具有支持度不低于预先设定阈值(最小支持度)的项集。

  • 强规则(Strong Rule): 在关联规则中,指满足最小置信度阈值的关联规则。置信度是指规则的条件概率。

2. 先验知识和Apriori算法

先验知识: Apriori算法利用了先验知识,即如果一个项集是频繁的,则它的所有子集也必须是频繁的。

L2生成C3的方法: 这是指在Apriori算法中,从频繁项集的L(k-1)级生成候选项集C(k),通常通过连接步骤(join)和剪枝步骤(prune)实现

  • 连接运算: 生成候选项集的过程,将两个频繁项集连接形成候选项集。

  • 可连接条件的判断: 两个频繁项集可以连接成候选项集,当且仅当它们的前k-1项相同。

  • 是否剪枝的判断: 剪枝是指去除不满足先验知识的候选项集,即剔除包含非频繁子集的候选项集。

3. Apriori算法工作原理

连接方法: 将两个频繁项集连接形成候选项集,利用先验知识保证候选项集满足最小支持度要求

剪枝依据: 根据先验知识,剪枝步骤去除不可能是频繁项集的候选项集,从而减少搜索空间。

剪枝与按支持度计数的筛选不同点: 剪枝是基于先验知识,直接剔除不可能是频繁项集的候选项集;按支持度计数的筛选是在连接后统计支持度,然后根据最小支持度进行过滤。

4. 计算规则 A->B 的置信度,判断规则是否强规则

置信度计算: 置信度指规则 A -> B 中,同时包含 A 和 B 的比例,即支持度(A ∪ B) / 支持度(A)。

判断强规则: 规则 A -> B 是强规则,如果其置信度超过用户定义的最小置信度阈值

5. 实验和程序实现

WEKA-APRIORI实验:

  • 支持度、置信度阈值的设置: 在WEKA中可以设置最小支持度和最小置信度阈值。
  • 输入数据和参数设置: 输入事务型数据集,设置最小支持度和最小置信度阈值。
  • 输出规则的理解: WEKA输出满足条件的关联规则,包括支持度、置信度和规则本身。

JAVA程序实现: 

  • 事务数据库生成: 构建包含事务记录的数据库。
  • 项集的生成: 实现Apriori算法中的项集生成、支持度计算、剪枝等步骤。

通过以上步骤,可以实现关联分析,并找出频繁项集和强规则,为数据挖掘和业务决策提供支持。

2.3 分类与决策树

分类与聚类的不同点

分类(Classification):

  • 概念: 将数据分配到预定义的类别或标签中的过程,建立在已知类别的训练数据集上进行学习。
  • 区别: 是有监督学习,目标是预测输入数据的类别标签。

聚类(Clustering):

  • 概念: 将数据分为不同的组,使得组内的数据点尽可能相似,组间尽可能不同。
  • 区别: 是无监督学习,不依赖于预先定义的类别,目标是发现数据中的自然群组或模式。
决策树概念、覆盖率、准确率计算

决策树(Decision Tree):

  • 概念: 一种树形结构,每个内部节点表示在一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别或标签。
  • 覆盖率(Coverage): 决策树在测试集上正确分类的样本比例。
  • 准确率(Accuracy): 决策树在测试集上正确分类的样本数占总样本数的比例。
决策树算法

基本框架:

  1. 选择最优划分属性: 根据某种度量标准选择最优的属性作为当前节点的划分属性。
  2. 递归构建子树: 对当前节点的每个属性值递归调用自己,构建子树,直至满足停止条件(如所有实例属于同一类别或没有更多属性可划分)。

属性度量选择:

  • ID3算法: 使用信息增益作为属性选择的度量标准。
  • C4.5算法: 使用信息增益比(Gain Ratio)作为属性选择的度量标准,解决ID3算法对取值较多属性的偏好问题
基本框架工作原理

决策树的基本框架基于递归地构建树形结构,分为以下情况理解:

  1. 一个属性且输入的数据分区类标号值不唯一:

    • 选择唯一的属性值构建叶节点,每个叶节点对应一个类别标签。
  2. 两个属性且输入的数据分区类标号值不唯一:

    • 对每个属性值递归构建子树,直至每个叶节点对应一个类别标签或停止条件触发。
  3. 多个属性且输入的数据分区类标号值唯一:

    • 选择最优的划分属性,递归构建子树,直至所有实例属于同一类别或无更多属性可划分。
实验:WEKA-J48输入数据、参数设置

WEKA-J48决策树算法实验步骤:

  • 输入数据: 使用WEKA加载数据集,数据集包含特征和类别标签。
  • 参数设置: 设置算法参数,如最小叶节点数、置信度等。
  • 输出决策树: 运行J48算法,生成决策树模型,输出包括树结构、覆盖率和准确率等评估指标。

通过以上步骤,可以实现在WEKA中使用J48算法构建和评估决策树模型,用于分类任务的数据分析和预测。

2.4 聚类

聚类概念与与分类的不同点

聚类(Clustering):

  • 概念: 将数据集中的对象分组,使得同一组内的对象相似度较高,不同组之间的对象相似度较低。
  • 不同点: 是一种无监督学习方法,不需要预先定义的类别标签,目的是发现数据中的自然群组或模式。

分类(Classification):

  • 概念: 将数据分配到预定义的类别或标签中,建立在已知类别的训练数据集上进行学习。
  • 不同点: 是一种有监督学习方法,目标是预测输入数据的类别标签。
聚类方法 — K均值法(K-Means)

K均值算法(K-Means Algorithm):

  • 概念: 一种常用的聚类方法,通过迭代将数据点分配到k个类别中,每个类别由其质心(中心点)表示。
  • 算法步骤:
    1. 初始化: 随机选择k个初始质心。
    2. 分配: 将每个数据点分配到最近的质心所代表的类别。
    3. 更新质心: 根据每个类别中已分配的数据点,计算新的质心位置。
    4. 重复: 重复步骤2和步骤3,直到质心不再变化或达到预定的迭代次数。
实验:WEKA-SimpleKMeans模块输入数据、参数设置

实验步骤:

  1. 输入数据: 使用WEKA加载要进行聚类的数据集。数据集应包括要用于聚类的特征属性。

  2. 参数设置: 在WEKA中配置SimpleKMeans模块的参数:

    • 簇数(Number of clusters): 设置要生成的簇的数量k。
    • 初始化方式(Initialization method): 可选择随机或者其它初始化方法。
    • 最大迭代次数(Maximum iterations): 设置算法运行的最大迭代次数。
    • 距离度量(Distance measure): 用于计算数据点与质心之间距离的度量方法,如欧氏距离或曼哈顿距离。
  3. 运行和输出结果理解:

    • 运行SimpleKMeans算法,WEKA将根据设置的参数对数据集进行聚类。
    • 输出结果包括:
      • 簇分配(Cluster assignments): 每个数据点被分配到哪个簇。
      • 质心位置(Centroid positions): 每个簇的质心坐标。
      • 评估指标(Evaluation metrics): 如簇内平方和(within-cluster sum of squares)等,用于评估聚类质量。

通过理解输出结果,可以分析聚类过程中形成的簇结构及其质量,以及每个数据点如何分配到不同的簇中。

这些步骤帮助研究人员或分析师理解数据的自然群组和模式,为进一步的数据探索和分析提供基础。

2.5 离群点概念

离群点(Outlier)是指数据集中与其他数据点显著不同的观测值或数据点。它们通常具有以下特征:

  1. 异常性: 离群点与大多数数据点相比,具有显著的异常性或极端值。

  2. 稀有性: 离群点通常是在数据中相对稀有的观测值,与大多数数据点相比较少见。

  3. 影响: 离群点可能会对数据分析、模型建立和解释结果产生显著影响,因为它们可能反映了数据中的异常行为、错误、特殊事件或真实但重要的现象。

  4. 检测方法: 为了识别离群点,可以使用各种统计方法、机器学习技术或可视化工具,如箱线图、散点图、基于距离的方法(如Z-score或距离阈值)、聚类方法以及异常检测算法(如LOF、Isolation Forest等)。

  5. 处理方式: 处理离群点的方式取决于具体情况。有时可以选择移除离群点,但在某些情况下,离群点可能包含有价值的信息或者反映真实的情况,因此可以选择保留它们或者对其进行特殊处理。

在数据分析和机器学习中,理解和处理离群点是一个重要的课题,因为它们可能会影响模型的性能和结果的解释。

  • 21
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值