【发布时间】:2020-09-23 03:12:46
【问题描述】:
如何将其转换为 BIO 格式?我曾尝试使用 spacy biluo_tags_from_offsets,但它未能捕获所有实体,我想我知道原因。
tags = biluo_tags_from_offsets(doc, annot['entities'])
BSc(理学学士)- 这两个结合在一起,但是当有空格时,spacy 会拆分文本。所以现在单词会像 (BSc(Bachelor, of, science) 这就是为什么 spacy biluo_tags_from_offsets 失败并返回 -
现在,当它检查 (80, 83, 'Degree') 时,它无法单独找到 BSc 单词。同样,(84, 103, 'Degree') 将再次失败。
如何解决这些情况?如果有人可以,请提供帮助。
EDUCATION: · Master of Computer Applications (MCA) from NV, *********, *****. · BSc(Bachelor of science) from NV, *********, *****
{'entities': [(13, 44, 'Degree'), (46, 49, 'Degree'), (80, 83, 'Degree'), (84, 103, 'Degree')]}
【问题讨论】:
-
您可以尝试将令牌与
Doc.retokenize()结合起来,例如stackoverflow.com/a/63982729/4317058 吗?有趣的是,预训练模型是否仍能识别新的组合标记。 -
@SergeyBushmanov 你能提供一个有效的例子吗,我无法从那个链接正确理解它,retokenize 到底是做什么的()
-
@SergeyBushmanov 我在网上看到,spacy 不支持重叠实体?有什么办法可以解决这些问题。我找不到任何关于如何解决这些问题的好文章?如果你熟悉,请帮助我。
-
@SergeyBushmanov 我在研究时读过它。但在我的情况下,重叠的实体是两个不同的标签。如何将两个实体合并到一个单词中?我无法理解如何围绕它建立一个ner。如果您熟悉工作流程,请帮助我。我已经坚持了好几个星期了。我的数据集有两个问题,一个是我在上面列出的另一个是重叠实体。
标签: python python-3.x nlp spacy named-entity-recognition