【数据挖掘】数据挖掘总结 ( 数据挖掘相关概念 ) ★★

2023-03-28 20:32:15 浏览数 (1)

文章目录

  • 一、 数据挖掘特点
  • 二、 数据挖掘组件化思想
  • 三、 朴素贝叶斯 与 贝叶斯信念网络
  • 四、 决策树构造方法
  • 五、 K-Means 算法优缺点
  • 六、 DBSCAN 算法优缺点
  • 七、 支持度 置信度
  • 八、 频繁项集
  • 九、 非频繁项集
  • 十、 Apriori 算法过程

一、 数据挖掘特点


1 . 用于挖掘的数数据源 必须 真实 :

① 存在的真实数据 : 数据挖掘处理的数据一般是存在的真实数据 , 不是专门收集的数据 ;

② 数据收集 : 该工作不属于数据挖掘范畴 , 属于统计任务 ;

2 . 数据必须海量 :

① 少量数据处理 : 少量数据使用统计方法分析 , 不必使用数据挖掘 ;

② 海量数据 : 处理海量数据时 , 才使用数据挖掘 , 涉及到 有效存储 , 快速访问 , 合理表示 等方面的问题 ;

3 . 数据挖掘的查询是随机的 : 决策者 ( 用户 ) 提出的随机查询 ;

① 要求不精确 : 查询灵活 , 没有精确的要求 ( 无法用 SQL 语句写出来 ) ;

② 结果正确性未知 : 查询出来结果也不知道是否准确 ;

4 . 未知结果 :

① 挖掘结果 : 数据挖掘 挖掘出的知识是未知的 , 目的是为了发掘潜在的知识 , 模式 ; 这些知识只能在特定环境下可以接收 , 可以理解 , 可以运用 ;

② 知识使用 : 数据挖掘出的知识只能在特定领域使用 , 如金融领域数据挖掘结果 , 只能在金融领域及相关领域使用 ;

参考博客 :

  • 【数据挖掘】数据挖掘简介 ( 数据挖掘引入 | KDD 流程 | 数据源要求 | 技术特点 )

二、 数据挖掘组件化思想


0 . 数据挖掘算法的五个标准组件 :

  • ① 模型或模式结构 : 决策树模型 , ( 信念 ) 贝叶斯模型 , 神经网络模型 等 ;
  • ② 数据挖掘任务 : 概念描述 , 关联分析 , 分类 , 聚类 , 异常检测 , 趋势分析 等 ;
  • ③ 评分函数 : 误差平方和 , 最大似然 , 准确率 等 ;
  • ④ 搜索和优化方法 : 随机梯度下降 ;
  • ⑤ 数据管理策略 : 数据存储 , 数据库相关 ;

1 . 模型或模式结构 : 通过 数据挖掘过程 得到知识 ; 是算法的输出格式 , 使用 模型 / 模式 将其表达出来, 如 : 线性回归模型 , 层次聚类模型 , 频繁序列模式 等 ;

2 . 数据挖掘任务分类 : 根据数据挖掘的目标 , 可以将数据挖掘任务分为以下几类 : ① 模式挖掘 , ② 描述建模 , ③ 预测建模 ;

描述建模 和 预测建模 又称为 模型挖掘 ;

① 模式挖掘 : 如 异常模式 , 频繁模式 ;

② 描述建模 : 如 聚类分析 ;

③ 预测建模 : 如 分类预测 , 趋势分析等 ;

3 . 评分函数 : 常用的评分函数有 似然函数 , 误差平方和 , 准确率等 ;

① 评分函数概念 : 评分函数用于评估 数据集 与 模型 ( 模式 ) 的拟合程度 , 值 越大 ( 越小 ) 越好 ;

② 评分函数作用 : 为 模型 ( 模式 ) 选出最合适的参数值 ;

4 . 搜索和优化算法作用 : 确定 模型 ( 模式 ) 以及其相关的 参数值 , 该模型 ( 模式 ) 使评分函数 达到某个最大 ( 最小 ) 值 ; 本质是帮助评分函数取得 最大 ( 最小 ) 值的方法 ;

