Asialista. hippu ja.bashrc. Asialista. Tutkimusongelma: tekstin morfologisen jäsennyksen selvittely

Samankaltaiset tiedostot
CLT131: Tekstityökalut 2010, toinen luento

CLT131: Tekstityökalut 2011, toinen luento

CLT131: Tekstityökalut 2011, viides luento

CLT131: Tekstityökalut 2010, ensimmäinen luento

Asialista. CLT131: Tekstityökalut 2010, kolmas luento. Laskuharjoitusaikataulut. Harjoituksissa havaitut virheet. Käytännön asiat/kertaus

CLT131: Tekstityökalut 2010, kolmas luento

CLT131: Tekstityökalut 2011, kahdeksas luento

CLT131: Tekstityökalut 2010, kuudes luento

Asialista. CLT131: Tekstityökalut 2011, kahdeksas luento. Merkistöistä ja kalvostoista. Asialista. Tommi A Pirinen

Asialista. CLT131: Tekstityökalut 2010, kuudes luento. Tuleva ohjelma. Kurssipalaute. Käytännön asiat Tuleva ohjelma Havaitut virheet ja korjaukset

Asialista. CLT131: Tekstityökalut 2012, kymmenes luento. 2. frekvenssien muunnos todennäköisyyksiksi. 1. taulukkohaut

CLT131: Tekstityökalut 2012, kymmenes luento

CLT131: Tekstityökalut 2011, seitsemäs luento

CLT131: Tekstityökalut 2011, kuudes luento

CLT131: Tekstityökalut 2010, neljäs luento

Asialista. CLT131: Tekstityökalut 2010, neljäs luento. Lähiaikataulu. Asialista. Käytännön asiat

Korpusten käsittely clt131, P Luento 1

CLT131 Korpusten käsittely

Kieliteknologian ATK-ympäristö Viides luento

CLT131 Korpusten käsittely (3op)

Kieliteknologian ATK-ympäristö Viides luento

Kieliteknologian ATK-ympäristö Toinen luento

Kieliteknologian ATK-ympäristö Kolmas luento

Kieliteknologian ATK-ympäristö Neljäs luento

Korpusten käsittely clt131, P Luento 5

Ctl160 Tekstikorpusten tietojenkäsittely p.1/24

Kieliteknologian ATK-ympäristö Kuudes luento

Ctl160 Tekstikorpusten tietojenkäsittely

Toinen harjoitustyö. ASCII-grafiikkaa

Johdatus Ohjelmointiin

Toinen harjoitustyö. ASCII-grafiikkaa 2017

Sisältö. 3 Yleistä 4 Toimittajaportaalin edut 5-10 Rekisteröinti Laskun teko 23 Lasku JIP. 29/05/2015 Anna-Stina Lindblad

YHTEYDEN OTTAMINEN CSC:N KONEELLE HIPPU

Ohjelmoinnin perusteet Y Python

5. HelloWorld-ohjelma 5.1

Korpusten käsittely clt131, P Luento 3

1.1 Tekstinprosessointiohjelmien yleinen toimintatapa (1)

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.

DOORSin Spreadsheet export/import

Mylly: Uusi tapa ka sitella teksti- ja puheaineistoa helposti ja tehokkaasti. Mietta Lennes ja Jussi Piitulainen FIN-CLARIN, Helsingin yliopisto

Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö

Ohjelma on tarkoitettu pankkiyhteysohjelmalla vastaanotettujen Finvoiceverkkolaskujen

SUOMEN PANKKIYHDISTYS

Ohjelmoinnin perusteet Y Python

WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY

FrontPage Näkymät

4. Lausekielinen ohjelmointi 4.1

CLT131 Korpusten käsittely Viides luento

Googlen pilvipalvelut tutuksi / Google Drive

Subversion-ohje. Linux Traffic Control-käyttöliittymä Ryhmä paketti2

