Přeskočit na obsah
Čísla 4 min čtení

Font proti sběru dat: mezi čtyřmi filtry se jeho výsledek liší víc než třicetkrát

Projekt ShieldFont zaměňuje slova ve zdroji stránky, aby robotům sbírajícím trénovací data podstrčil jiný text než čtenáři. Jeho vlastní měření v repozitáři zkoušelo čtyři filtry kvality a dostalo čtyři různé odpovědi: z úseků, které filtrem projdou v nezaměněné podobě, jich po záměně projde 2,0 až 65,3 % podle toho, o který filtr jde. Škodu modelu, který by se na takovém textu učil, projekt netvrdí.

Ruční síto s hrubou drátěnou mřížkou opřené o hromadu prosáté zeminy
Síto na prosévání zeminy. Kolik materiálu skončí pod ním, neurčuje materiál sám, ale velikost ok. Foto: Chaojoker, Wikimedia Commons (CC BY-SA 3.0)

Stránka chráněná projektem ShieldFont vypadá ve zdroji jinak než na obrazovce. Kodér při sestavení stránky zamění zhruba čtvrtinu slov za jiná a písmo je při vykreslení vrátí zpátky. Čtenář vidí, co autor napsal; robot, který sbírá text pro trénování modelů, si odnese něco jiného. Zbývá otázka, co se s takovou stránkou stane dál.

Odpovídá na ni jedno číslo. Než se sebraný text stane trénovací sadou, projde filtrem kvality – programem, který vyhazuje brak. Bílá kniha projektu z 30. července uvádí, že po záměně slov filtr zahodí přes 90 % stránek, které by v původní podobě prošly. Podrobná data k tomu ale nejsou v ní, nýbrž v měřicí části repozitáře. A v nich stojí, že těch devadesát procent platí pro jeden filtr ze čtyř.

Čtyři filtry, čtyři různé odpovědi

Závěrečná zpráva k měření označenému v8, vygenerovaná 16. května, pouští chráněný text přes čtyři různé filtry. Pátý, klasifikátor z datové sady DCLM, spustit nešlo – jeho soubor nebyl na známých adresách. Ty čtyři, které běžely, jsou:

  • klasifikátor FineWeb-Edu, vybírající texty vzdělávací kvality; podle karty datové sady odstranil 92 % dat, a projekt ho používá jako hlavní;
  • KenLM počítaný z téhož korpusu, tedy statistický model slovních n-tic, který měří, jak je text pro daný obor obvyklý;
  • KenLM počítaný z Wikipedie;
  • Pythia-160M, malý jazykový model se 160 miliony parametrů.

Zpráva k nim uvádí Kendallovo tau, míru shody dvou hodnotitelů v pořadí: jednička znamená úplnou shodu, nula žádnou. Předem stanovená mez byla 0,4. Naměřené hodnoty leží mezi −0,042 a 0,033 na všech čtyřech korpusech – zpráva mluví o porovnání čtyř filtrů, v uloženém souboru jsou ale dvojice tři, wikipedijní KenLM v nich není. Filtry se tedy neshodnou ani na tom, který úsek textu je lepší. Zpráva z toho vyvozuje, že tvrzení o průchodu filtrem se musí dělat pro každý filtr zvlášť, ne souhrnně.

Jak moc na tom záleží, ukazuje surová tabulka výsledků. Vzali jsme ji a podíly přepočítali: u beletrie z korpusu PG-19 projde přes wikipedijní KenLM 45,7 % zaměněných úseků, zatímco nezaměněných projde 70,0 % – po vydělení tedy 65,3 %. U korpusu OpenWebText s filtrem Pythia-160M je to 1,4 proti 70,0, tedy 2,0 %. Táž ochrana, tatáž zpráva, rozdíl třicetinásobný.

Repozitář to shrnuje sám: napříč čtyřmi filtry se podíl pohybuje od 2,0 do 65,3 % s mediánem 12,4 %. Po filtrech vycházejí mediány 32,1 % (KenLM z korpusu), 13,6 % (KenLM z Wikipedie), 6,9 % (Pythia-160M) a 6,7 % (FineWeb-Edu). Titulkové číslo bílé knihy, 9,70 % neboli 13 úseků ze 134, patří tomu poslednímu.

Proč zrovna ten nejpřísnější

Volbu hlavního filtru projekt nezakrývá. „Známkujeme se proti tomu jednomu schválně,“ píše bílá kniha (překlad redakce) a odůvodňuje to tím, že je to nejpřísnější zveřejněný filtr a výsledek proti němu je opatrný odhad.

