【发布时间】:2019-12-14 03:12:57
【问题描述】:
我正在使用 Spacy 以及一些自定义代码来进行一些自然语言处理工作。我们想做一些事情,我们可以通过使用论文中的位置找到一篇论文的写作地点,并且很好奇是否有一个包可以找到国家、城市、州等位置?感谢您的宝贵时间。
【问题讨论】:
-
我相信这是题外话。请参阅:help center。
-
@AlexanderCécile 你说得对,我刚刚标记了它。
我正在使用 Spacy 以及一些自定义代码来进行一些自然语言处理工作。我们想做一些事情,我们可以通过使用论文中的位置找到一篇论文的写作地点,并且很好奇是否有一个包可以找到国家、城市、州等位置?感谢您的宝贵时间。
【问题讨论】:
Spacy 已命名实体识别 (NER)。预训练模型具有的一种实体类型是 LOC 用于位置。在某些模型中还有GPE(地缘政治实体)。我在下面使用的en_core_web_sm 同时具有LOC 和GPE。 (完整列表在https://spacy.io/api/annotation#named-entities)。另见:https://spacy.io/usage/linguistic-features#named-entities
开箱即用并不完美,但它可能有用。
小例子:
import spacy # install cmd: pip3 install spacy --user
import en_core_web_sm # install cmd: python3 -m spacy download en_core_web_sm --user
text='San Fransisco is in California and my friend Frank lives there, close to the bay. He purchased his first house last January.'
NLP = en_core_web_sm.load()
output = NLP(text)
for item in output.ents:
print(item.label_, item)
有这个输出:
GPE San Fransisco
GPE California
PERSON Frank
DATE last January
【讨论】:
text 可能是很多段落。在我的示例中,它很容易找到San Fransisco 和California 中的两个GPE。