资讯

数据预处理是什么?把原始数据清洗整理成可用的样子

2026-11-052 分钟阅读百科
TL;DR数据预处理(Data Preprocessing)是在建模和分析之前对原始数据进行清洗、集成、变换和规约的过程,包括处理缺失值和异常值、去除重复、统一格式、标准化和划分数据集,数据质量直接决定后续模型和分析的效果。

数据预处理(Data Preprocessing)是在对数据进行分析或训练机器学习模型之前,对原始数据进行清洗、整理和转换的过程。现实世界中的原始数据往往是不完整的、有噪声的、不一致的,直接使用会严重影响分析和建模的效果。“垃圾进,垃圾出”,数据预处理就是为了确保进入模型的是高质量的数据。在实际项目中,数据准备工作常常要占据大部分的时间。

原始数据有哪些问题

缺失:有些记录的部分字段是空的,比如用户没有填写年龄。错误和噪声:录入错误、传感器故障导致的异常读数,比如年龄填成了 200 岁。重复:同一条记录被保存了多次。不一致:同一个东西有不同的写法,比如“北京”“北京市”“Beijing”,日期格式有的是“2024/01/05”有的是“05-01-2024”,单位有的用千克有的用斤。格式不适合:文字、类别等数据需要转换成模型能处理的数值形式。

主要步骤

数据清洗:处理缺失值,根据情况删除或者填充;识别和处理异常值,判断它是错误还是真实的极端情况;去除重复的记录;纠正明显的错误;统一格式和单位。数据集成:把来自多个来源的数据合并在一起,比如把用户信息表和订单表关联起来,需要解决字段名称不同、数据冲突等问题。数据变换:标准化或归一化,把不同特征的数值缩放到相近的范围,避免数值大的特征主导模型;对类别型数据进行编码;对偏斜的数据进行对数变换;把连续值离散化。数据规约:在尽量保留信息的前提下减少数据量,比如进行特征选择、降维,或者对数据进行抽样。数据集划分:把数据划分为训练集、验证集和测试集,并确保它们之间没有信息泄露。

需要注意的问题

避免数据泄露:标准化等操作所需的参数,比如平均值和标准差,应该只用训练集来计算,再应用到验证集和测试集上;如果用全部数据来计算,测试集的信息就会“泄露”到训练过程中,导致对模型效果的估计过于乐观。保留处理流程:上线后,新来的数据必须经过和训练时完全相同的预处理步骤,否则模型的效果会出现偏差。因此最好把预处理流程固定下来,作为模型的一部分统一管理。

不同类型数据的预处理

文本数据需要分词、去除无意义的符号、统一大小写;图像数据需要调整尺寸、归一化像素值;大语言模型的训练数据则需要大规模的去重、过滤低质量和有害内容、去除个人隐私信息,这些数据处理工作对模型的最终质量影响巨大。