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

举报
韩曙亮 发表于 2022/01/11 00:35:02 2022/01/11
【摘要】 文章目录 一、 数据挖掘特点二、 数据挖掘组件化思想三、 朴素贝叶斯 与 贝叶斯信念网络四、 决策树构造方法五、 K-Means 算法优缺点六、 DBSCAN 算法优缺点七、 支持度 置信度八、 ...





一、 数据挖掘特点



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


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

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


2 . 数据必须海量 :


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

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


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


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

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


4 . 未知结果 :


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

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


参考博客 :





二、 数据挖掘组件化思想



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

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

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


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

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


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

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

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


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


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

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


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


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

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


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


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

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


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


参考博客 :





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



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

( 教科书上的标准描述 )





四、 决策树构造方法



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

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


递归过程 : 训练集 T \rm T T A \rm A A 个变量 , Y \rm Y Y 个类别 , 针对 T \rm T T 构造决策树 , 出现以下情况 :

① 类别相同 ( 递归停止条件 ) : 如果 T \rm T T样本类别相同 , 决策树只有一个叶子结点 ;

② 属性用尽 ( 递归停止条件 ) : 如果 T \rm T T 没有用于继续分裂的变量 , 则将 T \rm T T 中出现频率最高的类别作为当前节点的类别 ;

③ 样本用尽 ( 递归停止条件 ) : 如果 T \rm T T 中的样本都分配完毕 , 现在为空 , 则停止递归 ;

④ 分支 ( 递归操作 ) : 如果 T \rm T T 包含的样本属于不同类别 , 根据变量选择策略 , 选择最佳的 变量 和 划分方式 , 将 T \rm T T 分为多个子集 , 每个子集构成一个内部结点 ;

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


递归终止条件 :

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

② 属性用尽 : T \rm T T没有可进一步分裂的变量 ;

③ 样本用尽 : T \rm T T 中的样本为空 ;



决策树构建算法 : Generate_Decision_Tree

输入 : 训练集 T \rm T T , 变量集 A \rm A A , 类别 Y \rm Y Y
输出 : 决策树 T r e e \rm Tree Tree


Generate_Decision_Tree ( T , A , Y )

① 样本用完 : 如果 T \rm T T 为空 , 返回错误信息 ; ( 递归停止条件 )

② 类型相同 : 如果 T \rm T T 所有样本都属于类别 C \rm C C , 则 C \rm C C 类型就是当前结点类型 , 返回 ; ( 递归停止条件 )

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

④ 生成分支 : 根据 变量选择策略 选择最佳变量 X \rm X X 将 训练集 T \rm T T 分为多个子集 ;

⑤ 标识根节点 : 使用 X \rm X X 标识当前结点 ;

⑥ 递归操作 : 对 ④ 中分割的多个子集执行 Generate_Decision_Tree 递归操作 , X \rm X X 结点指向 这些递归操作生成的新的分支 ;

⑦ 返回当前的结点 ;





五、 K-Means 算法优缺点



K-Means 算法优点 :

① 处理大数据量有 可扩充性 和 高效率 ; 其算法复杂度是 O ( t k n ) \rm O(tkn) O(tkn) , n \rm n n 是样本个数 , k \rm k k 是聚类个数 , t \rm t t 是循环次数 ;

② 可以实现局部最优化 ;


K-Means 算法缺点 :

① 族个数 : 族的个数 K \rm K K 必须事先确定 ;

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

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

④ 必须给定 K \rm K K 个初始中心点 , 中心点选不好 , 影响聚类质量 ;

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





六、 DBSCAN 算法优缺点



DBSCAN 算法优点 :

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

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

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

聚类速度快 ;


DBSCAN 算法缺点 :

① 输入参数 ε \varepsilon ε M i n P t s \rm MinPts MinPts 的值比较难确定 ;

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





七、 支持度 置信度



给定 X , Y \rm X , Y X,Y 两个项集 , 并且有 X ≥ Y \rm X \geq Y XY ;

支持度 : X ⇒ Y \rm X \Rightarrow Y XY 的支持度是 X , Y \rm X , Y X,Y 两个项集在数据库 D \rm D D同时出现的概率 , 即 P r ( X ∪ Y ) \rm Pr(X \cup Y) Pr(XY)

置信度 : X ⇒ Y \rm X \Rightarrow Y XY 的置信度度是 X \rm X X 出现的前提下 , Y \rm Y Y 项集在数据库 D \rm D D 中同时出现的概率 , 即 P r ( Y ∣ X ) = P r ( X ∪ Y ) P r ( X ) \rm Pr(Y|X) = \cfrac{Pr(X \cup Y)}{Pr(X)} Pr(YX)=Pr(X)Pr(XY)


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





八、 频繁项集



项集 X \rm X X支持度 s u p p o r t ( X ) \rm support(X) support(X) , 大于等于 指定的 最小支持度阈值 m i n s u p \rm minsup minsup ,

则称该 项集 X \rm X X频繁项集 ,

又称为 频繁项目集 ;





九、 非频繁项集



项集 X \rm X X支持度 s u p p o r t ( X ) \rm support(X) support(X) , 小于 指定的 最小支持度阈值 m i n s u p \rm minsup minsup ,

则称该 项集 X \rm X X非频繁项集 ,

又称为 非频繁项目集 ;





十、 Apriori 算法过程



在这里插入图片描述

原始数据集 D \rm D D ,

1 1 1 项集 C 1 \rm C_1 C1 , 2 2 2 项集 C 2 \rm C_2 C2 , ⋯ \cdots , k \rm k k 项集 C k \rm C_k Ck , 这些项集都是候选项集 ,


根据 原始数据集 D \rm D D , 创造 1 1 1 项集 C 1 \rm C_1 C1 , 然后对 C 1 \rm C_1 C1 执行 数据集扫描函数 , 找到其中的 频繁 1 1 1 项集 L 1 \rm L_1 L1 ,

根据 频繁 1 1 1 项集 L 1 \rm L_1 L1 , 创造 2 2 2 项集 C 2 \rm C_2 C2 , 然后对 C 2 \rm C_2 C2 执行 数据集扫描函数 , 找到其中的 频繁 2 2 2 项集 L 2 \rm L_2 L2 ,

⋮ \vdots

根据 频繁 k − 1 \rm k-1 k1 项集 L k − 1 \rm L_{k-1} Lk1 , 创造 k \rm k k 项集 C k \rm C_k Ck , 然后对 C k \rm C_k Ck 执行 数据集扫描函数 , 找到其中的 频繁 k \rm k k 项集 L k \rm L_k Lk ,


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

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/111872844

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。