Maskinöversättning, inte granskad av en modersmålstalare. Engelska är referensen.

Mottagarförtroende och sjöfartRedigera på GitHubKälla: docs/BENCH.md

kshana-bench

En öppen uppsättning uppgifter, delningar och mått för detektering av GNSS-störningar och holdover för tidssynkronisering. Specifikationen finns i bench/SPEC.md (version 2.0.0; licens för texten och manifesten: CC-BY-4.0 / CC0 föreslås, ägarens beslut väntar). Granskningen av datamängdens licenser finns i bench/LICENCES.md. Baslinjernas trösklar fastställdes före den första poängsatta körningen i xval/bench/PREREGISTRATION.md och, för 2.0.0, i PREREGISTRATION-v2.md, och deras resultat finns i xval/bench/RESULTS-v2.md.

Utfall så som de registrerats där: poängsättarens trösklar, C1 till C3 och D2, är uppfyllda. A2 är NOT MET (agc_k_sigma AUC 0,766 mot minst 0,80 på testdelningen), D1 är NOT MET (största glapp 0,0301) och uppgift (b) R1 är NOT MET (överfört, inte körd på nytt). Ingen tröskel har sänkts.

Vad det är: ett sätt att jämföra metoder på samma data med samma mätkod. Vad det inte är: en rangordning av produkter, ett godkännande eller belägg för att en metod fungerar i fält. Varje poäng är MODELLED, och en poäng beskriver en logg eller ett korpus, aldrig en produkt. Resultaten från Kshana är rådgivande.

De inbyggda baslinjerna för kshana-bench uppgift D (optimismglappet) på testdelningen, från en verklig körning av motor v0.40.0 (`kshana bench baseline`). Varje tröskelpar är arean under ROC-kurvan för fallen inom fördelningen och för de förskjutna fallen. Glappet mellan dem är optimismglappet, mot en tolerans på 0,05. fused-max-z: 0,998 och 0,983 (glapp 0,015); sqm-imbalance: 0,882 och 0,882 (glapp 0,001); agc-excess: 0,848 och 0,819 (glapp 0,030); raim-parity: 0,682 och 0,672 (glapp 0,010); energy-cn0-drop: 0,595 och 0,565 (glapp 0,030). Etiketterna är etiketter från en generativ modell av ett syntetiskt korpus, aldrig fältdata: MODELLED. Rådgivande: modellerat eller mätt mot angivna referenser, inte ett godkännande, ingen certifiering och inget uttalande om överensstämmelse. En poäng beskriver en logg eller ett korpus, aldrig en produkt.De inbyggda baslinjerna för kshana-bench uppgift D (optimismglappet) på testdelningen, från en verklig körning av motor v0.40.0 (`kshana bench baseline`). Varje tröskelpar är arean under ROC-kurvan för fallen inom fördelningen och för de förskjutna fallen. Glappet mellan dem är optimismglappet, mot en tolerans på 0,05. fused-max-z: 0,998 och 0,983 (glapp 0,015); sqm-imbalance: 0,882 och 0,882 (glapp 0,001); agc-excess: 0,848 och 0,819 (glapp 0,030); raim-parity: 0,682 och 0,672 (glapp 0,010); energy-cn0-drop: 0,595 och 0,565 (glapp 0,030). Etiketterna är etiketter från en generativ modell av ett syntetiskt korpus, aldrig fältdata: MODELLED. Rådgivande: modellerat eller mätt mot angivna referenser, inte ett godkännande, ingen certifiering och inget uttalande om överensstämmelse. En poäng beskriver en logg eller ett korpus, aldrig en produkt.

Uppgifter#

Uppgift Enhet Data Primärt mått
(a) detektering i mottagarloggar en epok ur en JammerTest 2024-logg hämtas av scripts/fetch_jammertest2024.sh (GPL-3.0+, aldrig medföljande) AUC
(b) detektering i IQ ett poängsatt fönster i en scen syntetiskt scenrecept från Kshana; TEXBAT endast som referens AUC per larmtyp
(c) prediktion av holdover för tidssynkronisering (satellit, ursprung) IGS-klockor vid 300 s (inchecktat utdrag, fastlåst hash) RMSE vid 3600 s
(d) optimismglapp utanför fördelningen ett syntetiskt fall korpuset impairment-eval, inom och utanför fördelningen AUC ut, och glappet

Kommandon#

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>

Ett bidrag är en fil (kshana-bench-predictions/1): scores (ett tal per fall-id; högre betyder större sannolikhet för störning) för uppgifterna a, b och d, eller predictions (fasändringen i ns vid varje horisont) för uppgift c. En resultatfil (kshana-bench-result/1) anger specifikationsversion, delning, SHA-256 för referensen och för prediktionerna samt måtten. Resultat från olika huvudversioner av specifikationen läggs aldrig i samma tabell.

Ärliga begränsningar#

  • De undanhållna datamängderna med verkliga data (a och c) är offentliga, eftersom vem som helst kan ladda ned data. De skyddar mot att välja en delning efter att ha sett poängen, inte mot justering på dessa mappar. Den förseglade undanhållna datamängden för uppgift (d) är ett åtagande och en avslöjande: ägaren åtar sig bara hashen i bench/holdout/COMMITMENTS.json och behåller fröet (ingen är förseglad än).
  • Referensen för uppgift (a) är de schemalagda attackintervallen i händelseloggarna med en minuts upplösning, så en detektionssannolikhet är en nedre gräns. Måtten på händelsenivå (latens, missade larm, falska larm) kommer med Jammertest-poängsättaren i kshana jammertest score.
  • IQ-baslinjen för uppgift (b) är överförd från docs/design/DETECTION-ROC.md och har inte körts på nytt för v1.
  • Korpuset för uppgift (d) är en kontroll av separerbarhet och pipeline. En AUC på det är en AUC över modellhärledda etiketter.