你有没有吃过“仿制豆腐”?不是真的黄豆磨的,而是工厂用植物蛋白调配出来的。单看一块,颜色、软度、光泽,几乎能以假乱真;夹一筷子蘸点酱油,口感也像模像样。可要是把真豆腐和仿制豆腐各切一桌菜——麻婆豆腐、豆腐汤、凉拌豆腐——混在一起让老食客盲品,问题就露出来了:有的仿制品单独吃没问题,一搭配别的食材就发涩、出水、不入味。 合成数据就像这种“仿制豆腐”。数据科学家为了隐私保护,不愿直接给出真实的用户数据,于是训练一个生成模型,仿造出一批“看起来差不多”的合成数据。可“看起来差不多”是远远不够的——万一统计分析的结果偏了呢?万一做出来的推荐系统在某个细分人群上失效了呢?这就需要一个系统化的“试吃流程”,把合成数据这块“仿制豆腐”从头到尾检验一遍:单看每项指标(一勺一勺品)、看多变量搭配(一桌菜怎么搭)、钻到高维空间里看整体(拆开盲盒看结构),最后用量化的尺子(假设检验)给出一个“能不能上桌”的结论,并写进标准化的质检报告里。 这套流程,就叫合成数据统计保真度检验。它的核心追问只有一个:合成数据与真实数据的统计性质,到底像不像?本篇我们就从一桌豆腐宴开始,把这条检验流水线一步步搭起来。
对 AI 从业者来说,掌握这套检验方法论,意味着你能为自己的合成数据给出“可量化、可复现、可审计”的质量背书,而不是一句含糊的“差不多”。无论是做数据交付、模型评测还是隐私保护合规,这项技能都是数据科学家与算法工程师的硬通货。
可视化演示
动态演示合成数据统计检验的核心机制,通过源头/管道/节点/终端四种模式展示关键概念与交互流程。
本节配有交互动效(进入视口后自动加载,约 3KB)。
合成数据统计检验:合成数据 合成数据统计保真度检验的整体方 单变量统计检验方法 核心机制可视化 合成数据统计检验整体架构与关键组件
单变量统计检验
想象你是豆腐宴的质检员,端上一碗“仿制豆腐”,第一件事是什么?先单独尝一口——咸淡、软硬、豆腥味重不重。这就是单变量检验:一个指标一个指标地过筛子。在合成数据里,“咸淡”就是均值,“软硬”就是方差,“豆腥味”就是分布的形状。如果均值差了十万八千里,后面的一切都是白搭。
把比喻映射到技术上:真实数据 $X=\{x_1,\dots,x_N\}$ 与合成数据 $Y=\{y_1,\dots,y_M\}$,我们先逐列对比。最经典的是两样本的均值差异是否在可接受范围内,以及方差是否被压缩或放大(生成模型最常犯的毛病就是“把数据生成得过于集中”,像豆腐压得太实)。但只看均值与方差还不够,分布的四分位数、极值、偏度都需要对比,这就是分位数-分位数图(Q-Q 图)的用武之地。
要度量两个分布到底差多远,我们引入分布距离的概念。以最常用的 Kolmogorov-Smirnov(K-S)距离为例:
回到豆腐宴:单变量检验就是最朴素的“逐项试吃”,它快速、直观、容易定位问题。但它有个天然盲区——只看单项指标,看不出“搭配”问题。正如单尝每块豆腐都合格,一上桌可能满盘皆输。这就逼着我们进入下一关:多变量联合分布检验。
- 累积分布函数 $F_X(x)$表示真实数据中取值不超过 $x$ 的比例,可以理解为“豆腐的咸度累计曲线”——逐勺尝过去,累计到某咸度时已尝过多少勺。
- 同理 $F_Y(x)$合成数据对应的累计曲线,标准是“同样咸度下,仿制豆腐累计到多少勺”。
- 绝对差后取最大在每个咸度值上计算两条曲线的竖直距离,再取全段最大值。这个最大值就是“最露馅的那一口”。
多变量联合分布
单品豆腐道道过关,可组成的豆腐宴却出了问题。问题出在哪?出在“搭配”。真实食材之间有默契:葱和豆腐是绝配,菠菜和豆腐同煮反而影响钙吸收。数据变量之间也有这种“默契”——身高和体重高度相关,收入和消费水平正相关。生成模型如果只学会了每个变量的边缘分布,却丢掉了变量间的相关结构,那合成的数据就像乱点鸳鸯谱的厨师,每样食材单看都对,摆在一起却完全不是那么回事。
统计上,“食材搭配默契”对应的就是协方差矩阵或相关系数矩阵。设真实数据的协方差矩阵为 $\Sigma_X$,合成数据的为 $\Sigma_Y$,我们希望这两个矩阵尽可能接近。一个常用的量化指标是矩阵的 Frobenius 距离:
多变量检验还有一种常见做法:直接比较两者在某个“切片”上的联合分布,比如分位数切分后做卡方检验。但协方差距离的优势在于——它直接抓住了“线性搭配默契”这个核心,计算简单且可解释。回到豆腐宴的比喻:协方差矩阵就是那张“食材搭配谱”,我们对照真实菜谱和仿制菜谱,逐条核对搭配关系,对不上的地方就是要改良的配方。
- 协方差矩阵 $\Sigma_X$$p$ 个变量的两两协方差排成的矩阵,第 $(i,j)$ 个元素刻画变量 $i$ 与变量 $j$ 的线性关联强度。$i=j$ 时就是变量自身的方差。
- 逐元素作差真实 vs 合成,每个“关系强度”格子相减,得到一张“默契差异表”。
- 平方求和开根号把差异表的每个格子平方,全部加起来,再开平方。这样正负差异不会互相抵消,得到一个非负的总差距。
高维降维可视化
数据维度一旦高起来——比如每个样本有 50 个、100 个字段——问题就棘手了。想象质检员面对的不是一桌豆腐宴,而是一整层楼的宴会厅,几百张桌子同时上菜。你怎么从整体上判断“这层楼的菜像不像一场真正的国宴”?你不可能每道菜都单独尝,更不可能同时感知所有菜的搭配关系。这时你需要退后几步,把整层楼的布局收入眼底——这就是降维可视化的思想。
PCA 是其中最基础的“全局取景”工具。它的核心是找到数据方差最大的几个方向,把高维数据投影到二维或三维平面上。投影之后,真实数据与合成数据的点云是否重叠,就一目了然了。PCA 的目标函数可以写作:
除了 PCA,t-SNE 也是常用的降维可视化工具。它更关注“局部邻域保持”——把高维中彼此靠近的点,在二维平面上也尽量画在一起,特别适合发现真实数据中有而合成数据中没有的“小簇结构”,比如某个细分人群。回到宴会厅比喻:PCA 是站在二楼看整体布局,t-SNE 则像拿着放大镜看每桌客人之间的私密互动。两者结合,才能既见森林,又见树木。
- 投影方向 $v$一个单位向量,决定了我们把数据“从哪个角度看”。
- 投影后方差 $\mathrm{Var}(Xv)$数据沿着方向 $v$ 投影后散开的程度。散得越开,说明这个方向保留的信息越多。
- 最大化在所有单位方向中,挑出方差最大的那个,就是第一主成分方向。第二个主成分再找与第一个正交且方差最大的方向,依此类推。
假设检验判断
我们做了一系列检验,得到了 K-S 距离、协方差距离、PCA 重叠度……然后呢?这些数字到底算“过关”还是“不过关”?就像质检员尝完几十道菜后,得有一个明确结论:“这桌仿制豆腐宴能不能上国宴?”不能靠“我感觉还行”,得靠一把标准的尺子。这把尺子,就是假设检验。
假设检验的思路很像法庭审判。我们先假设被告无罪——在合成数据场景里,原假设就是“合成数据与真实数据来自同一分布”。然后我们收集证据——计算检验统计量,看它在原假设成立时是否足够“极端”。如果证据太过分,我们就推翻原假设,判定“两者有显著差异”。
对 K-S 检验而言,给定显著性水平 $\alpha$(通常取 0.05),当样本量足够大时,p 值近似为:
回到豆腐宴:p 值就是质检员手里的“国家标准”。p < 0.05,判定“仿制豆腐与真豆腐差异显著,不能上桌”;p ≥ 0.05,判定“差异不显著,可以上桌”。但要注意,检验不显著≠两者相同,只是“证据不足以证明不同”。样本量太小时,检验功效不足,就算有明显差异也可能检不出来——就像只尝了一勺汤,就断言整锅汤没放盐。
- 显著性水平 $\alpha$我们愿意接受的“误判概率”,通常定为 0.05,相当于质检员说“我愿意承担 5% 的误杀风险”。
- 检验统计量放缩$D_{KS}$ 乘以由样本量组成的系数 $\frac{NM}{N+M}$,样本越多,同样的 $D_{KS}$ 就越“实锤”。
- 级数求和逼近 p 值这个无穷级数是 K-S 分布的生存函数,它告诉我们“在原假设下,看到这么极端统计量的概率”。
标准化检验报告
检验做了、结论也有了,但如果每个质检员的报告格式五花八门——有人写文字、有人列数字、有人画图——那数据交付方和接收方之间就没法高效沟通。就像豆腐宴的质检,如果 A 质检员记在纸条上,B 质检员画在表格里,C 质检员拍成视频,你让主办方怎么横向比较哪批豆腐更靠谱?标准化报告,就是给所有质检环节一个统一的“记分卡”。
一份标准化的合成数据保真度检验报告,至少应包含以下内容:数据集基本信息(样本量、维度、来源)、每项检验指标的得分或 p 值、是否通过阈值判断、使用的检验方法及参数、检验环境(随机种子、版本号)。报告中每个指标对应一个得分卡:
标准化报告的最大价值在于“可追溯、可复现”。每一行结论都能追溯到原始数据、检验方法和参数设置;任何人拿到同一份输入,运行同一套流程,都应该得到相同的输出。这就像把豆腐宴的每一道菜都留了样并冷冻保存——事后出了问题,可以随时复查。标准化报告是检验流程的“出口”,它把零散的检验行为凝结成一份有法律效力的质检档案。
- 逐指标 p 值 $p_i$对每个检验维度(单变量 K-S、多变量协方差、降维重叠度……)分别算出对应的 p 值。
- 阈值分段p 值不低于显著性水平 $\alpha_i$ 算 PASS;低于 $\alpha_i$ 但还在 $\alpha_i/10$ 以上算 WARN;低过 $\alpha_i/10$ 算 FAIL。
- 整体评级把所有指标的得分汇总,给出一个总体结论——“整体可放行 / 需修正后复检 / 不予放行”。
检验流程自动化
我们已经有了完整的检验方法论和标准化报告模板。但现实工作中,合成数据不是一批两批——每周、每天甚至每小时都在生成。如果每次都要人工跑一遍检验、盯一遍报告,数据科学家就变成了流水线上的质检工人。想象豆腐作坊每天出 1000 批仿制豆腐,每批都要人工逐项检验、手工填写报告——这既不现实,也容易出错。答案是把整条质检流水线自动化。
自动化检验流程的架构,可以用一条流水线来理解。流水线的每个环节都有明确的输入和输出:
自动化的关键设计原则是“把判断逻辑显式化”。阈值写进配置、报告模板固定化、告警规则可调整——这样整个流程既能无人值守,又能在需要时被人工干预。回到豆腐作坊的比喻:自动化检验就像给豆腐坊装上了一条全自动质检流水线,质检员从“逐批试吃”转变为“监控走势、调优阈值、处理异常”,工作重心从执行者变成管理者。这正是数据质量工程师在合成数据场景中的日常。
- 数据采集接收新一批合成数据及其对应的真实数据,校验格式完整性。
- 指标计算自动调用单变量检验、多变量检验、降维可视化三大模块,得到一组指标向量。
- 阈值判定与告警每个指标与预设阈值比较,越界则触发告警;告警信息写入日志,并通知负责人。
- 回归基线追踪把历次检验的指标值存入数据库,绘制趋势图。如果某个指标连续多批下滑,即使还在阈值内,也会提前预警——这就像豆腐口感连续三天变差的趋势,比单日突然崩溃更值得警惕。
AI 应用场景
差分隐私合成数据发布前的质量闸门
阶段:数据准备与质量评估
解决的问题:一家金融科技公司需要向外部研究机构发布脱敏后的用户消费数据。传统做法是直接发布差分隐私加噪后的真实数据,但噪声过大会让数据分析结果严重失真,噪声过小又会泄露隐私。合成数据生成后,“到底能不能发布”就成了一个需要量化回答的问题。
具体案例:数据团队用生成模型产出 100 万条合成消费记录,质检工程师运行本文的保真度检验流水线:单变量 K-S 检验发现“月消费金额”分布尾部差异显著(p=0.003),说明合成数据对高消费人群的刻画失真;协方差矩阵距离显示“消费金额-信用分”相关结构偏差过大。报告输出 FAIL,团队调整生成模型的采样温度后重新生成,复检通过后才对外发布。
合成数据驱动的模型训练回归基线
阶段:模型开发与持续集成
解决的问题:算法团队用合成数据扩充训练集来训练推荐模型,但担心合成数据分布偏移会导致模型上线后效果退化。传统方式靠上线后监控真实业务指标来事后发现,代价太大。
具体案例:团队把保真度检验嵌入训练流水线:每次合成数据生成完毕,自动计算与真实数据的多变量联合分布距离和 PCA 重叠度,并和历史基线对比。某次调整生成器结构后,协方差距离从 0.31 升至 0.78,触发阈值告警;团队回滚了那次改动,避免了一次可能导致线上推荐质量下滑的事故。
跨机构数据协作的信任凭证
阶段:数据共享与合规审计
解决的问题:医疗机构之间共享患者数据受严格隐私法规限制。合成数据被视为可行的替代方案,但接收方怎么确认“这份合成数据足够像真实数据,可以用作研究”?
具体案例:数据提供方在交付合成数据时,附带一份标准化的保真度检验报告(含逐指标 p 值、协方差距离、降维重叠图、复现种子和代码版本)。接收方拿到数据后运行同一套检验脚本,输出的报告与提供方一致。双方基于这份可复现的“质检档案”建立了信任,研究项目顺利通过伦理审查。
Python 演示
import numpy as npfrom scipy import statsfrom sklearn.decomposition import PCA def ks_test_all(real, syn): """对每一列做 K-S 检验,返回 p 值列表""" results = [] for col in range(real.shape[1]): stat, p_value = stats.ks_2samp(real[:, col], syn[:, col]) results.append({"column": col, "stat": round(stat, 4), "p": round(p_value, 4)}) return results def cov_distance(real, syn): """计算真实与合成数据协方差矩阵的 Frobenius 距离""" cov_real = np.cov(real, rowvar=False) cov_syn = np.cov(syn, rowvar=False) return float(np.sqrt(((cov_real - cov_syn) ** 2).sum())) def pca_overlap(real, syn, n_components=2): """用 PCA 降维后,计算两组样本在低维空间的密度重叠比例""" n = min(real.shape[0], syn.shape[0], 2000) X = np.vstack([real[:n], syn[:n]]) pca = PCA(n_components=n_components) low = pca.fit_transform(X) real_low, syn_low = low[:n], low[n:] combined = np.vstack([real_low, syn_low]) cov_inv = np.linalg.inv(np.cov(combined, rowvar=False) + 0.01 * np.eye(n_components)) # 用马氏距离的阈值近似判断重叠 dists = np.array([np.sqrt((p - q).T @ cov_inv @ (p - q)) for p in real_low for q in syn_low[::10]]) return float((dists < 3.0).mean()) def generate_report(ks_results, cov_dist, overlap, alpha=0.05): """输出标准化检验报告""" lines = ["=" * 46, "合成数据统计保真度检验报告", "=" * 46] for item in ks_results: status = "PASS" if item["p"] >= alpha else "FAIL" lines.append(f"[{status}] 列 {item['column']}: K-S={item['stat']}, p={item['p']}") cov_score = "PASS" if cov_dist < 0.5 else "WARN" if cov_dist < 1.0 else "FAIL" lines.append(f"[{cov_score}] 协方差距离: {cov_dist:.4f} (阈值 0.5/1.0)") overlap_score = "PASS" if overlap > 0.7 else "FAIL" lines.append(f"[{overlap_score}] PCA 重叠度: {overlap:.3f} (阈值 0.7)") lines.append("=" * 46) return "\n".join(lines) def main(): rng = np.random.default_rng(42) n = 2000 # 真实数据:两维相关正态分布 mean_real = np.array([5.0, 30.0]) cov_real = np.array([[1.0, 0.7], [0.7, 2.0]]) real = rng.multivariate_normal(mean_real, cov_real, size=n) # 合成数据:均值略偏、相关结构被弱化 mean_syn = np.array([5.2, 30.5]) cov_syn = np.array([[1.2, 0.4], [0.4, 2.3]]) syn = rng.multivariate_normal(mean_syn, cov_syn, size=n) ks_results = ks_test_all(real, syn) cov_dist = cov_distance(real, syn) overlap = pca_overlap(real, syn) report = generate_report(ks_results, cov_dist, overlap) print(report) if __name__ == "__main__": main()
from scipy import stats引入统计工具箱,K-S 检验等经典假设检验方法可直接调用。stats.ks_2samp(real[:, col], syn[:, col])对第col列做双样本 K-S 检验,返回统计量和 p 值。np.cov(real, rowvar=False)计算真实数据的协方差矩阵(每列为一个变量)。np.sqrt(((cov_real - cov_syn) ** 2).sum())逐元素平方、求和、开根号,得到 Frobenius 距离。PCA(n_components=2)初始化 PCA 模型,把高维数据降到二维空间。np.linalg.inv(np.cov(combined) + 0.01 * np.eye(...))求联合协方差矩阵的逆,加 0.01 是防止矩阵奇异导致无法求解。(dists < 3.0).mean()统计马氏距离小于 3 的比例,数值越高说明两组样本在低维空间越重叠。generate_report(...)把各项检验结果按统一格式拼成报告字符串,状态标记为 PASS / WARN / FAIL。
常见误区
误区我以为只要某个检验的 p 值大于 0.05,就说明合成数据和真实数据完全相同,可以放心大胆地发布使用了。
正解p 值大于显著性水平只说明“没有足够证据证明它们不同”,并不等于“证明它们相同”。就像质检员尝了一口汤没尝出咸味,只能说“这勺汤不能证明放了盐”,不能说“这锅汤肯定没放盐”。合成数据的分布可能真实存在细微偏差,只是样本量不足以让检验检测出来。要得出“足够相似”的结论,需要看效应量、置信区间,或者改用等价性检验。
为何常见:假设检验天然是“证伪”逻辑,教材和工具都强调 p 值大小,初学者很容易把“不能拒绝原假设”误读为“原假设为真”。
误区我把每一列的均值、方差、分位数都对比了一遍,全都通过了,就认为这批合成数据质量过关,直接交付给下游团队。
正解单变量检验只看“边际分布”,完全无视变量之间的相关结构。就像每样食材单独品味都正常,但一桌菜搭配起来可能完全不协调。真实数据里身高与体重强相关,合成数据若把这种相关结构丢掉,进行联合分析(比如回归模型、聚类分析)时结果会显著失真。多变量联合分布检验和降维可视化对比是单变量检验的重要补充。
为何常见:单变量检验实现最简单、结果最直观,工具链也最成熟,初学者很容易把“最容易做的检验”误当成“最充分的检验”。
误区我用 PCA 把合成数据和真实数据投影到二维平面,两张点云几乎完全重合,就认定这批合成数据保真度非常高。
正解PCA 只保留方差最大的方向,如果合成数据在某个低方差方向上存在系统性偏差(比如某个稀有子群体的分布被抹平),PCA 图上是看不出来的。就像站在二楼看宴会厅,整体布局井然有序,但走近了才发现某桌客人的对话完全不在一个频道上。t-SNE 这类关注局部结构的降维方法和密度重叠度的定量指标,可以弥补 PCA 的分辨率盲区。
为何常见:人脑对视觉重合度非常敏感,“看起来像”的判断格外有说服力,容易让人忽略降维本身会丢弃信息这一事实。
误区我为了提高检验的“说服力”,把合成数据的样本量从 1 万加到 100 万,想着样本越多,检验越精确,就越容易通过。
正解恰好相反。K-S 检验这类假设检验的检验功效随样本量增大而增大——合成数据与真实数据的微小差异在超大样本下会被放大成显著的 p 值。样本量越大,检验越“敏感”,任何细微偏差都可能导致拒绝原假设。这说明保真度检验不是“越大越好”的玄学,而是要在固定样本量协议下进行,并在报告中声明样本量设置。
为何常见:日常直觉里“更多数据=更好结论”;但在假设检验世界里,样本量放大的是“发现差异的能力”,而不是“证明相似的能力”。
误区我觉得标准化报告无非就是把各列检验的 p 值、均值差、方差比堆在一张表里,格式统一一下就完事了。
正解一份合格的保真度检验报告要能支撑“可追溯、可复现”:不仅要报告检验结果,还需写明数据版本、样本量、降维方法参数、随机种子、代码版本及运行环境。任何拿到报告的人应能复现从头到尾的判定过程。这就像质检档案不仅要写“合格”,还要写清检测仪器型号、检测员编号、留样编号——出了问题才追得到源头。
为何常见:报告给人的第一印象是“结果的陈列”,初学者容易忽略“过程的可复现性”这一核心要求,这也是判断报告是否专业的分水岭。
面试题
Q1. K-S 检验中,$D_{KS}$ 度量的本质是两个分布的什么差异?
- A.均值差异
- B.方差差异
- C.累积分布曲线的最大竖直差距← 正确答案
- D.相关系数差异
答案:C。K-S 统计量取的是两条累积分布曲线在每个位置上的绝对差最大值,像是“找两把尺子之间缝隙最大的一处”。它综合反映分布的位置、形状和离散度差异,不只是均值或方差。相关系数差异则是多变量检验范畴。
Q2. 协方差矩阵的 Frobenius 距离用于衡量什么?
- A.两个分布均值向量的距离
- B.变量间线性相关结构的总差异← 正确答案
- C.合成数据的隐私保护程度
- D.样本量的充足程度
答案:B。Frobenius 距离把两个协方差矩阵逐元素作差、平方求和再开方,衡量的是所有变量两两之间“搭配默契”的整体差异。它不看单变量分布,而看变量间的线性关联结构,对应豆腐宴里“食材搭配谱”的比对。
Q3. 关于 PCA 降维可视化,下列说法正确的是?
- A.PCA 一定能保留数据的所有信息
- B.PCA 找的是方差最大的投影方向← 正确答案
- C.PCA 图重叠度高不代表保真度一定高← 正确答案
- D.PCA 是唯一可用的降维方法
答案:BC。PCA 最大化投影后方差,只保留最主要的结构信息,低方差方向上的偏差会被丢弃,所以重叠度高并不能完全证明保真度高。t-SNE 等局部方法可以互补。
Q4. 在假设检验中,p 值小于显著性水平 $\alpha$ 意味着什么?
- A.原假设一定为真
- B.备择假设一定为真
- C.有足够证据拒绝原假设← 正确答案
- D.合成数据与真实数据完全相同
答案:C。p 值小于 $\alpha$,说明在原假设成立的前提下出现当前观测或更极端结果的概率很低,我们选择拒绝原假设。这是“证据足够推翻默认假设”的判定,而非证明备择假设绝对正确,更不等于两组数据完全相同。
Q5. 合成数据保真度检验中,单变量检验的典型局限有哪些?
- A.无法发现变量间的相关结构失真← 正确答案
- B.对分布尾部的极端值不敏感
- C.检验结果一定可靠
- D.无法覆盖联合分布层面的问题← 正确答案
答案:AD。单变量检验逐列对比,天然看不见变量之间的“搭配默契”。它可能发现不了相关结构被弱化的问题,联合分布失真在逐列检验中无从体现。分布尾部可以通过专门的极值检验或分位数对比来补充,并非所有单变量检验方法都对尾部不敏感。
Q6. 标准化检验报告的核心价值不包括以下哪项?
- A.快速横向比较不同批次合成数据的质量
- B.让检验过程可追溯、可复现
- C.自动修复所有保真度问题← 正确答案
- D.为数据交付提供统一的质量凭证
答案:C。报告是“质检档案”,它记录问题、暴露问题,但并不负责修复问题。修复需要回到生成模型调参或重新训练,报告的价值在于让质量和问题以统一、可追溯、可复现的方式呈现出来。
Q7. 检验流程自动化中,“回归基线追踪”的主要作用是?
- A.替代所有人工检验
- B.追踪历史检验指标的变化趋势并提前预警← 正确答案
- C.提高合成数据的生成速度
- D.消除假设检验中的第一类错误
答案:B。回归基线追踪把历次检验指标存入数据库并绘制趋势,当指标连续多批下滑时,即使还没突破阈值也能提前预警。它关注的是“慢性恶化趋势”,而非单批次的一次性判定。
Q8. K-S 检验的 p 值近似公式中,$\lambda = D_{KS}\sqrt{\frac{NM}{N+M}}$ 的作用是什么?
- A.修正协方差矩阵的偏差
- B.将统计量按样本量放缩以匹配理论分布← 正确答案
- C.把 p 值转化为置信区间
- D.降低样本量对检验功效的影响
答案:B。$D_{KS}$ 是两条经验累积分布曲线的最大差距,其抽样分布依赖于样本量。乘以 $\sqrt{\frac{NM}{N+M}}$ 后,统计量被规范化到与样本量无关的理论分布(K-S 分布)上,从而可以近似计算 p 值。样本量越大,同样的 $D_{KS}$ 对应的证据越强。
Q9. 在保真度检验中,“检验不显著”的正确解读是?
- A.没有足够证据证明两组分布不同← 正确答案
- B.两组分布一定相同
- C.样本量不足时可能产生“假阴性”← 正确答案
- D.可以合法声明“等价”
答案:AC。检验不显著只是“证据不足以拒绝原假设”——可能两者确实接近,也可能样本量太小导致功效不足。要主张“等价”需要专门的等价性检验,不能把“不拒绝”当成“接受”。
Q10. 用 PCA 做降维可视化时,“合成数据与真实数据点云高度重叠”这一现象最合理的推断是?
- A.两组数据在所有维度上完全一致
- B.两组数据在主要方差方向上分布接近← 正确答案
- C.合成数据一定优于真实数据
- D.无需再做其他保真度检验
答案:B。PCA 只能看到方差最大的少数几个方向上的结构,低方差方向的偏差可能会被完全掩盖。点云高度重叠说明“主要结构像”,但不能排除局部细节失真;结论是“主要方向上接近”,绝非“完全一致”,更不能因此省略其他检验。