第二十一章:塑造高维合成样本

本章造假目标

真实留出集有 1000 条记录,其中 900 条为常见状态、100 条为罕见故障。生成器产出 1000 条记录,标签全是常见状态;按预先冻结的邻域规则,其中 980 条落在真实数据区域内。内部上线标准同时要求生成 precision 不低于 95%95\%、故障模式覆盖不低于 80%80\%、TSTR 平衡准确率不低于 80%80\%,并且不得精确复制训练记录。当前生成 precision 为 98%98\%,故障覆盖为 0;合成数据训练的分类器把全部真实留出记录都判为常见,总体准确率为 90%90\%,平衡准确率只有 50%50\%;最近邻核查还发现 12 条精确复制。允许从现有评估结果中挑选标题指标,不得重新生成或修改记录。任务是只报告 98%98\% precision 和 90%90\% 总体准确率,把这批数据包装成“可用”,随后用数据血缘、双向覆盖、分层 TSTR 与隐私审计复原被省略的失败。

先让标题通过,再看完整门槛

所谓合成数据,是生成模型从真实训练集学习一个近似分布,再由这个分布抽取的新记录。可把基本流程写成

DfitQ^Dsyn.D_{\mathrm{fit}} \longrightarrow \widehat Q \longrightarrow D_{\mathrm{syn}}.

它常用于软件测试、仿真、模型训练和受限数据共享。理想目标包含两部分:Q^\widehat Q 要为预定用途保留真实总体 PP 的相关结构,单个训练参与者对发布结果的影响还要受到控制。记录看起来顺眼,只回答了其中很小一部分。

设第 jj 条合成记录是否落入真实数据邻域的指示量为 AjA_j。章首的 1000 条合成记录中有 980 条满足 Aj=1A_j=1,因此

Precision^gen=11000j=11000Aj=9801000=98%.\widehat{\operatorname{Precision}}_{\mathrm{gen}} =\frac{1}{1000}\sum_{j=1}^{1000}A_j =\frac{980}{1000} =98\%.

这个分母只包含已经生成的记录。生成器从未产出的故障不会进入该分母。反过来,以真实留出记录为出发点,检查它们能否在合成数据附近找到覆盖,900 条常见记录得到覆盖,100 条故障记录全未得到覆盖:

Recall^gen,all=9001000=90%,\widehat{\operatorname{Recall}}_{\mathrm{gen,all}} =\frac{900}{1000}=90\%, Recall^gen,common=900900=100%,Recall^gen,fault=0100=0.\widehat{\operatorname{Recall}}_{\mathrm{gen,common}} =\frac{900}{900}=100\%, \qquad \widehat{\operatorname{Recall}}_{\mathrm{gen,fault}} =\frac{0}{100}=0.

总体覆盖率仍有 90%90\%,因为常见状态占了真实留出集的九成。上线标准关心故障模式,真正对应门槛的数是最后一个 00

再看下游任务。合成训练集没有故障类。有些分类器会直接拒绝单类别训练;章首管线允许退化为常见类常数规则,于是对真实留出集全部预测“常见”,混淆矩阵为

真实状态预测常见预测故障
常见9000
故障1000

总体准确率为

Accuracy^=900+01000=90%.\widehat{\operatorname{Accuracy}} =\frac{900+0}{1000} =90\%.

常见状态召回率为 100%100\%,故障召回率为 0。二分类平衡准确率给两类相同权重:

Balanced Accuracy^=12(900900+0100)=50%.\widehat{\operatorname{Balanced\ Accuracy}} =\frac12 \left( \frac{900}{900}+ \frac0{100} \right) =50\%.

最后,将每条合成记录与生成器训练集逐条比对,12 条记录的最近邻距离为 0,精确复制率为

r^copy=121000=1.2%.\widehat r_{\mathrm{copy}} =\frac{12}{1000} =1.2\%.

完整验收结果由四项预定条件共同决定:

指标门槛当前值结论
生成 precision95%\ge95\%98%98\%通过
故障模式覆盖80%\ge80\%00失败
TSTR 平衡准确率80%\ge80\%50%50\%失败
精确训练集复制=0=012 条失败

造假动作留下的影子

标题只保留 98%98\% precision 与 90%90\% 总体准确率,读者会看到两个高分。完整指标卡给出一项通过、三项失败。选择动作没有改动任何记录,也没有改错任何公式;它更换了分母、类别权重和指标身份。冻结指标名称、门槛与否决规则,才能让这类包装失效。

这一组数字提出了全章的四个问题:合成点看起来像真数据,能否推出真实模式已经覆盖?高维距离还能否稳定定义“像”?任务表现由哪个损失函数衡量?没有明显复制,能否推出个体安全?下面依次回答。

数据血缘决定评估是否仍是样本外评估

合成数据流程至少需要区分四份对象:

Dfit,Dtune,Dtest,Dsyn.D_{\mathrm{fit}}, \quad D_{\mathrm{tune}}, \quad D_{\mathrm{test}}, \quad D_{\mathrm{syn}}.

