kshana-bench
Otevřená sada úloh, rozdělení a metrik pro detekci interference GNSS a holdover času. Specifikace je bench/SPEC.md (verze 2.0.0; licence textu a manifestů: CC-BY-4.0 / CC0 navrhováno, rozhodnutí vlastníka čeká). Přezkum licencí datové sady je bench/LICENCES.md. Prahy základů byly stanoveny před prvním hodnoceným během v xval/bench/PREREGISTRATION.md a pro 2.0.0 v PREREGISTRATION-v2.md a jejich výsledky jsou v xval/bench/RESULTS-v2.md.
Verdikty, jak jsou tam zaznamenány: prahy hodnotitele, C1 až C3 a D2 jsou splněny; A2 je NOT MET (agc_k_sigma AUC 0,766 proti požadovaným alespoň 0,80 na testovací části), D1 je NOT MET (největší rozdíl 0,0301) a úloha (b) R1 je NOT MET (převzato, znovu nespuštěno). Žádný práh nebyl uvolněn.
Co to je: způsob, jak porovnávat metody na stejných datech stejným kódem metrik. Co to není: žebříček produktů, schválení ani důkaz, že metoda funguje v terénu. Každé skóre je MODELLED a skóre popisuje záznam nebo korpus, nikdy produkt. Výsledky Kshana mají poradní charakter.
Úlohy#
| Úloha | Jednotka | Data | Primární metrika |
|---|---|---|---|
| (a) detekce na záznamech přijímače | jedna epocha záznamu JammerTest 2024 | stahuje scripts/fetch_jammertest2024.sh (GPL-3.0+, nikdy se nepřibaluje) |
AUC |
| (b) detekce na IQ | jedno hodnocené okno scény | syntetický recept scény Kshana; TEXBAT pouze jako reference | AUC podle druhu poplachu |
| (c) predikce holdoveru času | (družice, počátek) | hodiny IGS po 300 s (přiložený výřez, pevný hash) | RMSE při 3600 s |
| (d) optimistická mezera mimo rozdělení trénování | jeden syntetický případ | korpus impairment-eval, v rozdělení i mimo něj |
výsledné AUC a mezera |
Příkazy#
kshana bench spec
kshana bench cases --task d --split test --scale 0.5 --out cases/ # cases.json + truth.json
kshana bench cases --task c --split test --out cases/
kshana bench truth --task a --data <extracted JammerTest 2024> --split test --out truth.json
kshana bench score --truth truth.json --predictions my-scores.json --out my.result.json
kshana bench baseline --task d --split test --out results/ # the built-in baselines
kshana bench validate results/*.result.json
kshana bench leaderboard results/ --out bench/site/index.html
kshana bench seal --task d --seed-file secret.txt --new # owner: make a seed, print only its hash
kshana bench reveal-check --task d --seed-file secret.txt --commitment <hex>
kshana bench manifest --task a --data <extracted dir> --out manifest.json
kshana bench verify-manifest manifest.json --root <dir>
Odevzdání je soubor (kshana-bench-predictions/1): scores (jedno číslo na identifikátor případu; vyšší hodnota znamená pravděpodobnější narušení) pro úlohy a, b a d, nebo predictions (změna fáze v ns na každém horizontu) pro úlohu c. Soubor s výsledky (kshana-bench-result/1) uvádí verzi specifikace, rozdělení, SHA-256 pravdy a predikcí a metriky. Výsledky různých hlavních verzí specifikace se nikdy nedávají do jedné tabulky.
Upřímné meze#
- Holdouty z reálných dat (a a c) jsou veřejné, protože data si může stáhnout kdokoli. Chrání před výběrem rozdělení po zhlédnutí skóre, nikoli před laděním na těchto složkách. Utajený holdout úlohy (d) je závazek a odhalení: vlastník do
bench/holdout/COMMITMENTS.jsonzapíše pouze hash a seed si ponechá (zatím žádný není utajen). - Pravdou úlohy (a) jsou plánované útočné sloty v záznamech událostí s minutovým rozlišením, takže pravděpodobnost detekce je dolní mez; metriky na úrovni událostí (latence, nezachycené poplachy, falešné poplachy) přibudou s hodnotitelem Jammertest z
kshana jammertest score. - Základ IQ úlohy (b) je převzat z
docs/design/DETECTION-ROC.mda pro v1 nebyl znovu spuštěn. - Korpus úlohy (d) je kontrola separability a řetězce zpracování; AUC na něm je AUC nad štítky odvozenými z modelu.