NLTK Tokenize: Ord og setninger Tokenizer med eksempel

Hva er tokenisering?

tokenization er prosessen der en stor mengde tekst deles inn i mindre deler kalt tokens. Disse tokenene er svært nyttige for å finne mønstre og betraktes som et basistrinn for stemming og lemmatisering. Tokenisering bidrar også til å erstatte sensitive dataelementer med ikke-sensitive dataelementer.

Naturlig språkbehandling brukes til å bygge applikasjoner som tekstklassifisering, intelligent chatbot, sentimental analyse, språkoversettelse, etc. Det blir viktig å forstå mønsteret i teksten for å oppnå det ovennevnte formålet.

Foreløpig ikke bekymre deg for stemming og lemmatisering, men behandle dem som trinn for rensing av tekstdata ved hjelp av NLP (Natural Language Processing). Vi vil diskutere stemming og lemmatisering senere i opplæringen. Oppgaver som f.eks Tekstklassifisering eller spamfiltrering bruker NLP sammen med dyplæringsbiblioteker som Keras og tensorflow.

Natural Language Toolkit har en svært viktig modul NLTK symbolisere setninger som videre består av undermoduler

  1. ord tokenize
  2. setning tokenize

Tokenisering av ord

Vi bruker metoden word_tokenize() å dele en setning i ord. Utdataene fra ordtokenisering kan konverteres til Data Frame for bedre tekstforståelse i maskinlæringsapplikasjoner. Den kan også gis som input for ytterligere tekstrensetrinn, for eksempel fjerning av tegnsetting, fjerning av numeriske tegn eller stemming. Maskinlæringsmodeller trenger numeriske data for å trenes opp og gi en prediksjon. Ordtokenisering blir en avgjørende del av teksten (strengen) til konvertering av numeriske data. Vennligst les om Bag of Words eller CountVectorizer. Vennligst referer til ordet tokenize NLTK-eksemplet nedenfor for å forstå teorien bedre.

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', '.']

Tokenisering av ord

Kode Forklaring

  1. word_tokenize-modulen er importert fra NLTK-biblioteket.
  2. En variabel "tekst" initialiseres med to setninger.
  3. Tekstvariabel sendes i word_tokenize-modulen og skrives ut resultatet. Denne modulen bryter hvert ord med tegnsetting som du kan se i utdataene.

Tokenisering av setninger

Undermodulen tilgjengelig for ovennevnte er sent_tokenize. Et åpenbart spørsmål i tankene dine ville være hvorfor setningstokenisering er nødvendig når vi har muligheten til ordtokenisering. Tenk deg at du trenger å telle gjennomsnittlige ord per setning, hvordan vil du beregne det? For å utføre en slik oppgave trenger du både NLTK setningstokenizer så vel som NLTK ordtokenizer for å beregne forholdet. Slik utgang fungerer som en viktig funksjon for maskinopplæring, da svaret ville være numerisk.

Sjekk eksemplet under NLTK-tokenizer for å lære hvordan setningstokenisering er forskjellig fra ordtokenisering.

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 ']

Vi har 12 ord og to setninger for samme inngang.

Tokenisering av setninger

Forklaring av programmet

  1. I en linje som det forrige programmet, importerte modulen sent_tokenize.
  2. Vi har tatt samme setning. Ytterligere setningstokenizer i NLTK-modulen analyserte setningene og viser utdata. Det er tydelig at denne funksjonen bryter hver setning.

Overordet tokenizer Python eksempler er gode settingsteiner for å forstå mekanikken i ordet og setningstokenisering.

Sammendrag

  • Tokenisering inn NLP er prosessen der en stor mengde tekst deles inn i mindre deler kalt tokens.
  • Naturlig språkbehandling brukes til å bygge applikasjoner som tekstklassifisering, intelligent chatbot, sentimental analyse, språkoversettelse, etc.
  • Natural Language Toolkit har en svært viktig modul NLTK tokenize setning som videre består av undermoduler
  • Vi bruker metoden word_tokenize() for å dele en setning i ord. Utdataene fra ordtokenizer i NLTK kan konverteres til Data Frame for bedre tekstforståelse i maskinlæringsapplikasjoner.
  • Undermodulen tilgjengelig for ovennevnte er sent_tokenize. Setningstokenizer inn Python NLTK er en viktig funksjon for maskintrening.