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

Kursinhalt

Einführung in NLP

Einführung in NLP

1. Grundlagen der Textvorverarbeitung
2. Stemming und Lemmatisierung
3. Grundlegende Textmodelle
4. Wort-Einbettungen

book
Lemmatisierung

Lemmatisierung vs. Stemming

Zuerst definieren wir, was Lemmatisierung ist und wie sie sich vom Stemming unterscheidet.

Im Gegensatz zum Stemming, das grob Wortendungen abschneidet, berücksichtigt die Lemmatisierung den Kontext und wandelt das Wort in seine bedeutungsvolle Basisform um. Zum Beispiel werden 'am', 'are' und 'is' alle in 'be' lemmatisiert. Dieser Ansatz kann die Größe des Vokabulars (die Anzahl der einzigartigen Wörter) in großen Textkorpora erheblich reduzieren und dadurch die Effizienz beim Trainieren von Modellen erhöhen.

Andererseits ist die Lemmatisierung zwar genauer, aber auch rechenintensiver und kann bei großen Datensätzen zeitaufwendig sein. Für noch bessere Genauigkeit wird empfohlen, vor der Lemmatisierung eine morphologische Analyse und Wortartentagging durchzuführen.

Lemmatisierung mit NLTK

Der WordNet-Lemmatizer, bereitgestellt von der NLTK-Bibliothek, nutzt das WordNet-Korpus, um Lemmatisierung durchzuführen.

Wenn Sie den WordNet-Lemmatizer verwenden, sucht er das Zielwort in der WordNet-Datenbank, um das am besten geeignete Lemma (Grundform) des Wortes zu finden.

Wie oben erwähnt, da Wörter in verschiedenen Kontexten unterschiedliche Bedeutungen haben können (z.B. "running" als Verb vs. "running" als Substantiv), kann es erforderlich sein, dass Sie den Wortart (z.B. Verb, Substantiv, Adjektiv) angeben. Dies hilft ihm, das richtige Lemma basierend auf der Rolle des Wortes in einem Satz auszuwählen.

Schauen wir uns nun ein Beispiel an:

12345678910
from nltk.stem import WordNetLemmatizer import nltk # Download the WordNet corpus nltk.download('wordnet') # Initialize the WordNet lemmatizer lemmatizer = WordNetLemmatizer() words = ["running", "bested"] # Lemmatize words lemmatized_words = [lemmatizer.lemmatize(word, 'v') for word in words] # 'v' for verb print("Lemmatized words:", lemmatized_words)
copy

Wie Sie sehen können, ist der Ansatz aus der Perspektive des Codierens ziemlich einfach. Um Wörter jedoch genau über ein gesamtes Korpus zu lemmatisieren, wäre es am besten, zuerst eine Part-of-Speech (POS) Tagging durchzuführen, die wir im folgenden Kapitel behandeln werden.

Aufgabe

Swipe to start coding

Ihre Aufgabe ist es, die Tokens zu lemmatisieren, gegeben den text String. Die Tokenisierung ist bereits angewendet und Stoppwörter sind herausgefiltert.

  1. Importieren Sie den WordNet-Lemmatizer.

  2. Laden Sie das WordNet-Korpus herunter.

  3. Initialisieren Sie den WordNet-Lemmatizer.

  4. Lemmatisieren Sie die Tokens mit List Comprehension.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 3
toggle bottom row

book
Lemmatisierung

Lemmatisierung vs. Stemming

Zuerst definieren wir, was Lemmatisierung ist und wie sie sich vom Stemming unterscheidet.

Im Gegensatz zum Stemming, das grob Wortendungen abschneidet, berücksichtigt die Lemmatisierung den Kontext und wandelt das Wort in seine bedeutungsvolle Basisform um. Zum Beispiel werden 'am', 'are' und 'is' alle in 'be' lemmatisiert. Dieser Ansatz kann die Größe des Vokabulars (die Anzahl der einzigartigen Wörter) in großen Textkorpora erheblich reduzieren und dadurch die Effizienz beim Trainieren von Modellen erhöhen.

Andererseits ist die Lemmatisierung zwar genauer, aber auch rechenintensiver und kann bei großen Datensätzen zeitaufwendig sein. Für noch bessere Genauigkeit wird empfohlen, vor der Lemmatisierung eine morphologische Analyse und Wortartentagging durchzuführen.

Lemmatisierung mit NLTK

Der WordNet-Lemmatizer, bereitgestellt von der NLTK-Bibliothek, nutzt das WordNet-Korpus, um Lemmatisierung durchzuführen.

Wenn Sie den WordNet-Lemmatizer verwenden, sucht er das Zielwort in der WordNet-Datenbank, um das am besten geeignete Lemma (Grundform) des Wortes zu finden.

Wie oben erwähnt, da Wörter in verschiedenen Kontexten unterschiedliche Bedeutungen haben können (z.B. "running" als Verb vs. "running" als Substantiv), kann es erforderlich sein, dass Sie den Wortart (z.B. Verb, Substantiv, Adjektiv) angeben. Dies hilft ihm, das richtige Lemma basierend auf der Rolle des Wortes in einem Satz auszuwählen.

Schauen wir uns nun ein Beispiel an:

12345678910
from nltk.stem import WordNetLemmatizer import nltk # Download the WordNet corpus nltk.download('wordnet') # Initialize the WordNet lemmatizer lemmatizer = WordNetLemmatizer() words = ["running", "bested"] # Lemmatize words lemmatized_words = [lemmatizer.lemmatize(word, 'v') for word in words] # 'v' for verb print("Lemmatized words:", lemmatized_words)
copy

Wie Sie sehen können, ist der Ansatz aus der Perspektive des Codierens ziemlich einfach. Um Wörter jedoch genau über ein gesamtes Korpus zu lemmatisieren, wäre es am besten, zuerst eine Part-of-Speech (POS) Tagging durchzuführen, die wir im folgenden Kapitel behandeln werden.

Aufgabe

Swipe to start coding

Ihre Aufgabe ist es, die Tokens zu lemmatisieren, gegeben den text String. Die Tokenisierung ist bereits angewendet und Stoppwörter sind herausgefiltert.

  1. Importieren Sie den WordNet-Lemmatizer.

  2. Laden Sie das WordNet-Korpus herunter.

  3. Initialisieren Sie den WordNet-Lemmatizer.

  4. Lemmatisieren Sie die Tokens mit List Comprehension.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 3
Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
We're sorry to hear that something went wrong. What happened?
some-alt