A Python NLTK könyvtár egy robusztus mondat tokenizáló és POS címkéző funkcióval rendelkezik. A Python rendelkezik egy natív tokenizálóval, a .split() függvénnyel, amelynek átadhatunk egy elválasztójelet, és a függvény ezen az elválasztójelen fogja felosztani a sztringet, amelyre a függvényt hívjuk. Az NLTK tokenizálója robusztusabb. Egy mondatot szavakra és írásjelekre tokenizál. Adott a következő kód:

Az Can you please buy me an Arizona Ice Tea? It's .99." mondatot a következőképpen tokenizálja:

Megjegyezzük, hogy a tokenizáló a 's , '$' , 0.99 és . értékeket külön tokenként kezeli. Ez azért fontos, mert a kontraktusoknak saját szemantikai jelentésük van, valamint saját beszédrészük is, ami átvezet minket az NLTK könyvtár következő részéhez, a POS-taggerhez. Az NLTK könyvtár POS taggerje bizonyos szavakhoz specifikus címkéket ad ki. A POS-címkék listája a következő, példákkal alátámasztva, hogy az egyes POS-ok mit jelentenek.

  • CC koordináló kötőszó
  • CD kardinális számjegy
  • DT determináns
  • EX egzisztenciális ott (mint: “van” … gondolj úgy rá, mint “létezik”)
  • FW idegen szó
  • IN előtag/alárendelő kötőszó
  • JJ melléknév ‘nagy’
  • JJR melléknév, összehasonlító ‘nagyobb’
  • JJS melléknév, szuperlatívusz ‘legnagyobb’
  • LS listajelző 1)
  • MD modális lehet, lesz
  • NN főnév, egyes szám ‘desk’
  • NNS főnév többes szám ‘desks’
  • NNP tulajdonnév, egyes szám ‘Harrison’
  • NNPS tulajdonnév, többes szám ‘Americans’
  • PDT előtag ‘all the kids’
  • POS birtokos végződés parent’s
  • PRP személyes névmás I, he, she
  • PRP$ birtokos névmás my, his, hers
  • RB határozószó very, silently,
  • RBR határozószó, comparative better
  • RBS határozószó, superlative best
  • RP partikula give up
  • TO, to go ‘to’ the store.
  • UH közbevetés, errrrrrrrrrm
  • VB ige, alapigei forma take
  • VBD ige, múlt idejű take
  • VBG ige, gerundium/jelen idejű take
  • VBN ige, múlt idejű take
  • VBP ige, egyes szám első személyű, nem 3d take
  • VBZ ige, 3. személyű sing. jelen idejű vesz
  • WDT wh-meghatározó, amely
  • WP wh-pronoun who, what
  • WP$ birtokos wh-pronoun whose
  • WRB wh-abverb where, when

Amint a fenti kód 5. sorában látható, a .pos_tag() függvénynek át kell adni egy tokenizált mondatot a címkézéshez. A címkézés az NLTK könyvtárban található betanított modell segítségével történik. A mellékelt POS-tagger nem tökéletes, de elég pontos eredményeket ad. A fenti mondat felhasználásával a kimenet a következő:

A beszédrészek címkézése fontos lehet a szintaktikai és szemantikai elemzés szempontjából. Tehát a fenti mondathoz hasonló esetben a can szónak több szemantikai jelentése is van. Az egyik egy kérdésképzésre szolgáló modális, egy másik egy étel vagy folyadék tárolására szolgáló edény, egy harmadik pedig egy ige, amely a valamire való képességet jelöli. Ha egy ilyen szónak konkrét jelentést adunk, az lehetővé teszi, hogy a program mind a szemantikai, mind a szintaktikai elemzések során a megfelelő módon kezelje azt.

Articles

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.