Ein September-2026-Paper dokumentiert eine Fehlerart, die die Standard-Evaluierung von Quantisierung nicht sehen kann: Ein Modell, dessen Klassifikationsgenauigkeit eine 4-Bit-Gewichtsquantisierung übersteht, ändert trotzdem einen großen Teil seiner Retrieval-Top-1-Ergebnisse. The Undetected Damage of Quantization on Retrieval and How to Fix It (Zhou, Zirilli, Solombrino, Dessì und Rodolà, arXiv:2609.24322, cs.LG, eingereicht am 21. September 2026) berichtet, dass über drei Backbones und zwei Modalitäten hinweg Top-1-Retrieval-Ergebnisse bei 4 Bit für 14 bis 46 Prozent der Anfragen wechseln, während dieselben Checkpoints unter demselben Quantisierer ihre Klassifikationsantwort nur bei wenigen Prozent der Eingaben ändern1. Die Benchmark-Zahlen bewegen sich nur einen Bruchteil davon: In der CLIP-Text-zu-Bild-Einstellung des Papers fällt Recall@1 um 1,3 Prozent, während 24,6 Prozent der Top-1-Ergebnisse wechseln und etwa jede zehnte korrekt beantwortete Anfrage ihr Bild verliert1.
Der Mechanismus ist fast verdächtig einfach — und genau das ist der Punkt. Jeder Score, den das Modell erzeugt — ein Klassen-Logit oder eine Query-Dokument-Ähnlichkeit — verschiebt sich unter beschränktem Rundungsfehler um höchstens eine beschränkte Verschiebung ε. Das Top-1-Ergebnis übersteht das garantiert nur dann, wenn sein Vorsprung vor dem Zweitplatzierten größer als 2ε ist: Jede kleinere Lücke lässt eine Störung zu, die die beiden vertauscht. Die Cross-Entropy-Loss der Klassifikation drückt das korrekte Klassen-Logit von allen anderen weg, deshalb haben die meisten Klassifikations-Eingaben die Lücke gratis; das kontrastive Retrieval-Training trennt ein Positivum nur von seinen gepaarten Negativen und verlangt nie, dass das oberste Element weit vor dem zweiten bleibt1. Die Lücke ist ohne Labels messbar, was sie sowohl zu einem Pre-Deployment-Prädiktor als auch zu einem Laufzeit-Vertrauenssignal pro Eingabe macht — und sie treibt zwei aufgabenspezifische Fixes: zusätzliche Bitbreite für die Schichten, die die Lücke am stärksten bewegen, oder nur die Eingaben mit kleiner Lücke auf Full Precision routen.
Dieser Guide verifiziert die Zahlen am Primärtext, behandelt die Schranke und die Annahmen, die sie stillschweigend trifft, reproduziert die Fehlerart, die Schranke und die Ökonomie der selektiven Präzision in ausführbarem Python — und bezahlt dann den Anti-Hype-Preis: was ein „Top-1-Wechsel“ ist und was nicht, und wo die saubere Schranke aufhört, sauber zu sein.
1. Der Effekt: dasselbe Modell, dieselben Gewichte, andere Aufgabe, anderer Schaden
Das Kerneperiment des Papers hält alles konstant außer der Aufgabe. Drei feinabgestimmte Backbones — ViT-B/16 und ViT-L/16 für Bilder, Qwen3-Embedding-0.6B für Text, insgesamt 53 feinabgestimmte Checkpoints — werden gewichtsbasiert auf 4 und 3 Bit quantisiert (W4/W3), symmetrische Skalen pro Kanal oder pro 128-Gewichte-Gruppe, jede lineare Schicht quantisiert, und dann auf zwei Arten gelesen: als Klassifikator (Top-1-Klasse) und als Retriever (Erstrangiges über einem Korpus)1. Bei W4 Round-to-nearest mit Group-128-Skalen teilt sich die Top-1-Wechselrate gegenüber dem Full-Precision-Modell (FP) so auf1:
| Backbone | Klassifikation Top-1-Wechsel | Retrieval Top-1-Wechsel | Verhältnis |
|---|---|---|---|
| ViT-B/16 | 6,2 % ± 1,4 | 45,5 % ± 2,5 | 7,3× |
| ViT-L/16 | 2,9 % ± 0,7 | 42,1 % ± 1,5 | 14,3× |
| Qwen3-Emb-0.6B | 4,3 % ± 1,1 | 33,4 % ± 4,1 | 7,8× |
Derselbe Checkpoint, derselbe Quantisierer, dieselbe Bitbreite: Wenige Prozent der Klassifikationsantworten wechseln — und bis zu 45,5 Prozent der Retrieval-Top-1-Ergebnisse. Die Kopfrange von 14 bis 46 Prozent aus dem Abstract überspannt den gesamten Messsatz des Papers — 14 Prozent sind der bestmögliche Fall (ein gut separierter Text-Embedder wie GTE oder BGE unter einem stärkeren Quantisierer wie GPTQ bei W4), das obere Ende ist Bild-Retrieval unter einfachem Round-to-nearest1. Die Ein-Checkpoint-Zeile von Tabelle 1 des Papers macht die Asymmetrie für den Einwand „andere Modelle“ unübersehbar: Ein Satz von Embeddings, gelesen durch eine eingefrorene lineare Sonde einerseits und durch Kosinus-Self-Retrieval andererseits, wechselt dennoch die Retrieval-Top-1 für 41,2 Prozent der Anfragen gegenüber 8,6 Prozent für die Klassifikation — ein 4,8×-Verhältnis auf identischen Vektoren1.
Die aggregierten Metriken, die dieses Modell für das Deployment freigeben würden, sehen fast nichts davon. Aus Tabelle 2 des Papers (Round-to-nearest, Group-128, vier BEIR-Korpora): Qwen3-Emb-8B verliert bei W4 3,1 Prozent des mittleren nDCG@10, während 15,6 Prozent der Anfragen, deren Gold-Dokument auf Rang 1 stand, es von Rang 1 verlieren; Qwen3-Emb-0.6B verliert 7,5 Prozent nDCG@10, während 22,2 Prozent der Gold-Top-1-Anfragen das Gold von Rang 1 verlieren. Das Dokument, das den ersten Platz verlor, bleibt meist im Top-10-Fenster, über das nDCG@10 mittelt, also schluckt die Metrik den Schaden. Die Zusammenfassung des Papers: Bei W4 verlässt das Gold-Dokument die Top-1 für 16-22 Prozent der Anfragen, die eines hatten — und verlässt die Top-10 genauso oft, während nDCG@10 nur um 2,7-7,6 Prozent fällt1.
2. Der Mechanismus: Lücke, Contender-Menge und die 2ε-Schranke
Die Analyse ist ein Worst-Case-Argument über den Score-Vektor z über N Kandidaten, wobei ein „Score“ das ist, wonach das System rangiert — ein Klassen-Logit in der Klassifikation, eine Query-Kandidat-Ähnlichkeit im Retrieval. Quantisierung wird modelliert als Ersetzung von z durch z + δ, wobei δ eine Störung mit ‖δ‖∞ ≤ ε ist — der größte Betrag, um den Quantisierung irgendeinen Score verschiebt. Mit g_2(z) für die Lücke zwischen Top-1 und Zweitplatziertem lautet Lemma 1 des Papers: Das Top-1 übersteht jede ε-beschränkte Störung genau dann, wenn g_2(z) ≥ 2ε gilt1.
Beide Richtungen zählen. Die Notwendigkeit ist das Zwei-Zeilen-Argument: Jeder Score bewegt sich um höchstens ε, ein Kandidat kann den Gewinner also nur überholen, wenn er innerhalb von 2ε von ihm startete; wenn niemand das tat, kann keine Störung einen neuen Spitzenreiter erzeugen. Die Hinlänglichkeit ist der konstruierte Tausch: Liegt die Lücke unter 2ε, subtrahiere ε vom Gewinner, addiere ε zum Zweitplatzierten, und die Reihenfolge kehrt sich um. Der Beweis steht auf älterem Grund als das Paper — ist jeder Score nur bis zu einem Intervall gleicher Breite bekannt, ist die induzierte Vergleichsrelation der Semiordnung von Luce, Scott und Suppes sowie Fishburn, und die Rangfolgen, die eine beschränkte Störung erreichen kann, sind deren lineare Erweiterungen2. Die Quellenangabe des Papers ist präzise: „What is new here is the measurement, not the condition"1.
Drei Verfeinerungen machen die Bedingung deploybar statt bloß wahr.
Die Contender-Menge, nicht der Zweitplatzierte. Die Menge C_ε(z) = {k ≥ 2 : g_k(z) < 2ε} — alle Positionen, die eine Störung am Top-1 vorbeischieben könnte — kann tief in die Rangfolge hineinreichen. Innerhalb von 2ε zu liegen ist nicht transitiv, also erlaubt eine Kette von Fast-Gleichständen einem Kandidaten weit unterhalb des Top-1 das Überholen Genau daher kommen die Retrieval-Flips: Wechselt die Klassifikation ihr Top-1, ist das neue Top-1 zu 82,2 Prozent der alte Zweitplatzierte; im Bild-Retrieval des Papers ist es nur zu 39,7 Prozent, der Rest kommt von tiefer in der Liste1. Die Flanken des Retrieval-Top-1 sind voll; Klassifikationsmargen sind es nicht.
Differenzen, nicht Niveaus. Korollar 1 beobachtet, ob das Top-1 übersteht, hängt von δ nur über die Differenzen δ_j − δ_a mit dem Gewinner ab — eine Störung, die jeden Score gleich verschiebt, ändert nichts, egal wie groß ε ist. Die zu kalibrierende Größe ist deshalb S(x) = max_j(δ_a′ − δ_j) ≤ 2‖δ‖∞ auf der realisierten Störung, nicht das globale 2ε; der Stabilitätscheck des Papers akzeptiert daher strikt mehr Eingaben, als die rohe Schranke es täte (2ε statt S zu kalibrieren akzeptiert 67,2 Prozent der Klassifikations-Eingaben gegenüber 85,2 Prozent bei α = 0,10 — und gar keine Retrieval-Anfrage)1.
Gemessen, nicht angenommen. Entscheidend: Das Paper nimmt ε nicht an, es lässt beide Modelle — FP und quantisiert — auf die Eingabe laufen und misst δ = z^PTQ − z^FP, mit ε = ‖δ‖∞. Die Aufgabe der Schranke ist strukturell — sie sagt, welche Statistik Flips vorhersagt —, während die Störungsgröße eine empirische Größe ist, und genau das lässt einen Schwellenwert über Anfragen hinweg generalisieren.
Der Mechanismus erklärt die Aufgaben-Asymmetrie ohne jeden Rekurs auf Quantisierer-Schwäche. Bei W4 ist die Contender-Menge für 74,3 Prozent der ViT-B/16-Klassifikations-Eingaben leer und für keine einzige Retrieval-Anfrage; über alles Gemessene hinaus liegen 85,8 Prozent der Klassifikations-Eingaben über der Stabilitätsschwelle (medianer Separationsratio g_2/2ε = 5,73) gegenüber 3,5 Prozent der Retrieval-Anfragen (Median 0,081)1. Das Klassifikationstraining zahlt die Lücke; das Retrieval-Training tut es nicht, weil ein kontrastiver Loss ein Positivum nur von den Negativen trennt, mit denen er gepaart wurde — und das zweitrangige Dokument ist ein Vergleich, den das Training nie durchgeführt hat.
3. Was die Lücke kaufen kann: Vorhersage, Vertrauen pro Eingabe und zwei Fixes
Der Separationsratio g_2/2ε erklärt den Schaden über alles hinweg, was das Paper misst: Der mediane Separationskorrelationswert mit der Top-1-Wechselrate liegt bei Spearman −0,88 über 2.118 gemessenen Konfigurationen und bei −0,98 über zwölf Modell/Bitbreite-Konfigurationen (p < 10⁻⁷)1. Keine Zutat allein ist so prädiktiv — der mediane Gap erreicht −0,58 und das mediane ε nur +0,05, gegenüber −0,88 für den Ratio. Eine Konsequenz für Praktiker, die das Paper explizit macht: Wähle das Retrieval-Modell mit höherer Separation, nicht das größere — GTE-large mit 0,34B Parametern ändert bei beiden Bitbreiten weniger Top-1-Ergebnisse als Qwen3-Embedding-4B mit der zwölffachen Größe, weil seine Lücken weiter sind1.
Stabilitätscheck pro Eingabe (ohne Labels). Die Top-1-Bedingung braucht FP-Scores und die Störungsgröße — beides steht zur Deployment-Zeit nicht zur Verfügung, wenn nur das quantisierte Modell läuft. Die Umschreibung des Papers nutzt den eigenen Top-1/Top-2-Gap des quantisierten Modells gegen einen einzigen Schwellenwert τ̂, einmal kalibriert auf n ungelabelten Eingaben als Split-Conformal-Quantil von S(x). Kommen Kalibrations- und Test-Eingaben aus derselben Verteilung, garantiert Conformal-Kalibration Pr(akzeptiert und Top-1 gewechselt) ≤ α ohne Testzeit-Labels3. Die gemessenen Verletzungen bleiben in jedem Split unter α: Auf ViT-B/16-Klassifikation bei α = 0,10 beträgt die Abdeckung 85,2 ± 0,1 Prozent mit einer bedingten Verletzungsrate von 1,47 Prozent; im Text-Retrieval beträgt die Abdeckung nur 11,3 Prozent — der Check weigert sich korrekt, für fast jede Retrieval-Anfrage zu bürgen — und auf CLIP ViT-L/14 akzeptiert er 15,7 Prozent1. Das Paper bezahlt das ehrlich: Es erbt die Austauschbarkeitsannahme der Conformal-Prediction und degradiert unter Verteilungsverschiebung — die „standard conformal assumption" steht exakt in seiner Limitations-Sektion1.
Fix 1, Retrieval: Bits dort verteilen, wo die Lücke sich bewegt. Gewichtsbasierte PTQ-Methoden entscheiden, wie gerundet wird, nicht, wo Bits ausgegeben werden — die Bitbreite wird global gesetzt, und existierende Allokatoren rangieren Schichten nach Rekonstruktionsfehler. Das Kriterium des Papers gibt die zusätzliche Bitbreite stattdessen den Schichten, deren Quantisierung den Top-1/Top-2-Gap am stärksten bewegt: Für jede lineare Schicht ℓ wird nur diese Schicht mit schlichtem Round-to-nearest auf 3 Bit quantisiert, 128 Kalibrations-Anfragen erneut durchlaufen und s_ℓ = median_x |g_2(x) − g_2^(ℓ)(x)| genommen — wie stark die Ein-Schicht-Quantisierung die Lücke zwischen denselben zwei Dokumenten verschiebt. Die Schichten werden nach s_ℓ geteilt durch ihre Parameterzahl gerankt; bei einem festen Budget von 3,5 Bit pro Gewicht erhält die obere Hälfte 4 Bit, der Rest bleibt bei 3. Die gesamte Messung sind L+1 Vorwärtsläufe über 128 ungelabelte Anfragen und trainiert nichts; die Sensitivitäten werden einmal mit RTN gemessen, und die resultierende Zuweisung wird unter dem Quantisierer angewendet, den das Deployment nutzt1. Das Ergebnis: Gap-Allokation gewinnt 60-73 Prozent des vollen W3→W4-Nutzens bei der Hälfte der Kosten des zusätzlichen Bits, rangiert unter allen sieben forward-only Kriterien unter jedem getesteten Quantisierer zuerst, und ihr Vorsprung vor dem nächstbesten Kriterium läuft von 5,5 bis 18,4 Punkten über 24 Konfigurationen. Der ersetzte Allokator — Rekonstruktionsfehler, das Ziel existierender Allokationsverfahren — gewinnt nur 40-48 Prozent und ist auf Text-Embeddern quer über die Schichten fast unkorreliert mit der Gap-Sensitivität (mittlerer Spearman −0,04)1. In absoluten Zahlen bei 3,5 Bit unter RTN: 33,3 Prozent der Top-1-Ergebnisse wechseln gegenüber 43,1 Prozent bei rekonstruktionsgetriebener Allokation, und 13,8 Prozent korrekter Top-1-Dokumente gehen verloren gegenüber 19,9 Prozent1.
Fix 2, Klassifikation: Eingaben mit kleiner Lücke auf FP routen. In der Klassifikation ist die gefährdete Minderheit klein, also ist der Fix pro Eingabe. Der eigene Top-1/Top-2-Gap des quantisierten Modells fällt kostenlos mit dem Vorwärtslauf an, den das Deployment ohnehin ausführt; route x auf das FP-Modell genau dann, wenn g_q(x) < τ, mit τ am 25. Perzentil von g_q auf einem ungelabelten Validierungsslice1. 25 Prozent der Eingaben zu routen gewinnt 85-93 Prozent der durch Quantisierung verlorenen Genauigkeit auf den drei Backbones des Papers zurück (Aufgaben mit mindestens 0,5 Punkten FP→PTQ-Lücke), zu Kosten, die das Paper als 47 Prozent der FP-Kosten bei der 4,5×-Beschleunigung von GPTQ berechnet. Eine Identifizierbarkeits-Aussage (Proposition 3) liefert einen theoretischen Boden: Bis auf Ordnungsäquivalenz ist die Lücke der einzige Score der quantisierten Logits, dessen Schwellenwert-Mengen zu jedem Budget die Worst-Case-Flip-Mengen treffen1.
4. Ausführbare Zellen
Drei in sich geschlossene Zellen (nur Standardbibliothek, Seed fixiert, gelaufen mit Python 3.9.6). Die erste reproduziert die Asymmetrie: identische beschränkte Störungen, zwei verschiedene Lückenverteilungen und die resultierende Kluft der Wechselraten.
import random
# CELL 1: the gap>2*eps criterion -- retrieval vs classification gap distributions
random.seed(11)
N = 200 # candidates
Q = 500 # queries/inputs per task
def retrieval_scores():
# retrieval-like: scores cluster near the top (nothing separates 1st from 2nd)
return sorted((random.uniform(0.85, 1.0) for _ in range(N)), reverse=True)
def classification_scores():
# classification-like: winner pulled away from the pack by a wide margin
rest = sorted((random.uniform(0.0, 0.35) for _ in range(N - 1)), reverse=True)
return [0.9 + random.uniform(0.0, 0.1)] + rest
eps = 0.01 # largest rounding-induced score displacement
def flip_stats(gen):
flips = contenders = 0
for _ in range(Q):
z = gen()
g2 = z[0] - z[1]
if g2 < 2 * eps:
contenders += 1
# simulate the actual perturbation: independent uniform in [-eps, eps]
d = [random.uniform(-eps, eps) for _ in range(N)]
zp = [a + b for a, b in zip(z, d)]
if zp.index(max(zp)) != 0:
flips += 1
return flips / Q, contenders / Q
rf, rc = flip_stats(retrieval_scores)
cf, cc = flip_stats(classification_scores)
print(f"eps = {eps} (stability threshold 2*eps = {2*eps})")
print()
print("task | top-1 flip rate | at-risk inputs (g2 < 2*eps)")
print(f"retrieval | {rf:6.1%} | {rc:6.1%}")
print(f"classification| {cf:6.1%} | {cc:6.1%}")
print()
print("same perturbation size; only the gap distribution differs")Ausgabe eines echten Laufs (Python 3.9.6, Seed 11):
eps = 0.01 (stability threshold 2*eps = 0.02)
task | top-1 flip rate | at-risk inputs (g2 < 2*eps)
retrieval | 78.4% | 100.0%
classification| 0.0% | 0.0%
same perturbation size; only the gap distribution differsEine Einschränkung, die die Zelle ebenfalls zeigt: Bei diesem bewusst extremen Lückenkontrast flippt die Klassifikationsseite nie — die echten Klassifikations-Eingaben des Papers flippen wenige Prozent der Zeit, weil echte Lücken nicht unendlich sind. Die Spalte der gefährdeten Eingaben ist die wahre Separation des Papers: Retrieval lässt 100 Prozent der Anfragen unter die Schwelle fallen, Klassifikation keine.
Die zweite Zelle macht die Schranke auf einem tatsächlichen Quantisierungsgitter konkret: eine Gewichtsmatrix mit Skalen pro Gruppe, die größte realisierte Score-Verschiebung und welche Kandidaten in der resultierenden Contender-Menge liegen.
import random
from math import ceil
# CELL 2: block-quantization rounding-error bound -- where the 2x bound bites
random.seed(23)
# a weight matrix: out=64 channels, in=256 inputs, group size 128
OUT, IN, GROUP, BITS = 64, 256, 128, 4
W = [[random.gauss(0.0, 0.08) for _ in range(IN)] for _ in range(OUT)]
X = [random.gauss(0.0, 1.0) for _ in range(IN)] # one typical query input
def quantize(w, bits, group):
step = lambda mx: 2 * mx / (2**bits - 1)
q = [[0.0] * len(w[0]) for _ in w]
max_round = 0.0 # largest per-score disp basis
for r, row in enumerate(w):
for g0 in range(0, len(row), group):
g = row[g0:g0 + group]
mx = max(abs(v) for v in g)
s = step(mx)
for j in range(len(g)):
q[r][g0 + j] = round(g[j] / s) * s
max_round = max(max_round, abs(q[r][g0 + j] - g[j]))
return q, max_round
Wq, werr = quantize(W, BITS, GROUP)
def scores(M):
return [sum(M[i][j] * X[j] for j in range(IN)) for i in range(OUT)]
z, zq = scores(W), scores(Wq)
disp = [abs(a - b) for a, b in zip(z, zq)]
eps = max(disp)
order = sorted(range(OUT), key=lambda i: -z[i])
g2 = z[order[0]] - z[order[1]]
violators = [i for i in range(1, OUT) if z[order[0]] - z[order[i]] < 2 * eps]
print(f"max per-weight rounding error (group_{GROUP}, {BITS} bits): {werr:.5f}")
print(f"largest realized score displacement eps: {eps:.5f}")
print(f"stability threshold 2*eps: {2 * eps:.5f}")
print()
print(f"top-1 score {z[order[0]]:.4f}")
print(f"top-2 score {z[order[1]]:.4f}")
print(f"top-1/top-2 gap g2: {g2:.5f}")
print()
print(f"contender set |C_eps| (candidates within 2*eps of top-1): {len(violators)}")
print(f"separation ratio g2 / 2*eps: {g2 / (2 * eps):.3f} "
f"({'stable' if g2 >= 2 * eps else 'NOT stable'})")
print()
print("the bound assumes |displacement| <= eps on every score;")
print("with a per-channel / per-group scale this holds exactly, and the")
print("criterion reduces to comparing one measured gap against 2*eps")Ausgabe eines echten Laufs (Python 3.9.6, Seed 23):
max per-weight rounding error (group_128, 4 bits): 0.02315
largest realized score displacement eps: 0.42153
stability threshold 2*eps: 0.84307
top-1 score 2.5917
top-2 score 2.3443
top-1/top-2 gap g2: 0.24734
contender set |C_eps| (candidates within 2*eps of top-1): 4
separation ratio g2 / 2*eps: 0.293 (NOT stable)
the bound assumes |displacement| <= eps on every score;
with a per-channel / per-group scale this holds exactly, and the
criterion reduces to comparing one measured gap against 2*epsZwei Lesarten. Der Separationsratio von 0,293 liegt mitten im Retrieval-Regime des Papers (Median 0,081) — meilenweit von der Schwelle entfernt und daher kippbar. Und die Kluft zwischen dem Gewichts-Rundungsfehler (0,02) und der Score-Verschiebung (0,42) ist das ehrliche Skalenproblem: ε auf der Ausgabe ist eine akkumulierte, eingabeabhängige Größe — weshalb das Paper es misst statt herleitet.
Die dritte Zelle spiegelt die Allokationsökonomie: Kauft bei einem festen Budget von 3,5 Bit pro Gewicht das zusätzliche halbe Bit auf den lückenbewegenden Schichten einen überproportionalen Anteil des vollen zusätzlichen Bits?
import random
# CELL 3: selective-precision economics -- gap-moving layers vs a uniform extra bit
random.seed(31)
L = 12 # linear layers
Q = 400 # queries
N = 200 # candidates
# Each layer, quantized at 3 bits, displaces every query-document score by an
# independent error uniform in [-e_l, e_l]. A few layers are far more
# gap-sensitive than the rest (paper finding: sensitivity is concentrated).
E3 = [0.080 if l in (2, 5, 8) else 0.003 for l in range(L)]
E4 = [e / 8 for e in E3] # one extra bit: 1/8 the rounding error
def flip_rate(bits_per_layer):
flips = 0
for _ in range(Q):
# retrieval-like scores: top items nearly tied
z = [random.uniform(0.85, 1.0) for _ in range(N)]
d = [sum(random.uniform(-e, e) for e in
(E3[l] if b == 3 else E4[l] for l, b in
enumerate(bits_per_layer))) for _ in range(N)]
zp = [a + b for a, b in zip(z, d)]
if zp.index(max(zp)) != z.index(max(z)):
flips += 1
return flips / Q
# rank layers by sensitivity / parameter count (here: equal sizes, so by e_l),
# give the extra bit to the half that moves the gap most -> avg 3.5 bits
ranked = sorted(range(L), key=lambda l: -E3[l])
gap_guided = [4 if l in ranked[:L // 2] else 3 for l in range(L)]
r_w3 = flip_rate([3] * L)
r_gap = flip_rate(gap_guided)
r_w4 = flip_rate([4] * L)
benefit_full = r_w3 - r_w4
benefit_gap = r_w3 - r_gap
capture = benefit_gap / benefit_full
print("allocation | avg bits | top-1 flip rate")
print(f"uniform W3 | 3.00 | {r_w3:5.1%}")
print(f"gap-guided (6 layers at 4b) | 3.50 | {r_gap:5.1%}")
print(f"uniform W4 | 4.00 | {r_w4:5.1%}")
print()
print(f"full extra bit's benefit (fewer flips): {benefit_full:5.1%}")
print(f"gap-guided captures: {capture:5.1%} of it")
print("for 50% of the extra bit's memory cost")Ausgabe eines echten Laufs (Python 3.9.6, Seed 31):
allocation | avg bits | top-1 flip rate
uniform W3 | 3.00 | 97.0%
gap-guided (6 layers at 4b) | 3.50 | 89.5%
uniform W4 | 4.00 | 86.0%
full extra bit's benefit (fewer flips): 11.0%
gap-guided captures: 68.2% of it
for 50% of the extra bit's memory costDas Spielzeugmodell landet innerhalb des gemessenen Bandes des Papers: Gap-geführte Allokation bei der Hälfte der Kosten des zusätzlichen Bits gewinnt 68,2 Prozent des Nutzens des vollen Bits — gegenüber 60-73 Prozent im Paper. Der Parameter, der das treibt, ist die Konzentration der Sensitivität: Dominieren drei von zwölf Schichten die Score-Verschiebung, kauft das zusätzliche halbe Bit fast das, was ein volles Bit überall kauft; macht man die Sensitivitätsverteilung uniform, kollabiert die Gewinnrate Richtung dessen, was Rekonstruktionsfehler-Allokation kauft (40-48 Prozent im Paper). Der Wert der Methode ist empirisch — sie misst, wo die Konzentration tatsächlich liegt, pro Modell, mit L+1 billigen label-freien Läufen.
5. Anti-Hype: Was „14-46 Prozent" sind — und was nicht
Die Zahlen sind gegen das FP-Modell gemessen, nicht gegen Ground Truth. Ein „Top-1-Wechsel" bedeutet, dass das quantisierte Modell ein anderes erstes Ergebnis liefert als das FP-Modell liefern würde — nicht zwingend ein schlechteres. Das Paper misst diese Unterscheidung: Gegen die BEIR-Relevanzlabels ersetzen 66 Prozent der Flips, deren FP-Top-1 ein relevantes Dokument war, es durch ein nicht relevantes bei W4 (77 Prozent bei W3); auf CLIP, wo jede Anfrage genau ein korrektes Bild hat, verlieren 26-30 Prozent der gewechselten Ergebnisse es, während 13-23 Prozent gewinnen1. Der Schaden ist also mehrheitlich schädlich, aber nicht uniform, und ein Downstream-System zählt auch bei neutralen Flips: Ein anderes abgerufenes Dokument ergibt eine andere generierte Antwort, und zwei Server, die dasselbe Modell mit unterschiedlicher Präzision betreiben, beantworten dieselbe Anfrage unterschiedlich. Die eigene Rahmung des „Undetected" ist eine Aussage über Benchmark-Praxis — Recall@k und nDCG@10 auf einem festen Korpus können eine Top-1-Wechselrate von 24,6 Prozent hinter einem Metrik-Dip von 1,3 Prozent verstecken — und die korrekte Antwort ist, Wechselraten neben aggregierten Metriken zu berichten, nicht jeden Flip als Genauigkeitsverlust zu behandeln.
Starke Quantisierer reduzieren das, aber sie beseitigen es nicht. Das Paper wiederholt die Messung mit GPTQ (mit und ohne Aktivierungs-Reihenfolge), AWQ, HQQ und AdaRound: Alle fünf senken die Top-1-Wechselrate — GPTQ mit Aktivierungs-Reihenfolge nimmt ViT-L/16 bei W4 von 42,1 auf 29,6 Prozent und die besten Text-Fälle auf 14,4-14,5 Prozent — und keiner nähert sich auf Retrieval der Stabilitätsschwelle1. Der stärkste Einzeldatenpunkt: GPTQ auf ViT-L/16 stellt die Klassifikationsgenauigkeit von 55,5 auf 88,6 Prozent wieder her und schneidet die Klassifikations-Wechselrate um das Elffache — während Retrieval auf demselben Modell weiterhin die meisten seiner Top-1-Ergebnisse wechselt. Wer im Kopf hat „ein guter Quantisierer fixt PTQ", für den ist Retrieval das Gegenbeispiel.
Die Schranke ist nur so sauber wie das Rundungsfehlermodell. Das 2ε-Argument setzt eine beschränkte Score-Verschiebung voraus. Das Paper misst ε empirisch pro Eingabe (was die Herleitung umgeht), aber das Regime zählt: Mit Skalen pro Kanal oder pro 128er-Gruppe ist der Gewichts-Rundungsfehler auf eine halbe Gitterstufe beschränkt, und die Akkumulation zu einem Score-ε ist messbar — das ist die Einstellung des Papers, und Aktivierungsquantisierung ist explizit ungetestet (die Limitations nennen: nur Gewichte bei 4/3 Bit, Aktivierungen ungetestet, exakte Kosinus-Ähnlichkeit über ein endliches Korpus, approximative Nearest-Neighbor-Indizes außerhalb des Scopes)1. Verfahren, die Gewichte nicht-uniform transformieren — Per-Channel-Outlier-Splits, gelernte Skalen unter Clipping — machen die Verschiebung weniger sauber beschränkt, und der Conformal-Schwellenwert erbt die Austauschbarkeitsannahme. Die Struktur des Kriteriums überlebt; das ε in „g_2 ≥ 2ε" ist eine empirische Größe pro Modell pro Bitbreite, keine Naturkonstante.
Der Routing-Fix gilt nur für Klassifikation — das Paper sagt warum. Bei W4 ist der gefährdete Anteil 94-100 Prozent der Retrieval-Anfragen gegenüber 9-26 Prozent der Klassifikations-Eingaben1; eine Minderheit zu routen funktioniert nur, wenn die Minderheit klein ist, und für Retrieval stellt der Check pro Eingabe korrekt fast nichts aus, was er zertifizieren könnte. Die Antwort auf der Retrieval-Seite ist global (Bits allozieren), die auf der Klassifikations-Seite pro Eingabe (routen) — und wer sie verwechselt und Retrieval-Anfragen per Gap routet, routet fast alles.
Die Frage, die dieses Paper jedem quantisierten Retrieval-Deployment stellen sollte: Wie groß ist der Anteil der Top-1-Ergebnisse, die vom FP-Modell abweichen, gemessen auf einem gehaltenen Slice — und, falls diese Zahl nirgends berichtet wird: Warum nicht?
6. Fazit
Der Beitrag des Papers teilt sich sauber. Die Bedingung (Top-1 übersteht genau dann, wenn g_2 ≥ 2ε) ist alte Mathematik, korrekt der Semiordnungs-Literatur zugeschrieben; die Messung ist neu und scharf — derselbe Checkpoint, der wenige Prozent der Klassifikationsantworten und 33-46 Prozent der Retrieval-Top-1-Ergebnisse bei W4 wechselt, mit aggregierten Metriken, die blind dafür sind, ist ein Befund zur Benchmark-Praxis, an dem Produktionssysteme handeln sollten. Die Gap-Statistik ist das richtige Objekt: label-frei, billig, prädiktiv über 2.118 Konfigurationen bei Spearman −0,88, und sie treibt zwei Fixes, deren Ökonomie das Paper misst statt behauptet (60-73 Prozent des Nutzens eines zusätzlichen Bits bei der Hälfte seiner Kosten; 85-93 Prozent der verlorenen Genauigkeit durch Routing eines Viertels der Eingaben). Die eigene Abrechnung des Papers bezahlt die offenen Fragen — ob Training die Lücke anregen kann, die ein Deployment braucht, steht als offene Frage, Aktivierungen und ANN-Indizes als außerhalb des Scopes. Für alle, die quantisierte Retriever ausliefern, ist der Kern eine Zahl, die morgen zu berichten sich lohnt: die Top-1-Übereinstimmungsrate mit dem FP-Modell, pro Korpus, vor und nach der Quantisierung.
Footnotes
Footnotes
-
Zhou, Luca; Zirilli, Alessandro; Solombrino, Daniele; Dessì, Roberto; Rodolà, Emanuele — The Undetected Damage of Quantization on Retrieval and How to Fix It, arXiv:2609.24322, cs.LG, eingereicht am 21. September 2026 (Affiliationen: Sapienza University of Rome, Paradigma, Not Diamond; volles HTML v1 verifiziert: Abstract 14-46 % Top-1-Retrieval-Wechselrange; Sec. 5 Tabelle 1 W4 RTN group_128 Wechselraten ViT-B/16 45,5 %±2,5 vs 6,2 %±1,4 Klassifikation (7,3×), ViT-L/16 42,1 % vs 2,9 % (14,3×), Qwen3-Emb-0.6B 33,4 % vs 4,3 % (7,8×), Ein-Checkpoint-Zeile 41,2 % vs 8,6 % (4,8×); Lemma 1 Top-1/Top-k-Stabilität gdw. g_2 ≥ 2ε mit konstruiertem Tausch; Korollar 1 Contender-Lokalität, S(x) = max_j(δ_a′ − δ_j) ≤ 2‖δ‖∞; Contender-Menge leer für 74,3 % der ViT-B/16-Klassifikations-Eingaben, keine Retrieval-Anfrage; 85,8 % Klassifikation vs 3,5 % Retrieval über der Stabilitätsschwelle, mediane Separation 5,73 vs 0,081; Klassifikation neues-Top-1-ist-Zweitplatzierter 82,2 % vs Retrieval 39,7 %; Tabelle 2 nDCG@10-Verlust 2,7-7,6 % W4 mit Gold-Verlust aus Top-1 für 16-22 % der Anfragen, W3 −68,9 % nDCG und 79,6 % Gold verloren; 66 % der W4-Flips ersetzen relevantes Top-1 durch nicht-relevantes, 77 % bei W3; CLIP ViT-L/14 Flickr30k W4 Recall@1 −1,3 %, 24,6 % Top-1-Wechsel, 10,9 % der korrekten-Top-1-Anfragen verlieren es, 6,5 % richtig-zu-falsch vs 5,7 % falsch-zu-richtig; Tabelle 3 Conformity: α=0,10 Abdeckung 85,2 %±0,1 / Verletzung 1,47 % (ViT-B/16-Klassifikation), 11,3 % Abdeckung (Text-Retrieval), 1,5 %/15,7 % (CLIP B/32, L/14); Split-Conformal-Schwellenwert mit Pr(akzeptiert und Top-1 gewechselt) ≤ α; Spearman −0,88 über 2.118 Konfigurationen, −0,98 über 12 Modell/Bitbreite-Konfigurationen, Gap allein −0,58, ε allein +0,05; GTE-large 0,34B flippt weniger als Qwen3-Emb-4B; Sec. 5.4 Tabelle 4: GPTQ act-order ViT-L/16 42,1→29,6 W4, beste Text-Fälle 14,4-14,5 %; GPTQ ViT-L/16 Klassifikationsgenauigkeit 55,5→88,6 %, Wechselrate um 11× gesenkt, Retrieval flippt weiterhin das meiste; Sec. 6.1: s_ℓ = median_x |g_2(x) − g_2^(ℓ)(x)| gerankt nach Sensitivität/Parameterzahl, 128 Kalibrations-Anfragen, L+1 Läufe, 3,5-Bit-Budget, Gewinn 60-73 % des W3→W4-Nutzens, erste von sieben forward-only Kriterien unter jedem Quantisierer, Vorsprung 5,5-18,4 Punkte über 24 Konfigurationen, Modell-für-Modell 68,3-84,5 %, Rekonstruktionsfehler gewinnt 40-48 %, Spearman gegen Gap-Sensitivität −0,04 auf Text-Embeddern, +0,34 CLIP; absolut: 33,3 % vs 43,1 % Top-1-Wechsel, 13,8 % vs 19,9 % korrekt-Top-1-Verlust unter RTN; CLIP 56,4 % vs 34,9 %; Routing: 25 % geroutet gewinnt 85-93 % der verlorenen Genauigkeit, 62-76 % bei 10 %, 97-99 % bei 50 %, 47 % der FP-Kosten bei GPTQ 4,5×-Beschleunigung; Prop. 3 Gap-Identifizierbarkeit bis auf Ordnungsäquivalenz; gefährdeter Anteil 94-100 % Retrieval vs 9-26 % Klassifikation bei W4; Reranker (ms-marco-MiniLM-L-6-v2) 5-10 % W4, 12-27 % W3 Wechsel; Limitations: nur Gewichte bei 4/3 Bit, Aktivierungen ungetestet, Conformal-Austauschbarkeitsannahme, nur exakte Kosinus-Ähnlichkeit, ANN-Indizes außerhalb des Scopes): https://arxiv.org/abs/2609.24322 ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12 ↩13 ↩14 ↩15 ↩16 ↩17 ↩18 ↩19 ↩20 ↩21 ↩22 ↩23 ↩24 ↩25 ↩26
-
Die Intervall-Vergleichs-Linie, der das Paper die Bedingung zuschreibt: Luce, R. Duncan (1956), Semi-orders and a theory of utility discrimination; Scott, Dana und Suppes, Patrick (1958), Foundational aspects of theories of measurement; Fishburn, Peter C. (1970), Intransitive indifference with unequal indifference intervals, Journal of Mathematical Psychology 7 (1), pp. 144–149; sowie Szpilrajn, Edward (1930), Sur l'extension de l'ordre partiel — ist jeder Score nur innerhalb eines Intervalls gleicher Breite bekannt, existieren Zwei-Wege-Vergleiche nur zwischen Elementen, deren Intervalle sich nicht überlappen (die Semiordnung), und die Rangfolgen, die eine beschränkte Störung erreichen kann, sind die linearen Erweiterungen der induzierten Partialordnung. Das Paper formuliert den Top-1-Fall in eigener Notation und hält fest: „What is new here is the measurement, not the condition": https://arxiv.org/abs/2609.24322 ↩
-
Vovk, Vladimir; Gammerman, Alex; Shafer, Glenn — Algorithmic Learning in a Random World, Springer 2005, und Lei, Jing et al. — Distribution-Free Prediction Bands for Non-parametric Regression, Journal of the American Statistical Association 2018 — die Split-Conformal-Kalibration, die das Paper nutzt, um den Stabilitätsschwellenwert τ̂ als ⌈(n+1)(1−α)⌉-größten Kalibrationswert zu setzen, womit Pr(akzeptiert und Top-1 gewechselt) ≤ α unter Austauschbarkeit von Kalibrations- und Test-Eingaben gilt: https://arxiv.org/abs/2609.24322 ↩