NLTK märgistus: sõnade ja lausete märgistus koos näitega

Mis on tokeniseerimine?

Tokeniseerimine on protsess, mille käigus jagatakse suur hulk teksti väiksemateks osadeks, mida nimetatakse märgideks. Need märgid on mustrite leidmiseks väga kasulikud ja neid peetakse tüvest ja lemmatiseerimiseks aluseks. Tokeniseerimine aitab ka tundlikke andmeelemente asendada mittetundlike andmeelementidega.

Loomuliku keele töötlemist kasutatakse selliste rakenduste ehitamiseks nagu teksti klassifikatsioon, intelligentne vestlusbot, sentimentaalne analüüs, keele tõlge jne. Ülalnimetatud eesmärgi saavutamiseks muutub ülioluliseks teksti mustri mõistmine.

Esialgu ärge muretsege tüvede ja lemmatiseerimise pärast, vaid käsitlege neid tekstiliste andmete puhastamise etappidena, kasutades NLP-d (loomuliku keele töötlemine). Tüvest ja lemmatiseerimist käsitleme hiljem õpetuses. Ülesanded nagu Teksti klassifikatsioon või rämpsposti filtreerimine kasutab NLP-d koos süvaõppe raamatukogudega, nagu Keras ja Tensorivoog.

Loomuliku keele tööriistakomplektil on väga oluline moodul NLTK märkima laused, mis koosnevad lisaks alammoodulitest

  1. sõna märgistamiseks
  2. lause märgistamiseks

Sõnade märgistamine

Me kasutame meetodit word_tokenize() lause sõnadeks jaotamiseks. Sõna tokeniseerimise väljundi saab masinõpperakendustes teksti paremaks mõistmiseks teisendada andmeraamiks. Seda saab kasutada ka sisendina edasisteks tekstipuhastustoiminguteks, nagu kirjavahemärkide eemaldamine, numbrimärkide eemaldamine või tüve moodustamine. Masinõppemudelid vajavad koolitamiseks ja ennustuste tegemiseks arvandmeid. Sõna tokeniseerimine muutub teksti (stringi) numbrilisteks andmeteks teisendamiseks oluliseks osaks. Palun lugege Sõnade kott või CountVectorizer. Teooria paremaks mõistmiseks vaadake allolevat sõna tokenize NLTK näidet.

from nltk.tokenize import word_tokenize
text = "God is Great! I won a lottery."
print(word_tokenize(text))

Output: ['God', 'is', 'Great', '!', 'I', 'won', 'a', 'lottery', '.']

Sõnade märgistamine

Koodi selgitus

  1. Word_tokenize moodul imporditakse NLTK teegist.
  2. Muutuja "tekst" initsialiseeritakse kahe lausega.
  3. Tekstimuutuja edastatakse moodulis word_tokenize ja tulemus trükitakse. See moodul katkestab iga sõna kirjavahemärkidega, mida näete väljundis.

Lausete märgistamine

Ülaltoodud alammoodul on send_tokenize. Ilmselge küsimus teie peas oleks miks on vaja lause märgistamist, kui meil on sõna märgistamise võimalus. Kujutage ette, et peate arvestama keskmised sõnad lause kohta, kuidas arvutate? Sellise ülesande täitmiseks vajate suhte arvutamiseks nii NLTK lausemärki kui ka NLTK sõnamärki. Selline väljund on masinatreeningu oluliseks tunnuseks, kuna vastus oleks numbriline.

Vaadake allolevat NLTK märgiseanduri näidet, et saada teada, kuidas lause märgistamine erineb sõnade tokeniseerimisest.

from nltk.tokenize import sent_tokenize
text = "God is Great! I won a lottery."
print(sent_tokenize(text))

Output: ['God is Great!', 'I won a lottery ']

Meil on 12 sõnad ja kaks lauset sama sisendi jaoks.

Lausete märgistamine

Programmi selgitus

  1. Sarnaselt eelmisele programmile imporditi moodul send_tokenize.
  2. Oleme võtnud sama lause. Täiendav NLTK mooduli lause tokenisaator sõelus need laused ja näitab väljundit. On selge, et see funktsioon katkestab iga lause.

Sõna tokeniseerija kohal Python näited on head seadistuskivid, et mõista sõna ja lause märgistamise mehaanikat.

kokkuvõte

  • Tokeniseerimine sisse NLP on protsess, mille käigus jagatakse suur hulk teksti väiksemateks osadeks, mida nimetatakse märgideks.
  • Loomuliku keele töötlemist kasutatakse selliste rakenduste loomiseks nagu teksti klassifikatsioon, intelligentne vestlusbot, sentimentaalne analüüs, keele tõlkimine jne.
  • Loomuliku keele tööriistakomplektil on väga oluline moodul NLTK tokenize lause, mis koosneb lisaks alammoodulitest
  • Lause sõnadeks jagamiseks kasutame meetodit word_tokenize(). Sõnamärgise väljundi NLTK-s saab masinõpperakendustes teksti paremaks mõistmiseks teisendada andmeraamiks.
  • Ülaltoodud alammoodul on send_tokenize. Lausemärk sisse Python NLTK on masinatreeningu oluline funktsioon.