Forskningsrapport · Vitki

Metodrapport, delvis prövad

Skanningen som ledtråd: med 3D-spåren fyller språkmodellen i 60 procent av de dolda orden rätt i stället för 54, och omflyttade spår gör det sämre

Viktor Kvant

Oberoende forskare · Vitki

Rapportversion 1 · Publicerad 31 oktober 2026 · Analys i Vitki 3.0.0 · Licens CC BY 4.0

Studiens tidslinje: Spårläsaren byggdes och ställdes in på Sö 113 17 oktober 2026 · Det skarpa provet kördes 17 oktober 2026 · Provet på verkliga luckor kördes 17 oktober 2026 · Provet räknades om utan Sö 113 31 oktober 2026

Sammanfattning

Vad som inte är prövat. Provet var inte låst i en plan, och spårläsarens inställningar togs fram på en av stenarna i provet. Provet döljer hela ord på hela runor; vid verkliga skador har spåren bara prövats på fem stenar, och där kan de leda fel.
Bakgrund och syfte. När runor är skadade läser runologen vad som finns kvar på stenen, och en språkmodell kan föreslå vad som stod där. Frågan här är om det som en 3D-skanning visar av de skadade runorna gör språkmodellens förslag bättre.
Material. 17 runstenar i Södermanland som Laila Kitzler Åhfeldt har skannat i 3D och publicerat öppet, med texten i Samnordisk runtextdatabas (Rundata); 157 ord som gick att pröva.
Metod. En spårläsare läser i skanningens djupbild vilka av de sexton runorna varje upptäckt runa kan vara, med en sannolikhet för var och en. Varje helt ord på två till sex runor döljs, och en språkmodell som är tränad utan stenen fyller i det: utan spår, med spåren och med samma spår slumpvis omflyttade mellan stenens platser. Jämförelsen är parad, ord för ord.
Resultat. Med spåren blev 59,9 procent av orden rätt, mot 53,5 procent utan dem, p = 3,7 · 10⁻⁶. Omflyttade spår gav 52,9 procent, sämre än inga spår alls. Utan stenen där inställningarna togs fram: 63,4 mot 57,2 procent. På fem stenar med verkliga luckor fungerade kedjan, men vid de svåraste skadorna ledde spåren fel.
Slutsats. Det skanningen visar hjälper språkmodellen, och det hjälper för att det läser stenen, inte bara för att det minskar antalet möjliga runor. Vid svåra skador ska spåren visas för den som läser och vägas in först när den har bekräftat dem.

Nyckelord: runstenar, vikingatid, 3D-skanning, skadade runor, språkmodell, luckor, rekonstruktion, Södermanland

De statistiska begreppen förklaras i vanliga ord i ordlistan.

Huvudpunkter

  • Det en 3D-skanning visar av en runa hjälper en språkmodell att fylla i rätt ord, och fel ledtrådar gör det sämre.
  • Skanningen och språket kan alltså läsa en runsten tillsammans: det ena visar vad som syns, det andra vad som går att säga.
  • Vid svåra skador kan spåren leda fel, så en människa måste se och bekräfta dem först.

1. Inledning

Många runinskrifter har skadade eller förlorade runor. Runologen läser det som finns kvar på stenen, och utgåvorna anger säkra, osäkra och förlorade runor. På senare år har språkmodeller använts för att föreslå vad som stått i skadade inskrifter; den mest kända är Ithaca för grekiska inskrifter (Assael m.fl. 2022). Laila Kitzler Åhfeldt har skannat ett stort antal runstenar i 3D för att studera huggtekniken (Kitzler Åhfeldt 2002; 2015) och publicerat skanningarna öppet (Kitzler Åhfeldt 2024).

Det som saknas är ett sätt att låta det som skanningen visar av en skadad runa styra vad en språkmodell föreslår, och ett prov på om det hjälper. Syftet här är att redovisa en spårläsare som gör det och att pröva den på dolda ord på skannade stenar.

2. Förregistrering: vad som var bestämt i förväg och vad som inte var det

Provet var inte låst i en plan. Spårläsaren byggdes i steg den 17 oktober 2026. Dess två inställningar, hur skarpt sannolikheterna fördelas och vad en extra del av en runa kostar, prövades fram på Sö 113 ensam och validerades sedan på Sö 134 och Sö 207, som inte hade använts. Det skarpa provet bestämdes därefter i koden, med tre villkor och samma mått för alla stenar, och kördes en gång. Sö 113 ingår bland de 17 stenarna; den 31 oktober räknades provet om utan Sö 113, med samma test. Provet på verkliga luckor kördes samma dag som det skarpa provet.

