• No results found

Lexikon och lexikonorganisation. Lexikal information. Reguljära uttryck i implementeringar. Reguljära uttryck. Olika sätt att definiera strängmängder

N/A
N/A
Protected

Academic year: 2022

Share "Lexikon och lexikonorganisation. Lexikal information. Reguljära uttryck i implementeringar. Reguljära uttryck. Olika sätt att definiera strängmängder"

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Lexikon och lexikonorganisation

Reguljära språk, ändliga automater och transduktorer

Lexikonorganisation fullformslexikon

minilexikon (= morfembaserade lexikon) tvånivåsystem

Representation av lexikon som automater och transduktorer

Redigeringsavstånd

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Lexikal information

Ett lexikon för textanalys associerar teckensträngar som repre- senterar tokens (och ofta kan matchas direkt mot texten) med strängar eller listor som representerar information.

Enkla strängar

bilarna: NN

Morfemsträng eller kombination av morfem och egenskaper

bilarna: bil+ar+na, bil_NN+Pl+Def

Egenskapslistor:

bilarna: (Cat NN Num PL Spec DEF …)

etc.

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Grundbegrepp i formell språkteori

Alfabet (Lexikon)

En ändlig mängd av symboler Sträng

En ändlig sekvens av symboler Märk: den tomma strängen Strängmängd (Formellt språk)

En mängd av strängar från ett givet alfabet

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Olika sätt att definiera strängmängder

Uppräkning: { ba, baa, baaa, … } Reguljära uttryck

Exempel: ba+

Mängddefinitioner och -operationer B = {b}, A = {a},

S = BA+

Reguljära uttryck

  

      

 

       

       

! !    

" #     ! !

   

 $     



I tabellen står r och s för godtyckliga reguljära uttryck.

Reguljära uttryck i implementeringar

Positionsangivare (anchors)

^ anger första position

$ anger sista position Minnesangivare

(), \(\), ... sparar vad som matchas

\1, \2 eller $1, $2, ... hämtar matchade strängar Intervall

[a-zåäö], [0-9]

Mängdangivare och specialtecken:

\w, \d, \b, ...

(2)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Flera sätt att definiera strängmängder

Omskrivningsregler

S -> bA A -> a A -> aA

Automater

b

a a

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Ändliga automater

En ändlig automat (FSA) definieras av ett alfabet

en uppsättning tillstånd, varav ett eller flera utgör starttillstånd och sluttillstånd

en uppsättning tillståndsövergångar som var och en är associerad med en symbol ur alfabetet (ev.

nollsymbolen)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Igenkänning och generering

En sträng kan kännas igen (eller läsas) av en automat om man, med början i ett starttillstånd, kan nå ett sluttillstånd genom att matcha en symbol i taget mot en tillståndsövergång.

Omvänt, kan en automat generera en sträng genom att den traverseras från ett starttillstånd till ett sluttillstånd och skriver ut en symbol för varje tillståndsövergång som görs.

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

En FSA för en ordlista (ett bokstavsträd)

b i l d

a c

a

c k

Determinism

En ändlig automat är deterministisk om det för varje par av tillstånd och symbol finns högst en övergång till ett annat tillstånd.

Motsatsen kallas icke-deterministisk

Deterministisk automat i matrisform

1 2 3 1 0 b 0 2 0 0 a 3 0 0 a

L = { ba, baa, baaa, ... }

(3)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

En icke-deterministisk automat

2 4

1 a 3 a

a a b

b

L = { a, aa, aba, abaa, ababba, ... } 5 a

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Reguljära språk

Ett språk som kan definieras av ett reguljärt uttryck kan också definieras av en ändlig automat, och omvänt.

Dessa språk kallas reguljära språk.

Utmärkande för reguljära språk är att de inte tillåter icke- lokala beroenden mellan olika delar av en sträng.

Exempel: språket ancbn är icke-reguljärt.

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Naturliga språk som strängmängder

Teckensträngar

n-a-t-u-r-l-i-g-a s-p-r-å-k