① 结构确定求参数 ( 优化问题 ) : 模型 ( 模式 ) 结构确定后 , 目的就是为了确定参数值 , 针对固定的 模式 ( 模型 ) 结构 , 确定一组参数值 , 使评分函数最优 , 这是优化问题 ;

② 结构不确定 ( 搜索问题 ) : 搜索 既需要确定 模型 ( 模式 ) 的结构 , 又需要确定其参数值 , 这种类型是搜索问题 ;

5 . 数据管理策略 : 传统数据与大数据 ; 设计有效的数据组织与索引技术 , 通过采样 , 近似等手段 , 减少扫描次数 , 提高数据挖掘算法效率 ;

① 传统数据 ( 内存管理数据 ) : 传统的数据管理方法是将数据都放入内存中 , 少量数据 , 直接在内存中处理 , 不需要特别关注数据管理技术 ;

② 大数据 ( 集群管理数据 ) : 数据挖掘中的数据一般是 GB , TB 甚至 PB 级别的大数据 , 如果使用传统的内存算法处理这些数据 , 性能会很低 ;

确定 模型 / 模式 结构 和 评分函数 , 是人来完成 , 优化评分函数的过程是计算机完成 ;

参考博客 :

  • 【数据挖掘】数据挖掘算法 组件化思想 ( 模型或模式结构 | 数据挖掘任务 | 评分函数 | 搜索和优化算法 | 数据管理策略 )
  • 【数据挖掘】数据挖掘算法 组件化思想 示例分析 ( 组件化思想 | Apriori 算法 | K-means 算法 | ID3 算法 )

三、 朴素贝叶斯 与 贝叶斯信念网络


朴素贝叶斯算法是朴素的 , 是因为在 分类的计算 过程中 , 做了一个 朴素的假设 , 假定 属性值之间是相互独立的 , 该假设称作 条件独立 , 做此假设的目的是为了简化计算 ;

( 教科书上的标准描述 )

四、 决策树构造方法


递归 : 从 根节点 开始 , 从上到下递归 ;

分治 : 采用 分而治之 的方法 , 通过不断 将 训练样本 划分成子集 , 构造决策树 ;

递归过程 : 训练集

rm T

rm A

个变量 ,

rm Y

个类别 , 针对

rm T

构造决策树 , 出现以下情况 :

① 类别相同 ( 递归停止条件 ) : 如果

rm T

中 样本类别相同 , 决策树只有一个叶子结点 ;

② 属性用尽 ( 递归停止条件 ) : 如果

rm T

没有用于继续分裂的变量 , 则将

rm T

中出现频率最高的类别作为当前节点的类别 ;

③ 样本用尽 ( 递归停止条件 ) : 如果

rm T

中的样本都分配完毕 , 现在为空 , 则停止递归 ;

④ 分支 ( 递归操作 ) : 如果

rm T

包含的样本属于不同类别 , 根据变量选择策略 , 选择最佳的 变量 和 划分方式 , 将

rm T

分为多个子集 , 每个子集构成一个内部结点 ;

针对上述每个内部结点 , 都进行上述 ① ② ③ ④ 递归操作 , 直到满足决策树的终止条件为止 ;

递归终止条件 :

① 类别相同 : 样本所有结点对应的样本 都属于同一个类别 ;

② 属性用尽 :

rm T

中 没有可进一步分裂的变量 ;

③ 样本用尽 :

rm T

中的样本为空 ;

决策树构建算法 : Generate_Decision_Tree

输入 : 训练集

rm T

, 变量集

rm A

, 类别

rm Y

输出 : 决策树

rm Tree

Generate_Decision_Tree ( T , A , Y )

① 样本用完 : 如果

rm T

为空 , 返回错误信息 ; ( 递归停止条件 )

② 类型相同 : 如果

rm T

所有样本都属于类别

rm C

, 则

rm C

类型就是当前结点类型 , 返回 ; ( 递归停止条件 )

③ 属性用尽 : 如果

rm T