3. Material

  • Skanningarna. Laila Kitzler Åhfeldt, Riksantikvarieämbetet, skannade runstenarna i Södermanland med en ATOS-skanner i projektet Runristandets dynamik och publicerade dem på Zenodo under CC BY 4.0 (Kitzler Åhfeldt 2024). Av dem användes de 17 stenar där Rundata har en ordtext som kan paras mot de upptäckta runorna. Bara runstenar.
  • Texterna. Translitterering och normalisering ur Samnordisk runtextdatabas (Rundata).
  • Orden. Varje helt ord på två till sex runor: 197 ordplatser, varav 157 där alla tre villkoren gav ett resultat.
  • Verkliga luckor. Fem stenar ur samma serie med luckor som Rundata markerar: Sö 162, Sö 206, Sö 211, Sö 360, Sö 45.

4. Metod

4.1 Spårläsaren. I skanningens djupbild hittas runornas stavar. Delar av huggspåret utanför stavarna, kvistar och bågar, får en vikt efter hur djupa, långsträckta och långa de är, eftersom vittring och märken i ytan ger grunda och korta spår. Varje upptäckt runa jämförs med formen för var och en av de sexton runorna, med en kostnad för delar som saknas eller är för många, och kostnaderna görs om till en sannolikhet per runa.

4.2 Språkmodellen. Projektets modell för runtext föreslår ord och väger dem efter hur vanliga de är i runtexterna och i sitt sammanhang. Den är tränad utan stenen som prövas. Spåren läggs in mjukt: en runa som skanningen inte stöder blir mindre sannolik, inte omöjlig.

4.3 Provet. Varje helt ord på två till sex runor döljs och fylls i under tre villkor: utan spår, med spårläsarens sannolikheter för ordets runor, och med samma uppsättningar slumpvis omflyttade mellan stenens platser. Det sista villkoret prövar om spåren hjälper för att de läser stenen, eller bara för att de minskar antalet möjliga runor. Måtten är andelen ord som blev rätt och sannolikheten för det rätta ordet, jämförda ord för ord med Wilcoxons test för parade värden.

4.4 Avvikelser. Ingen plan fanns, så inga avvikelser kan redovisas. Omräkningen utan Sö 113 gjordes efter provet.

5. Resultat

5.1 Det skarpa provet. 157 ord på 17 stenar. Rätt ord: 53,5 procent utan spår, 59,9 procent med spåren och 52,9 procent med spåren omflyttade. Sannolikheten för det rätta ordet: 0,379 utan, 0,414 med och 0,365 med omflyttade spår. Spåren gav högre sannolikhet än inga spår, p = 3,7 · 10⁻⁶, och högre än omflyttade spår, p = 2,1 · 10⁻⁸. Omflyttade spår gav lägre sannolikhet än inga spår, p = 0,009: fel ledtrådar skadar. I klartext: med skanningens hjälp blev ungefär sex dolda ord av tio rätt i stället för drygt fem, och när ledtrådarna kastades om blev det sämre än utan dem.

Dolda ord som fylldes i rätt, procent

Alla 17 stenar

Utan spår53,5 %157 ord
Med skanningens spår59,9 %157 ord
Spåren omflyttade52,9 %157 ord

Utan Sö 113

Utan spår57,2 %145 ord
Med skanningens spår63,4 %145 ord
Spåren omflyttade55,2 %145 ord

Skalan går från 0 till 70 %. Källa: Rundata; skanningar av Laila Kitzler Åhfeldt, Riksantikvarieämbetet (CC BY 4.0).

5.2 Utan Sö 113. Utan stenen där inställningarna togs fram: 145 ord på 16 stenar, 57,2 procent rätt utan spår, 63,4 med och 55,2 med omflyttade; spåren mot inga spår p = 5,9 · 10⁻⁶, mot omflyttade p = 1,4 · 10⁻⁸.

5.3 Det tidigare steget, på oskadade runor. Innan språkmodellen kopplades in prövades spårläsaren ensam på de upptäckta runorna på Sö 113, Sö 134 och Sö 207: sannolikheten för den rätta runan var i medel 0,077 mot 0,066 när texten blandades om (200 omblandningar, p = 0,010), och den rätta runan kom först i 19,3 procent mot 13,8 (p = 0,015). Spåren ensamma säger lite; tillsammans med språket säger de mer.

5.4 Verkliga luckor. På de fem stenarna med verkliga luckor (7 ord med förlorade runor) fungerade kedjan från skanning till förslag. Där stavarna är hela behöll spåren de rätta orden, som stæin på Sö 211 och gæiRfastr på Sö 45. Men där skadan var svår ledde spåren fel: på Sö 162 drog de stæin mot staf, och på Sö 206 drog de förslaget för ett skadat namn från karl till kumbl. Spårläsaren är prövad på oskadade runor, och vittring vid en skada ger just de falska kvistar som den då läser.

