Vad är Tokenization?
Tokenisering är den process genom vilken en stor mängd text delas in i mindre delar som kallas tokens. Dessa tokens är mycket användbara för att hitta mönster och betraktas som ett grundsteg för stemming och lemmatisering. Tokenization hjälper också till att ersätta känsliga dataelement med icke-känsliga dataelement.
Naturlig språkbehandling används för att bygga applikationer som textklassificering, intelligent chatbot, sentimental analys, språköversättning etc. Det blir viktigt att förstå mönstret i texten för att uppnå det ovan angivna syftet.
För tillfället, oroa dig inte för stemming och lemmatisering utan behandla dem som steg för rengöring av textdata med hjälp av NLP (Natural language processing). Vi kommer att diskutera stemming och lemmatisering senare i handledningen. Uppgifter som textklassificering eller skräppostfiltrering använder NLP tillsammans med djupinlärningsbibliotek som Keras och Tensorflow.
Natural Language verktygslåda har mycket viktig modul NLTK tokenize meningar som vidare består av undermoduler
- ordet tokenize
- mening tokenize
Tokenisering av ord
Vi använder metoden word_tokenize () för att dela en mening i ord. Utdata från word tokenization kan konverteras till Data Frame för bättre textförståelse i maskininlärningsapplikationer. Den kan också tillhandahållas som inmatning för ytterligare textrengöringssteg, såsom avlägsnande av skiljetecken, borttagning av numeriska tecken eller stemming. Maskininlärningsmodeller behöver numeriska data för att utbildas och förutsäga. Word tokenization blir en viktig del av texten (sträng) till numerisk datakonvertering. Läs om Bag of Words eller CountVectorizer. Se nedan ordet tokenize NLTK exempel för att förstå teorin bättre.
from nltk.tokenize import word_tokenizetext = "God is Great! I won a lottery."print(word_tokenize(text))Output: ['God', 'is', 'Great', '!', 'I', 'won', 'a', 'lottery', '.']
Kodförklaring
- word_tokenize-modulen importeras från NLTK-biblioteket.
- En variabel "text" initialiseras med två meningar.
- Textvariabeln skickas i word_tokenize-modulen och skrivs ut resultatet. Denna modul bryter varje ord med skiljetecken som du kan se i utdata.
Tokenization of Sentences
Undermodulen tillgänglig för ovanstående är sent_tokenize. En uppenbar fråga i ditt sinne skulle vara varför meningstokenisering behövs när vi har möjlighet till ordtokenisering . Tänk dig att du måste räkna genomsnittliga ord per mening, hur ska du räkna ut? För att utföra en sådan uppgift behöver du både NLTK-meningstoken och NLTK-ordstoken för att beräkna förhållandet. Sådan produktion fungerar som en viktig funktion för maskinutbildning eftersom svaret skulle vara numeriskt.
Kontrollera nedanstående NLTK tokenizer-exempel för att lära dig hur meningstokenisering skiljer sig från ordtokenisering.
from nltk.tokenize import sent_tokenizetext = "God is Great! I won a lottery."print(sent_tokenize(text))Output: ['God is Great!', 'I won a lottery ']
Vi har 12 ord och två meningar för samma inmatning.
Förklaring av programmet:
- I en rad som det föregående programmet importerade sent_tokenize-modulen.
- Vi har tagit samma mening. Ytterligare meningstoken i NLTK-modulen analyserade de meningarna och visar utdata. Det är uppenbart att denna funktion bryter varje mening.
Ovan för word tokenizer Python-exempel är bra inställningsstenar för att förstå ordets mekanik och meningstokenisering.
Sammanfattning
- Tokenization i NLP är den process genom vilken en stor mängd text delas in i mindre delar som kallas tokens.
- Naturlig språkbehandling används för att bygga applikationer som textklassificering, intelligent chatbot, sentimental analys, språköversättning etc.
- Natural Language toolkit har en mycket viktig modul NLTK tokenize-mening som vidare består av delmoduler
- Vi använder metoden word_tokenize () för att dela en mening i ord. Utdata från word tokenizer i NLTK kan konverteras till Data Frame för bättre textförståelse i maskininlärningsapplikationer.
- Undermodulen tillgänglig för ovanstående är sent_tokenize. Sentence tokenizer i Python NLTK är en viktig funktion för maskinutbildning.