机器学习中如何处理缺失数据?

在机器学习中,处理缺失数据是一个重要的任务,因为数据往往不完整。当数据集中存在缺失值时,如果不进行适当的处理,它们可能会对模型的训练和预测产生负面影响。

一、为什么会出现数据缺失

在数据收集过程中,由于各种原因,如设备故障、人为失误等,可能会导致数据丢失或缺失。总体可总结为两大原因:机械原因和人为原因。

1.机械原因

机械原因是由于机械原因所导致的数据收集或保存的失败造成的数据缺失,比如数据存储的失败存储器损坏机械故障导致某段时间数据未能收集。

2.人为原因

人为原因是由于人的主观失误、历史局限或有意隐瞒造成的数据缺失,比如,在市场调查中被访人拒绝透露相关问题的答案,或者回答的问题是无效的,数据录入人员失误漏录了数据造成数据缺失的原因是多方面的。主要有以下几种:

1)有些信息暂时无法获取。例如在医疗数据库中,并非所有病人的所有临床检验结果都能在给定的时间内得到,就致使一部分属性值空缺出来。

2)有些信息是被遗漏的。可能是因为输入时认为不重要、忘记填写了或对数据理解错误而遗漏,也可能是由于数据采集设备的故障、存储介质的故障、传输媒体的故障、一些人为因素等原因而丢失了。

3)有些对象的某个或某些属性是不可用的。也就是说,对于这个对象来说,该属性值是不存在的,如一个未婚者的配偶姓名、一个儿童的固定收入状况等。

4)有些信息(被认为)是不重要的。如一个属性的取值与给定语境是无关的,或训练数据库的设计者并不在乎某个属性的取值。

5)获取这些信息的代价太大。

6)系统实时性能要求较高,即要求得到这些信息前迅速做出判断或决策。

二、缺失处理

处理缺失值是数据分析中不可或缺的一部分,它有助于提高数据质量和分析的准确性,帮助我们更好的理解数据和得出结论。对于缺失处理有以下七种方法:

1.删除

当样本中的某些特征存在缺失数据时,可以选择直接删除含有缺失数据的样本。这种方法简单粗暴,能够确保数据的准确性,但是也有一个缺点,会导致数据集规模减小。如果样本足够多的情况下,可以考虑这种方式。

2.常量填充

在进行填充之前,我们需要对确实的变量进行业务的了解,变量的含义、获取方式、计算逻辑等。常量填充一般可以用0,均值、中位数、众数等填充。这种方式简单快捷,可以有效保留特征信息。

3.插值填充

除了常量,我们还可以用插值对缺失数据进行估计。插值是根据已有的数据进行推断,填充数据。常用有线性插值、多项式插值、样条插值等。但是也可能造成一些误差。

4.KNN填充

利用KNN算法填充,把目标列当作目标标量,利用非缺失的数据进行knn算法拟合,最后对目标列缺失进行预测。

5.随机森林填充

随机森林跟knn算法差不多。

  1. 回归分析

回归分析是一种更复杂的方法,它通过建立一个回归模型来预测缺失值。这种方法可以更好地利用数据中的信息,但需要更多的计算资源和时间。常用的回归模型包括线性回归、逻辑回归、决策树回归等。

  1. 贝叶斯网络

贝叶斯网络是一种概率图模型,它可以通过建立一个网络结构来描述变量之间的依赖关系。贝叶斯网络可以用于处理缺失数据,通过建立一个网络结构来描述变量之间的依赖关系,并使用条件概率对缺失值进行推理和预测。这种方法可以更好地利用数据中的信息,但需要更多的计算资源和时间。

相关推荐
anxiao_m15 小时前
园区数字孪生怎么搭建?主流方案与服务商深度对比
大数据·运维·人工智能
Eric.4615 小时前
AI漫剧量产Prompt参数实操手册:Stable Diffusion+ComfyUI+OpenClaw通用复制即用配置
人工智能·深度学习·stable diffusion·prompt·ai漫剧
Eric.4615 小时前
OpenClaw 结合 Stable Diffusion 与 ComfyUI 实现本地离线 AI 漫剧全自动流水线|批量渲染、人设一致性、帧闪烁问题工程实践
人工智能·stable diffusion·comfyui·ai漫剧
Splashtop高性能远程控制软件15 小时前
AI 落地的连接基建评估:消费品行业远程连接方案的四个技术维度(性能 / 精度 / 安全 / 统一管理)
运维·人工智能·安全·远程工作·splashtop
AIkk8616 小时前
手机释放内存用什么工具方便?2026全平台工具实测科普
人工智能
阿里云大数据AI技术16 小时前
从 VDBBench 到 MMEB 榜首:阿里云 AI Search 从引擎到模型的全栈优化
人工智能·elasticsearch·agent
小白说大模型16 小时前
LLM集成数据库的幻觉治理:当AI给出的SQL建议是错的
数据库·人工智能·sql·oracle·重构·开源
火山引擎开发者社区16 小时前
豆包大模型测评招募丨寻找行业资深 AI 实践者
人工智能
ITyunwei098716 小时前
技术管理者视角:AI 重构 ITSM 的四个工程化落点
运维·人工智能
千维百策66616 小时前
AI 软件开发中的人与智能体:软件工程循环、人在环路中与框架工程
大数据·人工智能·软件工程