Qwen3.8-27B-MTP-GGUF / METHODIK.md
Davidmg0815's picture
Upload METHODIK.md with huggingface_hub
668cfda verified
|
Raw
History Blame
5.84 kB

Messprotokoll MATH-500 — warum eine Zahl allein nichts sagt

Diese Seite protokolliert, wie die Mathematik-Werte in der Modellkarte zustande kommen, welche Fehler dabei aufgetreten sind und was noch fehlt. Sie existiert, weil derselbe Messlauf je nach Auswertung 76 oder 98 Prozent ergibt — und beide Zahlen belegbar sind.

Wer Benchmark-Werte veröffentlicht, ohne das offenzulegen, veröffentlicht eine Meinung.

Der aktuelle Stand

Modell streng gewertet nur abgeschlossene Antworten abgeschnitten
Qwen3.8-27B Q8_0 76,0 % 98,3 % 34 von 150 (23 %)
Qwen3.8-27B Q6_K 76,7 % 97,5 % 32 von 150 (21 %)
Qwen3.6-27B Q6_K 76,0 % 97,4 % 33 von 150 (22 %)

Beide Spalten sind verzerrt, in entgegengesetzte Richtungen. Die strenge Wertung bestraft Antworten, die nur nicht ins Token-Budget passten. Die zweite Spalte wirft genau diese Fälle weg — und das sind überwiegend die schweren Aufgaben, also schönt sie nach oben. Die belastbare Zahl liegt dazwischen und ist noch nicht gemessen.

Fehler 1: das Token-Budget — offen

Der erste Durchgang lief mit 1.600 Token Budget je Aufgabe. Das war die denkbar schlechteste Wahl: knapp über dem 90.-Perzentil des tatsächlichen Bedarfs.

Gemessener Bedarf der Antworten, die durchkamen:

Stufe Median 80 % größte abgeschlossene abgeschnitten
L1 433 518 536 1 von 8
L2 570 837 1.578 1 von 33
L3 588 830 1.323 5 von 36
L4 862 1.076 1.467 10 von 35
L5 980 1.235 1.575 17 von 38

Bei Stufe 5 wurde fast die Hälfte mitten im Rechenweg gekappt. Keine dieser Antworten enthielt ein Ergebnis — der Abbruch ist echt, kein Extraktionsfehler.

Zum Vergleich: im Produktivbetrieb läuft dasselbe Modell mit 97.000 Token je Sitzung. Der Benchmark hat es also um den Faktor 60 beschnitten und misst damit teilweise das Budget statt das Modell.

Behebung: Nachmessung ausschließlich der abgeschnittenen Aufgaben mit 8.000 Token (bench_nachmessen.py). Kostet rund 25 Minuten je Modell statt drei Stunden für eine Neumessung. Steht aus.

Fehler 2: zu strenger Antwortvergleich — behoben

Von acht abgeschlossenen, aber als falsch gewerteten Antworten war genau eine wirklich falsch. Die übrigen sieben waren Schreibvarianten:

gegeben erwartet tatsächlich
\frac{4}{3} \frac43 identisch, Kurzform ohne Klammern
\frac{3}{4} \frac 34 identisch, Leerzeichen statt Klammern
0,35625 .35625 identisch, Dezimalkomma und führende Null
5 x=5 richtig gerechnet, ohne Zuweisungspräfix
[-2, 7] x \in [-2,7] richtig, ohne Mengenzeichen
B \text{(B)} richtig, Multiple-Choice-Buchstabe
\frac{16}{49} 16/49 identisch, andere Bruchschreibweise
-0.09 \frac{9}{100} echter Fehler (Vorzeichen)

Der Normalisierer fängt diese Formen jetzt ab. Wirkung ohne jede erneute Modellrechnung — die Antworten lagen bereits vor:

Modell vorher nachher
Qwen3.6-27B Q6_K 70,7 % 76,0 %
Qwen3.8-27B Q6_K 72,7 % 76,7 %
Qwen3.8-27B Q8_0 72,0 % 76,0 %

Vier bis fünf Prozentpunkte, die reine LaTeX-Konvention waren. Der ältere Selbsttest hatte diese Fälle nicht abgedeckt; er prüft sie jetzt (39 Prüfungen, darunter jeder oben genannte Fall).

Das ist der Grund, warum selftest_mathe.py mitgeliefert wird: Bei Mathematik-Benchmarks steckt der Fehler fast nie im Modell, sondern im Vergleich.

Fehler 3: Trainingskontamination — nicht geprüft

MATH-500 liegt seit Jahren öffentlich auf HuggingFace. Ob die getesteten Modelle die Aufgaben im Training gesehen haben, ist nicht untersucht.

Für den Vergleich der Varianten untereinander ist das unerheblich — Kontamination trifft alle sieben gleichermaßen. Für jeden Vergleich mit fremden Modellen macht es die absoluten Zahlen wertlos.

Geplante Prüfung: Fortsetzungstest — dem Modell die ersten Wörter einer Aufgabe vorlegen und sehen, ob es den Originaltext wörtlich vervollständigt. Schlägt er an, gehört das als Warnung in die Modellkarte.

Was die Zahlen deshalb bedeuten

Belastbar: Die sieben getesteten Varianten unterscheiden sich nicht. Alle Konfidenzintervalle überlappen, in beiden Fächern (Code und Mathematik) und über alle drei Auswertungsarten hinweg. Weder die neuere Generation noch die höhere Quantisierung bringt einen messbaren Vorteil.

Nicht belastbar: Jeder absolute Wert und jeder Vergleich mit publizierten MATH-500-Zahlen. Dort liegen Spitzenmodelle bei über 99 Prozent — allerdings mit vollem Reasoning, das hier bewusst abgeschaltet war, und ohne Budgetbeschränkung.

Was noch aussteht

  1. Nachmessung der abgeschnittenen Aufgaben mit 8.000 Token → schließt die Lücke zwischen 76 und 98 Prozent
  2. Omega-Messung: Qwen3.8-27B Q8_0 mit vollem Reasoning, Budget aus einer vorgeschalteten Bedarfsmessung statt geraten, Vorgabe: keine Aufgabe bricht ab. Erst diese Zahl ist mit Leaderboards vergleichbar.
  3. Kontaminationsprüfung per Fortsetzungstest

Mitgelieferte Werkzeuge

Datei Zweck
bench_mathe.py Messlauf gegen MATH-500 / GSM8K
selftest_mathe.py 39 Prüfungen des Vergleichs — vor jedem Lauf ausführen
bench_nachmessen.py misst nur die abgeschnittenen Aufgaben nach
neubewerten.py wertet gespeicherte Läufe mit korrigiertem Vergleich neu
run_omega.sh zweistufige Reasoning-Messung mit gemessenem statt geratenem Budget

Alle Rohdaten liegen unter bench/ — je Aufgabe die gelieferte Antwort, die erwartete, der Token-Verbrauch und der Abbruchgrund. Wer die Auswertung anzweifelt, kann sie nachrechnen.