Moeilijkheid
Jouw beste score
N.v.t.
Het is expliciet toegestaan om vooraf getrainde taalmodellen (bijv. BERT, RoBERTa, sentence-transformers) met geladen weights te gebruiken. GPU-versnelling voor training en inferentie is volledig toegestaan. Klassieke NLP-pipelines gebaseerd op TF-IDF zijn eveneens toegestaan en worden aangemoedigd.
Ergens op de droge vlaktes van New Mexico, 1883.
De oude Sheriff Clem Dudley had een gewoonte die geen enkele hulpsheriff ooit begreep: elke avond, ongeacht hoe lang de dag was geweest, legde hij zijn hoed op het zadel van zijn paard, spreidde hij zijn deken uit en keek hij recht omhoog naar de hemel.
"De sterren liegen niet," placht hij te zeggen. "Elke voortvluchtige, elke vagebond, elke eerlijke man — ze kijken allemaal naar dezelfde hemel."
Op een augustusnacht, uitgeput na drie dagen de Vega-bende door de woestijn te hebben achtervolgd, lag Clem onder een hemel zo zwart als inkt, bezaaid met meer sterren dan hij ooit had geteld. Hij probeerde in slaap te vallen toen de sterren begonnen te bewegen — eerst langzaam, als sintels die door de wind uit een stervend vuur worden meegevoerd. Daarna steeds sneller. Ze trokken lijnen tussen elkaar. Driehoeken. Spiralen. Dieren. Cijfers. Vormen waarvan hij de naam niet wist.
"Het zal de hitte wel zijn," mompelde hij. Maar hij bleef kijken.
De vormen werden woorden. Niet gesproken — gevoeld. Elk sterrenbeeld leek een betekenis te dragen, een gewicht, een verhaal dat eraan hing als een 'wanted'-poster op het bord van een sheriff. Hij reikte naar zijn potlood om ze op te schrijven, en toen — niets.
Hij werd ergens anders wakker.
Het Rijk tussen de Sterren. Zo noemden zij het.
Het was een uitgestrekt en stil gebied waar de hemel de grond was en de sterrenbeelden dorpen waren — elk een groep sterren gerangschikt in een vorm, en elke vorm met een naam die wachtte om gekoppeld te worden aan zijn verhaal. De bewoners van dit rijk, de Sterrenschrijvers, hielden al eeuwenlang nauwkeurige verslagen bij: dagboeken, gedichten, reisverslagen, legenden — allemaal geschreven door mensen die van beneden op aarde naar dezelfde sterrenvormen hadden gekeken.
Maar er was iets misgegaan. Een grote hemelstorm — de bewoners noemden het De Verstrooiing — had elk label van elk sterrenbeeld gerukt en ze in de wind geblazen. Nu zweefden duizenden teksten los boven de sterrenvormen die ze ooit beschreven, en de Sterrenschrijvers konden niet meer vertellen welk verhaal bij welke hemel hoorde.
Clem kreeg een badge van sterrenlicht en een eenvoudige instructie:
"Koppel de woorden weer aan de sterren, Sheriff. Voordat de volgende storm komt."
Je krijgt een set sterrenbeelden, elk beschreven door een reeks 2D-punten die een geometrische vorm vormen (bijv. een kruis, een spiraal, een figuur met vijf hoeken, cijfers zoals 6, 7, 8, combinaties van cijfers, enz.). Je krijgt ook een grote pool van kandidaat-tekstfragmenten — dagboekaantekeningen, legenden, beschrijvingen — die elk oorspronkelijk over één specifiek sterrenbeeld zijn geschreven.
Je doel is om een model te bouwen dat in staat is om aan elke tekst uit de pool correct het bijbehorende sterrenbeeld toe te wijzen, uitsluitend gebaseerd op de semantische en structurele relatie tussen de geometrie van de coördinaten en de inhoud van de tekst.
train.csv bevat 300 sterrenbeeld-tekstparen met labels:
| Kolom | Beschrijving |
|---|---|
id | ID van het sterrenbeeld (0-299) |
coords | 728-dimensionale coördinatenvector, gescheiden door verticale strepen: \|x1\|x2\|...\|x728\| |
text | Het bijbehorende literaire fragment |
test.csv bevat 50 reeksen sterrenbeelden zonder labels (datapointID 1-50):
| Kolom | Beschrijving |
|---|---|
datapointID | Geheel getal van 1 tot 50 |
coords | Hetzelfde formaat met pipes als bij de training |
Elk datapointID komt 40-65 keer voor. Er worden geen tekstlabels verstrekt.
candidates.csv bevat 500 tekstfragmenten:
| Kolom | Beschrijving |
|---|---|
text_id | Geheel getal 0-499 |
text | Een literair fragment (dagboek, gedicht, legende) |
Het inzendingbestand moet een CSV-formaat hebben met de volgende kolommen:
| Veld | Beschrijving |
|---|---|
subtaskID | Moet 1 zijn voor alle rijen |
datapointID | Geheel getal 1-50, de identificatie van het test-sterrenbeeld |
answer | De voorspelde text_id (geheel getal 0-499) |
Elk van de 50 test-datapointID's moet precies één keer voorkomen.
Voorbeeld:
subtaskID,datapointID,answer1,1,421,2,3171,3,467...Elke voorspelling wordt geëvalueerd als een single-label classificatie over de 500 kandidaat-tekst-ID's. De voorspelling is ofwel correct (1) of onjuist (0).
De uiteindelijke metriek is het aantal correcte voorspellingen / 50.
De ruwe scores worden omgezet in wedstrijdpunten met behulp van een lineaire functie met een minimumdrempel:
| Accuracy | Score |
|---|---|
| < 0.30 | 0 punten |
| >= 0.85 | 100 punten |
| Tussenliggend (0.30 - 0.85) | Lineaire schaling tussen 0 en 100 |
Kortom: je moet minstens 15 van de 50 sterrenbeelden correct koppelen (accuracy = 0.30) om punten te verdienen, en het correct koppelen van 43 of meer (accuracy >= 0.85) levert de maximale score op.
"De sterren liegen niet. Je kunt een ster meer vertrouwen dan een mens..." — Sheriff Clem Dudley, 1883