Skip to main content

Insticksprogram till Sparv som använder KBs modeller

Submitted by Kristoffer Andersson on 2025-12-10

Vi har under året utvecklat följande plugin till Sparv, Språkbankens analysplattform, som använder olika modeller som KB-Labb skapat.

sparv-sbx-word-prediction-kb-bert

Detta plugin använder KBLab/bert-base-swedish-cased för att förutse de vanligaste orden för varje ord i en mening.

Om vi som exempel tar meningen Engelbert tar Volvon till Tele2 Arena och kör Sparv med sparv-sbx-word-prediction-kb-bert så får vi följande xml ut (utdrag):

Engelbert
tar
Volvon
till
Tele2
Arena

Värdena är sannolikheter (mellan 0 och 1). Här kan vi se att varje ord är annoterat med de sannolikaste orden på den platsen i samma mening.

Läs mer här:

sparv-sbx-sentiment-kb-sent

Detta plugin använder KBLab/robust-swedish-sentiment-multiclass för att analysera om en mening är positiv, neutral eller negativ.

Vi kan titta på tre exempel:

  • "Han var glad."
  • "Rihanna uppges gravid."
  • "Jag har ätit sämre."

Om vi kör Sparv med sparv-sbx-sentiment-kb-sent så får vi följande xml:

<?xml version='1.0' encoding='utf-8'?>

  
	Han
	var
	glad
	.
  
  
    Rihanna
    uppges
    gravid
    .
  
  
    Jag
    har
    ätit
    sämre
    .
  

Värdena är normerade så att de ligger emellan 0 och 1, där 1 är starkast. I detta exempel har varje mening fått ett värde, men en mening kan få flera sentiment kombinerade. Exempel: sentiment--kb-sent="|NEUTRAL:0.938|POSITIVE:0.798|NEGATIVE:0.759|

Antalet decimaler i annoteringen kan styras genom att lägga till följande i config.yaml för din korpus:

sbx_sentiment_kb_sent:
  num_decimals: 5 # default is 3

Antalet decimaler styr också cut-off, det vill säga alla värden som avrundas till 0 med det antalet decimaler filtreras bort.

Läs mer här:

sparv-sbx-emotions-kb-emoclass

Detta plugin använder KBLab/emotional-classification för att analysera vilka känslor en mening ger uttryck för. De känslor som kan kännas igen är:

  • absence of emotion (känsla saknas)
  • happiness (glädje)
  • love/empathy (kärlek/empati)
  • fear/anxiety (oro/rädsla)
  • sadness/disappointment (sorg/besvikelse)
  • anger/hate (ilska/hat)
  • hope/anticipation (hopp/förväntan)

Om vi analyserar samma meningar som för sparv-sbx-sentiment-kb-sent så får vi följande xml:

<?xml version='1.0' encoding='utf-8'?>

  
	Han
	var
	glad
	.
  
  
    Rihanna
    uppges
    gravid
    .
  
  
    Jag
    har
    ätit
    sämre
    .
  

Språket för annoteringarna kan ändras genom att lägga till dessa rader i din korpus config.yaml:

sbx_emotions_kb_emoclass:
	# supported languages 'en' (default) and 'sv'
	annotation_lang: sv

Läs mer här:

Kontakta sb-info@svenska.gu.se om du har några frågor.