【机器学习】决策树为什么对缺失值不敏感,如何处理缺失值?

简介: 文章探讨了决策树对缺失值不敏感的原因,并提出了处理缺失值的多种策略,包括在属性选择、分割点决定和模型测试阶段的不同处理方法。

决策树处理缺失要考虑以下三个问题:


1、当开始选择哪个属性来划分数据集时,样本在某几个属性上有缺失怎么处理:


(1)忽略缺失样本。

(2)填充缺失值

(3)计算信息增益率时根据缺失率的大小对信息增益率进行打折,例如计算属性A的信息增益率,若属性 A的缺失率为0.9,则将信息增益率乘以0.9作为最终的信息增益率。


2、一个属性已经被选择,那么在决定分割点时,有些样本在这个属性上有缺失怎么处理?


(1)忽略这些缺失的样本。

(2)填充缺失值,例如填充一个均值或者用其他方法将缺失值补全。 把缺失的样本,按照无缺失的样本被划分的子集样本个数的相对比率,分配到各个子集上去,至于那 些缺失样本分到子集1,哪些样本分配到子集2,这个没有一定准则,可以随机而动。

(3)把缺失的样本分配给所有的子集,也就是每个子集都有缺失的样本。

(4)单独将缺失的样本归为一个分支。


3、决策树模型构建好后,测试集上的某些属性是缺失的,这些属性该怎么处理?

(1)如果有单独的缺失值分支,依据此分支。

(2)把待分类的样本的属性A分配一个最常出现的值,然后进行分支预测。

(3)待分类的样本在到达属性A结点时就终止分类,然后根据此时A结点所覆盖的叶子节点类别状况为其 分配一个发生概率最高的类。


目录
相关文章
|
数据采集 机器学习/深度学习 数据挖掘
【机器学习4】构建良好的训练数据集——数据预处理(一)处理缺失值及异常值
【机器学习4】构建良好的训练数据集——数据预处理(一)处理缺失值及异常值
405 0
|
机器学习/深度学习 存储 数据采集
机器学习(十三)缺失值处理的处理方法总结
机器学习(十三)缺失值处理的处理方法总结
867 0
|
3月前
|
机器学习/深度学习 算法 Python
【Python】已完美解决:机器学习填补数值型缺失值时报错)TypeError: init() got an unexpected keyword argument ‘axis’,
【Python】已完美解决:机器学习填补数值型缺失值时报错)TypeError: init() got an unexpected keyword argument ‘axis’,
34 1
|
5月前
|
机器学习/深度学习 SQL 人工智能
人工智能平台PAI 操作报错合集之机器学习PAI缺失值补充报错,从odps读取数据正常 进行下一步时,补充缺失值报错如何解决
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。
|
5月前
|
机器学习/深度学习 数据采集 数据可视化
【Python 机器学习专栏】数据缺失值处理与插补方法
【4月更文挑战第30天】本文探讨了Python中处理数据缺失值的方法。缺失值影响数据分析和模型训练,可能导致模型偏差、准确性降低和干扰分析。检测缺失值可使用Pandas的`isnull()`和`notnull()`,或通过可视化。处理方法包括删除含缺失值的行/列及填充:固定值、均值/中位数、众数或最近邻。Scikit-learn提供了SimpleImputer和IterativeImputer类进行插补。选择方法要考虑数据特点、缺失值比例和模型需求。注意过度插补和验证评估。处理缺失值是提升数据质量和模型准确性关键步骤。
544 0
|
机器学习/深度学习 人工智能 数据处理
详解机器学习中的数据处理(一)——缺失值处理(附完整代码)
详解机器学习中的数据处理(一)——缺失值处理(附完整代码)
561 0
|
机器学习/深度学习 Python
机器学习:数据特征预处理缺失值处理
机器学习:数据特征预处理缺失值处理
129 0
|
13天前
|
机器学习/深度学习 算法 TensorFlow
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
交通标志识别系统。本系统使用Python作为主要编程语言,在交通标志图像识别功能实现中,基于TensorFlow搭建卷积神经网络算法模型,通过对收集到的58种常见的交通标志图像作为数据集,进行迭代训练最后得到一个识别精度较高的模型文件,然后保存为本地的h5格式文件。再使用Django开发Web网页端操作界面,实现用户上传一张交通标志图片,识别其名称。
43 6
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
|
2月前
|
机器学习/深度学习 算法 数据挖掘
8个常见的机器学习算法的计算复杂度总结
8个常见的机器学习算法的计算复杂度总结
8个常见的机器学习算法的计算复杂度总结
|
14天前
|
机器学习/深度学习 存储 人工智能
文本情感识别分析系统Python+SVM分类算法+机器学习人工智能+计算机毕业设计
使用Python作为开发语言,基于文本数据集(一个积极的xls文本格式和一个消极的xls文本格式文件),使用Word2vec对文本进行处理。通过支持向量机SVM算法训练情绪分类模型。实现对文本消极情感和文本积极情感的识别。并基于Django框架开发网页平台实现对用户的可视化操作和数据存储。
20 0
文本情感识别分析系统Python+SVM分类算法+机器学习人工智能+计算机毕业设计
下一篇
无影云桌面