Projekte
    Offene Daten · CC BY 4.0

    TurkishMMLU-Kontaminationsliste

    Testfragen, die wörtlich im türkischen Web stehen

    113 der 900 Fragen im TurkishMMLU-Testsatz (12,6 %) kommen wörtlich in einem türkischen Webkorpus mit 527 Millionen Wörtern vor. Dieses Repository enthält die Liste dieser Fragen, die Erkennungsmethode und das Reproduktionsskript, damit auf türkischem Webtext trainierte Modelle ihren TurkishMMLU-Wert auch auf einer bereinigten Teilmenge berichten können.

    0 / 900

    Kontaminierte Fragen · strenge Schwelle (n = 13)

    12,6 % des Testsatzes · gescanntes Korpus: 526.593.877 Wörter

    900
    Gescannte Fragen
    787
    Saubere Fragen (n = 13)
    28,0 %
    Lockere Schwelle (n = 8)
    527M
    Korpus (Wörter)
    13 / 8
    Fenster (Wörter)
    CC BY 4.0
    Lizenz
    Warum es wichtig ist

    Auswendiglernen ist keine Fähigkeit

    Kommt eine Benchmark-Frage wörtlich im Trainingskorpus vor, ist das Kennen dieser Frage Auswendiglernen, keine Fähigkeit. Dieses Risiko besteht für jedes aus dem türkischen Web gesammelte Korpus; die meisten Fragen stammen von Lehrbuch- und Übungsprüfungsseiten, sodass Kopien im Web existieren.

    Effekt in unserer eigenen Messung

    Ein Drittel des berichteten Gewinns kam aus Kontamination

    Alle 900 Fragen
    +6,27
    Ohne kontaminierte Fragen
    +4,14

    Der Gewinn eines Continued-Pretraining-Modells gegenüber seiner Basis betrug +6,27 Punkte auf allen 900 Fragen und +4,14 Punkte nach Entfernen der kontaminierten Fragen.

    Methode

    Exakter n-Wort-Shingle-Abgleich

    Dasselbe Kriterium wie in den technischen Berichten zu GPT-3 und Llama.

    01

    Normalisierung

    Der Fragetext wird normalisiert: NFC, türkische Kleinschreibung (İ→i, I→ı), Satzzeichen und Nichtziffern durch Leerzeichen ersetzt, dann in Wörter zerlegt.

    02

    Fenster

    Aus jeder Frage werden alle aufeinanderfolgenden n-Wort-Fenster gebildet; die Fenster stammen aus Fragetext und Antwortoptionen (bis zu 5).

    03

    Scan

    Das Korpus wird mit derselben Normalisierung gestreamt; kommt ein Fenster wörtlich im Korpus vor, gilt die Frage als kontaminiert. Der Speicherbedarf ist von der Korpusgröße unabhängig.

    SchwelleBedeutungKontaminiertAnteil
    n = 13strengZufällige Treffer praktisch ausgeschlossen; das Standardkriterium.11312,6 %
    n = 8lockerEmpfindlich für partielle oder umformulierte Lecks; falsch-positive Treffer möglich (Formelsätze).25228,0 %

    Gescanntes Korpus: 526.593.877 Wörter türkischer Webtext (die ersten 4,3 GB in Stream-Reihenfolge). Der Antwortschlüssel ist kein Text und wird nicht gescannt. Die Liste ist eine Untergrenze: Umformulierte Fragen oder solche, die in Bruchstücken unter 13 Wörtern durchsickern, entgehen der strengen Schwelle.

    Fachverteilung

    Kontaminierte Fragen nach Fach

    n = 13 · 113 Fragen

    Religionskultur und Ethik
    26
    Physik
    22
    Biologie
    19
    Chemie
    15
    Geschichte
    15
    Türkische Sprache und Literatur
    10
    Philosophie
    3
    Geographie
    3
    Format der Liste

    Nur Index und Hash

    Jeder Eintrag trägt die Position im Quelldatensatz, den SHA-256-Hash des Fragetexts und das Fachlabel. Selbst wenn sich die Reihenfolge des Datensatzes ändert, lässt sich die Frage per Hash zuordnen.

    index

    Position in Hugging Face AYueksel/TurkishMMLU, Config All, Split test.

    sha256_soru

    SHA-256 des Felds question (nach strip, UTF-8).

    konu

    Fachlabel aus dem Quelldatensatz.

    In diesem Repository steht kein Fragetext. TurkishMMLU ist ein Datensatz mit kontrolliertem Zugang; diese Liste trägt nur Indizes und Hashes, und wer Zugang zum Datensatz hat, ordnet per Hash zu und findet die Frage in der eigenen Kopie.
    turkishmmlu_kirlilik.json
    {
      "kaynak_kume": "AYueksel/TurkishMMLU (config All, split test)",
      "taranan_soru": 900,
      "kulliyat_kelime": 526593877,
      "kirli_13": [
        {"index": 0, "sha256_soru": "e84db08c…", "konu": "Biology"},
        …
      ],
      "kirli_8": [ … ]
    }
    Verwendung

    Die saubere Teilmenge in drei Schritten ableiten

    Liste laden, Hashes mit dem Datensatz abgleichen, kontaminierte Fragen herausfiltern: 900 → 787.

    python · datasets
    import json, hashlib
    from datasets import load_dataset
    
    ds = load_dataset("AYueksel/TurkishMMLU", "All", split="test")
    k = json.load(open("turkishmmlu_kirlilik.json", encoding="utf-8"))
    kirli = {r["sha256_soru"] for r in k["kirli_13"]}
    
    def ozet(q): return hashlib.sha256(q.strip().encode("utf-8")).hexdigest()
    temiz = ds.filter(lambda ex: ozet(ex["question"]) not in kirli)
    print(len(ds), "->", len(temiz))   # 900 -> 787
    Empfohlene Berichterstattung

    Neben dem Wert auf dem vollen Satz den Wert auf clean-787 und die Differenz zwischen beiden. Eine große Differenz bedeutet, dass das Korpus des Modells diese Fragen gesehen hat.

    Reproduktion
    $ python kirlilik_denetimi.py <kulliyat.txt> <etiket>
    Eigenes Korpus scannen

    Das Skript streamt das Korpus zeilenweise. Wer ein eigenes Korpus scannt, erhält eine andere Liste als unsere: Eine Frage auf dieser Liste kann in Ihrem Korpus fehlen, eine nicht gelistete kann darin vorkommen.

    Grenzen

    Bekannte Einschränkungen

    01

    Die Liste bezieht sich auf unser Korpus. Ein Modell, das auf einem anderen Ausschnitt des türkischen Webs trainiert wurde, hat eine andere Kontamination; da dieselben Quellen in jedem Ausschnitt vorkommen, wird die Überschneidung aber hoch sein.

    02

    Frage- und Optionstexte wurden gescannt; der Antwortschlüssel ist kein Text und kann es nicht. Umformulierte Kopien entgehen der strengen Schwelle; die Liste ist eine Untergrenze.

    03

    Die strenge Schwelle n = 13 verpasst umformulierte Kopien; die Liste n = 8 wird deshalb mitgeliefert, enthält aber falsch-positive Treffer.

    04

    Ändert sich die Reihenfolge des Quelldatensatzes, wird index ungültig; verwenden Sie sha256_soru.

    Zitation

    Wenn Sie diese Liste verwenden

    citation
    eCloud Tech. (2026). TurkishMMLU Kirlilik Listesi: Türkçe web külliyatında
    birebir geçen test soruları. https://github.com/ecloudtechnology/turkishmmlu-kirlilik

    Lizenz: Liste und Skript CC BY 4.0. Für TurkishMMLU selbst: Yüksel, A. et al. (2024), TurkishMMLU. Kontakt: [email protected]

    Berichten Sie Ihren TurkishMMLU-Wert auch auf der sauberen Teilmenge

    Liste und Scan-Skript sind unter CC BY 4.0 offen. Für eine Zusammenarbeit bei türkischem Benchmarking und Evaluation nehmen Sie Kontakt mit uns auf.