Heim >Backend-Entwicklung >Python-Tutorial >[Python NLTK] Part-of-Speech-Tagging, einfache Identifizierung des Part-of-Speech von Wörtern
Part-of-Speech-Tagging bezieht sich auf die Identifizierung der Wortart jedes Wortes in einem Satz, z. B. Substantive, Verben, Adjektive, Adverbien usw. Das Markieren von Wortarten ist für viele Aufgaben der Verarbeitung natürlicher Sprache sehr wichtig, beispielsweise für die syntaktische Analyse, die semantische Analyse und die maschinelle Übersetzung. NLTK bietet eine Vielzahl von Wortart-Taggern, die uns dabei helfen können, die Wortart von Wörtern in Sätzen einfach zu kennzeichnen. Diese Wortart-Tagger werden anhand statistischer Modelle trainiert, was bedeutet, dass sie lernen können, wie man die Wortart von Wörtern anhand von Daten aus großen Korpora identifiziert. Verwenden Sie den NLTK POS-Tagger
Wir können die -Funktion von NLTK verwenden, um die Wortart für die Wörter im Satz zu markieren. Diese Funktion akzeptiert eine Liste von Sätzen als Eingabe und gibt eine Liste von Wort- und Wortartpaaren als Ausgabe zurück. Beispielsweise können wir den folgenden Code verwenden, um die Wörter im Satz „Der schnelle Braunfuchs springt über den faulen Hund“ als Teil der Sprache zu kennzeichnen:
>>> import nltk >>> nltk.download("punkt") >>> nltk.download("averaged_perceptron_tagger") >>> sentence = "The quick brown fox jumps over the lazy dog" >>> Words = nltk.word_ tokenize(sentence) >>> tagged_words = nltk.pos_tag(words) >>> print(tagged_words) [("The", "DT"), ("quick", "JJ"), ("brown", "JJ"), ("fox", "NN"), ("jumps", "VBZ"), ("over", "IN"), ("the", "DT"), ("lazy", "JJ"), ("dog", "NN")]In den Ausgabeergebnissen folgt auf jedes Wort eine Wortartabkürzung. Beispielsweise steht „DT“ für einen Determinator, „JJ“ für ein Adjektiv, „NN“ für ein Substantiv, „VBZ“ für ein Verb und so weiter.
pos_tag()
Die Genauigkeit des NLTK POS-Taggers hängt vom verwendeten Korpus und Trainingsmodell ab. Im Allgemeinen gilt: Je größer der Korpus, desto besser ist das Modell trainiert und desto höher ist die Genauigkeit des Wortart-Taggers.
Wir können die
-Funktion von NLTK verwenden, um die Genauigkeit des Wortart-Taggers zu bewerten. Diese Funktion akzeptiert eine Liste von Wort- und Wortartpaaren als Eingabe und gibt einen Gleitkommawert zurück, der die Genauigkeit darstellt. Beispielsweise können wir den folgenden Code verwenden, um die Genauigkeit des POS-Taggers im obigen Beispiel zu bewerten:>>> from nltk.metrics import accuracy >>> Gold_standard = [("The", "DT"), ("quick", "JJ"), ("brown", "JJ"), ("fox", "NN"), ("jumps", "VBZ"), ("over", "IN"), ("the", "DT"), ("lazy", "JJ"), ("dog", "NN")] >>> accuracy(gold_standard, tagged_words) 0.9
Fazit
accuracy()
NLTK POS Tagger ist ein sehr leistungsfähiges
, mit dem wir den POS von Wörtern in Sätzen einfach markieren können. Diese Wortart-Tagger sind wichtig für viele Aufgaben der Verarbeitung natürlicher Sprache, wie etwa syntaktische Analyse, semantische Analyse und maschinelle Übersetzung.
Das obige ist der detaillierte Inhalt von[Python NLTK] Part-of-Speech-Tagging, einfache Identifizierung des Part-of-Speech von Wörtern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!