Pythonin NLTK-kirjastossa on vankka lauseiden tokenisointi ja POS-tunnisteiden merkitseminen. Pythonissa on natiivi tokenizer, .split()-funktio, jolle voi antaa erottimen ja se jakaa merkkijonon, johon funktiota kutsutaan, kyseisellä erottimella. NLTK:n tokenizer on vankempi. Se tokenisoi lauseen sanoiksi ja välimerkeiksi. Annetaan seuraava koodi:

Se tokenisoi lauseen Can you please buy me an Arizona Ice Tea? It's .99." seuraavasti:

Huomaa, että tokenisaattori käsittelee 's , '$' , 0.99 ja . erillisinä merkkeinä. Tämä on tärkeää, koska supistumilla on oma semanttinen merkityksensä sekä oma puhekielensä, mikä tuo meidät NLTK-kirjaston seuraavaan osaan POS-taggeriin. NLTK-kirjaston POS-tunnisteiden antaja tuottaa tiettyjä tunnisteita tietyille sanoille. Seuraavassa on luettelo POS-tunnisteista ja esimerkkejä siitä, mitä kukin POS tarkoittaa.

  • CC koordinoiva konjunktio
  • CD kardinaaliluku
  • DT määre
  • EX eksistentiaalinen siellä (esim: ”siellä on” … ajattele kuten ”on olemassa”)
  • FW vierasperäinen sana
  • IN prepositio/subordinaatiokonjunktio
  • JJ adjektiivi ’iso’
  • JJR adjektiivi, komparatiivi ’isompi’
  • JJS adjektiivi, superlatiivi ’suurin’
  • LS luettelomerkintä 1)
  • MD modaalinen voisi, tahtoo
  • NN substantiivi, yksikössä ’desk’
  • NNS substantiivi monikossa ’desks’
  • NNP varsinainen substantiivi, yksikkö ’Harrison’
  • NNPS proper noun, monikko ’amerikkalaiset’
  • PDT predeterminus ’kaikki lapset’
  • POS possessiivipäätteinen pääte parent’s
  • PRP persoonapronomini I, he, she
  • PRP$ possessiivipronomini my, his, hers
  • RB adverb very, silently,
  • RBR adverb, comparative better
  • RBS adverb, superlatiivi best
  • RP partikkeli give up
  • TO, mennä ’kauppaan’.
  • UH yhdyssana, errrrrrrrm
  • VB-verbi, perusmuoto ottaa
  • VBD-verbi, mennyt aikamuoto otti
  • VBG-verbi, gerundi/preesenssin partisiippi ottaa
  • VBN-verbi, menneen aikamuodon partisiippi ottaa
  • VBP-verbi, sing. preesens, ei-3d ottaa
  • VBZ-verbi, 3. persoona, laul. preesens ottaa
  • WDT wh-määrite mikä
  • WP wh-pronomini kuka, mikä
  • WP$ possessiivinen wh-pronomini jonka
  • WRB wh-verbin missä, when

Kuten yllä olevan koodin rivillä 5 näkyy, .pos_tag()-funktiolle on välitettävä tokenisoitu lause merkitsemistä varten. Merkitseminen tapahtuu NLTK-kirjaston koulutetun mallin avulla. Mukana oleva POS-tagger ei ole täydellinen, mutta se tuottaa melko tarkkoja tuloksia. Käyttämällä samaa lausetta kuin edellä tulos on:

Puheenosien merkitseminen voi olla tärkeää syntaktisen ja semanttisen analyysin kannalta. Niinpä jossakin yllä olevan lauseen kaltaisessa tapauksessa sanalla can on useita semanttisia merkityksiä. Yksi on modaali kysymyksenmuodostusta varten, toinen on astia, jossa säilytetään ruokaa tai nestettä, ja kolmas on verbi, joka ilmaisee kykyä tehdä jotakin. Kun tällaiselle sanalle annetaan tietty merkitys, ohjelma voi käsitellä sitä oikealla tavalla sekä semanttisessa että syntaktisessa analyysissä.

Articles

Vastaa

Sähköpostiosoitettasi ei julkaista.