Python’s NLTK library features a robust sentence tokenizer and POS tagger. Python verfügt über einen nativen Tokenizer, die Funktion .split(), der ein Trennzeichen übergeben kann und die Zeichenkette, mit der die Funktion aufgerufen wird, an diesem Trennzeichen zerlegt. Der NLTK-Tokenisierer ist robuster. Er zerlegt einen Satz in Wörter und Interpunktion. Bei folgendem Code:

Es wird den Satz Can you please buy me an Arizona Ice Tea? It's .99." wie folgt tokenisieren:

Beachten Sie, dass der Tokenizer 's , '$' , 0.99 und . als separate Token behandelt. Dies ist wichtig, da Kontraktionen ihre eigene semantische Bedeutung haben und auch ihre eigene Wortart haben, was uns zum nächsten Teil der NLTK-Bibliothek bringt, dem POS-Tagger. Der POS-Tagger in der NLTK-Bibliothek gibt spezifische Tags für bestimmte Wörter aus. Die Liste der POS-Tags sieht wie folgt aus, mit Beispielen dafür, wofür jedes POS steht.

  • CC koordinierende Konjunktion
  • CD kardinale Ziffer
  • DT Determinator
  • EX existentielles da (wie: „there is“ … wie „es gibt“)
  • FW Fremdwort
  • IN Präposition/unterordnende Konjunktion
  • JJ Adjektiv ‚groß‘
  • JJR Adjektiv, Komparativ ‚größer‘
  • JJS Adjektiv, Superlativ ‚größter‘
  • LS Listenmarker 1)
  • MD Modal könnte, wird
  • NN Substantiv, Singular ‚Schreibtisch‘
  • NNS Substantiv Plural ‚Schreibtische‘
  • NNNP Eigenname, Singular ‚Harrison‘
  • NNPS Eigenname, Plural ‚Amerikaner‘
  • PDT Prädeterminator ‚all die Kinder‘
  • POS Possessivendung Eltern
  • PRP Personalpronomen ich, er, sie
  • PRP$ Possessivpronomen mein, sein, ihr
  • RB Adverb sehr, leise,
  • RBR Adverb, Komparativ besser
  • RBS Adverb, Superlativ am besten
  • RP Partikel aufgeben
  • TO, ‚zum‘ Laden gehen.
  • UH Interjektion, errrrrrrrm
  • VB Verb, Grundform nehmen
  • VBD Verb, Vergangenheitsform nehmen
  • VBG Verb, Gerundium/Präsens Partizip nehmen
  • VBN Verb, Partizip Perfekt nehmen
  • VBP Verb, Sing. Präsens, nicht-3d nehmen
  • VBZ Verb, 3. Person Sing. present take
  • WDT wh-determiner which
  • WP wh-pronoun who, what
  • WP$ possessive wh-pronoun whose
  • WRB wh-abverb where, when

Wie Sie in Zeile 5 des obigen Codes sehen können, muss die .pos_tag() ein tokenisierter Satz zur Markierung übergeben werden. Das Tagging erfolgt mit Hilfe eines trainierten Modells in der NLTK-Bibliothek. Der enthaltene POS-Tagger ist nicht perfekt, liefert aber recht genaue Ergebnisse. Bei Verwendung desselben Satzes wie oben lautet die Ausgabe:

Das Taggen von Wortarten kann für die syntaktische und semantische Analyse wichtig sein. So hat das Wort can in einem Satz wie dem obigen mehrere semantische Bedeutungen. Eine davon ist ein Modal für die Bildung von Fragen, eine andere ein Behälter zur Aufnahme von Lebensmitteln oder Flüssigkeiten und eine weitere ein Verb, das die Fähigkeit bezeichnet, etwas zu tun. Wenn man einem Wort wie diesem eine bestimmte Bedeutung gibt, kann das Programm es sowohl in der semantischen als auch in der syntaktischen Analyse richtig behandeln.

Articles

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.