NLI: Label-spezifische Hypothesen statt generisches Template #290
Labels
No labels
app/archiv
app/einkaufslisten
app/imap-client
app/wissensbasis
arch-answered
arch-question
area/api
area/auth
area/infra
area/mobile
area/shared
area/ui
area/web
portfolio-status
prio/high
prio/low
prio/medium
roadmap/public
size/l
size/m
size/s
size/xl
size/xs
status/blocked
status/needs-info
type/bug
type/chore
type/docs
type/feature
type/idea
type/refactor
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
admin-mrrm/mrrmlabapp#290
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
Der NLI-Klassifier (
apps/mobile/src/services/nli-classifier.ts) nutzt aktuell ein generisches Hypothesen-Template:Das ergibt für die mDeBERTa-XNLI-Hypothesenpaare grammatikalisch holprige Sätze (z.B.
Diese E-Mail handelt von Sendung.—Sendungbraucht eigentlich einen Artikel), und es nutzt nicht die volle semantische Information die wir inCATEGORY_DESCRIPTIONSbereits pflegen.Für den Web-Embedding-Pfad existiert bereits
CATEGORY_DESCRIPTIONSmit reicheren Beschreibungen pro Label. Auf Mobile fließt davon nichts ein.Hypothese
Konkretere, natürlichsprachliche Hypothesen-Sätze pro Label sollten den Entailment-Score messbar erhöhen — gerade bei der Close-Miss-Band 0.25–0.30 die wir in #268 als problematisch identifiziert hatten.
Beispiele (Vorschlag):
Sendung→Diese E-Mail informiert über eine Paketlieferung oder Versand.Bestellung→Diese E-Mail bestätigt eine Bestellung oder einen Kauf.Rechnung→Diese E-Mail enthält eine Rechnung oder Zahlungsaufforderung.Konto→Diese E-Mail betrifft ein Benutzerkonto, Login oder Passwort.Scope
CATEGORY_NLI_HYPOTHESESin@mrrmlab/shared-typesnli-classifier.tsbaut Hypothese pro Label aus der Map mit Fallback auf das alte Template (für User-Tags die nicht in der Map sind)Out of scope
Akzeptanzkriterien
Ergebnis der Kalibrierung — Hypothese nicht bestätigt
Branch
feat/290-nli-label-hypotheses(PR #291) gegen INBOX-Charge laufen lassen, Vergleich mit pre-#290-JSONL:Struktureller Befund: NLI-Entailment belohnt breite Hypothesen — eine generische Aussage "Diese E-Mail handelt von X." lässt sich von fast jedem Mail-Text leichter implizieren als ein konkreter Satz wie "Diese E-Mail informiert über eine Paketlieferung oder den Versand."
Das Ergebnis war zudem durch eine Asymmetrie verzerrt: Default-Kategorien nutzten die neuen spezifischen Sätze, User-Tags (z.B. Zahlung, Paket, Shoppe) fielen auf das alte generische Template zurück. Damit gewannen User-Tags strukturell über die Default-Kategorien, selbst wenn semantisch ein Default-Label gepasst hätte (Beispiel: Werbemail "25 % Rabatt" → Top-1 Zahlung 0.19 statt Werbung 0.12).
Konsequenz: Hypothese aus dem Issue widerlegt. Konkretere Hypothesen verbessern den Score nicht — sie schaden. PR #291 geschlossen ohne Merge.
Nächster Versuch: Lever 2 — Snippet-Preprocessing mit Subject-Weighting (Issue folgt). Das Subject wird verdoppelt vor den Body gestellt, damit das stärkste Signal stärker gewichtet wird. Theorie: snippet-länge-unabhängig, gegen lange Footer robust.