6. Diskussion

Vad metoden klarar. Skanningens spår gör språkmodellens förslag bättre, och det är spåren själva som hjälper: samma uppsättningar på fel plats gör förslagen sämre. Det är ett första prov på att 3D-skanning och språkmodell kan läsa en inskrift tillsammans, där skanningen visar vad som går att se och modellen vad som går att säga.

Mot tidigare forskning. Ithaca använder bara texten (Assael m.fl. 2022). Här läggs det som går att se på stenen till, i form av sannolikheter som modellen väger in. Skanningarna gjordes för att studera huggteknik (Kitzler Åhfeldt 2015) och visar sig också vara en källa för läsningen.

Svagheter, i ordning efter vikt.

  1. Dolda ord är inte skadade ord. Provet döljer ord vars runor är hela på stenen. Vid verkliga skador har spåren bara prövats på fem stenar, och där kan de leda fel.
  2. Ingen låst plan. Provets villkor bestämdes före körningen, men utan en plan med kontrollsumma. Inställningarna togs fram på Sö 113, som ingår i provet; utan den håller resultatet.
  3. En skanningsserie. Alla stenar kommer ur samma serie i Södermanland, med samma skanner. Andra skannrar och andra stenar kan ge andra spår.
  4. Måttet för rätt ord. Ett ord räknas som rätt när det är samma ord eller böjning; regeln räknar ibland närliggande former som samma, vilket gäller alla tre villkoren lika.

Var metoden inte ska användas. Ensam, vid svåra skador. Där ska spåren visas för den som läser stenen och vägas in först när läsaren har bekräftat dem; så gör Vitki i dag.

Vad som skulle fälla metoden. Att spåren inte gav någon förbättring på stenar ur andra skanningsserier, eller att de oftare ledde fel än rätt vid verkliga skador i ett större material.

7. Slutsats

Med 3D-skanningens spår fyllde språkmodellen i 59,9 procent av de dolda orden rätt mot 53,5 procent utan, och omflyttade spår gjorde det sämre. Skanningen och språket kan läsa en runsten tillsammans. Vid svåra skador måste en människa bekräfta vad skanningen ser innan det vägs in.

Data och kod

Analysen är gjord i Vitki 3.0.0, ett öppet forskningsverktyg för runstenar (vitkirunor.se), med de ändringar som gjorts efter den versionen fram till den 31 oktober 2026. Någon release med DOI finns ännu inte; när den görs hänvisar rapporten till den. All kod och resultatfilerna finns öppet på GitHub under GPL-3.0.

  • Spårläsaren och proven: utdata/sparlasare/ (stegen led_a.py–led_g.py; det skarpa provet led_f.py med sammanställningen led_f_summering.json; omräkningen utan Sö 113 utan_so113.py; verkliga luckor led_g.json).
  • Huggspåren: src/auto_grooves.py. Språkmodellen: src/runlm.py och src/textmodel.py.
  • Skanningarna: Kitzler Åhfeldt 2024, doi:10.5281/zenodo.11951255.
  • Rapporten byggs av utdata/blogg/build/build_rapport_sparlasare.py, som läser alla tal ur resultatfilerna och stannar om något inte stämmer.
  • I Vitki visas spåren i stenanalysen under ”Vad skannern ser”.

Referenser

  • Assael, Y., Sommerschield, T., Shillingford, B. m.fl. 2022. Restoring and attributing ancient texts using deep neural networks. Nature 603, s. 280–283.
  • Kitzler Åhfeldt, L. 2002. Work and Worship: Laser Scanner Analysis of Viking Age Rune Stones. Theses and Papers in Archaeology B:9. Stockholm: Stockholms universitet.
  • Kitzler Åhfeldt, L. 2015. Rune Carvers and Local Mobility. Viking and Medieval Scandinavia 11, s. 143–182.
  • Kitzler Åhfeldt, L. 2024. 3D-data Runstenar i Södermanland / Runestones in Södermanland [datamängd]. Riksantikvarieämbetet. Zenodo. doi:10.5281/zenodo.11951255. CC BY 4.0.
  • Kvant, V. 2026. Vitki 3.0.0: metodbeskrivning (METHODS.md). https://github.com/Precatio/runes
  • Samnordisk runtextdatabas (Rundata). Institutionen för nordiska språk, Uppsala universitet. Open Database License.

Konkurrerande intressen: inga.

Finansiering: ingen.

Citera som

Kvant, V. (2026). The scan as a clue: with the 3D traces the language model fills in 60 percent of the hidden words correctly instead of 54, and shuffled traces make it worse. Research report (methods report), report version 1; analysis in Vitki 3.0.0. https://vitkirunor.se/en/forskningsrapporter/skanningen-som-ledtrad