Skip to content

方法Method

标签漂移与先验恢复

Label shift and prior recovery · Black box shift estimation · 标签先验漂移

固定类内输入分布,用预测混淆矩阵恢复目标标签比例,计算风险与概率修正,并检查覆盖、奇异和病态边界。

形式陈述 ​

某种产品的缺陷比例升高,但“合格品通常长什么样、缺陷品通常长什么样”保持不变。此时改变的是标签先验,适合考虑标签漂移。设源分布为 PS,目标为 PT,标签 Y∈{0,1},其先验分别为 πS,πT。假定存在共同的类内输入分布 Kj,使

PS(dx,Y=j)=πSjKj(dx),PT(dx,Y=j)=πTjKj(dx).

目标中会出现的类别必须在源中有正概率;下面估计两个类别的条件量时,要求 πS0,πS1>0。这与协变量漂移保留 P(Y∣X) 的假设方向不同,二者互不自动包含。

先在独立资料上训练并冻结一个预测器 f:X→{0,1}。定义列条件化的混淆矩阵与目标预测比例:

Cij=PS(f(X)=i∣Y=j),qi=PT(f(X)=i).

行是预测类别,列是真实类别,每列和为一。f 冻结且 Kj 不变,所以 PT(f(X)=i∣Y=j)=Cij。按全概率公式,

(1)q=CπT.

因此可逆时能用逆矩阵求解及其稳定性恢复 πT=C−1q。实践中在独立源有标签集估计 C,在目标无标签集估计 q;不能用训练内预测率代替样本外混淆矩阵。算法输出先验估计、每类源样本量、矩阵条件诊断和方程残差,而非仅输出一个被强行截成概率的向量。

若采用联合矩阵 Mij=PS(f(X)=i,Y=j),则 M=Cdiag(πS),方程变为 q=Mw,其中 wj=πTj/πSj。C−1q 得到先验,M−1q 得到先验比;二者不能混用。[1, §4]

直觉

每个真实类别提供一列固定的“预测指纹”。目标预测比例是这些列按未知先验混合的结果。如果两类指纹不同,混合比例可能由结果反推;如果完全相同,观察再多预测也看不出哪一类更多。

预测器不必很准确或已做概率校准。一个总把两类颠倒的预测器,混淆矩阵反而可逆;一个总报多数类、准确率很高的预测器却可能丢掉全部先验信息。这里要的是不同类别能否产生可区分的输出分布。

例子与边界

从两张计数表恢复先验与风险 ​

在独立源验证集中,真实零类100个,预测为零80个、为一20个;真实一类100个,预测为零10个、为一90个。目标100个无标签输入中,31个预测为零、69个为一。暂把相应频率当作准确总体量,得到

C=(4/51/101/59/10),q=(31/10069/100).

令 p=πT1。第一行给 0.31=0.8(1−p)+0.1p,故 p=0.7,目标先验为 (0.3,0.7)。第二行复核 0.2⋅0.3+0.9⋅0.7=0.69。源先验为 (0.5,0.5) 时,标签权重是 (0.6,1.4)。

采用0–1损失,f 在零类的错误率为0.2,一类为0.1,所以源风险是0.15,目标风险是

RT(f)=0.3⋅0.2+0.7⋅0.1=0.13.

若假阴性的成本是5、假阳性为1,则同一个分类器的目标成本改为 0.3⋅0.2+5⋅0.7⋅0.1=0.41。恢复先验后仍要说明评价哪一种损失。

病态:可逆却把小误差放大 ​

一般二分类矩阵可写成

(2)C=(ab1−a1−b),p=a−q0a−b.

det⁡C=a−b。取 a=0.51,b=0.49,真实 p=0.7 对应 q0=0.496。若只将目标比例误估为0.498,恢复值就变成0.6;目标频率误差0.002被放大为先验误差0.1。再取 q^0=0.48,解会变为1.5,已离开概率单纯形。

精确矩阵下,|p^−p|=|q^0−q0|/|a−b|。矩阵也要估计时,令 C^π^=q^,直接相减得到

(3)π^−πT=C^−1{(q^−q)−(C^−C)πT}.

只要 C^ 可逆,这就是精确等式;任意相容范数再给误差上界。增加目标无标签量只能缩小第一项,源混淆矩阵的误差仍在。有限样本的负分量可能来自采样波动、病态或模型错设,不能只凭一次越界便宣布标签漂移假设为假。

奇异:预测摘要不识别与完整数据不识别 ​

若 a=b=1/2,两列相同。无论目标先验是 (0.9,0.1) 还是 (0.1,0.9),都有 q=(0.5,0.5)。给这个方程使用伪逆,可以挑出一个解,却没有增加识别信息。

还需分清两层结论。若 X 本来能区分类别,只是 f 把信息丢掉,换更有信息的分数或分箱有机会改善矩阵。若进一步令 K0=K1,完整目标输入分布也与先验无关:两个世界有相同源有标签律、相同目标无标签律,却有不同先验。这时任何仅使用这些资料的方法都无法恢复目标先验,需要目标标签或其他额外信息。

源中某类概率为零,则该列条件分布不能由源资料估计。即使目标有很多无标签输入,既有公式也不能凭空补出未知列。类覆盖、矩阵可逆、数值稳定是依次需要回答的三个问题。

推论与应用

给概率作先验修正 ​

若已知源后验 ηS(x)=PS(Y=1∣X=x),Bayes公式给

(4)ηT(x)=w1ηS(x)w1ηS(x)+w0(1−ηS(x)),

在目标几乎处处、分母为正处理解。例如 ηS(x)=0.6,w=(0.6,1.4),得到 ηT(x)=0.84/(0.84+0.24)=7/9。总体校准的分数 S 也可用同一公式修正其 P(Y=1∣S),因为固定分数的类内分布随 X∣Y 一起保持不变;所得是基于分数的信息,不一定等于基于完整 X 的后验。未经校准的原始分数则不能直接当作式(4)的源后验。

对任意固定预测器 h,类内平均损失记作 rj=ES[ℓ(h(X),Y)∣Y=j],便有

RT(h)=∑jπTjrj=ES[wYℓ(h(X),Y)].

用同一份目标摘要估计先验、挑模型、又宣布最终独立测试性能,会再次产生选择问题。修正方法本身也应进入完整评价协议,最终目标标签审计能检查迁移假设是否合理。

约束解与诊断 ​

有噪声时可求 minπ≥0,1Tπ=1‖C^π−q^‖22,明确返回受约束估计与残差。它保证数值是概率,不保证无偏,也不修复奇异情形。二分类准确总体模型要求 q0 落在 a,b 之间;多类要求目标输出向量落在混淆列向量的凸包内。落在凸包内只说明摘要相容,不能证明完整类内分布不变。

若有 n 个源验证点、m 个目标点,先付 n+m 次固定预测,再在线性时间累计计数;两类只需常数次求解。多类 k 的一般稠密线性求解另需 O(k3),但最重要的成本往往是取得足够的稀有源类标签。

自测与答案 ​

  1. a=0.1,b=0.9,q0=0.66,虽然预测器经常颠倒类别,先验能恢复吗?能,p=(0.1−0.66)/(0.1−0.9)=0.7。
  2. 源先验 (0.8,0.2)、目标先验 (0.4,0.6),权重是否为 (0.4,0.6)?不是,应该为 (1/2,3);源概率乘权重才得到目标概率。
参考资料
关系图谱16 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系