数据挖掘——数据预处理

数据挖掘------数据预处理

数据预处理

数据预处理 ------主要任务

  • 数据清理
    • 填写缺失值,平滑噪声数据,识别或删除离群,并解决不一致问题
  • 数据集成
    • 整合多个数据库,多维数据集或文件
  • 数据规约
    • 降维
    • 降数据
    • 数据压缩
  • 数据转换
    • 规范化
    • 离散化

数据清洗

  • 属性值缺失:
    • 例如,职业=" "(丢失)
  • 噪音,错误或离群
    • 例如,工资="-10"(错误)
  • 不一致的代码或不符的名称
    • 年龄="42"生日="03/07/1997"
    • 曾经评级"1,2,3",现在评级"A,B,C"

如何处理丢失的数据

  • 忽略元组:当类标号缺少时通常这么做(监督式机器学习中训练集缺乏类标签)。当每个属性缺少值比例比较大时,效果比较差
  • 手动填写遗漏值:工作量大
  • 自动填写
    • 使用属性的平均值填充空缺值
    • 最有可能的值:基于诸如贝叶斯公式或决策树推理

如何处理噪声数据

箱线图检测离群数据:删除离群点

如何处理不一致数据

  • 不一致的代码或不符的名称
    • 年龄="42"生日="09/24/1998"
    • 曾经评级"1,2,3",现在评级"A,B,C"
  • 方法
    • 计算推理、替换
    • 全局替换

数据集成

将来自多个数据源的数据组合成一个连贯的数据源

  • 整合多个数据库经常发生数据冗余
    • Object identification:相同的属性或对象可能有不同的名字在不同的数据库中
    • Derivable data:一个属性可能是"派生"的另一个表中的属性,例如,跑步能力
  • 通过相关性分析和协方差分析可以检测到冗余的属性
  • 仔细集成来自多个数据源,可能有助于减少/避免冗余和不一致的地方,并提高读取速度和质量

相关分析

相关系数(也成为皮尔逊相关系数)

r p , q = ∑ ( p − p ˉ ) ( q − q ˉ ) ( n − 1 ) σ p σ q = ∑ ( p q ) − n p q ‾ ( n − 1 ) σ p σ q r_{p, q}=\frac{\sum(p-\bar{p})(q-\bar{q})}{(n-1) \sigma_{p} \sigma_{q}}=\frac{\sum(p q)-n \overline{p q}}{(n-1) \sigma_{p} \sigma_{q}} rp,q=(n−1)σpσq∑(p−pˉ)(q−qˉ)=(n−1)σpσq∑(pq)−npq

其中 n n n是元组的数目,而 p p p和 q q q是各属性的具体值, σ p σ_p σp和 σ q σ_q σq是各自的标准偏差。

  • 当r>0时,表示两变量正相关,r<0时,两变量为负相关。
  • 当|r|=1时,表示两变量为完全线性相关,即为函数关系。
  • 当r=0时,表示两变量间无线性相关关系。
  • 当0<|r|<1时,表示两变量存在一定程度的线性相关。且|r|越接近1, 两
    变量间线性关系越密切;|r|越接近于0,表示两变量的线性相关越弱。
  • 一般可按三级划分:|r|<0.4为低度线性相关;0.4≤|r|<0.7为显著性相关;
    0.7≤|r|<1为高度线性相关。
协方差

Cov ⁡ ( p , q ) = E ( ( p − p ˉ ) ( q − q ˉ ) ) = ∑ i = 1 n ( p i − p ˉ ) ( q i − q ˉ ) n r p , q = Cov ⁡ ( p , q ) σ p σ q \begin{array}{c}\operatorname{Cov}(p, q)=E((p-\bar{p})(q-\bar{q}))=\frac{\sum_{i=1}^{n}\left(p_{i}-\bar{p}\right)\left(q_{i}-\bar{q}\right)}{n} \\r_{p, q}=\frac{\operatorname{Cov}(p, q)}{\sigma_{p} \sigma_{q}}\end{array} Cov(p,q)=E((p−pˉ)(q−qˉ))=n∑i=1n(pi−pˉ)(qi−qˉ)rp,q=σpσqCov(p,q)

  • 其中n是元组的数目,p和q是各自属性的具体值, σp和σq是各自的标准差
    • 正相关: C o v ( p , q ) > 0 Cov(p,q)>0 Cov(p,q)>0
    • 负相关: C o v ( p , q ) < 0 Cov(p,q) <0 Cov(p,q)<0
    • 不相关: C o v ( p , q ) = 0 Cov(p,q) =0 Cov(p,q)=0
  • 可具有某些对随机变量的协方差为0,但不是独立的。一些额外的假设(例如,数据是否服从多元正态分布)做了协方差为0意味着独立。

