gpt4 book ai didi

python - spacy 和 displacy 输出不同

转载 作者:太空宇宙 更新时间:2023-11-03 15:54:25 25 4
gpt4 key购买 nike

我的句子是:在此方案之前,她有另一种单独使用 5-FU 的化疗方案历史,没有任何明显的副作用。

当我将它放在位移 (https://demos.explosion.ai/displacy/) 中时,输出包含对 5-FU 作为名词短语的引用。

enter image description here

但是,当我注释文本并搜索名词 block 时,我没有将 5-FU 显示为名词 block 。

nlp = spacy.load('en')
ax = nlp(我的句子)
对于 ax.noun_chunks 中的 w:print(w)

编辑此外,当我使用以下代码搜索标签时,我将 5-FU 显示为 NN。如果 Spacy 的注释将这个单独的单词理解为一个被介词包围的名词,那么为什么不应该将该单词作为名词短语来拾取呢?结束编辑

我的 spacy 版本:enter image description here

我做错了什么? displaCy 和我使用的版本之间有版本差异吗?是否有 spaCy 帮助团队来解决这个问题?

非常感谢!

最佳答案

Displacy 在显示解析树时会做一些预处理。这是 displacy 使用的解析服务(建立在 spacy 上)的链接: https://github.com/explosion/spacy-services/blob/master/displacy/displacy_service/parse.py#L25

if collapse_phrases:
for np in list(self.doc.noun_chunks):
np.merge(np.root.tag_, np.root.lemma_, np.root.ent_type_)

斯帕西 merges句子中的名词 block 而不是将它们视为单独的标记,这就是您的输出不同的原因。

enter image description here

另一个区别是 models你使用的。您可能正在使用最小的 en_core_web_sm 而 Spacy 可能正在使用更大的 en_core_web_md(尽管它没有在任何地方正式提及)

关于python - spacy 和 displacy 输出不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44496844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com