Ord som strängar av morfem

natur-lig-a, sträng-mängd-er

Stavelse- och fonemsträngar

na – tur – li - ga /n//a/, /t//u://r/, /l//i/, /g/a/

Meningar som ordsträngar, etc.

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Fullformslexikon

back NN Sg Indef

backa VB Inf

...

bi NN Sg Indef

bil NN Sg Indef

bilar NN Pl Indef bilarna NN Pl Def

bild NN Sg Indef

bilder NN Pl Indef bilderna NN Pl Def ...

Problem med fullformslexikon

Duplicering av morfem och information Ingen systematisk analys av morfologisk struktur Hanterar inte lexikonets dynamik

böjning, avledningar, sammansättningar

Minilexikon

Stammar

Ändelser-1

Ändelser-2

Ändelser-N

Ändelser-a

Ändelser-b

STOP

(4)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

En FSA för en klass av substantiv

Stam Plural

Best.Sing. Genitiv

Genitiv

Stam: stol, bil, häst, … Plural: ar Best.Sing: en Best.Plur: na Genitiv: s

Best.Plur

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Minilexikon med fortsättningsinformation

stol  stol SUFF1 katt  katt SUFF2 ros  ros SUFF3 ...

ar  Pl SUFF5

 en Sg Def SUFF7

 Sg Indef SUFF7 er  Pl SUFF5

 en Sg Def SUFF7

 Sg Indef SUFF7

 or Pl SUFF5

 en Sg Def SUFF7

 Sg Indef SUFF7

na  Def SUFF7,

 Indef SUFF7 s  Gen STOP,

 STOP SUFF1

SUFF2

SUFF3

SUFF5

SUFF7

stolarnas: stol Pl Def Gen

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Ändlig transduktor

En (ändlig) transduktor är en automat vars alfabet är definierat som par av symboler a/b, där a är hämtat från ett alfabet och b är hämtat från ett annat alfabet.

En transduktor kan användas för att relatera strängar från två formella språk (i godtycklig riktning) dvs känna igen ett språk och samtidigt generera ett annat.

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Ändlig transduktor – exempel

y/y t/t a/o /r

Ändlig transduktor - exempel

P/p e/e

2 3 5

/<name>

r/r

1 4 6

/</name>

En transduktor för pluralböjning

+N/ +Pl/ar

3

ar-dekl +Def/na

1 4

er-dekl +N/ 7

+Pl/er

5 {bil, stol, häst, ... }

{katt, film, rad, ... } 2

6

(5)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Formvariation

Fonologiskt betingad

Exempel: fågel, fåglar; ilsken, ilskna; …

Ortografiskt betingad

Exempel: glöm, glömmer; dum, dumma; …

Morfologiskt betingad

omljud: man, män; bok, böcker; … avljud: vinna, vann, vunnit; ...

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Hantering av formvariation 1

”Tekniska” stammar

fåg (l, el)

ilsk (en, et, na)

glöm (0, de, mer)

Stamdubblering

bok (0, en) / böck (er)

vinn (0, er) / vann (0, s) / vunn (it, en, et)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Hantering av formvariation 2

Två nivåer (alfabeten)

ortografisk nivå de vanliga bokstavstecknen lexikal nivå

bokstavstecken gränstecken

abstrakta tecken (som representerar variationen) regler

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Tvånivåregel –

exemplet ”flyktig e-vokal” i svenska

Abstrakta tecken: E, ^

Teckenmängder: C = konsonant, V = vokal, L = {l, r, n}

Regel: E : 0 / VC+_L^V

