机器学习中常用的数据预处理方法

devtools/2025/2/13 0:40:22/

1. 数据清洗

  • 方法:处理异常值、重复数据、噪声数据。
    • 异常值处理:通过统计方法(如 Z-Score、IQR)或可视化检测,选择删除、替换(均值/中位数)或保留。
    • 重复数据:直接删除重复样本。
  • 优点:提升数据质量,减少模型偏差。
  • 缺点:可能误删有用信息或引入人为偏差。
  • 场景:金融风控(异常交易检测)、传感器数据清洗。

2. 特征缩放

  • 归一化(Min-Max Scaling)

    • 将数据缩放到 [0, 1] 区间。
    • 优点:加速梯度下降,适合对尺度敏感的模型(如神经网络、KNN)。
    • 缺点:对异常值敏感。
  • 标准化(Z-Score)

    • 使数据均值为 0,方差为 1。
    • 优点:对异常值稳健,适合大多数模型(如 SVM、线性回归)。
    • 缺点:不保证固定数值范围。
  • 场景:归一化用于图像像素值处理;标准化用于非均匀分布特征(如年龄、收入)。


3. 分类变量编码

  • 独热编码(One-Hot Encoding)

    • 将类别转换为二进制向量(如 “猫” → [1,0,0])。
    • 优点:消除数值大小误导,适合无序类别。
    • 缺点:维度爆炸(高基数特征需配合降维)。
  • 标签编码(Label Encoding)

    • 将类别映射为整数(如 “红/黄/蓝” → 0/1/2)。
    • 优点:节省内存,适合树模型(如随机森林)。
    • 缺点:可能引入虚假顺序关系。
  • 场景:独热编码用于性别、颜色;标签编码用于有序类别(如学历等级)。


4. 缺失值处理

  • 删除缺失样本/特征

    • 优点:简单高效。
    • 缺点:丢失信息(缺失比例高时不可行)。
  • 填充

    • 均值/中位数(数值特征)、众数(分类特征)、插值(时间序列)。
    • 优点:保留数据完整性。
    • 缺点:可能引入偏差(如均值填充忽略特征分布)。
  • 模型预测填充

    • 用回归或分类模型预测缺失值。
    • 优点:更精准。
    • 缺点:计算复杂,可能过拟合。
  • 场景:医疗数据(缺失较多时用模型填充);电商数据(删除缺失少的特征)。


5. 特征工程

  • 特征选择

    • 过滤法(卡方检验、相关系数)、包装法(递归特征消除)、嵌入法(L1 正则化)。
    • 优点:降低过拟合风险,提升效率。
    • 缺点:可能丢弃有用特征。
  • 特征构造

    • 人工构造新特征(如日期→星期几,文本→词频)。
    • 优点:增强模型表达能力。
    • 缺点:依赖领域知识,耗时。
  • 场景:广告 CTR 预测(构造用户行为组合特征);图像识别(提取边缘特征)。


6. 降维

  • 主成分分析(PCA)

    • 线性投影到低维空间,保留最大方差。
    • 优点:减少计算量,缓解维度灾难。
    • 缺点:丢失非线性结构。
  • t-SNE

    • 非线性降维,保留局部相似性。
    • 优点:适合高维数据可视化。
    • 缺点:计算复杂,难以解释。
  • 场景:图像数据压缩(PCA);高维聚类可视化(t-SNE)。


7. 数据增强(深度学习)

  • 方法:图像(旋转、翻转、裁剪)、文本(同义词替换)、音频(加噪)。
  • 优点:提升泛化性,缓解过拟合。
  • 缺点:可能生成不合理的样本(如翻转后的错误文本)。
  • 场景:图像分类(CNN 训练)、小样本学习。

8. 数据划分

  • 训练集/验证集/测试集
    • 常用比例 60%/20%/20% 或 70%/30%。
  • 交叉验证
    • K-Fold 划分(如 5 折),减少划分偏差。
  • 优点:评估模型泛化能力。
  • 缺点:数据量少时交叉验证计算成本高。
  • 场景:小数据集(交叉验证);时序数据(需按时间顺序划分)。