它可以简化计算:
C o v ( A , B ) = E ( ( A − A ˉ ) ( B − B ˉ ) ) = ∑ i = 1 n ( a i − A ˉ ) ( b i − B ˉ ) n = E ( A B ) − A ˉ B ˉ Cov(A,B)=E((A-\bar{A})(B-\bar{B}))=\frac{\sum_{i=1}^n(a_i-\bar{A})(b_i-\bar{B})}{n}=E(AB)-\bar{A}\bar{B} Cov(A,B)=E((A−Aˉ)(B−Bˉ))=n∑i=1n(ai−Aˉ)(bi−Bˉ)=E(AB)−AˉBˉ

数据规约

为什么数据规约(datareduction)

由于数据仓库可以存储TB的数据,因此在一个完整的数据集上运行时,复杂的数据分析可能需要一个很长的时间。

数据规约三种方法

  1. 降维
  2. 降数据
  3. 数据压缩

降维法:PCA主成分分析

  • PCA主成分分析法核心idea
    • 数据中很多属性之间可能存在这样或那样的相关性
    • 能不能找到一个方法,将多个相关性的属性组合仅仅形成一个属性

降数据------抽样法

  • 简单随机抽样(SimpleRandomSampling)
    • 相等的概率选择
    • 不放回抽样(Samplingwithout replacement)
      • 一旦对象被选中,则将其删除
    • 有放回抽样(Samplingwithreplacement)
      • 选择对象不会被删除
  • 分组抽样
    • 每组抽相近个数
    • 用于偏斜数据

样本大小对数据质量的影响:

  • 从8000个点分别抽2000和500个点
    • 2000个点的样本保留了数据集的大部分结构
    • 500个点的样本丢失了许多结构

数据压缩

  • 函数映射:给定的属性值更换了一个新的表示方法,每个旧值与新的值可以被识别
  • 方法
    • 规范化:按比例缩放到一个具体区间
      • 最小 - 最大规范化
      • Z-得分正常化
      • 小数定标规范化
    • 离散化

最小-最大规范化
v ′ = v − min ⁡ A m a x A − min ⁡ A ( n e w _ m a x A − n e w − min ⁡ A ) + n e w − min ⁡ A v^{\prime}=\frac{v-\min A}{max A-\min A}\left(\right. \left.new\max A-n e w{-} \min A\right)+ new_{-} \min A v′=maxA−minAv−minA(new_maxA−new−minA)+new−minA
v v v即需要规范的数据

z-分数规范化
v ′ = v − 均值 A 标准 差 A v'=\frac{v-均值A}{标准差_A} v′=标准差Av−均值A

离散化方法

  • 非监督离散化法
    • 等宽法:根据属性的值域来划分,使每个区间的宽度相等
    • 等频法:根据取值出现的频数来划分,将属性的值域划分成个小区间,并且要求落在每个区间的样本数目相等
    • 聚类:利用聚类将数据划分到不同的离散类别
相关推荐
Tiandaren18 分钟前
医学图像分析工具02:3D Slicer || 医学影像可视化与分析工具 支持第三方插件
c++·人工智能·python·深度学习·3d·开源
Leeuwenhoek19 分钟前
2025年AI和AR谁才是智能眼镜的未来
人工智能·ai·ar·生活·mr·虚拟现实
道可云21 分钟前
道可云人工智能&元宇宙每日资讯|崂山区政务服务虚拟大厅启用
人工智能·3d·ar·政务
tangjunjun-owen37 分钟前
DetToolChain: A New Prompting Paradigm to Unleash Detection Ability of MLLM论文解读
人工智能·目标检测·多模态大模型·dettoolchain·视觉提示prompt·思维链提示prompt
EnochChen_39 分钟前
PyTorch快速入门教程【小土堆】之Sequential使用和小实战
人工智能·pytorch·python
深圳行云创新40 分钟前
ChatBI来啦!NBAI 正式上线 NL2SQL 功能
数据库·人工智能·chatgpt·ai智能体
Font Tian1 小时前
深度学习中的离群值
人工智能·pytorch·深度学习·异常检测·离群值
kris00091 小时前
人工智能知识分享第八天-机器学习_泰坦尼克生存预估&线性回归和决策树回归对比案例
人工智能·机器学习·回归
夏天是冰红茶1 小时前
Transformer中Self-Attention以及Multi-Head Attention模块详解(附pytorch实现)
人工智能·深度学习·transformer·自注意力·多头注意力
傻瓜学习1 小时前
目标检测初始
人工智能·目标检测