Whitening a foundation-model embedding and using its squared norm as a training-free likelihood surrogate is motivated by the observation that whitened coordinates often appear approximately standard normal. We show that this observation follows from the projection central limit theorem and therefore does not imply a Gaussian joint distribution. Across multiple encoders and three training objectives, we find systematic over-dispersion of the whitened radius relative to the Gaussian reference, including against distributional clones with identical mean and covariance. We further show that the commonly reported agreement between empirical and theoretical norm statistics is an algebraic consequence of in-sample whitening and does not constitute evidence for Gaussianity. We identify the mechanism behind this behavior: whitening reverses the encoder's spectral hierarchy, shifting the contribution to the squared norm toward near-degenerate directions that encode predominantly noise. In these directions, the dominant variability is governed by a single input-dependent scale. We estimate this scale from two moments and use it to predict, without additional free parameters, the cross-dependence between disjoint spectral halves. These results indicate that the squared whitened norm is better interpreted as a Mahalanobis measure of semantic atypicality than as a log-likelihood. This interpretation explains both its practical effectiveness and its calibration failures: the statistic can rank and detect atypical samples consistently with nonparametric density estimates and across encoders trained with different objectives, while Gaussian tail thresholds can be inaccurate by orders of magnitude. etc.
Figures & tables
Figure 1: The polar decomposition of a whitened embedding, and the division this paper is about. The directional factor is what a contrastive loss optimises; the radial factor is the whole of the likelihood surrogate, and Theorem 5 shows the objective cannot determine it.
images
captions
published
measured
Gaussian
published
measured
Gaussian
radial mean
27.43
27.43
27.7038
28.49
27.07
27.7038
radial sd
3.94
3.92
0.649
5.72
5.18
0.649
AD pass
98.3%
98.7%
100.0%
90.1%
92.3%
100.0%
mean A2
0.4890
0.4951
0.3885
0.5926
0.5802
0.3885
DP pass
99.3%
99.3%
100.0%
99.2%
99.2%
100.0%
Table 1: Published summary statistics against the same statistics on our own embeddings, in-sample whitening at the published group size 250 . “Gaussian” is an exact Gaussian of the same shape through the same pipeline, its radial sd the mean of 30 draws, spread ±0.006 .
statistic
modality
published
exact Gaussian null
z
measured
mean Anderson–Darling A2
images
0.4890
0.3891±0.0016
+62
0.4951
captions
0.5926
0.3891±0.0016
+126
0.5802
mean D’Agostino–Pearson p
images
0.3624
0.5052±0.0021
−67
0.3630
captions
0.2568
0.5052±0.0021
−117
0.2741
Table 2: Published grand averages against the null law of the protocol itself, obtained by simulating the entire protocol on exact Gaussians 24 times, with our measured values alongside.
statistic
data
Gaussian clone
spherical clone
images
radial sd
5.99
1.02
4.78
kurtosis, principal axes
+0.5423±0.0516
−0.0020±0.0028
+0.2514±0.0149
kurtosis, encoder’s own axes
+0.0216±0.0031
+0.0025±0.0045
+0.2476±0.0132
corr(R,∣⟨u,v1⟩∣)
−0.4533±0.0229
+0.0036±0.0110
−0.0005±0.0179
captions
radial sd
8.09
1.01
6.39
kurtosis, principal axes
+0.9532±0.0609
−0.0024±0.0026
+0.4354±0.0136
Table 3: Data against covariance-matched clones; split-half whitening, axes from the reference half, five splits. A spherical law has the same coordinate kurtosis in every basis and a radius independent of direction. Both clones do; the data does neither.
encoder
d
ends in
raw cv
over
γ2 raw
γ2 PC
corr(R,∣u1∣)
CLIP ViT-L/14, openai
768
linear projection
0.0444
5.90 ×
+0.022
+0.542
-0.453
CLIP ViT-B/32, openai
512
linear projection
0.0528
6.30 ×
+0.009
+1.523
-0.435
CLIP ViT-B/32, LAION-2B
512
linear projection
0.0505
6.64 ×
-0.008
+1.438
-0.421
CLIP ViT-B/32, DataComp
512
linear projection
0.0442
6.62 ×
-0.012
+1.494
-0.413
SigLIP ViT-B/16, WebLI
768
attention pool
0.0710
7.55 ×
+0.039
+0.922
-0.512
DINOv2 ViT-B/14
768
LayerNorm
0.0199
6.42 ×
+0.007
+0.687
-0.505
Table 4: Six encoders, the same 5,000 images, the same battery. “raw cv” is the coefficient of variation of ∥z∥ before whitening; “over” is the whitened radial sd divided by a Gaussian clone’s under the split-half protocol of Table 3 , which is why CLIP-L/14 reads 5.90× here and 6.04× in Table 1 .
k
head share
over
halves
V
ρs
V , one
tail γ2
tail
raw
whitened
scale
3V
measured
var
CLIP-L/14 images
95
66%
12%
42.5
+0.76
0.137
0.79
0.123
0.41
0.49
96%
CLIP-L/14 captions
67
69%
9%
73.9
+0.85
0.221
0.88
0.207
0.66
0.70
101%
CLIP-B/32 images
68
67%
13%
50.7
+0.41
0.312
0.42
0.223
0.94
1.37
99%
SigLIP images
73
66%
10%
64.7
+0.71
0.211
0.73
0.183
0.63
0.77
99%
DINOv2 images
205
69%
27%
46.4
+0.91
0.164
0.96
0.161
0.49
0.45
82%
Table 5: The inversion and the scale model of Proposition 4 , in-sample PCA whitening. “head share” is the share of the norm carried by the top- k directions before and after whitening. “over” is the tail-energy variance relative to a Gaussian clone and “halves” the correlation between the energies of the two halves of the tail; these two measurements determine (V,ρs) jointly through eq. 10 . “ V , one scale” is what the over-dispersion alone would give under ρs=1 , shown to expose the bias. “tail γ2 ” is the tail coordinate kurtosis, as implied by the fitted scale ( 3V ) and as measured; the excess above 3V is scale variation within a half, which ρs does not capture. “tail var” is the share of Var(∥w∥2) carried by the tail.
Figure 2: The mechanism in three panels. (a) Whitening amplifies the encoder’s least-informative directions, and that is where the non-Gaussianity is; the Gaussian clone is flat at zero. (b) Two disjoint halves of the tail have energies that move together for real embeddings and not for the clone: one per-input scale multiplies the whole tail. (c) That scale is semantic atypicality.
COCO
CIFAR-100
pets
flowers
DTD
SVHN
within / between
CLIP ViT-B/32
5.54 ×
5.75 ×
6.72 ×
6.47 ×
6.02 ×
8.11 ×
0.105 / 0.929
DINOv2 ViT-B/14
6.18 ×
4.18 ×
6.08 ×
6.13 ×
7.82 ×
7.62 ×
0.149 / 1.312
Table 6: Over-dispersion by corpus, two encoders. The within-corpus figure is the standard deviation of a single block, estimated from disjoint pairs of the same distribution.
score
CLIP ViT-B/32
DINOv2 ViT-B/14
COCO in
CIFAR-100 in
COCO in
CIFAR-100 in
Mahalanobis, ∥w∥2
0.895
0.947
0.974
0.907
tail term only
0.896
0.949
0.973
0.916
head term only
0.414
0.801
0.167
0.212
Mahalanobis ++
0.853
0.944
0.973
0.954
k -NN cosine distance
0.688
0.895
0.957
0.939
Table 7: AUROC on a corpus-shift benchmark, averaged over five out-distributions, with the in-distribution fitted on one block of 2,500 images and evaluated on a disjoint block. “tail” and “head” are the parts of ∥w∥2 beyond and within the effective rank. Mahalanobis ++ is Mahalanobis after L2 normalisation.
nominal
images
captions
Gaussian
recalibrated
Gaussian
recalibrated
10%
38.3%
10.1%
38.4%
10.0%
5%
35.8%
5.0%
36.5%
5.1%
1%
31.2%
1.0%
33.0%
1.1%
0.1%
26.5%
0.1%
29.3%
0.1%
Table 8: Actual exceedance of a threshold set from the Gaussian surrogate, and from the one-dimensional recalibration eq. 11 , when the truth is the measured radial law.