Podle nás to platí jen zpola. Zaměněný text má podle vlastní dokumentace zůstat gramaticky v pořádku – zaměňuje se podstatné jméno za podstatné, sloveso za sloveso. Filtry, které měří plynulost jazyka, takový text zachytit nemají čím, a čísla to potvrzují. Klasifikátor vzdělávací kvality naopak posuzuje obsahovou hodnotu textu, takže na záměně smyslu stojí a padá. Nejde tedy o přísnější a mírnější měřítko téhož, ale o dvě různé věci. Který z nich který sběrač dat používá, je veřejně nezjistitelné – to bílá kniha přiznává v samostatném oddílu.

Číslo, které v datech není

Trik se v titulcích i v odborné literatuře popisuje jako otrávení. Projekt sám ale netvrdí, že by modelu, který se na takovém textu učí, ublížil. „Měříme, co se stane s daty, ne s modelem,“ stojí v bílé knize (překlad redakce) a úvodní stránka repozitáře to říká ještě natvrdo: netvrdíme, že zakódovaný text prochází branami kvality, ani že poškozuje model, který se na něm učí.

Důvod je v datech vidět. Pátá fáze měření měla přesně tohle zjistit – doladit malý model na chráněném i nechráněném textu a porovnat výsledky ve znalostních testech. Adaptéry se natrénovaly, vyhodnocení zapojené není. Původně vybraný čtyřmiliardový model se navíc nevešel do paměti, takže se běh dělal na čtyřbitové variantě modelu Qwen3 s 1,7 miliardy parametrů. Ze čtyř sond na zmrazeném modelu jedna vrátila nuly ve všech buňkách kvůli chybě v dělení textu na tokeny; zpráva ji označuje za nedodělek k opravě.

Projekt si svoje čísla hlídá sám

Na obranu projektu je potřeba říct, že tohle všechno se dá vyčíst z jeho vlastních souborů. Repozitář vede dokument, který ke každému číslu v popisu dohledává zdrojový soubor a označuje ho jako ověřené, nebo převzaté. Druhý dokument vypisuje, co se do veřejné části nedostalo a proč.

Stojí v něm i věci, které projektu nesvědčí. Starší měření z řady v2 je formálně staženo se zápisem „RESULTS INVALID - DO NOT PUBLISH“: chráněná varianta tehdy vrátila 25 prázdných odpovědí z 25, takže se neměřila ochrana, ale porucha rozhraní. Dřívější údaj o 83 % u vypravěčské prózy stál na šedesáti vzorcích a při tisícovce se nezopakoval – beletrie vyšla naopak jako nejslabší obor s 31 až 35 %. A výběr vzorků není deterministický, protože se opírá o vestavěnou hašovací funkci Pythonu; přesné jmenovatele, tedy i oněch 134 úseků, znovu vyrobit nelze.

Většinu podílů v tom dokumentu navíc nepočítá žádný skript – dopočítaly se ručně z uložených výsledků. Kontrolní skript zatím pokrývá jen filtr FineWeb-Edu, u zbylých tří to teprve přijde. Všechna čísla v tomto článku jsou tedy měření projektu na jeho vlastní ochraně; nikdo cizí je zatím nezopakoval. Celý výpočet proběhl podle zprávy na počítači s čipem Apple Silicon, bez pronajatých grafických karet.

Pro čtenáře, který zvažuje, jestli si takovou ochranu na web dá, z toho plyne jedna praktická věc. Číslo, které se vyplatí sledovat, není devět z deseti, ale otázka, jaký filtr si ten který sběrač dat pouští – a na tu odpověď nemá zvenčí nikdo.

Zdroje: bílá kniha The Consent Layer (CC BY 4.0, doi:10.5281/zenodo.21700389), dohledání zdrojů číselsoupis vynechaného v repozitáři, surové výsledky filtrů v multigate_survival.jsonThe Register.

Diskuse

Zatím tu nikdo nediskutuje. Můžete být první.

Napsat příspěvek

Diskutovat můžete i bez účtu. S registrací se ale příspěvek zveřejní hned a nemusíte pokaždé vyplňovat jméno. Účet už máte? Přihlaste se.

Nezveřejňujeme ho, slouží jen redakci.

Podporuje zápis Texy: **tučně**, *kurzíva*, odrážky, odkazy.

Dál k tématu

  1. Čísla

    Test agentů nechal na Hugging Face 205 stejnojmenných modelů, 107 za tři dny

    Sada úloh Toolathlon nechává agenta nahrát model na Hugging Face pod pevným jménem MyAwesomeModel-TestRepo. Úklid je ale zapsaný v přípravě před testem, ne za ním, takže…

  2. Čísla

    llama.cpp vydal za třicet dnů 229 verzí. U kritické díry se dva záznamy liší o 501 buildů

    Knihovna llama.cpp, na které stojí většina domácího provozu jazykových modelů, vydala mezi 1. a 30. červencem 2026 dvě stě dvacet devět verzí. Číslo v jejich názvu…