CLT131: Tekstityökalut 2011, viides luento Tommi A Pirinen tommi.pirinen+clt131@helsinki.fi Helsingin yliopisto Kieliteknologian oppiaine, Nykykielten laitos 30. marraskuuta 2011 tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 1 / 12
Asialista 1 Tehtävät 2 Teoriaa 3 Menetelmät ja työkalut tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 2 / 12
1. trigrammit missä bigrammit (viime luennoilta) saatiin nostamalla toisesta rivistä eteenpäin ensimmäisten vierelle, trigrammit vastaavasti bigrammien vierelle kolmannesta rivistä tietysti tässä on olennaista hallita väliaikaistiedostojen käyttö jos pastelle tarjoaa bigrammeja putkessa pitää sen sisällön paikka merkitä viivalla; viiva on yleensä kaikissa tekstityökaluissa ns. vakiosyötteen eli putkesta tulevan datan merkki tiedostonimenä tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 3 / 12
2. gutenbergin siistintä tapauksittain head ja tail kadottavat ^M-rivinvaihdot, joten dos2unix tai tr -d \r ei ole välttämätön perusratkaisuksi riittää käsin laskea rivimäärät jostain sopivat katkaisurivit voi hakea esim fgrep -n bashissa voi laskea let-komennolla tai $(())-sulkeilla, koska leikattavat rivit ovat esim. yhden tai parin päässä haettavasta lausekkeesta tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 4 / 12
3. lausekkeet tehtävässä pystyy aika paljon valikoimaan mitä hakee, kunhan täsmäsi ainakin kahteen sanaan oikeastaan riippumatta bigrammitokenisoinnista hakulausekkeeksi tuli tyyppiä \<(a b x)\>[[:space:]].*sijapääte, jossa sijapääte oli viime tehtävistä tuttu haku tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 5 / 12
4. trigraafifrekvenssit tr jota muutoin käytettiin saneistamiseen ei ollut hyödyksi tässä tehtävässä yksi vaihtoehto, jota tehtävänannon (hakulauseke)-kohta vihjasi, oli keksiä käyttää grepin -o-valitsinta luovasti (jos myös locale-asetukset olivat kunnossa) toinen mahdollisuus oli googlata tai tietää sed-korvaus jolla voi muuttaa merkit merkin ja välin (tai rivinvaihdon) yhdistelmäksi; sedistä lisää ehkä jo ensi luennoilla kun merkit ovat riveillään on trigraafit sama kuin ykköstehtävän sisältö, vaikka siinä oli erillinen saneistuskin trigraafit saattoivat myös hajoilla jos yriti testata gutenberg-aineistolla, jossa huonoja rivinvaihtoja tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 6 / 12
5. moduulit module unload omorfi/20110901 module load omorfi/20101026 (ehkä vaatii hfst/3.3.2 tai hfst/3.0.2 tai... ) pitänee suorittaa joka kerta jos/kun hipun module-järjestelmä ei toimi omorfi-analyse.sh swedish-analyze.sh (ei vielä taas toimi) muita kieliä varten lienee helpointa jos minä asennan kotihakemistoon uusia skriptejä pyynnöstä tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 7 / 12
Asialista 1 Tehtävät 2 Teoriaa 3 Menetelmät ja työkalut tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 8 / 12
Morfologinen analyysi sanojen muoto-opillista jäsentämistä esim. hakumuotoon ja morfologisten osasten tunnistamista: taloilleko = talo 1 N PL ADE KO eli talo-sanan monikon adessiivin kysymysliitepartikkelillinen muoto kevyempää morfologista analyysia, jota harrastetaan usein esim. englannin kanssa kutsutaan myös POS-täggäykseksi (part-of-speech tagging), tässä usein haetaan vain sanaluokkia perusanalyysityökalut, joita tällä kertaa lähinnä käsitellään, tuottavat kaikki mahdolliset tavat tulkita sanaa, siis sanamuodolle alusta on ainakin 7 vaihtoehtoista tulkintaa laitoksen sivuilla on hitaita verkkodemoja: http://www.ling. helsinki.fi/cgi-bin/omor/omordemo.bash tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 9 / 12
Asialista 1 Tehtävät 2 Teoriaa 3 Menetelmät ja työkalut tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 10 / 12
Modulet kuntoon kaikille on yleensä osoittautunut kurssin hankalimmaksi asiaksi... Lähdetään siitä että saadaan jotkin toimivat asetukset kaikille hipulla: module unload omorfi/20110901 module load omorfi/20101026 jollei vielä toimi niin module load hfst/3.3.2 (tai 3.0.2 tai... ) omorfi-analyse.sh omorfi-analyse.sh on lähinnä kokonaisten tekstien prosessointiin; jos sitä käyttää komentoriviltä niin joskus pitää esim. painaa enteriä kahdesti saadakseen palautetta omorfi-interactive.sh olisi komentoriviä varten, mutta ehkä se ei vastaavasti toimiva nyt hipulla... viimeisenä vaihtoehtona vanha kunnon fintwol esim. toimii vielä hipulla (ei kuitenkaan uusilla UTF-8-ääkkösillä jne.) tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 11 / 12
Testataan toimivia analyysejä omorfi-analyse.sh < rautatie.txt näyttää ehkä värikkäältä mutta hankala greppailla omorfi-analyse.sh omor < rautatie.txt on minusta greppailukelpoisempi versio omorfi-analyse.sh omor < rautatie.txt fgrep CASE=ILL haetaan mahdolliset illatiivit tommi.pirinen+clt131@helsinki.fi (HY) CLT131: 5. luento 30. marraskuuta 2011 12 / 12