Om Semantika

Det danske semantiske ordgættespil

88.502Ord du kan gætte
5.831Unikke baner
1,4MOrdvektorer i modellen

1. Sådan virker det

Semantika er et ordgættespil hvor du finder det hemmelige ord — ikke ud fra bogstaver, men ud fra ordets betydning og kontekst i det danske sprog. Du har uendelige forsøg.

Hvert gæt tildeles en rangering. 1 er det korrekte svar, og jo lavere nummer, jo tættere er du på. Rangeringen beregnes via cosine similarity mellem ordvektorer i en Word2Vec-model.

Eksempel: det hemmelige ord er "kat"
hund2
akvarium1247
cykel26481
Bemærk: Rangeringen afspejler hvor ofte ord optræder i lignende kontekster i danske tekster — ikke nødvendigvis logisk kategorilighed. To ord kan tilhøre samme kategori (f.eks. dyr), men rangere forskelligt fordi de bruges i vidt forskellige typer tekst. Dette giver af og til overraskende placeringer, men er en naturlig del af spilmekanikken.

2. AI-modellen

Semantisk lighed beregnes med en dansk Word2Vec-model (DSL Skipgram 2020) trænet på et stort korpus af danske tekster fra Det Danske Sprog- og Litteraturselskab. Modellen konverterer hvert ord til en 500-dimensionel vektor, hvor geometrisk nærhed afspejler semantisk lighed.

For at opnå de mest præcise rangeringer bruger vi en best-inflection strategi: hvert ord sammenlignes med målordet via alle sine bøjningsformer (f.eks. "rotte", "rotten", "rotter"), og den højeste lighed afgør rangeringen. Det fanger betydningsnuancer som den rene grundform kan misse.

Alle rangeringer er forudberegnede og gemt i en database — din browser modtager kun rangeringen for hvert gæt, aldrig modellen eller ordlisterne.

3. Ordlister

Spillet bruger to separate ordlister med forskellige formål:

Gæt-ordforråd (~88.500 ord)

Alle ord du kan gætte på. Genereret fra DDO Lemmaliste (Den Danske Ordbog) og filtreret med en blacklist der fjerner bandeord, stødende indhold og upassende ord. Kun ord med en Word2Vec-vektor inkluderes.

Målord / baner (5.831 ord)

De ord der kan være det hemmelige ord. En delmængde af gæt-ordforrådet, yderligere filtreret til kun substantiver (navneord) via DanNet. Ord der er for abstrakte, kontroversielle eller obskure er fjernet.

Lemmatisering

Bøjningsformer som "katte", "katten" og "kattene" normaliseres automatisk til lemmaet "kat". Dette sikrer at semantisk identiske ord ikke optræder som separate gæt.

Sammensatte ord

Dansk er rigt på sammensætninger (f.eks. "samarbejdsaftale"). Uden justering ville sammensatte ord dominere toppen, fordi de indeholder målordet. Derfor nedprioriteres de — de fjernes ikke helt, men rykkes ned så mere relevante ord kommer frem.

4. Filtreringskriterier

Følgende kategorier fjernes fra banelisten, men kan stadig gættes:

KategoriBegrundelseEksempler
Egennavne / stederVilkårlig semantikKøbenhavn, Europa
Religiøse/ideologiske termerKontroversielle
Arkaisiske ordUkendte i daghartkorn, rigsdaler
Obskure fagtermerFor specialiserededocent, matrikel
Abstrakte -isme ordUden konkret kontekstidealisme, kynisme
Vold og kriminalitetUpassende som målord

5. Datakilder

  • DanNet — Den danske WordNet med ~48.000 navneord og deres semantiske relationer
  • DDO Lemmaliste — Lemmaer fra Den Danske Ordbog
  • DSL Word2Vec — 1,4 millioner ordvektorer fra Det Danske Sprog- og Litteraturselskab
  • COR / COR.EXT — 530.000+ bøjningsformer til lemmatisering fra ordregister.dk

6. Teknologi

FrontendNext.js (App Router)
HostingVercel
DatabaseTurso (libSQL)
AI-modelWord2Vec Skipgram

Udviklet af TBH