9. 时间序列处理

  • 滑动窗口:将序列转换为监督学习格式。
  • 去趋势/季节性:差分、STL 分解。
  • 优点:捕捉时序依赖关系。
  • 缺点:处理不当可能破坏原始模式。
  • 场景:股票预测、销量预测。

10. 文本处理

  • 分词/去停用词:中英文分词,移除无意义词(如“的”)。
  • 向量化:TF-IDF(统计权重)、Word2Vec/GloVe(语义向量)。
  • 场景:情感分析(TF-IDF + SVM)、机器翻译(词嵌入 + RNN)。

总结

方法典型技术适用场景
数据清洗IQR、Z-Score异常检测、传感器数据
特征缩放归一化、标准化神经网络、距离类模型(KNN、SVM)
降维PCA、t-SNE高维数据可视化、特征压缩
数据增强图像翻转、文本替换小样本图像/文本任务
缺失值处理模型填充、多重插值医疗数据、用户行为分析

根据数据特点和模型需求选择合适方法:结构化数据侧重特征工程与缩放,非结构化数据(如图像/文本)依赖增强与向量化。


http://www.ppmy.cn/devtools/158339.html

相关文章

JUnit 5 源码结构概览

JUnit 5 源码结构概览 JUnit 5 的源码分为三大核心模块:JUnit Platform、JUnit Jupiter 和 JUnit Vintage。每个模块职责明确,共同构建了现代化的测试框架。以下是详细的源码结构解析: 一、JUnit Platform 定位:测试框架的运行时…

RabbitMQ 如何设置限流?

RabbitMQ 的限流(流量控制)主要依赖于 QoS(Quality of Service) 机制,即 prefetch count 参数。这个参数控制每个消费者一次最多能获取多少条未确认的消息,从而避免某个消费者被大量消息压垮。 1. RabbitMQ…

AI 网络安全处理 开源 人工智能+网络安全

人工智能涉及多个领域,如今,科技的迅速发展与计算机网络技术的不断提升,人们更多的使用网络来处理生活中的各种事情,例如办公、娱乐、社交等,越来越多的个人隐私暴露在网络上,利用传统的方式维护隐私问题已…

react入门笔记

1.JSX的用法 function App(){let msg react 的插值;return (<div>{msg}</div> ) } jsx中也可以绑定属性&#xff0c;绑定属性时不能加引号 function App(){let url https://baikebcs.bdimg.com/baike-react/common/logo-baike.svg;return (<div><img…

软件测试之通用功能测试点

文章目录 前言分页搜索框对搜索框操作的测试点搜索结果页测试点 输入框测试点输入方式测试点输入框操作类测试点 图片相关的测试点PC端上传图片测试点PC端图片浏览测试点移动端上传图片测试点移动端浏览图片测试点 视频播放器测试点视频播放测试点视频操作测试点 登录新增删除修…

手动配置IP

手动配置IP&#xff0c;需要考虑四个配置项&#xff1a; 四个配置项 IP地址、子网掩码、默认网关、DNS服务器 IP地址&#xff1a;格式表现为点分十进制&#xff0c;如192.168.254.1 子网掩码&#xff1a;用于区分网络位和主机位 【子网掩码的二进制表达式一定是连续的&#…

谷云科技RestCloud全面接入DeepSeek 开启智能新时代

在数字化转型的浪潮中&#xff0c;谷云科技始终走在数据集成与智能应用领域的前沿。近期&#xff0c;随着 DeepSeek 的火爆出圈&#xff0c;谷云科技紧跟技术趋势&#xff0c;对旗下两大核心产品 —— 数据集成软件 ETLCloud 和 AI Agent 智能体构建平台进行了重大升级&#xf…

Pytest自动化测试框架总结

1、pytest简介 pytest是Python的一种单元测试框架&#xff0c;与python自带的unittest测试框架类似&#xff0c;但是比unittest框架使用起来更简洁&#xff0c;效率更高。 执行测试过程中可以将某些测试跳过&#xff0c;或者对某些预期失败的case标记成失败能够支持简单的单元…