使用 PyNER 的斯坦福名称实体识别器(NER)无法正常工作

Stanford Name Entity Recognizer(NER) using PyNER not working

我正在尝试使用斯坦福大学的名称实体识别器 (NER)。

我从以下位置下载了 zip 文件:https://github.com/dat/pyner

安装使用:python setup.py 安装。

现在当我运行下面的命令时,我得到空白输出

import ner
tagger =ner.SocketNER(host='localhost',port=31752,output_format='slashTags')
tagger.get_entities("University of California is located in California, United States")

Output:
{}

我错过了什么吗?

https://github.com/dat/pyner 工具严重过时。

如果您使用的是 NLTK,请先更新您的 nltk 版本:

pip3 install -U nltk

然后还在终端:

wget http://nlp.stanford.edu/software/stanford-corenlp-full-2018-02-27.zip
unzip stanford-corenlp-full-2018-02-27.zip
java -mx4g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -preload tokenize,ssplit,pos,lemma,ner,parse,depparse -status_port 9000 -port 9000 -timeout 15000 &

然后在 Python3:

>>> from nltk.parse import CoreNLPParser
>>> tagger = CoreNLPParser(url='http://localhost:9000', tagtype='ner')
>>> tokens = 'Rami Eid is studying at Stony Brook University in NY'.split()
>>> 
>>> tagger.tag(tokens)
[('Rami', 'PERSON'), ('Eid', 'PERSON'), ('is', 'O'), ('studying', 'O'), ('at', 'O'), ('Stony', 'ORGANIZATION'), ('Brook', 'ORGANIZATION'), ('University', 'ORGANIZATION'), ('in', 'O'), ('NY', 'STATE_OR_PROVINCE')]

对于Windows

您可以使用 powershell(您真的这样做了)来使用上面的内容,但是如果您喜欢单击鼠标。

第 1 步:http://nlp.stanford.edu/software/stanford-corenlp-full-2018-02-27.zip

下载 zip 文件

第 2 步: 解压缩

第 3 步:打开命令提示符并转到解压缩文件所在的文件夹

步骤 4: 运行 命令:pip3 install -U nltk

第 5 步: 现在 运行 命令:

java -mx4g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -preload tokenize,ssplit,pos,lemma,ner,parse,depparse -status_port 9000 -port 9000 -timeout 15000 &

然后在 Python3:

>>> from nltk.parse import CoreNLPParser
>>> tagger = CoreNLPParser(url='http://localhost:9000', tagtype='ner')
>>> tokens = 'Rami Eid is studying at Stony Brook University in NY'.split()
>>> 
>>> tagger.tag(tokens)
[('Rami', 'PERSON'), ('Eid', 'PERSON'), ('is', 'O'), ('studying', 'O'), ('at', 'O'), ('Stony', 'ORGANIZATION'), ('Brook', 'ORGANIZATION'), ('University', 'ORGANIZATION'), ('in', 'O'), ('NY', 'STATE_OR_PROVINCE')]