测试 IID 抽样

机器算法验证 假设检验 独立 kolmogorov-smirnov 测试 重采样 独立同居
2022-02-09 23:08:49

您将如何测试或检查抽样是否为 IID(独立且相同分布)?请注意,我不是指高斯和同分布,只是 IID。

我想到的想法是将样本重复分成两个大小相等的子样本,执行 Kolmogorov-Smirnov 检验并检查 p 值的分布是否均匀。

欢迎对这种方法发表任何评论,并提出任何建议。

开始赏金后的澄清: 我正在寻找可应用于非时间序列数据的一般测试。

2个回答

如果数据是 IID,您得出的结论来自外部信息,而不是数据本身。作为科学家,您需要根据数据收集方式和其他外部信息来确定假设数据 IID 是否合理。

考虑一些例子。

场景 1:我们独立于单个分布生成一组数据,该分布恰好是 2 个正态的混合。

场景 2:我们首先从二项分布生成性别变量,然后在男性和女性中,我们独立地从正态分布生成数据(但男性和女性的正态分布不同),然后我们删除或丢失性别信息。

在场景 1 中,数据是 IID,在场景 2 中,数据显然不是相同分布的(男性和女性的分布不同),但是这 2 个场景的 2 个分布与数据无法区分,您必须了解数据如何生成以确定差异。

场景 3:我对居住在我所在城市的人进行了简单的随机抽样,并进行了一项调查并分析结果,以推断城市中的所有人。

场景 4:我对居住在我所在城市的人进行了简单的随机抽样,并进行了一项调查并分析结果,以推断该国所有人。

在情景 3 中,受试者将被认为是独立的(感兴趣人群的简单随机样本),但在情景 4 中,他们不会被认为是独立的,因为它们是从感兴趣人群的一小部分中选择的,并且地理上的接近性可能会强加依赖。但是这两个数据集是相同的,这是我们打算使用数据的方式来确定它们在这种情况下是独立的还是依赖的。

因此没有办法仅使用数据进行测试以显示数据是 IID,绘图和其他诊断可以显示某些类型的非 IID,但缺少这些并不能保证数据是 IID。您还可以与特定假设进行比较(IID 正常比 IID 更容易反驳)。任何测试仍然只是一种排除,但未能拒绝测试永远不能证明它是 IID。

关于您是否愿意假设 IID 条件成立的决定需要基于数据收集方式、数据与其他信息之间的关系以及如何使用数据的科学性来做出。

编辑:

这是另一组不同的示例。

场景 5:数据是来自存在异方差性(方差不相等)的回归的残差。

场景 6:数据来自均值为 0 但方差不同的正态混合。

在场景 5 中,如果我们根据拟合值或其他变量(预测变量或潜在预测变量)绘制残差,我们可以清楚地看到残差不是同分布的,但是残差本身(没有外部信息)与场景 6 无法区分。

如果数据具有索引排序,您可以对时间序列使用白噪声测试。本质上,这意味着测试所有非零滞后的自相关为 0。这处理了独立性部分。我认为您的方法是试图主要解决假设的相同分布部分。我认为您的方法存在一些问题。我认为您需要进行大量拆分才能获得足够的 p 值来测试一致性。然后每个 KS 测试失去功率。如果您使用在部分数据集上重叠的拆分,则测试将是相关的。对于少量的分裂,均匀性测试缺乏力量。但是对于许多分裂,均匀性测试可能很强大,但 KS 测试不会。此外,这种方法似乎无助于检测变量之间的依赖关系。

@gu11aume 我不确定您对非时间序列的一般测试要求什么。空间数据提供了一种形式的非时间序列数据。在那里可以查看称为变异函数的函数。对于一维序列,我看不出按时间排序的序列与任何其他排序数据的方式之间没有太大区别。仍然可以定义和测试自相关函数。当您说要测试抽样的独立性时,我认为您有收集样本的顺序。所以我认为所有的一维案例都以相同的方式工作。