Luento 5. Timo Savola. 28. huhtikuuta 2006

Googlen pilvipalvelut tutuksi / Google Drive

C-ohjelmoinnin peruskurssi. Pasi Sarolahti

AVOIMEN YLIOPISTON MOODLE-OPAS OPISKELIJALLE

Päivityspalvelu. Tietuekuvaus. Tietuekuvaus 1 (5) Päivityspalvelu. Julkinen - Public

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b

Sangen lyhyt L A T E X-johdatus

HTML perusteita (ei julkiseen jakeluun)

4. Lausekielinen ohjelmointi 4.1

AVOIMEN YLIOPISTON MOODLE-OPAS OPISKELIJALLE SISÄLLYS

Korpusten käsittely clt131, P Luento 6

1. ASIAKKAAN OHJEET Varauksen tekeminen Käyttäjätunnuksen luominen Varauksen peruminen... 4

MITÄ JAVASCRIPT ON?...3

Vesa Ollikainen, päivitys Juha Haataja

5. HelloWorld-ohjelma 5.1

Basware toimittajaportaali

Elisa Puheratkaisu Vakio Pääkäyttäjän ohjeet

Tietojen haku tuotannonohjausjärjestelmästä ja lähettäminen Minun Maatilani -ohjelmistolle MMAmmuLinkillä

Hannu Valtanen Oy. Linux vi-editori

Tämän ohjeen avulla pääset alkuun Elisa Toimisto 365 palvelun käyttöönotossa. Lisää ohjeita käyttöösi saat:

Ohje. Vastaanottajatietojen tuonti Työasema Prinetistä Posti SmartShipiin Julkinen - Public

Korpusten käsittely clt131, P Luento 4

Datatähti 2019 alku. task type time limit memory limit. A Kolikot standard 1.00 s 512 MB. B Leimasin standard 1.00 s 512 MB

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta.

Tarjouspalvelu.fi. Käyttöohjeet. Osallistu tarjouskilpailuihin tehokkaasti ja turvallisesti. Tarjouspalvelu.fi -toimittajaportaali

PAROC CALCULUS LASKENTAOHJELMA TIETOKONEELLE ASENNETTAVA VERSIO. Latausohjeet Asennusohjeet

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012

Code Camp for Girls. Sanna Nygård. Lokakuussa

Valitse aineisto otsikoineen maalaamalla se hiirella ja kopioimalla (Esim. ctrl-c). Vaihtoehtoisesti, Lataa CSV-tiedosto

Opintokohteiden muokkaus

NÄIN KÄYTÄT SIGNWIKIÄ

Päivitysohje Opus Dental

Kurssien lukulistojen ylläpito Nellissä ja siirto Moodleen

OptimePortal ja OptimeEvent versioiden yhteenveto joulukuu

Harjoitustyö 3: Verkkosivujen toiminnallisuus (JavaScript)

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 26. tammikuuta 2012

Sangen lyhyt L A T E X-johdatus

2 Konekieli, aliohjelmat, keskeytykset

Febdok 6.0 paikallisversion asennus OHJEISTUS

Tiedostojen palauttaminen tehtävien palautuskansioihin Office 365 tilin yhdistäminen iperho verkko-oppimisympäristöön

ASIO-OHJE HENKILÖSTÖLLE.

Ohjelmoinnin perusteet Y Python

Kotisivuohjeet. Eteläpohjalaiset Kylät ry. Sivupohjien rakenne

OPTIMAN KÄYTTÖOHJE NÄYTTÖTUTKINTOJEN JÄRJESTÄJILLE

MOODLE-OHJE: Liitetiedoston lisääminen ja päivittäminen

Ohjelmoinnin perusteet Y Python

Transkriptio:

