SpaCy:缺少人物实体
SpaCy: Person entities missing
我对 spaCy 缺少 Person 实体有一些疑问。下面是一个示例,当名称前面带有某些标题时,SpaCy 似乎会失明。当您删除 Labour MP
(注释行)时,它会识别名称,否则 returns 是一个空列表。
import spacy
from spacy.en import English
nlp_toolkit = English()
nlp = spacy.load('en')
text = u"In a recent tweet, Labour MP Luciana Berger sought clarification..."
#text = u"In a recent tweet, Luciana Berger sought clarification..."
all_tags = nlp(text)
person_list=[]
for ent in all_tags.ents:
if ent.label_=="PERSON":
person_list.append(str(ent))
print person_list
现在,我使用的是 1.8.2 版的 SpaCy。但在我升级之前,我真的很想知道这个问题是否在版本 2 中得到解决,因为升级似乎不是那么简单。任何人都可以测试它或提出解决方法吗?谢谢!
更新:
它变得更加有趣。如果您将名称更改为其他更常见的名称,它会起作用。
text = u"In a recent tweet, Labour MP James Mill sought clarification..."
out: ['James Mill']
所以它与名称有关,而不是它之前的 MP
...
无论如何 - 如果有人可以检查它是否与 v2 一起正常工作,我将不胜感激!
我用 Spacy 版本 2.0.7 尝试了你的代码,它确实给出 "Luciana Berger" 作为句子
的实体
我正在为句子 "In a recent tweet, Labour MP Luciana Berger sought clarification..."
获取此列表 ['Luciana Berger']
对于其他句子,它给出"James Mill"
也许如果您想尝试较新的版本,请尝试在虚拟环境中安装,这样您就可以在两个版本上进行试验。你可以借助这个 how to use virtual enviornment。事实上,我会推荐使用 Virtual env,因为在版本之间切换是一个相当漫长的过程。所以最好在切换之前尝试一下。
同样仅供参考,NERs 在 "Training of Models" 上的 Spacy 中工作,这里是 link。所以 NER 可能不会涵盖每个名字。
我对 spaCy 缺少 Person 实体有一些疑问。下面是一个示例,当名称前面带有某些标题时,SpaCy 似乎会失明。当您删除 Labour MP
(注释行)时,它会识别名称,否则 returns 是一个空列表。
import spacy
from spacy.en import English
nlp_toolkit = English()
nlp = spacy.load('en')
text = u"In a recent tweet, Labour MP Luciana Berger sought clarification..."
#text = u"In a recent tweet, Luciana Berger sought clarification..."
all_tags = nlp(text)
person_list=[]
for ent in all_tags.ents:
if ent.label_=="PERSON":
person_list.append(str(ent))
print person_list
现在,我使用的是 1.8.2 版的 SpaCy。但在我升级之前,我真的很想知道这个问题是否在版本 2 中得到解决,因为升级似乎不是那么简单。任何人都可以测试它或提出解决方法吗?谢谢!
更新:
它变得更加有趣。如果您将名称更改为其他更常见的名称,它会起作用。
text = u"In a recent tweet, Labour MP James Mill sought clarification..."
out: ['James Mill']
所以它与名称有关,而不是它之前的 MP
...
无论如何 - 如果有人可以检查它是否与 v2 一起正常工作,我将不胜感激!
我用 Spacy 版本 2.0.7 尝试了你的代码,它确实给出 "Luciana Berger" 作为句子
的实体我正在为句子 "In a recent tweet, Labour MP Luciana Berger sought clarification..."
['Luciana Berger']
对于其他句子,它给出"James Mill"
也许如果您想尝试较新的版本,请尝试在虚拟环境中安装,这样您就可以在两个版本上进行试验。你可以借助这个 how to use virtual enviornment。事实上,我会推荐使用 Virtual env,因为在版本之间切换是一个相当漫长的过程。所以最好在切换之前尝试一下。
同样仅供参考,NERs 在 "Training of Models" 上的 Spacy 中工作,这里是 link。所以 NER 可能不会涵盖每个名字。