Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Wortartenerkennung | Stemming und Lemmatisierung
Einführung in NLP

bookWortartenerkennung

Verständnis der POS-Tagging

Es wurde erwähnt, dass das Part-of-Speech-Tagging vorteilhaft für die Lemmatisierung ist, was seine Hauptfunktion in der Textvorverarbeitung darstellt. Daher wird dieser Prozess nun ausführlicher erläutert.

Note
Definition

Part-of-Speech (POS) Tagging bezeichnet den Prozess, ein Wort in einem Text (Korpus) als eine bestimmte Wortart (z. B. Substantiv oder Verb) zu kennzeichnen, basierend sowohl auf seiner Definition als auch auf seinem Kontext – also seiner Beziehung zu benachbarten und verwandten Wörtern in einem Satz, einer Phrase oder einem Absatz.

Die Verwendung vollständiger Wortartnamen (z. B. "Verb" oder "Substantiv") kann insbesondere bei großen Korpora recht umständlich werden. Daher werden stattdessen Kurzformen, sogenannte Tags, verwendet. Zum Beispiel "VB" anstelle von Verb. In der Praxis nutzen jedoch verschiedene POS-Tagger teilweise unterschiedliche Tags und detailliertere Tags wie "VBD" für Verben im Präteritum.

POS-Tagging mit NLTK

Um eine Part-of-Speech-Tagging mit NLTK durchzuführen, sollte die Funktion pos_tag() direkt aus nltk importiert und auf die Liste von Strings (Tokens) angewendet werden, indem diese als Argument übergeben wird.

123456789101112
from nltk.tokenize import word_tokenize from nltk import pos_tag import nltk nltk.download('punkt_tab') # Download the model needed for NLTK's POS tagging nltk.download('averaged_perceptron_tagger_eng') text = "One of the key NLP tasks is part of speech tagging" text = text.lower() tokens = word_tokenize(text) # Perform POS tagging tagged_tokens = pos_tag(tokens) print(tagged_tokens)
copy

Diese Funktion gibt eine Liste von Tupeln zurück, die jeweils ein Token und dessen Tag enthalten. Die Zeile nltk.download('averaged_perceptron_tagger_eng') startet den Download des Datensatzes und der Modelle, die für den PerceptronTagger benötigt werden, welcher der Standard-POS-Tagger in NLTK ist.

Note
Mehr erfahren

Dieser Tagger basiert auf dem Averaged Perceptron Model, einem überwachten Lernalgorithmus, der sich für die Verarbeitung großer Textmengen, einschließlich POS-Tagging, als effektiv erwiesen hat. Der PerceptronTagger wird aufgrund seines ausgewogenen Verhältnisses von Geschwindigkeit und Genauigkeit ausgewählt und eignet sich daher für eine Vielzahl von NLP-Aufgaben, die POS-Tagging erfordern. Er lernt Gewichtungen für Merkmale basierend auf den Trainingsdaten und verwendet diese Gewichtungen, um die POS-Tags in unbekannten Texten vorherzusagen.

Für eine bessere visuelle Darstellung können wir das Ergebnis in ein pandas-DataFrame umwandeln:

1234567891011121314
from nltk.tokenize import word_tokenize from nltk import pos_tag import nltk import pandas as pd nltk.download('punkt_tab') # Download the model needed for NLTK's POS tagging nltk.download('averaged_perceptron_tagger_eng') text = "One of the key NLP tasks is part of speech tagging" text = text.lower() tokens = word_tokenize(text) # Perform POS tagging tagged_tokens = pos_tag(tokens) # Convert to DataFrame print(pd.DataFrame(tagged_tokens, columns=['Token', 'POS tag']).T)
copy

Alternativ könnten wir pd.DataFrame(tagged_tokens, columns=['Token', 'POS tag']) ohne Transponieren des DataFrames verwenden, sodass jede Zeile ein Token-Tag-Paar darstellt.

question mark

Was ist das Ziel des Part-of-Speech (POS) Taggings im NLP?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 5

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Awesome!