的所有变量属性都被使用了 , 则使用出现频率最高的类别作为本结点的类型 , 返回 ; ( 递归停止条件 )

④ 生成分支 : 根据 变量选择策略 选择最佳变量

rm X

将 训练集

rm T

分为多个子集 ;

⑤ 标识根节点 : 使用

rm X

标识当前结点 ;

⑥ 递归操作 : 对 ④ 中分割的多个子集执行 Generate_Decision_Tree 递归操作 ,

rm X

结点指向 这些递归操作生成的新的分支 ;

⑦ 返回当前的结点 ;

五、 K-Means 算法优缺点


K-Means 算法优点 :

① 处理大数据量有 可扩充性 和 高效率 ; 其算法复杂度是

rm O(tkn)

,

rm n

是样本个数 ,

rm k

是聚类个数 ,

rm t

是循环次数 ;

② 可以实现局部最优化 ;

K-Means 算法缺点 :

① 族个数 : 族的个数

rm K

必须事先确定 ;

② 形状 : 无法找到 特殊形状 的族 , 如凹形的 ;

③ 异常值 : 对于 异常数据敏感 , 异常数据对中心点计算影响很大 ;

④ 必须给定

rm K

个初始中心点 , 中心点选不好 , 影响聚类质量 ;

⑤ 求中心点时 , 需要计算算术平均值 , 针对分类属性的数据无法计算 , 如男女无法计算 ;

六、 DBSCAN 算法优缺点


DBSCAN 算法优点 :

① 族个数 : 不需要事先确定 族个数 ;

② 形状 : 能发现 任意形状的族 ;

③ 异常值 : 对异常数据不敏感 ;

④ 聚类速度快 ;

DBSCAN 算法缺点 :

① 输入参数

varepsilon

rm MinPts

的值比较难确定 ;

② 数据库中 数据对象密度分布不均匀 时 , 使用相同的参数值可能无法得到好的聚类结果 ;

七、 支持度 置信度


给定

rm X , Y

两个项集 , 并且有

rm X geq Y

;

支持度 :

rm X Rightarrow Y

的支持度是

rm X , Y

两个项集在数据库

rm D

中 同时出现的概率 , 即

rm Pr(X cup Y)

置信度 :

rm X Rightarrow Y

的置信度度是

rm X

出现的前提下 ,

rm Y

项集在数据库

rm D

中同时出现的概率 , 即

rm Pr(Y|X) = cfrac{Pr(X cup Y)}{Pr(X)}

一般情况下 置信度 大于 支持度 ;

八、 频繁项集


项集

rm X

的 支持度

rm support(X)

, 大于等于 指定的 最小支持度阈值

rm minsup

,

则称该 项集

rm X

为 频繁项集 ,

又称为 频繁项目集 ;

九、 非频繁项集


项集

rm X

的 支持度

rm support(X)

, 小于 指定的 最小支持度阈值

rm minsup

,

则称该 项集

rm X

为 非频繁项集 ,

又称为 非频繁项目集 ;

十、 Apriori 算法过程


原始数据集

rm D

,

1

项集

rm C_1

,

2

项集

rm C_2

,

cdots

,

rm k

项集

rm C_k

, 这些项集都是候选项集 ,

根据 原始数据集

rm D

, 创造

1

项集

rm C_1

, 然后对

rm C_1

执行 数据集扫描函数 , 找到其中的 频繁

1

项集

rm L_1

,

根据 频繁

1

项集

rm L_1

, 创造

2

项集

rm C_2

, 然后对

rm C_2

执行 数据集扫描函数 , 找到其中的 频繁

2

项集

rm L_2

,

vdots

根据 频繁

rm k-1

项集

rm L_{k-1}

, 创造

rm k

项集

rm C_k

, 然后对

rm C_k

执行 数据集扫描函数 , 找到其中的 频繁

rm k

项集

rm L_k

,

参考博客 : 【数据挖掘】关联规则挖掘 Apriori 算法 ( Apriori 算法过程 | Apriori 算法示例 )

0 人点赞