nlp - Spacy NLP:对于可以是动词的专有名词 - 根据输入顺序的歧义和基于标点符号的拆分
问题描述
我正在使用 spacy NLP。没有解析器可以始终正确地确定模棱两可标记的 PROPN/NOUN/VERB 状态,因为在大多数语言中,拼写相同的单词可能具有不同的含义。
例如,“遭遇”可以是外星人将你带入他们的宇宙飞船的遭遇(名词,一次发生),或者像“遇到世界”这样的“遭遇” --> 与(动词)接触。
Spacy 有时会以不同的方式识别相同的拼写词,即使在类似的情况下也是如此:
是导致这种情况的标点符号(“=”?)吗?
我希望将标记识别为动词或名词的连续性,但不会改变。我知道使用训练有素的 spacy 数据(使用 en_small 和 en_medium)在 LSTM 的进展过程中不会使用 LSTM,所以我不应该期望 spacy “由于之前在同一个句子中的决定而建立连续性”,但我仍然对同一句话感到惊讶格式,也是相同的内容,spacy 标识不同..
遇见世界。遇见自己”和“遇见世界=遇见自己=>分别解析为动词、名词
“遇见自我。遇见世界。”
=> 解析为动词,动词。
《遇见自我》
=> 解析为 VERB
解决方案
确保您使用的是最新版本的 spacy 和最新的模型,例如 en_core_web_lg 。
在我的设置中,我没有收到您描述的错误:
nlp = spacy.load('en_core_web_lg')
doc = nlp("Encounter the world=Encounter the self.")
print([(t, t.pos_) for t in doc])
# [(Encounter, 'VERB'), (the, 'DET'), (world, 'NOUN'), (=, 'PUNCT'), (Encounter, 'VERB'), (the, 'DET'), (self, 'NOUN'), (., 'PUNCT')]
我的 spacy 版本:
print(spacy.__version__)
# 2.2.1
推荐阅读
- css - localhost wordpress 加载 style.css 失败
- go - Golang 连接两片指针
- java - Android Studio“Gradle 同步失败”错误
- r - 如何以每个计数的倍数向上计数
- python - Python动态添加属性总是返回相同的结果
- javascript - 从 localStorage 加载 Javascript 图像
- javascript - 在反应的动态html标签中添加样式
- reactjs - 如何在 React SPA 中使用会话身份验证处理页面重新加载时的组件渲染?
- java - 从 v2 迁移后,如何使模板在 SwaggerCodeGen v3 中工作
- javascript - 重组json,其中值不存在将值设置为0