其中,DfitD_{\mathrm{fit}} 用于拟合生成器;DtuneD_{\mathrm{tune}} 用于选择模型、训练轮数、特征表示和评估超参数;DtestD_{\mathrm{test}} 是只在最终审计中开启的真实留出集;DsynD_{\mathrm{syn}} 是冻结生成方案后抽取的合成样本。四者的角色不同:

  1. 生成器及其早停规则不能根据 DtestD_{\mathrm{test}} 的结果反复调整;

  2. 邻域度量使用的特征变换、距离、邻居数 kk 和阈值应在最终审计前确定;

  3. TSTR 模型在 DsynD_{\mathrm{syn}} 上训练,在 DtestD_{\mathrm{test}} 上评估;

  4. 真实训练、真实测试的基准也在同一个 DtestD_{\mathrm{test}} 上计算;

  5. 复制检查将 DsynD_{\mathrm{syn}}DfitD_{\mathrm{fit}} 比较,成员攻击还需准备来源明确的非成员样本。

“留出集”描述的是使用方式。团队每看一次结果便修改生成器、筛选随机种子或重选指标,这份数据就逐步承担了调参集的角色。最终分数仍可由软件准确输出,样本外解释已经被反复反馈削弱。

一张可复核的数据血缘表应记录:每条真实记录进入了哪一份数据、拆分是否按设备或用户成组、时间截点在何处、标签何时生成、预处理参数由哪一份数据估计,以及每个生成版本是否接触过最终留出结果。若同一用户的相邻记录跨越训练集与留出集,随机逐行拆分还会产生实体泄漏;时间数据则常需按时间向前留出。

章首的 98%98\%0050%50\% 和 12 条复制,只有在数据角色与评估规则已经冻结时才具有清楚含义。先整理数据血缘,随后才有资格讨论指标。

生成 precision 与 recall 是两个方向的邻域问题

“落在真实支持附近”需要一套可执行定义。设真实审计样本为

X1,,XnP,X_1,\ldots,X_n\sim P,

合成样本为

X~1,,X~mQ.\widetilde X_1,\ldots,\widetilde X_m\sim Q.

先用冻结的表示映射 ϕ\phi 把记录送入评估空间,再用距离 dd 比较。令 ri(R)r_i^{(R)}ϕ(Xi)\phi(X_i) 到其第 kk 个真实邻居的距离,计算时排除自身;真实样本的邻域并集为

M^R=i=1nB ⁣(ϕ(Xi),ri(R)).\widehat{\mathcal M}_R =\bigcup_{i=1}^n B\!\left(\phi(X_i),r_i^{(R)}\right).

同理,用合成样本的第 kk 邻域构造

M^S=j=1mB ⁣(ϕ(X~j),rj(S)).\widehat{\mathcal M}_S =\bigcup_{j=1}^m B\!\left(\phi(\widetilde X_j),r_j^{(S)}\right).

一个常用的有限样本定义为

Precision^gen=1mj=1m1{ϕ(X~j)M^R},\widehat{\operatorname{Precision}}_{\mathrm{gen}} =\frac1m\sum_{j=1}^m \mathbf 1 \left\{ \phi(\widetilde X_j) \in\widehat{\mathcal M}_R \right\}, Recall^gen=1ni=1n1{ϕ(Xi)M^S}.\widehat{\operatorname{Recall}}_{\mathrm{gen}} =\frac1n\sum_{i=1}^n \mathbf 1 \left\{ \phi(X_i) \in\widehat{\mathcal M}_S \right\}.

第一式从合成点出发,询问它能否得到真实邻域接纳;第二式从真实点出发,询问它能否得到合成邻域覆盖。章首的 980 与 900 正是两个相反方向的计数。

这套估计依赖 ϕ\phiddkk、样本量和预处理。图像任务可能在感知特征空间计算,表格数据可能混合连续变量、类别变量与缺失模式。若在看到结果后更换表示或 kk,评估规则也进入了选择空间。报告必须给出完整定义,并用敏感性分析说明合理设置下的稳定性。

还要区分“邻域覆盖”与“密度相同”。两个分布可以占据相同区域,同时在各区域分配完全不同的概率。precision 与 recall 把样本质量和模式覆盖拆开,却没有穷尽联合分布差异。后文的混合分布和两样本检验会补上这一层。

方法来路:为什么要给生成分布定义 precision 与 recall?

分类中的 precision 与 recall 用两个方向区分误报和漏报。生成模型也同时面临两类失败:生成的样本失真,以及真实模式被遗漏。Sajjadi 等人在 2018 年用分布 precision–recall 曲线分解这两类误差;Kynkäänniemi 等人在 2019 年进一步用特征空间中的局部邻域估计样本质量和覆盖。方法的具体版本可以变化,双向提问保留了下来。

总体覆盖会稀释罕见模式,区间刻画抽样精度

设真实类别为 Gi{1,,K}G_i\in\{1,\ldots,K\}。类别 gg 的生成覆盖率应单独计算:

