如何应对缺失值带来的分布变化?探索填充缺失值的最佳插补算法

news/2024/10/7 14:30:15

本文将探讨了缺失值插补的不同方法,并比较了它们在复原数据真实分布方面的效果,处理插补是一个不确定性的问题,尤其是在样本量较小或数据复杂性高时的挑战,应选择能够适应数据分布变化并准确插补缺失值的方法。

我们假设存在一个潜在的分布P,从中得出观察值X。此外,还绘制了一个与X相同维数的0/1向量,我们称这个向量为M,实际观测到的数据向量X被M掩码为X。我们观测到联合向量(X,M)的n个独立同分布(i.i.d)副本。如果我们把它写成一个数据矩阵,它可能看起来像这样:

较小的x,m表示“观察到的”,而较大的值则表示随机数量。大家讨论的缺失机制就是对(X*,M)的关系或联合分布的假设:

完全随机缺失(MCAR):一个值丢失的概率就像抛硬币一样,与数据集中的任何变量无关。缺失值只是一件麻烦事。你可以忽略它们,只关注数据集中完全观察到的部分,这样就不会有偏差。在数学中,对于所有m和x:

随机缺失(MAR):缺失的概率现在可以依赖于数据集中观察到的变量。一个典型的例子是两个变量,比如收入和年龄,其中年龄总是被观察到,但收入可能会因为年龄的某些值而丢失。这可能听起来很合理,但这里可能会变得复杂。在数学中,对于所有m和x:

非随机缺失(MNAR):这里一切皆有可能,我们不能笼统地概括。但是最终我们需要学习给定一个模式m '中观测值的缺失值的条件分布,以便在另一个模式m中推算。

实现这一点的著名的方法称为链式方程多重插补(Multiple Imputation by Chained Equations, MICE):首先使用简单的插补方法填充值,例如均值插补。然后对于每一次迭代t,对每一个变量j,根据所有其他已插补的变量进行回归分析(这些变量已被插补)。然后将这些变量的值填入已学习的插补器中,用于所有未观察到的X_j。在R语言中,可以方便地使用mice包来实现。我这种方法在实际应用中效果非常好,MICE中重现某些实例的底层分布的能力非常惊人。我们下面会用一个非常简单的例子(只有一个变量缺失,因此我们可以手动编码),模拟MICE通常会迭代执行的过程,以更好地了解他的工作原理。

 

https://avoid.overfit.cn/post/9f66c5f8cd204ed685af0744b935ddd5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hjln.cn/news/42777.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

202400610刷题总结

T1 T559。 T2(带权并查集) 1380。 把行和列的取值看成变量,其中行取1代表+1,列取1代表-1,为了凑x - y = c,这样可以拿并查集来做了。 维护d[x],到根的距离,我们把边定义为+,反向走为-。这样就行了,如果在一个集合,那么判断距离是不是c。 还可以差分约束,dfs(直接遍历一…

常微分方程

虽然这部分在笔记本上只有短短三页,但总是记不清公式,所以写下来,随时参考 规定 \(\int{p(x)\mathrm{d}x}\) 不含 \(C\) 一阶微分方程 一、变量分离方程 \[\frac{\mathrm d y}{\mathrm d x}=\frac{X(x)}{Y(y)} \]解:移项积分 \(\int{Y(y)}\mathrm{d}y=\int{X(x)}\mathrm{d}…

Python爬虫:通过js逆向了解某音请求接口参数a_bogus加密过程

1. 前言 需要提前说明以下,本篇文章讲述的内容仅供学习,切莫用于商业活动,如若被相关人员发现,本小编概不负责!切记。。 本次分析的接口为:https://www.douyin.com/aweme/v1/web/discover/search/ 它的请求方式为:GET 请求需要的参数有:请求参数中需要进行js逆向是:a_…

Chapter1 p1 Output Image

由于本文章是对TinyRenderer的模仿,所以并不打算引入外部库。 那么我们第一步需要解决的就是图形输出的问题,毕竟,如果连渲染的结果都看不到,那还叫什么Renderer嘛。 由于不引入外部库,所以选择输出的图片格式应该越简单越好,各种位图就成为了我们的首选。 这里我们选择了…

吴恩达机器学习第三课 Unsupervised learning recommenders reinforcement learning

Unsupervised learning recommenders reinforcement learning 1.1 课程介绍2.1 什么是聚类

KPTI——可以缓解“熔断” (Meltdown) 漏洞的内核新特性

Linux 内核修复办法:内核页表隔离KPTl(kernel page table isolation)每个进程一张页表变成两张:运行在内核态和运行在用户态时分别使用各自分离的页表Kernel页表包含了进程用户空间地址的映射和Kernel使用的内存映射用户页表仅仅包含了用户空间的内存映射以及内核跳板的内存映射…

吴恩达机器学习第二课 Advanced Learning Algorithms

Advanced Learning Algorithms week1 1.1 神经元和大脑1.2 需求预测构建自己神经网络的时候:需要决定隐藏层的个数和每个隐藏层的神经元个数1.3 图像感知 像素的亮度值从0~255变化 人脸识别:训练一个神经网络,以一个特征向量作为输入,输出图片中人的身份2.1 神经网络中的网…

nanoDLA逻辑分析仪上手教程

逻辑分析仪分析自定义总线数据前言 最近调试NXP FRDM-MCXN947开发板,发现它的硬件i2c接口读取的传感器数据老是不对,排查了硬件电路也发现不了啥问题;于是乎想到用逻辑分析仪试一下,果然很快定位到问题所在;还是那句话,用对的工具做对的事情,别浪费时间!这篇文章主要关…