2009-11-25 3 views
10

Wie kann ich NLTK anweisen, den Text in einer bestimmten Sprache zu behandeln?kann NLTK/pyNLTK "per Sprache" arbeiten (d. H. Nicht englisch), und wie?

Hin und wieder schreibe ich eine spezialisierte NLP-Routine, um POS-Tagging, Tokenizing usw. in einer nicht-englischen (aber immer noch hindo-europäischen) Textdomäne zu machen.

Diese Frage scheint nur verschiedene Korpora, nicht die Änderung der Code/Einstellungen zur Adresse: POS tagging in German

Alternativ gibt es irgendwelche speziellen Hebrew/Spanisch/Polnisch NLP-Module für Python?

Antwort

8

Ich bin mir nicht sicher, was Sie als die Änderungen in Code/Einstellungen bezeichnen. NLTK stützt sich hauptsächlich auf maschinelles Lernen und die "Einstellungen" werden normalerweise aus den Trainingsdaten extrahiert.

Wenn es zum POS-Tagging kommt, sind die Ergebnisse und das Tagging abhängig vom verwendeten Tagger. Wenn du deine eigenen trainierst, brauchst du natürlich einige Spanisch/Polnisch Trainingsdaten. Der Grund, warum diese schwer zu finden sind, ist der Mangel an öffentlich verfügbarem Goldstandardmaterial. Es gibt Tools, die das tun, aber dieses ist nicht für Python (http://www.ims.uni-stuttgart.de/projekte/corplex/TreeTagger/).

Der Tokenizer nltk.tokenize.punkt.PunktSententocenizer tokentisiert Sätze nach mehrsprachigen Satzgrenzen, deren Details in diesem Dokument (http://www.mitpressjournals.org/doi/abs/10.1162/coli.2006.32.4.485) zu finden sind.

+0

danke. Der Punkt-Satz-Tokenizer scheint die richtige Richtung zu sein. –

+0

Wie funktioniert Treetagger? http://stackoverflow.com/questions/15503388/treetagger-installation-successful-but-cannot-open-par-file – alvas

Verwandte Themen