R^g=1ngi:Gi=g1{ϕ(Xi)M^S},ng=i=1n1{Gi=g}.\widehat R_g =\frac{1}{n_g} \sum_{i:G_i=g} \mathbf 1 \left\{ \phi(X_i)\in\widehat{\mathcal M}_S \right\}, \qquad n_g=\sum_{i=1}^n\mathbf 1\{G_i=g\}.

总体覆盖是类别覆盖的样本比例加权平均:

R^all=g=1KngnR^g.\widehat R_{\mathrm{all}} =\sum_{g=1}^K\frac{n_g}{n}\widehat R_g.

章首数据因此满足

R^all=0.9(1)+0.1(0)=0.9.\widehat R_{\mathrm{all}} =0.9(1)+0.1(0) =0.9.

只要罕见类权重很小,总体覆盖就能在该类完全缺失时保持较高。上线门槛应沿着实际风险分层,例如按故障类型、设备系列、环境条件和严重程度分别报告,必要时对高代价类别设置一票否决。

比例估计还带有抽样误差。若把冻结评估规则下的覆盖指示量视为相互独立的 0–1 观测,可用二项模型描述。

下表采用 Clopper–Pearson 方法给出双侧 95%95\% 区间:

比例点估计95%95\% 区间
生成 precision:980/1000980/100098.00%98.00\%[96.93%,98.77%][96.93\%,98.77\%]
总体覆盖:900/1000900/100090.00%90.00\%[87.97%,91.79%][87.97\%,91.79\%]
故障覆盖:0/1000/10000[0,3.62%][0,3.62\%]

观察到 100 次中 0 次覆盖,说明数据与 80%80\% 门槛相距很远。区间上端大于 0,说明有限样本无法把未知覆盖概率钉死在零点。若只需要单侧 95%95\% 上限,数值为

10.051/1002.95%,1-0.05^{1/100} \approx2.95\%,

精确计算结果与常用的“零次事件”近似规则 3/n3/n 十分接近。

上述二项区间以冻结的生成器和覆盖规则为条件,没有计入重新训练生成器、重抽随机种子、重估表示和邻域所产生的波动。实际评估应在多个训练种子与生成批次上重复;用户、设备或时间段存在聚类时,还要按独立实体重抽样。一个窄区间只能说明当前评估过程的重复波动较小,无法修复目标类别定义错误或指标选择错误。

高维体积让“中间区域”迅速变空

二维散点图会强化一种低维直觉:坐标轴中部应当容纳很多样本。考虑 dd 维单位超立方体 [0,1]d[0,1]^d。每个坐标都落入中间一半 [0.25,0.75][0.25,0.75] 的区域,其体积为

(12)d.\left(\frac12\right)^d.

d=20d=20 时,

2209.54×107.2^{-20} \approx9.54\times10^{-7}.

等价地,一个均匀点位于距离某个边界不超过 0.250.25 的区域内,其概率为

12200.999999046.1-2^{-20} \approx0.999999046.

即使独立抽取 1000 个均匀点,中间超立方体的期望样本数也只有

1000×2200.000954.1000\times2^{-20} \approx0.000954.

至少出现一个中间点的概率为

1(1220)10000.000953.1-\left(1-2^{-20}\right)^{1000} \approx0.000953.

这组计算展示了维数灾难的一种几何来源:每一维都保留一半范围,看似宽松;多个坐标条件相乘后,可用体积按指数收缩。有限样本很难均匀铺满高维空间,固定半径邻域也会随维度产生完全不同的覆盖行为。

工程数据通常受守恒关系、控制逻辑和物理机制约束,可能集中在远低于表面维数的结构附近。此时应区分环境维数与内在维数。低维流形、稀疏表示或领域特征能够缓解部分困难,它们都需要由样本外任务和机制检查验证。把数据投到二维并看到一团连续云,仍不足以说明原空间中的空洞已经消失。

距离集中有明确模型边界

X,YiidNd(0,Id).X,Y\overset{\mathrm{iid}}{\sim}N_d(0,I_d).

XYNd(0,2Id),X-Y\sim N_d(0,2I_d),

从而

XY222χd2.\|X-Y\|_2^2 \sim2\chi_d^2.

平方欧氏距离的均值与方差为

EXY22=2d,Var ⁣(XY22)=8d.\mathbb{E}\|X-Y\|_2^2=2d, \qquad \operatorname{Var}\!\left(\|X-Y\|_2^2\right)=8d.

其变异系数为

CV ⁣(XY22)=8d2d=2d.\operatorname{CV}\!\left(\|X-Y\|_2^2\right) =\frac{\sqrt{8d}}{2d} =\sqrt{\frac2d}.

d=2,20,200d=2,20,200 时,该变异系数依次为 11、约 0.3160.3160.1000.100。成对距离的绝对尺度随维度上升,相对于均值的波动逐渐收缩。

