2012-12-30 6 views
8

Staram się używać mowy tagowanie w NLTK i używali tego polecenia:NLTK Wykorzystanie pos_tag

>>> text = nltk.word_tokenize("And now for something completely different") 

>>> nltk.pos_tag(text) 

Traceback (most recent call last): 
File "<pyshell#4>", line 1, in <module> 
nltk.pos_tag(text) 
File "C:\Python27\lib\site-packages\nltk\tag\__init__.py", line 99, in pos_tag 
tagger = load(_POS_TAGGER) 
File "C:\Python27\lib\site-packages\nltk\data.py", line 605, in load 
resource_val = pickle.load(_open(resource_url)) 
File "C:\Python27\lib\site-packages\nltk\data.py", line 686, in _open 
return find(path).open() 
File "C:\Python27\lib\site-packages\nltk\data.py", line 467, in find 
raise LookupError(resource_not_found) 
LookupError: 
********************************************************************** 
Resource 'taggers/maxent_treebank_pos_tagger/english.pickle' not 
found. Please use the NLTK Downloader to obtain the resource: 

Jednak pojawia się komunikat o błędzie, który pokazuje:

engish.pickle not found. 

mam pobrać całość corpora i plik english.pickle znajduje się w maxtent_treebank_pos_tagger

Co mogę zrobić, aby to działało?

+0

Witamy w SO. Staraj się być jak najbardziej opisowy w swoich pytaniach, aby uzyskać najlepsze odpowiedzi. – simonmorley

Odpowiedz

6

Twoja instalacja w Pythonie nie może osiągnąć wartości maksymalnej ani treemap. Najpierw sprawdź czy tagger rzeczywiście istnieje:

>>> import nltk

Następnie można sprawdzić za pomocą

>>> dir (nltk)

przejrzeć listę, aby sprawdzić, czy są tam zarówno maxent i treebank.

Łatwiejsze byłoby wpisać

>>> "maxent" in dir(nltk) 
>>> True 
>>> "Treebank in dir(nltk) 
>>> True 

Używaj nltk.download() -> zakładka modeli i sprawdzić, czy tagger TreeMap pokazuje jak zainstalować. Powinieneś również spróbować ponownie pobrać tagger.

NLTK Downloader, Models Tab

nadzieję, że pomoże.

+0

thnks @ram mam rozwiązanie mojego problemu. Stworzyłem taggers folderu i skopiowałem maxtent_treebank_pos w to i to w końcu działa .. :) –

2

Jeśli nie chcesz korzystać z GUI downloader, można po prostu użyć następujących poleceń w pytona lub ipython powłoki:

import nltk 
nltk.download('punkt') 
nltk.download('maxent_treebank_pos_tagger')