Att bygga en korpus Beáta Megyesi Uppsala universitet Institutionen för lingvistik och filologi beata.megyesi@lingfil.uu.se Att bygga en korpus 1(42)
Förra gången Mer om ordfrekvenser, nyckelord, kollokationer och konkordanser Korpusbalans Korpusrepresentativitet Korpusen som standardreferens Att bygga en korpus 2(42)
Ämnen idag Att bygga en korpus Principer för korpusannotering Förbereda texter för annotering Lingvistisk annotering: morfologisk och syntaktisk Att bygga en korpus 3(42)
Att bygga en korpus Om man inte hittar en korpus som passar för den tilltänkta undersökningen, måste man själv bygga en korpus. Hur bygger man en korpus? Hur skulle du gå till väga för att samla material och vilka problem ser du för varje steg? Att bygga en korpus 4(42)
Att bygga din egen korpus A colleague of mine, Matti Rahkonen at the University of Jyväskylä, once claimed that he could subsume his experiences of large-scale corpus work in two words: Never more!... I can wholeheartedly agree with Rahkonens description of the corpus-building process, but I am not quite so dejected. Rather, I could join in an old Louis Prima favourite that has given me consolation and encouragement: Next time... (Källgren, 1996) Att bygga en korpus 5(42)
Att bygga din egen korpus Var klar över och formulera din frågeställning! Bestäm dig för typ av material som du behöver. Kolla ifall någon (del)korpus finns som du kan använda. Om inte, hitta källor där du kan hitta material. Bestäm korpusens storlek. Att bygga en korpus 6(42)
Hur stor korpus? Size is not all-important. (Leech, 1991) En liten korpus räcker kanske för din frågeställning. Det beror på frekvens och fördelning av de lingvistiska särdrag som du är intresserad av. Korpusar för lexikala studier är mycket större eftersom vi är intresserade av frekvenser för ordens distribution medan korpusar för grammatiska studier är mindre. Korpusar som behöver mycket (manuell) validering är ofta små (semantisk, pragmatisk). Den optimala storleken på en korpus styrs av själva frågeställningen och praktiska ting. Att bygga en korpus 7(42)
Att bygga din egen korpus Bestäm korpusens storlek. problem: att hitta tillgänglig data som passar helst data digitalt - ofta den mest begränsade faktorn OCR-scanning: tidskrävande, fel Copyright: svårt att få rättigheter från förlag, tidskrävande, frustrerande och mycket arbete, olika regler i olika länder Att bygga en korpus 8(42)
Att bygga din egen korpus Beakta balans och representativitet balans genom att inkludera många olika sorters data representativitet genom att beakta din frågeställning Dokumentera kriterier för korpusdesignen Gör dokumentationen tillgänglig för korpusanvändare Data: Digitalt att föredra, Internet - viktig källa webbsidor använder normalt Hypertext Mark-up Language (HTML): förvandla webbsidor till textfiler genom att rensa bort HTML-taggarna, eller konvertera HTML-taggar till ett annat format (XML) Att bygga en korpus 9(42)
Urval av korpusdata En korpus är ett stickprov (sample) tagen ur en mycket större population. Ett stickprov är representativt om det vi kan hitta i stickprovet gäller också för hela populationen. Stickprovet behöver återge populationens egenskaper. Textkategorier är samplade proportionellt för att uppnå representativitet och balans. Att bygga en korpus 10(42)
Metoder för korpussampling Bestäm kategorier som ska ingå: böcker, tidningar, tidskrifter... (samplingsram) Bestäm vad som ska ingå i kategorierna (samplingsenhet) Definiera populationen: demografisk fördelning, ålder, kön, samhällsklass, mottagare, genre Att bygga en korpus 11(42)
Samplingsmetoder Obundet slumpmässigt urval (sampling): alla texter väljs slumpmässig. Stratifierad slumpmässig sampling: dela upp texterna i relativt homogena grupper (strata) och sampla varje grupp slumpmässigt. Korpusen storlek: hela texter/hela dokument - användbart för lingvistik men problematiskt p.g.a. upphovsrätt utdrag ur text (början, mitten, eller slutet) Att bygga en korpus 12(42)
Representativitet, balans och sampling En korpus anses vara representativ om det vi kan hitta på basis av korpusen också gäller för den språkvariant som den avses representera. Representativitet uppnås genom balans, d.v.s. täcka många olika frekvent förekommande och viktiga texttyper som samplas proportionellt ur en tänkt population. OBS! Det finns inget objektivt sätt att balansera en korpus eller mäta en korpus representativitet. Kontrollera alltid om korpusen passar för din frågeställning. Att bygga en korpus 13(42)
Att bygga din egen korpus Korpusuppmärkning, Corpus mark-up: kontextuell (genre, källa) och textuell (stycke och mening) information Teckenkodning, Character encoding: viktigt för flerspråkig data med olika skriftsystem - Unicode Korpusannotering, Corpus annotation: ordklasstaggning (PoS tagging), parsning (parsing), semantisk annotering Att bygga en korpus 14(42)
Annotering metadata, extra textuell info (rubrik, kapitel, författare, år) strukturell annotatering (stycke, mening, ord) lingvistisk annotering ordklass (part of speech), morfologi genom part-of-speech tagging lemma syntaktisk analys genom parsning - parsad korpus, trädbank (treebank) semantisk, pragmatisk information länkning på menings- och möjligen på ordnivå (parallella korpusar) Att bygga en korpus 15(42)
Principer för annotering (Leetch 1993) En annoterad korpus ska kunna återställas till sin oannoterade form. Annoteringen ska gå att extrahera från texten för att sparas separat. Annotationsschemat ska vara dokumenterat tillgängligt för slutanvändaren. Det ska klargöras hur och av vem annotationen gjordes. Slutanvändaren ska informeras om att annoteringen inte är God s truth utan endast ett användbart verktyg. Annoteringsscheman ska baseras på accepterade och teori-neutrala principer. Inget annoteringsschema är en standard på förhand. Standarder ska växa fram. Att bygga en korpus 16(42)
Uppmärkning Förberedelse av en rå korpus: samlad och samplad text: digitaliserad eller OCR skannad eller inskriven talat material transkriberad från inspelningar Märk upp korpusen så den innehåller info om själva texten Filnamn är inte tillräcklig eftersom den inkluderar enbart mycket lite extratextuell info (t.ex. texttyp, talare) och ingen textuell info (stycke/meningsgränser, turtagningar) Att bygga en korpus 17(42)
...ett enhetligt format Det enhetliga formatet kan vara ett dokument strukturerat enligt ett uppmärkningsspråk. SGML (standard generalized markup language) HTML (hypertext markup language) XML (extensible markup language) Givet ett uppmärkningsspråk kan man också definiera riktlinjer för hur en viss typ av text skall hanteras i uppmärkningsspråket. Att bygga en korpus 18(42)
Mark-up schemes COCOA (Word COunt and COncordance on Atlas): tidigast en uppsättning attribut och dess värden <N LET TO HUSBAND> N (title) <A BEAMONT ELIZABETH> A (author) <X FEMALE> X (gender) <H HIGH> H (social status) ett litet antal särdrag märks upp (författare, rubriker och datum) Att bygga en korpus 19(42)
XML Ett xml-dokument består av två delar: Header. Här finns all metainformation. Body. Här finns den egentliga textinformationen. Informationen struktureras med taggar i form av vinkelparenteser, t.ex. <p>och </p>. Att bygga en korpus 20(42)
Header (början)... <?xml version= 1.0 encoding= utf-8?> <!DOCTYPE dialoguedoc SYSTEM dialoguemoddoc2.dtd > <?xml-stylesheet type=text/xsl href=dialoguewebrender.xsl?> <dialoguedoc id= 5bSONJA > <dialogueheader> <filename> 5bSONJA </filename> <identifier> SE5 DRAMA </identifier> <title> Sonja </title> <author> Herbert Grevenius </author> <subperiod> Period: 5, 1925-1950 </subperiod> <speechpubdate> Första framförande </speechpubdate> <contemporaneity sourcedate= CONTEMP > Info om källa.</contemporaneity> <texttype typecode=drama > Play Drama </texttype> <periodcategory periodcode=se5 > SE5 </periodcategory> Att bygga en korpus 21(42)
...och resten av headern <textbibliography> <attribution type= AUTHOR > Författarnamn. </attribution> <frontmatter> <performance> <p>information om föreställningen</p> <castlist> <castitem> <role id= 1 >Rollnamn</role> </castitem> </castlist> </performance> <set>information om uppsättningen.</set> </frontmatter> </textbibliography> </dialogueheader> Att bygga en korpus 22(42)
...och resten av filen <dialoguetext> <nonspeech> Scenanvisning </nonspeech> <sp><speaker><font>maj</font></speaker> <dialogue>här är jag!</dialogue></sp> </dialoguetext> </dialoguedoc> Att bygga en korpus 23(42)
...ett enhetligt format Mest inflytelserika uppmärkningsstandarden: TEI: Text Encoding Initiative TEI (text encoding initiative) har detaljerade riktlinjer för hur information av olika slag skall kodas: http://www.tei-c.org.index.html varje text består av 2 delar: head and body (texten själv) Speciella scheman för olika material; prosa, lyrik, dramatik, tal. Att bygga en korpus 24(42)
Headers corpus header info om projektet (project management, assistenter), projektbeskrivning, annotation, tagguppsättning (tagset) med exempel, genre file header file description <filedesc>: fullständig bibliografi för filen encoding description <encodingdesc>: källan som texten kommer ifrån text profile <profiledesc>: språk, deltagare revision history <revisiondesc>: ändringar som har gjorts i filen Att bygga en korpus 25(42)
TEI header example <titlestmt> <title level=a>smygrustning av raketvapen</title> <title level=j>dagens Nyheter</title> <author>mats Lundegard</author> </titlestmt> Att bygga en korpus 26(42)
TEI file example <p> <s id=aa01a-009> <w n=91>hur<ana><ps>ha<b>hur</w> <w n=92>är<ana><ps>vb<m>prs AKT<b>vara</w> <w n=93>det<ana><ps>pn<m>neu SIN DEF SUB/OBJ<b>det</w> <w n=94>då<ana><ps>ab<b>då</w> <w n=95>i<ana><ps>pp<b>i</w> <name type=place> <w n=96>mellanöstern<ana><ps>pm<m>nom<b>mellanöstern</w> </name> <d n=97>?<ana><ps>mad<b>?</d> </s> </p> Att bygga en korpus 27(42)
CES har tagits fram specifikt för att märka upp korpusar förenklad version av TEI; inkluderar en delmängd av TEI-taggar som behövs för korpusuppmärkning mark-up dokumentuppmärkning: beskrivning av bibliografi, encoding strukturell uppmärkning: strukturella enheter av texten (volym, kapitel), stycke, fotnot, rubrik, huvud, tabell, figur strukturer inom ett stycke: meningar, citat, ord, förkortningar, namn, datum, termer Att bygga en korpus 28(42)
Annotationsformat: XCES <s id= s7.29 > <w id= w7.29.1 >Islam</w> <w id= w7.29.2 >är</w> <w id= w7.29.3 >ingen</w> <w id= w7.29.4 >ny</w> <w id= w7.29.5 >företeelse</w> <w id= w7.29.6 >på</w> <w id= w7.29.7 >europeisk</w> <w id= w7.29.8 >mark</w> <w id= w7.29.9 >.</w> </s> Att bygga en korpus 29(42)
Förbereda text för annotering Tokenisering (1) (tokenization) segmentera den löpande texten i token och skilja skiljetecken från orden mellanslag markerar ordgräns, men inte tillräcklig: Boka resan!, sade hon. Betrakta skiljetecken som ordgräns: Boka resan!, sade hon. Att bygga en korpus 30(42)
Tokenisering Skiljetecken förekommer inom ord Exempel: förkortningar (t.ex.), webbadresser (google.com), sifferuttryck: datum (11-10-19, 19/10 2011), tal (25,6, 100 110,10, or 100.110,10 vs. 100,110.10) Clitics med apostrof: we re - we are, book s Flerordsuttryck (White house, New York, etc) - Named Entity Recognition (NER) Att bygga en korpus 31(42)
Meningssegmentering (Sentence/utterance segmentation) segmentera texten i meningar/yttranden på basis av vissa skiljetecken vissa skiljetecken (punkt, frågetecken, utropstecken) markerar ofta meningsgräns men inte alltid problem: Punkt är ambiguös: markerar meningsgräns men också används i förkortningar eller båda: förkortning (Mr.) eller båda (This sentence ends with etc.). hur segmentera t.ex. listor, citat i mening Meningssegmentering och tokenisering hanteras ofta samtidigt. Att bygga en korpus 32(42)
Morfosyntaktiskt annoterade korpora Denna typ av korpora innehåller annotering av ordklass och morfologisk analys för varje ord i materialet. Detta är den allra vanligaste typen av annotering. Annoteringen görs automatiskt med gott resultat (ca 97% korrekt). Språkteknologin har försett oss med goda verktyg att göra detta arbete. För analys av enkla lingvistiska drag (t.ex. undersökning av aktiva/passiva verb) är morfosyntaktisk annotering helt tillräcklig. Att bygga en korpus 33(42)
Ordklasstaggning, Part-of-Speech (PoS) tagging Mål: att annotera orden med dess unika ordklass såg: verb eller substantiv, kontexten styr PoS: substantiv, verb, adjektiv, pronomen, preposition, adverb, konjunktion, particip, artikel Tagguppsättning (Tagset): en tagg representerar ordklassinformation med eller utan morfologiska särdrag 87 taggar i Brown corpus (Francis, 1979) 45 taggar i Penn Treebank (Marcus et al., 1993) Att bygga en korpus 34(42)
Tagguppsättning beror på korpus och språktyp kriterier: morfologiska, syntaktiska och semantiska tagguppsättning för engelska: 50-100 taggar tagguppsättning för svenska: SUC - 167 taggar for språk med komplex morfologi är tagguppsättningen mycket större Att bygga en korpus 35(42)
Tagguppsättning Taggar kan se olika ut olika standarder som används för olika språk t.ex. parole - suc Att bygga en korpus 36(42)
Tagset size Comparisons in the morphologically tagged MULTEXT-East corpora (Hajic, 2000) Language Tagset size English 139 Czech 970 Estonian 476 Hungarian 401 Romanian 486 Slovene 1033 Att bygga en korpus 37(42)
Kom ihåg! Beskriv korpusen/data ordentligt! Basera dina påståenden på data! Undvik orimliga generaliseringar! Att bygga en korpus 38(42)
Muntliga presentationer Presentationen ska vara 10 minuter och ca 5 minuter för frågor och diskussion. Alla i gruppen ska presentera och vara aktiva under seminariet. Dela gärna in presentationen i 2-3 tydliga delar som ni fördelar rättvist er emellan. Öva hemma själv på din del och minst en gång i hela gruppen innan så ni kan ta tiden. Berätta det viktiga, tala tydligt. Plast-OH/1 ppt/1 pdf på pinne. Anpassa vem som talar efter hur ni vill presentera. Att bygga en korpus 39(42)
Grupper Helst inga byten, men om det är nödvändigt måste det göras mellan två bestämda grupper: 10.15-10.30 What can a corpus tell us about creativity: Emelie, Elsie-Marie, Sigrid 10.30-10.45 Using corpora in translation: Jonni, Josefin, Marcos 10.45-11.00 What are parallel and comparable corpora and how can we use them? Elsa och Maria 11.15-11.30 How can corpora be used to explore the language of poetry and drama? Helle, Julia, Matilda 11.30-11.45 How to use corpus linguistics in forensic linguistics: Andreas, Benita, Sandra Att bygga en korpus 40(42)
Mittkursvärdering Endast 4 av 15 som fyllde i! Nöjda med föreläsningarna, enkelt, tydligt och bra med omfattande bilder. Nöjda med labbarna: någon kommenterade på någon otydlig instruktion Boken: alla nöjda Examination: Nöjda och verkar passa de flesta. Många tycker att det är bra med varierande examinationsform. Administration: Nöjda. Att bygga en korpus 41(42)
Nästa gång Trädbanker och parallella korpusar Frågor och/eller chiffer? Att bygga en korpus 42(42)