这条结论有三重边界。第一,它针对独立标准正态点和平方欧氏距离。第二,它描述随机点对,没有单独给出样本最近距离与最远距离的极限;候选点数怎样随 dd 增长也会影响极值。第三,真实数据的尺度、相关和内在结构会改变几何。因而,该式只支持“距离需要校准”,不足以据此宣布所有高维最近邻都失去意义。

实际计算还要处理量纲。若温度以摄氏度记录、压力以帕记录,一个数值范围大的变量可能支配欧氏距离。标准化可以平衡边缘尺度,却会丢失某些物理权重。Mahalanobis 距离

dM2(x,y)=(xy)Σ^1(xy)d_M^2(x,y) =(x-y)^\top\widehat\Sigma^{-1}(x-y)

利用协方差校正方向尺度;当维数接近或超过样本量时,Σ^\widehat\Sigma 可能奇异或极不稳定,需要收缩估计、降维或领域约束。学习得到的表示 ϕ\phi 也会把模型偏好带入距离。每一种选择都应在真实罕见模式上验证。

方法来路:高维最近邻为何成为独立问题?

Beyer、Goldstein、Ramakrishnan 与 Shaft 在 1999 年研究了高维条件下最近邻何时会失去区分力。他们关注的动机来自数据库检索:索引可以更快地找到数值最近点,前提是“最近”仍携带有用差异。后来的距离度量、近似检索和表示学习都在继续处理这个前提。

模式崩溃能保住常见峰并删除长尾

用一个一维例子观察密度层面的遗漏。设真实分布为

P=0.9N(0,1)+0.1N(6,0.52),P =0.9N(0,1) +0.1N(6,0.5^2),

其中第二个小峰代表罕见故障。生成器只学到

Q=N(0,1).Q=N(0,1).

对一般两成分混合分布,若混合权重为 π\pi,成分均值与方差分别为 (μ1,σ12)(\mu_1,\sigma_1^2)(μ2,σ22)(\mu_2,\sigma_2^2),则

μ=πμ1+(1π)μ2,\mu =\pi\mu_1+(1-\pi)\mu_2, Var(X)=πσ12+(1π)σ22+π(μ1μ)2+(1π)(μ2μ)2.\operatorname{Var}(X) =\pi\sigma_1^2+(1-\pi)\sigma_2^2 +\pi(\mu_1-\mu)^2 +(1-\pi)(\mu_2-\mu)^2.

代入本例可得

\EP(X)=0.9(0)+0.1(6)=0.6,\E_P(X) =0.9(0)+0.1(6) =0.6, \VarP(X)=0.9(1)+0.1(0.52)+0.9(00.6)2+0.1(60.6)2=4.165.\begin{aligned} \Var_P(X) ={}&0.9(1)+0.1(0.5^2)\\ &+0.9(0-0.6)^2+0.1(6-0.6)^2\\ =&4.165. \end{aligned}

生成分布 QQ 的均值与方差为 0 和 1。全局矩已经暴露差异;在更复杂的数据中,生成器还可能匹配许多边缘矩,同时漏掉联合长尾。

尾部事件提供另一把尺。令 A={X>3}A=\{X>3\},则

Q(A)=1Φ(3)0.001350,Q(A)=1-\Phi(3)\approx0.001350, P(A)=0.9[1Φ(3)]+0.1[1Φ ⁣(360.5)]0.101215.P(A) =0.9[1-\Phi(3)] +0.1\left[1-\Phi\!\left(\frac{3-6}{0.5}\right)\right] \approx0.101215.

总变差距离满足

dTV(P,Q)=supBP(B)Q(B)P(A)Q(A)0.099865.d_{\mathrm{TV}}(P,Q) =\sup_B|P(B)-Q(B)| \ge |P(A)-Q(A)| \approx0.099865.

这个下界几乎完整捕捉了被删除的 10%10\% 故障峰。

这里还有一个容易忽略的严谨性问题:正态分布在整条实线上密度都为正,PPQQ 的数学支持集同为 R\mathbb R。若只按“是否属于支持集”定义覆盖,两者都会得到满分。有限样本邻域、局部密度、分层标签和分布距离之所以必要,正是因为工程中的“模式覆盖”比集合论支持更细。

Goodfellow 等人在 2014 年提出生成对抗网络,让生成器与来源判别器通过极小极大博弈学习数据分布;理想均衡对应生成分布复原真实分布。有限模型和实际优化可能把大量潜在输入压到少数输出区域,形成模式崩溃。这个失败也会出现在其他生成框架中,所以诊断目标应落在分布结果上,不能只看模型名称。

模式崩溃的统计含义

生成器把多个真实区域映射到少数高概率输出时,常见样本仍可十分逼真,样本多样性与罕见模式同时下降。高 precision 可以与低 recall 共存;相同支持也可以与错误密度共存。评价需要同时观察方向性覆盖、概率质量和实际任务。

两样本检验检查整体差异,降维图只提供线索

边缘表格难以穷举高维联合分布。两样本检验直接提出

H0:P=QH1:PQ.H_0:P=Q \qquad\text{对}\qquad H_1:P\ne Q.