E : e / _ L[^C | #]

Ortografisk sträng: f å g 0 l 0 a r Lexikalisk sträng: f å g E l ^ a r

Ortografisk sträng: f å g e l 0 n f å g e l 0 ö Lexikalisk sträng: f å g E l ^ n f å g E l # ö

Stamlexikon i tvånivåsystem

bomM NN (AR EN)

by NN (AR N)

fågEl NN (AR N)

stol NN (AR EN)

uttEr NN (AR N)

...

Kombination av transduktorer

Regel- transduktor

Regel- transduktor

Regel- transduktor

Lexikon- transduktor

Ortografiska strängar: f å g l a r n a Lexikala strängar: f å g E l ^ a r ^ n a Morfemsträngar: f å g E l +N +PL +DEF

(6)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Tvånivåregel - transduktor

V:V

C:C, V:V C:C

E:0

E:e C:C C:C

L:L ^:0

V:V

^:0

fågeln / fåglar / fågelö

L:L

#:0

C:C, V:V

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Edit distance

Matchning av sökord mot ett index kan göras med en ordlista i form av en (deterministisk) automat.

Om ett sökord saknas i ordlistan kan man använda en teknik baserad på minsta redigeringsavstånd (eng.

minimal edit distance) för att hitta ord som kan vara avsedda.

Vanliga redigeringsoperationer:

lägga till tecken (ex. altid  alltid) ta bort tecken (ex. alldrig  aldrig) substituera tecken (ex. båll  boll)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Edit distance

Levenshtein-avstånd innebär att varje operation ger avståndet 1. Vanligt är också att man räknar tillägg och borttag för 1, men substitution av olika tecken för 2.

Exempel:

skrek ~ skräck (3) Linköping ~ Norrköping (5) politiker ~ spolingar (8)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Beräkning via dynamisk programmering

Det minsta avståndet, dist(w1, w2) mellan två ord w1 och w2, kan beräknas med hjälp av en ordmatris där varje element kan bestämmas utifrån sina närmaste grannar:

wij

wi-1,j-1 wi-1,j wi,j-1

Uppdatering av distansmått

dist[i, j] =

dist[i-1, j] + tilläggskostnad(måltecken) min dist[i-1, j-1] + substitutionskostnad(källtecken, måltecken) dist[i, j-1] + borttagskostnad(källtecken)

OBS! Substitutionskostnaden är antingen 0 (om käll- och måltecken är lika), annars 2. Tilläggs- och borttagskostnad är alltid 1 om det finns ett tecken.

Exempel

p 4 r 3 o 2 k 1

0 1 2 3 4 5 6 s k a r p a korp ~skarpa

(7)

Språkteknologi (Lars Ahrenberg) Språkteknologi (Lars Ahrenberg)09-01-22 09-01-22

Lexikonfri ordanalys (”stemming”)

Stemming innebär att normalisera ordformer till en stamliknande form med hjälp av enkla substitutioner.

Exempel:

s/ (\w+)arnas / $1 /; (bilarnas  bil, buskarnas  busk) s/ (\w+)ering / $1era /; (navigering  navigera, legering  legera)

Används för informationssökning och ”ordpåsesemantik”

Exempel (för engelska): Porter stemmer

References

Related documents

Flera av informanterna berättar även att de utsatts för bristande kunskap, både av elever och lärare, när de gått i en klass som inte anpassar sig efter personer

Vikten av att känna till både existensen och konstruktionen av den inskrivna och den omskrivna cirkeln för en triangel.. Här är ett exempel som belyser alla

Använd bara multimetern om du vet hur den ska hanteras, Mät aldrig potentiell skadlig ström utan. tillräckliga skyddsåtgärder

De olika teorier som förekommer idag om huruvida ikonoklasm ännu är ett aktuellt fenomen handlar mindre om en misstro på att konstförstörande aktioner fortfarande sker, vilket det med

Den tredje frågeställningen handlar om vilket socialt stöd personer med Aspergers syndrom får i samband med att få och behålla ett arbete, vilket stöd är det och från

[Tips: Faktorisera polyno-

För att en person inte ska kunna hållas ansvarig för innehav av narkotika genom underlåtenhet eller passivitet, krävs i princip att personen går till polisen så snart

Jag har inte för avsikt att redogöra för muslimska kvinnors ställning och rättigheter i den muslimska världen eller för olika inriktningar inom vad som kan kallas