Taligenkänning 729G17/729G66 Språkteknologi 1 Vad är språkteknologi? Vad är språkteknologi? Kursens mål och uppläggning Att analysera textdata Korpusar och korpusarbete Textanalys med reguljära uttryck Språk i språkteknologi står för natural language, human language, dvs engelska, kinesiska, arabiska, franska, spanska,..., svenska,... text, tal, teckenspråk Språkteknologi står för metoder och system som modellerar (någon aspekt av) språk i denna mening. 09-01-19 Språkteknologi 1 (Lars Ahrenberg) 1 2 Vad är språkteknologi? Tre nivåer: Tjänster / Funktioner Språkgranskning, Informationssökning, Översättning Dialogsystem ~ automatiska taltjänster,... Lingvistiska bearbetningar (komponenter) Modelleringsverktyg data algoritmer 3 Språkteknologiska grundproblem Språkteknologisk forskning och utveckling Annat språk Översättning Sammanfattning Annan text Tal Text Extraktion, textförståelse Formell repr. Dialogsystem Talsyntes Textgenerering Tal Tillämpningar / Tjänster Översättning Faktaextraktion Frågebesvarande system Talstyrning Språkgranskning Utvärdering Metod- och kunskapsuppbyggnad Ordklasstaggning Morfologisk analys Syntaktisk parsning Betydelsebestämning av ord Namnigenkänning Referentbestämning 5 6
Modelleringsverktyg Kursmål Datamodellering Formella språk och automater reguljära uttryck, ändliga automater, kontextfri grammatik,... Sannolikhetslära Logik Processer Igenkänning, generering, transduktion, Klassificering (disambiguering) Sökning Maskininlärning Efter genomförd kurs ska du kunna: Redogöra för, och tillämpa, grundläggande metoder för analys av ord och meningar ( reguljära uttryck, ngrammodeller, kontextfri grammatik, parsning, chunkning) Redogöra för delproblem och standardlösningar inom automatisk textförståelse ( betydelsebestämning av ord, koreferens, diskursrelationer) Redogöra för arkitekturer och problem i vanliga tillämpningar ( informationsutvinning, automatisk översättning) Utvärdera algoritmer och system med avseende på korrekthet, precision och recall. Värdera svårighetsgrad och görbarhet av olika språkteknologiska tillämpningar 7 8 Organisation Kandidatkursen 729G17 9+1 föreläsningar 3 labbar (4 + 2 timmar + extra) 1 tenta 1 projektuppgift För magisterkursen 729G66 tillkommer 2 föreläsningar Språkteknologi i kursen Fokus på text (maskinlagrad, svenska, engelska) vanliga analysproblem / metoder noggrannare studium av en tjänst I projektarbetet (viss) grundläggande formell teori 9 10 Språkteknologiska delproblem i kursen Korpusarbete Modeller, Metoder Ordprediktion Morfologisk analys Chunkning Parsning Ordklasstaggning Betydelsebestämning Namnigenkänning Referenslösning Korpus (eng. corpus, pl. corpora) = en mängd texter (eller yttranden, samtal) som samlats in för ett visst ändamål. Balanserad korpus = representativ för ett helt språk med avseende på genrer, domäner och subspråk. Projektkorpus = korpus som är insamlad i syfte att utveckla ett givet system. Träningskorpus Testkorpus 11 12
Användning av korpusdata Datagenerering från korpusar: Konkordans (Språkbanken) Underlag för lexikon och lexikala data, ord- och frasmönster konkordanser för (främst) språkforskare Träningsdata vid systemutveckling Manuell / automatisk inlärning Testdata vid systemutvärdering 13 14 Tidiga moment i korpusarbete Urval Insamling Avformatering Beskrivning Segmentering Uppmärkning / Formatering Normalisering Vidare analys och datagenerering Ett TT-telegram i XML <?xml version='1.0'?> <!DOCTYPE TTNITF SYSTEM "ttnitf.dtd"> <TTNITF><HEAD> /diverse metadata/ t.ex. <SUBREF ID="2:12">TT:04000000:EKO</SUBREF> <DATESENT ID="1:70">20010112</DATESENT>... </HEAD><BODY> /informationselement/ </BODY></TTNITF> 15 16 Textelement i ett telegram Ett filtrerat TT-telegram <TEXT> <RUBRIK>Framfab ingår finansieringsavtal</rubrik> <DAT><ORT>Stockholm</ORT><SOURCE>TT</SOURCE>< /DAT> <BRODTEXT> <P>IT-företaget Framfab ingår ett nyemissionsavtal med det internationella finansbolaget Credit Suisse First Boston (CSFB). Det beslutade Framfabs extra bolagsstämma på fredagen.</p> /fler element /... </BRODTEXT> </TEXT> 17 Framfab ingår finansieringsavtal. (Stockholm, TT). IT-företaget Framfab ingår ett nyemissionsavtal med det internationella finansbolaget Credit Suisse First Boston (CSFB). Det beslutade Framfabs extra bolagsstämma på fredagen. Avtalet gör det möjligt för Framfab att förstärka kassan genom flera mindre nyemissioner av aktier till ett värde av maximalt 375 miljoner kronor. CSFB tecknar sig under förutbestämda villkor för aktierna till marknadspris. 18
Beskrivning med metadata Källa: TT Datum: 20010112 Hämtningsdatum: 20010124 Hämtning gjord av: LA Etc. Segmentering Tokenisering Separering av skiljetecken från löpord Bestämning av lexikala enheter t.ex. flerordstermer (extra bolagsstämma), namn (Credit Suiss First Boston), förkortningar (bl a), fraser (i går) Uppdelning i meningar identifiering av meningsgränser 19 20 Separering av skiljetecken #!/usr/local/bin/perl -p # [ ] anger alternativ # () memorerar instans av uttrycket # $1 hämtar från minnet s/([, :! \. \; \?])/ $1/g; Normalisering Normalisering innebär att ge tokens som man vill betrakta som samma en enhetlig form. Exempel: ä eller ä t.ex. eller t_ex eller till_exempel I m eller I am eller I m 21 22 Substitution Formatering #!/usr/local/bin/perl -p # -p anger att filen ska läsas igenom och varje rad skrivs ut. # s/// är substitutionsfunktionen. # g (global) anger att alla träffar ska ersättas s/å/å/g; s/ä/ä/g; s/ö/ö/g; Teckenrepresentation t.ex. entiteter som ä & etc. Markering av tokens t.ex. blanktecken eller <w>-element Markering av meningar t.ex. \n (newline), <s> Lördagsöppet på Systembolaget betyder inte bara fler kunder, utan också fler anställda. - Försöket blir permanent, tror flera butikschefer DN talat med <s><w>lördagsöppet</w> <w>... <w>kunder</w> <w>,</w> <w>utan</w> <w>också</w> <w> <w>.</w></s> 23 24
Vidare analyser Lemmatisering bestämning av lingvistiska grundelement för löpord Ordklasstaggning bestämning av ordklass för varje token Betydelsebestämning bestämning av betydelse för flertydiga token etc. 25