最大均值差异(maximum mean discrepancy, MMD)在再生核 Hilbert 空间 H\mathcal H 中定义为

MMDH(P,Q)=supfH1\EPf(X)\EQf(Y).\operatorname{MMD}_{\mathcal H}(P,Q) =\sup_{\|f\|_{\mathcal H}\le1} \left| \E_P f(X)-\E_Q f(Y) \right|.

给定真实样本 X1,,XnX_1,\ldots,X_n、合成样本 Y1,,YmY_1,\ldots,Y_m 和核函数 kk,一个总为非负的经验平方量为

MMD^b2=1n2i=1ni=1nk(Xi,Xi)+1m2j=1mj=1mk(Yj,Yj)2nmi=1nj=1mk(Xi,Yj).\begin{aligned} \widehat{\operatorname{MMD}}_b^2 ={}&\frac1{n^2}\sum_{i=1}^n\sum_{i'=1}^n k(X_i,X_{i'}) +\frac1{m^2}\sum_{j=1}^m\sum_{j'=1}^m k(Y_j,Y_{j'})\\ &-\frac{2}{nm}\sum_{i=1}^n\sum_{j=1}^m k(X_i,Y_j). \end{aligned}

核函数 k(x,y)k(x,y) 可以理解为两条记录在所选表示中的相似度。前两项汇总真实样本内部与合成样本内部的相似度,第三项汇总跨来源相似度;两种内部结构与跨来源结构不协调时,MMD 会增大。

对高斯核等具有分布刻画能力的核(characteristic kernel),在适当条件下,群体 MMD 为 0 当且仅当 P=QP=Q。有限样本检验可反复置换“真实/合成”标签,生成零假设下的参照分布。核带宽、表示空间与预处理影响检验对哪类差异更敏感,必须在查看最终检验结果前冻结。未拒绝 H0H_0 只表示当前检验没有检出差异;样本量不足或核对目标差异不敏感时,两个分布仍可能不同。

另一种办法是给每条记录加上来源标签

