编辑:
由于最近即将推出的spaCy 2.0版本的管道开发,我更新了这个问题。 (described here)
新的_
属性旨在承载自定义管道组件的数据。我的输入文本包含突出显示的部分,例如
这是一个示例文本文档,这是一个示例文本文档。 这是一个示例文本文档,这是一个示例文本文档。 这是一个示例文本文档,这是一个e xamp 文本文档。
我想使用跨度来跟踪此文档的哪些部分突出显示。我选择这个例子来表明突出显示可能只跨越令牌的一部分,但也可能超过一个句子。如下面我原来的问题所述,在内部,跨度似乎能够在字符级别上存储间隔,例如,切片适用于令牌索引级别。
我认为新的更加用户友好的管道可能有助于实现这一目标。
原始问题:
据我所知,spaCy的模型有令牌和跨度的文件。我认为我对令牌有相当不错的理解,因为这是我在不同的nlp库中出现的概念。但是,跨度我真的不懂。
Spans例如用于从文档中产生句子。此外,如果您对文档进行切片,则返回的类型为span。
除了其他属性之外,内部包含
start
start_char
end
end_char
其中start和end表示span的起始和结束标记的索引,而start_char和end_char表示span的起始和结束字符。
构造函数不公开start_char和end_char属性。
我的问题是:跨度是否应该严格地是一组标记,还是可以用于表示从令牌的单个字符到多个句子的所有内容?
如果它们不是相应的数据结构,我该如何实现?