Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Stoppwörter | Abschnitt
Practice
Projects
Quizzes & Challenges
Quizze
Challenges
/
Verarbeitung natürlicher Sprache

bookStoppwörter

Swipe um das Menü anzuzeigen

Note
Definition

Stoppwörter sind gebräuchliche Wörter, die in der Regel keinen Beitrag zur Bedeutung eines Satzes leisten, zumindest im Kontext der meisten Analysen und Algorithmen. Dazu gehören Wörter wie "the", "is", "in" und "on".

Stoppwörter werden typischerweise nach der Tokenisierung für NLP-Aufgaben wie Sentiment-Analyse, Themenmodellierung oder Schlüsselwort-Extraktion herausgefiltert. Der Grund für das Entfernen von Stoppwörtern ist die Verringerung der Datensatzgröße, wodurch die Recheneffizienz verbessert wird, sowie die Erhöhung der Relevanz der Analyse durch die Konzentration auf bedeutungstragende Wörter.

Entfernen von Stoppwörtern mit NLTK

Um den Prozess zu vereinfachen, stellt nltk eine umfassende Liste von Stoppwörtern in mehreren Sprachen bereit, die einfach abgerufen und zum Filtern von Stoppwörtern aus Textdaten verwendet werden kann.

So erhält man die Liste der englischen Stoppwörter in NLTK und wandelt sie in ein Set um:

1234567
import nltk from nltk.corpus import stopwords # Download the stop words list nltk.download('stopwords') # Load English stop words stop_words = set(stopwords.words('english')) print(stop_words)
copy
Note
Hinweis

Die Umwandlung dieser Liste in eine Menge verbessert die Effizienz von Suchvorgängen, da die Überprüfung der Mitgliedschaft in einer Menge schneller ist als in einer Liste.

Vor diesem Hintergrund folgt ein vollständiges Beispiel, wie Stoppwörter aus einem gegebenen Text herausgefiltert werden:

1234567891011121314
import nltk from nltk.tokenize import word_tokenize from nltk.corpus import stopwords nltk.download('punkt_tab') nltk.download('stopwords') stop_words = set(stopwords.words('english')) text = "This is an example sentence demonstrating the removal of stop words." text = text.lower() # Tokenize the text tokens = word_tokenize(text) # Remove stop words filtered_tokens = [word for word in tokens if word not in stop_words] print("Original Tokens:", tokens) print("Filtered Tokens:", filtered_tokens)
copy

Wie ersichtlich, sollten zunächst die Stoppwörter heruntergeladen und die Tokenisierung durchgeführt werden. Im nächsten Schritt wird eine List Comprehension verwendet, um eine Liste zu erstellen, die nur Tokens enthält, die keine Stoppwörter sind. Das word.lower() in der if-Klausel ist entscheidend, um jedes Wort (Token) in Kleinbuchstaben umzuwandeln, da nltk Stoppwörter ausschließlich in Kleinbuchstaben enthält.

Note
Hinweis

Alternativ könnte eine herkömmliche for-Schleife anstelle einer List Comprehension verwendet werden, jedoch ist die List Comprehension in diesem Fall effizienter und prägnanter.

question mark

Welche der folgenden Aussagen beschreibt am besten, was Stoppwörter sind und warum sie häufig entfernt werden?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 7

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

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

Abschnitt 1. Kapitel 7
some-alt