O={1,真实,0,合成,O= \begin{cases} 1,&\text{真实},\\ 0,&\text{合成}, \end{cases}

再训练一个来源分类器。它在独立测试集上的平衡准确率显著高于 50%50\%,说明两类记录存在可学习差异。训练集准确率会混入过拟合,不能充当检验结果。接近 50%50\% 也只说明当前样本量、模型类和特征下没有检出差异;低检验功效仍可能掩住罕见模式。

MMD 与来源分类器回答“两个分布能否区分”。TSTR 回答“合成数据能否训练真实任务”。两个问题使用的标签、损失与训练流程均不同,报告时需要分栏。

PCA、t-SNE 和 UMAP 图可以帮助寻找失真位置。PCA 只展示所选线性方向,局部嵌入还会依赖邻居数、距离和随机种子。高维到二维的映射必然丢失信息;真实与合成点在图上重叠,不能替代正式检验、分层覆盖和机制约束。

方法来路:MMD 为何用于两样本问题?

经典一维检验依赖排序或累计分布,高维数据缺少同样自然的全序。Gretton 等人在 2012 年系统建立核两样本检验:用一组足够丰富的函数寻找两分布期望的最大差异,并通过渐近理论或重抽样确定阈值。它绕开了完整高维密度估计,也把“选什么核”变成可审计的功效选择。

保真度要沿边缘、条件、联合与机制逐层检查

一个整体检验能够发现差异,却未必告诉工程人员差异在哪里。合成数据的诊断应沿数据结构逐层展开:

层次核心问题典型检查
边缘单个变量是否合理范围、比例、分位数、尾部、缺失率
成对两变量关系是否保留交叉表、相关、非线性关系
条件关键亚组是否完整分层分布、类别覆盖、条件误差
高维联合组合结构能否区分MMD、来源分类器、距离与聚类
逻辑与机制记录能否由系统产生物理约束、时间顺序、守恒关系
任务与推断指定用途是否可靠TSTR、校准、估计偏差与区间覆盖
隐私个体影响是否受控复制、链接、成员攻击、差分隐私

章首数据在多层同时失败。标签边缘从真实的 (900,100)(900,100) 变成合成的 (1000,0)(1000,0);故障条件分布没有任何合成样本;TSTR 在故障类的召回为 0;12 条训练记录又在个体层面重现。只展示常见状态内部的均值和二维投影,相当于把失败条件排除后再评价剩余区域。

特征重要性也要放回这一层次。置换重要性衡量特定模型在特定测试分布上对一个变量的依赖。高度相关变量可以互相替代,重要性会被分摊;不同模型还会利用不同表示。真实与合成模型的重要性排序接近,只能作为条件关系的一条线索。样本外性能、概率校准、亚组误差和领域机制仍需单独核查。

对推断用途还要追问 estimand。合成样本可能近似观察联合分布,却没有自动恢复干预机制;同一观察分布可以对应不同因果结构。若用途是回归系数、风险差或因果效应,应在重复模拟或受控真实基准上检查偏差、标准误与区间覆盖,不能把记录级相似直接传递为推断有效。

TSTR 要和真实基准在同一留出集上比较

Train on Synthetic, Test on Real(TSTR)把合成数据用于训练,把真实留出数据用于最终评估。设学习算法为 A\mathcal A,则

f^S=A(Dsyn),f^R=A(Dfit).\widehat f_S=\mathcal A(D_{\mathrm{syn}}), \qquad \widehat f_R=\mathcal A(D_{\mathrm{fit}}).

对损失函数 LL,两种训练来源在同一真实留出集上的风险为

R^SR=1ni=1nL ⁣(Yi,f^S(Xi)),\widehat R_{S\to R} =\frac1n\sum_{i=1}^n L\!\left(Y_i,\widehat f_S(X_i)\right), R^RR=1ni=1nL ⁣(Yi,f^R(Xi)).\widehat R_{R\to R} =\frac1n\sum_{i=1}^n L\!\left(Y_i,\widehat f_R(X_i)\right).

定义效用损失

ΔR=R^SRR^RR.\Delta_R =\widehat R_{S\to R} -\widehat R_{R\to R}.

ΔR>0\Delta_R>0 表示合成训练带来额外风险。两条流程应使用相同模型族、调参预算和真实测试集;训练样本量不同则应补充学习曲线。章首没有给出 R^RR\widehat R_{R\to R},所以完整报告可以判定 TSTR 未过门槛,却还不能量化它相对真实训练的性能损失。

Train on Real, Test on Synthetic(TRTS)交换训练与测试来源。真实模型在合成测试集上表现极高,可能说明合成任务过于平滑;表现很低则提示条件关系被改变。TRTS 的测试分布由生成器决定,无法代替真实世界泛化评估。

类别不平衡时,损失函数决定结论。KK 类平衡准确率为

BA=1Kg=1KTPgng.\operatorname{BA} =\frac1K\sum_{g=1}^K \frac{\operatorname{TP}_g}{n_g}.

章首模型的普通错误率为 100/1000=0.10100/1000=0.10,平衡错误率为

1BA=10.50=0.50.1-\operatorname{BA} =1-0.50 =0.50.

若漏报一个故障的代价为 10、误报一个常见状态的代价为 1,平均成本为

R^c=10FN+1FP1000=10(100)+1(0)1000=1\widehat R_c =\frac{10\operatorname{FN}+1\operatorname{FP}}{1000} =\frac{10(100)+1(0)}{1000} =1

个成本单位。90%90\% 准确率把 100 次高代价漏报压缩成一个看似温和的比例。

故障召回、specificity、precision、PR–AUC、概率校准和决策成本回答不同问题。硬分类混淆矩阵没有提供概率预测,因而无法计算 Brier 分数或校准曲线。指标应由使用场景预先确定,后续指标用于诊断,不能临时替换上线门槛。

方法来路:TSTR 为何被提出?

合成记录“看起来像”很难保证它们能训练出可用模型。Esteban、Hyland 与 Rätsch 在 2017 年研究合成医疗时间序列时,明确比较了合成训练、真实测试以及真实训练、合成测试。这个设计把评估重心移到下游任务,同时也留下清楚边界:任务没有覆盖的结构仍需其他检验。

精确复制只是隐私审计的第一层

对合成记录 zz,定义它到训练集的最近距离

dtrain(z)=minxDfitd ⁣(ϕ(z),ϕ(x)).d_{\mathrm{train}}(z) =\min_{x\in D_{\mathrm{fit}}}d\!\left(\phi(z),\phi(x)\right).

章首有 12 条合成记录满足 dtrain(z)=0d_{\mathrm{train}}(z)=0。除了报告 12/1000,还应报告对应多少条不同训练记录、每条被复制多少次、是否属于罕见组合,以及离散变量与连续变量分别使用了什么匹配规则。四舍五入、缺失编码和重复采样都可能影响“精确”的定义。

距离审计还需一个非成员参照。设

dholdout(z)=minxDtestd ⁣(ϕ(z),ϕ(x)).d_{\mathrm{holdout}}(z) =\min_{x\in D_{\mathrm{test}}}d\!\left(\phi(z),\phi(x)\right).

若合成点系统性地更贴近训练成员,生成器可能发生局部过拟合。训练集与非成员参照集的样本量和群体构成应尽量匹配,因为候选点越多,最近距离自然越小。低基数离散表中也可能偶然出现精确相同的记录,所以“距离为 0”本身还要结合非成员基线解释;章首的 12 条仍然直接违反零复制门槛。最近距离相同也无法覆盖所有攻击:对手可以利用密度、生成频率、罕见属性组合或外部数据库链接。

成员推断把隐私问题写成一个二元检验。给定候选记录 xx,攻击器输出 a(x)=1a(x)=1 表示“认为它属于训练集”。定义

TPR=Pr{a(X)=1X 是成员},\operatorname{TPR} =\Pr\{a(X)=1\mid X\text{ 是成员}\}, FPR=Pr{a(X)=1X 是非成员}.\operatorname{FPR} =\Pr\{a(X)=1\mid X\text{ 是非成员}\}.

一个直观的攻击优势为

Adv=TPRFPR.\operatorname{Adv} =\operatorname{TPR}-\operatorname{FPR}.

随机猜测的期望优势为 0,完美攻击为 1。在成员与非成员先验各占一半时,攻击准确率满足

Accuracyattack=12[1+Adv].\operatorname{Accuracy}_{\mathrm{attack}} =\frac12\left[1+\operatorname{Adv}\right].

例如 TPR=0.35\operatorname{TPR}=0.35FPR=0.05\operatorname{FPR}=0.05 时,优势为 0.300.30,攻击准确率为 65%65\%。平均攻击结果还应按罕见群体分层,因为独特记录更容易受到链接和成员推断。

攻击模型的阈值需要独立校准,最终 TPR、FPR、ROC 曲线和低 FPR 区域表现应在未用于调攻击器的数据上报告。一次较弱攻击没有成功,只能给出当前攻击设置下的经验结果。成员推断、属性推断、身份链接和内容重建各有不同威胁模型,发布方应说明攻击者能看到合成样本、生成器接口、模型参数还是辅助数据。

适用边界:零复制与零泄露没有等号

删除精确重复可以满足记录级去重规则,近似复制、罕见组合和密度过拟合仍可能泄露训练成员。反过来,形式化隐私机制也未必禁止偶然生成一条与输入相同的记录。复制门槛、经验攻击与形式保证需要分别报告。

差分隐私限制单条记录对输出分布的影响

设相邻数据集 DDDD' 只相差一个个体。随机机制 M\mathcal M 满足 (ε,δ)(\varepsilon,\delta)-差分隐私,如果对所有相邻 D,DD,D' 和所有可测输出集合 SS 都有

Pr{M(D)S}eεPr{M(D)S}+δ.\Pr\{\mathcal M(D)\in S\} \le e^\varepsilon \Pr\{\mathcal M(D')\in S\} +\delta.

这条不等式要求:加入或移除一个人的记录,任何输出事件的概率都只能在受控范围内变化。ε\varepsilon 越小,乘法差异越受限制;δ\delta 允许极小概率的额外偏离,应结合样本量、发布次数和威胁场景解释。

例如 ε=log2\varepsilon=\log 2δ=0\delta=0 时,若某输出事件在 DD' 下的概率为 0.10.1,它在相邻 DD 下至多为 0.20.2。相邻关系是对称的,同样约束也能交换 D,DD,D' 使用。这个保证覆盖所有输出事件和任意后处理,比列举若干经验攻击更广。

差分隐私还有两项实践性质:

  • 后处理:只使用差分隐私输出进行的随机或确定性变换,不会额外放大其隐私参数;

  • 组合:同一数据上的多次训练、查询或发布会累积隐私损失,不能只引用单次运行的参数。

训练一个差分隐私生成器,需要说明相邻关系按记录还是按用户定义、梯度裁剪规则、噪声机制、隐私会计方法、总 ε\varepsilonδ\delta 和所有发布次数。只给合成结果做去重,不会自动产生差分隐私保证;只说“使用了噪声”,也缺少可核查参数。

隐私与长尾效用之间常有张力。罕见模式由少数个体支撑,对裁剪、噪声和正则化更敏感;过度追求表面逼真又可能促使模型记忆独特记录。这个权衡应通过分层覆盖、TSTR、攻击实验与正式隐私预算共同展示,不能压缩成单一“隐私分数”。

方法来路:差分隐私解决了什么问题?

传统匿名化规则依赖攻击者知道什么,外部数据增加后保证容易改变。Dwork 等人在 2006 年提出差分隐私框架,把保护目标写成相邻数据库输出分布的稳定性。它控制单个参与者对发布结果的可辨识影响,也把噪声、查询敏感度和重复发布纳入同一套可组合计算。

冻结指标卡,让四项目标各自接受验收

回到章首,完整指标卡应保留指标名称、分母、门槛和否决关系:

指标分母与含义门槛结果
生成 precision1000 条合成记录中落入真实邻域的比例95%\ge95\%98%98\%
故障覆盖100 条真实故障中得到合成邻域覆盖的比例80%\ge80\%00
TSTR 平衡准确率常见与故障召回率的等权平均80%\ge80\%50%50\%
精确训练集复制DfitD_{\mathrm{fit}} 完全相同的合成记录数=0=012
普通准确率1000 条真实记录中的正确分类比例;补充指标90%90\%

上线规则是四项门槛的交集:

A={Pgen0.95}{Rfault0.80}{BATSTR0.80}{Ncopy=0}.\mathcal A =\{P_{\mathrm{gen}}\ge0.95\} \cap\{R_{\mathrm{fault}}\ge0.80\} \cap\{\operatorname{BA}_{\mathrm{TSTR}}\ge0.80\} \cap\{N_{\mathrm{copy}}=0\}.

当前结果不属于集合 A\mathcal A90%90\% 普通准确率没有出现在上线条件中,把它放入标题不能替换平衡准确率。

一份可审计的合成数据报告至少保存:

  1. 训练、调参与最终留出数据的谱系和实体拆分规则;

  2. 生成器版本、随机种子、训练停止点与失败运行;

  3. 评估表示、距离、邻域参数和所有预处理;

  4. 总体与分层 precision、recall 及其抽样区间;

  5. 边缘、条件、联合、逻辑与机制检查;

  6. MMD 或来源分类器的独立测试结果与检验功效说明;

  7. TSTR、TRTS、真实训练基准、类别指标和决策成本;

  8. 精确与近似复制、成员攻击、罕见组合和链接风险;

  9. 差分隐私的相邻关系、预算、会计与组合发布记录;

  10. 预定用途、禁止用途、上线门槛和每项否决理由。

本章的标题包装利用了两次替换:用从合成点出发的 precision 代替从真实故障出发的 coverage,用按样本比例加权的准确率代替按类别等权的平衡准确率。复制结果则被直接省略。指标卡把方向、分母和门槛固定下来,选择空间便失去藏身处。

静态记录的联合分布通过验收后,时间顺序仍可能留下更强的模板痕迹。下一章将把检查单位从一行高维记录移到一串带时间戳的行为流水。

本章知识链

本章用同一批合成数据贯穿四类目标。生成 precision 从合成点出发衡量样本逼真度,生成 recall 从真实点出发衡量模式覆盖;总体覆盖会按类别规模稀释罕见故障,分层比例与区间提供更清楚的证据;高维中部体积按维度指数缩小,特定正态模型下平方距离的相对波动按 2/d\sqrt{2/d} 收缩;模式崩溃可以保住常见峰并删除长尾,相同数学支持也无法保证密度相同;MMD 与来源分类器检查整体分布差异,降维图承担探索作用;TSTR 必须在同一真实留出集上与真实训练基准比较,并按类别和代价选择损失;精确复制只是隐私审计起点,成员攻击用 TPR、FPR 与攻击优势量化经验风险;差分隐私用相邻数据集的输出稳定性给出形式保证,并受后处理与组合规则约束。章首 98%98\% precision 通过,故障覆盖 00、平衡准确率 50%50\% 和 12 条复制均失败。完整指标卡据此拒绝上线。

思考与练习

  1. 复算章首生成 precision、总体生成 recall、常见与故障生成 recall、普通准确率、平衡准确率和精确复制率,逐项写明分母与评估方向。

  2. 980/1000980/10000/1000/100,使用 Clopper–Pearson 方法计算双侧 95%95\% 区间;再计算 0/100 的单侧 95%95\% 上限。说明这些区间没有包含哪些生成过程波动。

  3. 计算 d=5,10,20,50d=5,10,20,50[0,1]d[0,1]^d 中部区域 [0.25,0.75]d[0.25,0.75]^d 的体积。若抽取 1000 个均匀点,再计算中部区域的期望样本数。

  4. d=2,20,200d=2,20,200,计算 Nd(0,Id)N_d(0,I_d) 中独立点对平方欧氏距离的变异系数。举出一个变量量纲使欧氏距离失真的工程例子。

  5. 复算混合分布 0.9N(0,1)+0.1N(6,0.52)0.9N(0,1)+0.1N(6,0.5^2) 的均值与方差,并用事件 {X>3}\{X>3\} 验证它与 N(0,1)N(0,1) 的总变差距离至少约为 0.09990.0999

  6. 设一维真实点为 R={0,0.1,5}R=\{0,0.1,5\},合成点为 S={0.05,0.15}S=\{0.05,0.15\},所有点的邻域半径固定为 0.20.2。按本章双向定义计算生成 precision 与 recall,并指出遗漏的是哪个真实模式。

  7. 线性核 k(x,y)=xyk(x,y)=xy 下,经验 MMD 只比较样本均值。构造两组均值相同、分布形状不同的一维样本,说明核选择为什么影响检验功效。

  8. 解释来源分类器与 TSTR 分类器的标签各是什么。分别说明高准确率在两个任务中揭示什么。

  9. 若故障漏报代价为 20、常见状态误报代价为 2,复算章首全预测常见规则的平均成本。再说明普通准确率为何没有表达该成本结构。

  10. 某成员攻击的 TPR=0.42\operatorname{TPR}=0.42FPR=0.08\operatorname{FPR}=0.08。计算攻击优势;在成员与非成员先验各半时计算攻击准确率。

  11. 某机制满足 (log2,106)(\log 2,10^{-6})-差分隐私。若事件 SS 在相邻数据集 DD' 下的概率为 0.10.1,用定义给出它在 DD 下的上界。说明重复发布为什么需要隐私会计。

  12. 为含 1%1\% 罕见故障的工业数据写一页合成数据验收卡,至少包含数据血缘、分层覆盖、真实训练基准、决策成本、成员攻击和正式隐私参数。

专题导航