为什么我的自定义 spaCy 实体类型会被检测到?
Why does my custom spaCy entity type get detected?
我正在写一个 spaCy program for which I want to define a custom named entity tag. Following the example here,我在管道中添加了一个名为 MY_NEW_LABEL
的标签。
import spacy
nlp = spacy.load("en_core_web_lg")
ner = nlp.get_pipe("ner")
new_label = "MY_NEW_LABEL"
ner.add_label(new_label)
documents_path = "my_document.txt"
document = nlp(open(documents_path).read())
print([e for e in document.ents if e.label_ == new_label])
当我 运行 上述程序时,它会打印出标有 MY_NEW_LABEL
的实体列表。我不明白这是怎么可能的,因为我从来没有对标签做任何事情。
显然我误解了如何使用自定义实体标签,但我无法从文档中弄清楚为什么会发生这种情况。谁能告诉我为什么我的程序没有打印出空列表?
这是意外行为。我打开它作为 spaCy issue 1697: Custom Entity Labels Are Erroneously Detected.
我正在写一个 spaCy program for which I want to define a custom named entity tag. Following the example here,我在管道中添加了一个名为 MY_NEW_LABEL
的标签。
import spacy
nlp = spacy.load("en_core_web_lg")
ner = nlp.get_pipe("ner")
new_label = "MY_NEW_LABEL"
ner.add_label(new_label)
documents_path = "my_document.txt"
document = nlp(open(documents_path).read())
print([e for e in document.ents if e.label_ == new_label])
当我 运行 上述程序时,它会打印出标有 MY_NEW_LABEL
的实体列表。我不明白这是怎么可能的,因为我从来没有对标签做任何事情。
显然我误解了如何使用自定义实体标签,但我无法从文档中弄清楚为什么会发生这种情况。谁能告诉我为什么我的程序没有打印出空列表?
这是意外行为。我打开它作为 spaCy issue 1697: Custom Entity Labels Are Erroneously Detected.