Was ist Tokenisierung?
Tokenisierung ist der Prozess, bei dem eine große Textmenge in kleinere Teile unterteilt wird, die als Token bezeichnet werden. Diese Token sind sehr nützlich, um Muster zu finden, und werden als Basisschritt für das Stemming und die Lemmatisierung angesehen. Die Tokenisierung hilft auch dabei, sensible Datenelemente durch nicht sensible Datenelemente zu ersetzen.
Die Verarbeitung natürlicher Sprache wird zum Erstellen von Anwendungen wie Textklassifizierung, intelligentem Chatbot, Sentimentalanalyse, Sprachübersetzung usw. verwendet. Es ist wichtig, das Muster im Text zu verstehen, um den oben genannten Zweck zu erreichen.
Machen Sie sich vorerst keine Gedanken über Stemming und Lemmatisierung, sondern behandeln Sie sie als Schritte zur Bereinigung von Textdaten mit NLP (Natural Language Processing). Wir werden später im Tutorial über Stemming und Lemmatisierung sprechen. Aufgaben wie Textklassifizierung oder Spamfilterung verwenden NLP zusammen mit Deep-Learning-Bibliotheken wie Keras und Tensorflow.
Das Natural Language Toolkit verfügt über ein sehr wichtiges Modul NLTK- Tokenisierungssätze , das ferner aus Untermodulen besteht
- Wort tokenize
- Satz tokenize
Tokenisierung von Wörtern
Wir verwenden die Methode word_tokenize () , um einen Satz in Wörter aufzuteilen. Die Ausgabe der Wort-Tokenisierung kann zum besseren Verständnis des Textes in Anwendungen für maschinelles Lernen in einen Datenrahmen konvertiert werden. Es kann auch als Eingabe für weitere Textbereinigungsschritte wie das Entfernen von Satzzeichen, das Entfernen numerischer Zeichen oder das Stemming bereitgestellt werden. Modelle für maschinelles Lernen benötigen numerische Daten, um trainiert zu werden und eine Vorhersage zu treffen. Die Wort-Tokenisierung wird zu einem entscheidenden Bestandteil der Konvertierung von Text (Zeichenfolge) in numerische Daten. Bitte lesen Sie über Bag of Words oder CountVectorizer. Bitte beziehen Sie sich auf das unten stehende NLTK-Beispiel, um die Theorie besser zu verstehen.
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', '.']
Code Erklärung
- Das Modul word_tokenize wird aus der NLTK-Bibliothek importiert.
- Eine Variable "Text" wird mit zwei Sätzen initialisiert.
- Die Textvariable wird im Modul word_tokenize übergeben und das Ergebnis gedruckt. Dieses Modul unterbricht jedes Wort mit Interpunktion, die Sie in der Ausgabe sehen können.
Tokenisierung von Sätzen
Das oben genannte Untermodul ist sent_tokenize. Eine offensichtliche Frage in Ihrem Kopf wäre, warum Satz-Tokenisierung erforderlich ist, wenn wir die Option der Wort-Tokenisierung haben . Stellen Sie sich vor, Sie müssen durchschnittliche Wörter pro Satz zählen, wie werden Sie berechnen? Um eine solche Aufgabe zu erfüllen, benötigen Sie sowohl den NLTK-Satz-Tokenizer als auch den NLTK-Wort-Tokenizer, um das Verhältnis zu berechnen. Eine solche Ausgabe dient als wichtiges Merkmal für das Maschinentraining, da die Antwort numerisch wäre.
Überprüfen Sie das folgende NLTK-Tokenizer-Beispiel, um zu erfahren, wie sich die Satz-Tokenisierung von der Wort-Tokenisierung unterscheidet.
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 ']
Wir haben 12 Wörter und zwei Sätze für die gleiche Eingabe.
Erklärung des Programms:
- Importieren Sie in einer Zeile wie im vorherigen Programm das Modul sent_tokenize.
- Wir haben den gleichen Satz genommen. Ein weiterer Satz-Tokenizer im NLTK-Modul hat diese Sätze analysiert und die Ausgabe angezeigt. Es ist klar, dass diese Funktion jeden Satz bricht.
Über dem Wort-Tokenizer Python-Beispiele sind gute Einstellungssteine, um die Mechanik der Wort- und Satz-Tokenisierung zu verstehen.
Zusammenfassung
- Die Tokenisierung in NLP ist der Prozess, bei dem eine große Textmenge in kleinere Teile unterteilt wird, die als Token bezeichnet werden.
- Die Verarbeitung natürlicher Sprache wird zum Erstellen von Anwendungen wie Textklassifizierung, intelligenter Chatbot, Sentimentalanalyse, Sprachübersetzung usw. verwendet.
- Das Natural Language Toolkit verfügt über ein sehr wichtiges Modul NLTK-Tokenisierungssatz, das ferner aus Untermodulen besteht
- Wir verwenden die Methode word_tokenize (), um einen Satz in Wörter aufzuteilen. Die Ausgabe von Word Tokenizer in NLTK kann zum besseren Verständnis von Text in Anwendungen für maschinelles Lernen in Data Frame konvertiert werden.
- Das oben genannte Untermodul ist sent_tokenize. Der Satz-Tokenizer in Python NLTK ist eine wichtige Funktion für das Maschinentraining.