Completion rate improved to 3.45

bookWortartenerkennung

Swipe um das Menü anzuzeigen

Verständnis der POS-Tagging

Es wurde erwähnt, dass das Part-of-Speech-Tagging vorteilhaft für die Lemmatisierung ist, was seine Hauptfunktion in der Textvorverarbeitung darstellt. Daher wird dieser Prozess nun ausführlicher erläutert.

Note
Definition

Part-of-Speech (POS) Tagging bezeichnet den Prozess, ein Wort in einem Text (Korpus) als eine bestimmte Wortart (z. B. Substantiv oder Verb) zu kennzeichnen, basierend sowohl auf seiner Definition als auch auf seinem Kontext – also seiner Beziehung zu benachbarten und verwandten Wörtern in einem Satz, einer Phrase oder einem Absatz.

Die Verwendung vollständiger Wortartnamen (z. B. "Verb" oder "Substantiv") kann insbesondere bei großen Korpora recht umständlich werden. Daher werden stattdessen Kurzformen, sogenannte Tags, verwendet. Zum Beispiel "VB" anstelle von Verb. In der Praxis nutzen jedoch verschiedene POS-Tagger teilweise unterschiedliche Tags und detailliertere Tags wie "VBD" für Verben im Präteritum.

POS-Tagging mit NLTK

Um eine Part-of-Speech-Tagging mit NLTK durchzuführen, sollte die Funktion pos_tag() direkt aus nltk importiert und auf die Liste von Strings (Tokens) angewendet werden, indem diese als Argument übergeben wird.

123456789101112
from nltk.tokenize import word_tokenize from nltk import pos_tag import nltk nltk.download('punkt_tab') # Download the model needed for NLTK's POS tagging nltk.download('averaged_perceptron_tagger_eng') text = "One of the key NLP tasks is part of speech tagging" text = text.lower() tokens = word_tokenize(text) # Perform POS tagging tagged_tokens = pos_tag(tokens) print(tagged_tokens)
copy

Diese Funktion gibt eine Liste von Tupeln zurück, die jeweils ein Token und dessen Tag enthalten. Die Zeile nltk.download('averaged_perceptron_tagger_eng') startet den Download des Datensatzes und der Modelle, die für den PerceptronTagger benötigt werden, welcher der Standard-POS-Tagger in NLTK ist.

Note
Mehr erfahren

Dieser Tagger basiert auf dem Averaged Perceptron Model, einem überwachten Lernalgorithmus, der sich für die Verarbeitung großer Textmengen, einschließlich POS-Tagging, als effektiv erwiesen hat. Der PerceptronTagger wird aufgrund seines ausgewogenen Verhältnisses von Geschwindigkeit und Genauigkeit ausgewählt und eignet sich daher für eine Vielzahl von NLP-Aufgaben, die POS-Tagging erfordern. Er lernt Gewichtungen für Merkmale basierend auf den Trainingsdaten und verwendet diese Gewichtungen, um die POS-Tags in unbekannten Texten vorherzusagen.

Für eine bessere visuelle Darstellung können wir das Ergebnis in ein pandas-DataFrame umwandeln:

1234567891011121314
from nltk.tokenize import word_tokenize from nltk import pos_tag import nltk import pandas as pd nltk.download('punkt_tab') # Download the model needed for NLTK's POS tagging nltk.download('averaged_perceptron_tagger_eng') text = "One of the key NLP tasks is part of speech tagging" text = text.lower() tokens = word_tokenize(text) # Perform POS tagging tagged_tokens = pos_tag(tokens) # Convert to DataFrame print(pd.DataFrame(tagged_tokens, columns=['Token', 'POS tag']).T)
copy

Alternativ könnten wir pd.DataFrame(tagged_tokens, columns=['Token', 'POS tag']) ohne Transponieren des DataFrames verwenden, sodass jede Zeile ein Token-Tag-Paar darstellt.

question mark

Was ist das Ziel des Part-of-Speech (POS) Taggings im NLP?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 5
some-alt