Asialista CLT131: Tekstityökalut 2010, toinen luento Tommi A Pirinen tommi.pirinen@helsinki.fi Helsingin yliopisto Kieliteknologian oppiaine, Nykykielten laitos 2010-11-12 päivitetty: 2010-11-14 Laskuharjoitukset: ke 12 13 / 13 14 Tammikuun ohjelma valitaan parempi aika huutoäänestyksellä laskareissa käydään siis läpi palautettuja ratkaisuja: korjataan toistuvia virheitä kerrotaan lisätietoja / vastauksia joita kukaan ei ole vastannut selvitetään taustoja ym. lisätietoja käytännön ongelmia ympäristöissä, komennoissa jne. tarpeen mukaan, saa ehdottaa muutakin Aloitetaan tammikuu viikolta 4: kurssin kalenteri on http://www.ling.helsinki.fi/kit/2010s/ clt131/kalenteri.shtml tarkemmin alku tulee tietoon lähempänä, mutta todennäköisesti perjantain luennoilla aloitetaan

hippu ja.bashrc Asialista Hipulle luotavassa tiedostossa.bashrc oli viime kalvoissa viivaparista tullut ajatusviiva, verkkosivuilla copypastettava versio oli kuitenkin oikea. Lisäksi module load riviin pitänee lisätä tätä luentoa varten jo: export GREP_OPTIONS=- -colour=auto module load gcc/4.4.4 openfst/1.2 libtool hfst/2.4.1 hfst/3 python/3.1.1-gcc omorfi Lisäksi joillakuilla on hipulla käytössä csh eikä bash, joten ohje ei toimi suoraan. Komennolla chsh voi vaihtaa bashiin, jos tämä ei toimi tai haluaa käyttää csh:ta tms., csh-ohjeita voi kysellä sähköpostitse Tutkimusongelma: tekstin morfologisen jäsennyksen selvittely Tehtäväkuvaus: halutaan selvittää erään tekstin morfologinen jäsennys tulevaa tutkimusta varten Lähtökohdat: morfologinen analysaattori, joka osaa analysoida saneita yksi kerrallaan gutenbergistä napattu raakateksti, joka pitää analysoida Ongelma: miten jakaa teksti analysaattorin haluamiksi saneiksi (ns. tokenisointi-ongelma) miten tallentaa saneet sellaiseen muotoon, jota analysaattori ymmärtää Asialista

Perinteisen tyhmän morfologisen analysaattorin rakenteesta Esimerkki: omorfi-interactive.sh hipulla syötteenä valmiita leksikaalisia yksikköjä tai tokeneja: saneita välimerkkejä koodeja ym. ilmauksia idiomeja ym. moniosaisia yksiköitä syötteen pitää olla yksi em. yksikkö per rivi moniselitteisistä saneista tulee monta tulkintaa kirjaudu hippu.csc.fi käynnistä omorfi-interactive.sh jollei toimi: module load omorfi ja module load hfst/2.4.1 syötä suomenkielisiä sanoja (esimerkiksi): omorfi-interactive.sh kissa kissa kissansgnom koiralle koiralle koiransgall Gutenberg-aineistot Gutenbergistä: Juhani Aho Rautatie http://www.gutenberg.org/ tekstitiedostoja vanhoista, tekijänoikeudettomista kaunokirjallisuusteoksista sisältävät mm. lisenssitekstejä, joista pitää päästä eroon ennen analysointia... ja lisenssitekstit eivät ole vakiomuotoisia saati mittaisia välimerkit saattavat olla poikkeuksellisiakin, esim. vanhan ortografian mukaisia (toki sisältökin usein) merkistöt ja merkkaus pitää valita oikein (nykyään raakateksti ja UTF-8 Plain Text UTF-8 löytyvät suoraan sivustolta) Suora linkki: http://www.gutenberg.org/ebooks/10481

