2017-12-01 14 views
2

나는 NLTK 래퍼를 사용하여 StanfordNERTagger을 테스트하고이 경고가 나타나 경고 :"StanfordTokenizer 버전 3.2.5에서 더 이상 사용되지 않습니다"

DeprecationWarning: The StanfordTokenizer will be deprecated in version 
3.2.5. Please use nltk.tag.corenlp.CoreNLPPOSTagger or 
nltk.tag.corenlp.CoreNLPNERTagger instead. 
super(StanfordNERTagger, self).__init__(*args, **kwargs) 

내 코드는 다음과 같습니다

from nltk import word_tokenize, pos_tag, ne_chunk 
from nltk.tag import StanfordNERTagger 

sentence = "Today George went to school and met his friend Peter." 

# stanford's NER tagger 3 entity classification 
st = StanfordNERTagger('/home/hercules/Desktop/PhD/Tools/stanford-ner- 
    2017-06-09/classifiers/english.all.3class.distsim.crf.ser.gz', 
    '/home/hercules/Desktop/PhD/Tools/stanford-ner-2017-06-09/stanford- 
    ner.jar', 
    encoding='utf-8') 

tokenized_text = word_tokenize(sentence) 
classified_text = st.tag(tokenized_text) 

print("Stanford NER tagger:") 
print(classified_text) 

CoreNLPNERTagger를 사용하려고했지만 예제 나 문서를 찾을 수 없습니다. 내가에만 발견이 link:

내가 더 사용과 그 예를 따르도록 시도 클래스 CoreNLPNERTagger의 의견 (CoreNLPTagger) (I 키워드 "CoreNLPNERTagger"를 검색하여 그것을 발견)의 예처럼 뭔가를 제공 . 제가 coreNLP 서버를 먼저 시작해야한다고 생각합니다. (올바른 용어 인 경우) 어떻게해야할지 모르겠다.

아무도 아이디어 나 조언이 있다면 감사 할 것입니다.

답변

0

글쎄 나는 최근 스탠포드 POS 태거와 함께 일하는 것을 발견했다. (비슷한 경고를 받았다.) 그래도 여전히 태거가 작동 중이다.
이것은 StanfordNERTagger 클래스를 변경/제거한다는 경고입니다 (warning에 대한 추가 정보).
당신이해야 할 일은 코드를 venv으로 유지하거나 nltk 모듈을 원래대로 유지하는 것입니다. (예를 들어, 내가 한 일) 모듈을 그대로 복사하여 (따라서이 클래스를 고수하는 것을 피하십시오).
희망이 도움이됩니다.