如何安装和调用Stanford NERTagger?

Han*_*ans 6 python nlp nltk stanford-nlp

我想在python环境中使用NLTK接口来获取Stanford NER , nltk.tag.stanford.NERTagger.

from nltk.tag.stanford import NERTagger
st = NERTagger('/usr/share/stanford-ner/classifiers/all.3class.distsim.crf.ser.gz',
               '/usr/share/stanford-ner/stanford-ner.jar') 
st.tag('Rami Eid is studying at Stony Brook University in NY'.split()) 
Run Code Online (Sandbox Code Playgroud)

我应该得到输出:

[('Rami', 'PERSON'), ('Eid', 'PERSON'), ('is', 'O'), ('studying', 'O'),
('at', 'O'), ('Stony', 'ORGANIZATION'), ('Brook', 'ORGANIZATION'),
('University', 'ORGANIZATION'), ('in', 'O'), ('NY', 'LOCATION')]
Run Code Online (Sandbox Code Playgroud)

我已根据NLTK网站中描述的程序安装了NLTK.但是,我根本找不到/ usr/share/stanford-ner.我在哪里以及如何找到整个包并将其安装在我的目录中.

Mat*_*ost 19

刚认为值得一提的是现在的进口线:

from nltk.tag.stanford import StanfordNERTagger
Run Code Online (Sandbox Code Playgroud)


Dan*_*iel 4

查看斯坦福 CoreNLP for python 的最新接口可能会更容易,可以在此处找到: http: //nlp.stanford.edu/software/corenlp.shtml

  • 我找到了解决方案。我必须独立于 NLKT 下载来下载斯坦福包,将其放在路径指示的位置,并将 NLKT 文档中描述的路径中的目录名称更改为我想要用于该目录的任何名称。我认为如果 NLKT 文档明确说明这一点就好了。 (4认同)
  • 我认为您应该添加您的解决方案作为答案,以便以后人们使用它。 (4认同)