Asialista Työsuunnitelma 1. haetaan kirja gutenbergistä hipulle ( wget) 2. jos gutenberg olisi vielä vanhan malliin koodattu, tässä muunettaisiin koodaus, nyt tarvitsee lähinnä korjata rivinvaihdot, jos sitäkään ( recode, dos2unix) 3. hankiudutaan eroon englanninkielisistä osioista ( head-tail riittää aluksi) 4. tehdään tekstistä saneita (ja välimerkkejä, ym. otuksia) ( tr) 5. analysoidaan lopputulos ( omorfi-interactive.sh) 6. käytetään analyysi hyödyksi ( fgrep) Verkkosivun haku etäpäätteelle selaimella paikalliselle koneella haku ja siirto (scp:llä tms.) on aina mahdollista eri järjestelmien välillä siirtely voi kuitenkin aiheuttaa vaikeuksia myös etäpäätteillä voi joskus käyttää (graafisiakin) selaimia (lynx, firefox) näiden automatisointi on kuitenkin hankalaa wget on tehokkaimpia verkkohakimia unixeille: wget http://www.gutenberg.org/cache/ epub/10481/pg10481.txt Koodausasiat koodauksella tässä tarkoitetaan miten kirjaimet esitetään tietokoneen muistissa: eritoten ääkköset ym. ei alkuperäiseen US-ASCII-aakkostoon sisältyvät merkit, ja rivinvaihdot lähes kaikissa nykysovelluksissa merkistökoodaus on UTF-8, myös gutenbergissä recode ja iconv muuntavat koodauksia (jos esim. vanhat gutenbergit ovat ns. latin1:tä): iconv -f latin1 -t utf8 < vanha > konvertoitu recode l1..u8 vanha gutenbergissä on vielä joitain enimmäkseen harmittomia rivinvaihtoja (jotka näkyvät vimissä ikävästiˆm:inä) fromdos tai dos2unix muuntavat rivinvaihdot: dos2unix rautatie.txt fromdos rautatie.txt

Vakiomuotoisten tekstiosioiden poisto Tekstin saneistus Lisenssiä Ahon Rautatiessä ovat ensimmäiset 27 ja viimeiset 396 riviä head näyttää ensimmäiset n riviä ja tail viimeiset m riviä tiedostosta haluamme tiedoston keskeltä osan joka sisältää viimeiset tiedoston koko x miinus 27 riviä ja tästä ensimmäiset jäljellejäävistä paitsi 396 riviä: tail -n +28 rautatie.txt head -n 4314...mutta 4314 on tässä laskettu käsin ks. myös tämän vuoden CLT130 johdatus atk-järjestelmiin haluttiin jokainen sane omalle rivilleen ja välimerkit omilleen, tai pois tr on yleistyökalu yksinkertaisiin merkkimuunnoksiin: tr -s \n muuntaa välilyönnit rivivaihdoiksi (ts. sijoittaa välilyöntien erottamat saneet omille riveilleen) tr -d.,?!:;- poistaa välimerkit Lopulta: analysointi Asialista saneiden analysointiinhan käytettiin omorfi-interactive.sh:ta putkituksen avulla voimme koostaa kaikesta tästäkin vain yhden toiminnon (seuraava kohta on yksi komento ilman rivinvaihtoja): tail -n +28 rautatie.txt head -n 4314 tr -s \n tr -d.,;!?- omorfi-interactive.sh tiedämme jo, miten haetaan tarkkoja merkkijonoja fgrepillä, katsotaan siis esimerkiksi tekstin mahdollisia abessiiveja lisäämällä vielä yksi putki:... fgrep Abe

Linkit omorfista lisää ks. http://home.gna.org/omorfi/ tai suomeksi vanhahko graduni http: //www.helsinki.fi/%7etapirine/gradu/ http://nlp.stanford.edu/ir-book/html/ htmledition/tokenization-1.html merkistöasioista http://www.unicode.org sisältää mm. Unicode-kirjan verkkoversion suomen kieliopista mm. http://kaino.kotus.fi/visk Ison suomen kieliopin verkkoversio morfologinen analyysi käydään tarkemmin kurssilla clt260