Doc 类 ContextManager 和属性
在本章中,让我们了解 spaCy 中的上下文管理器和 Doc 类的属性。
上下文管理器
它是一个上下文管理器,用于处理 Doc 类的重新标记。现在让我们详细了解一下。
Doc.retokenize
当您使用此上下文管理器时,它将首先修改 Doc 的标记化,存储它,然后在上下文管理器存在时一次性完成。
此上下文管理器的优点是效率更高,错误更少。
示例 1
请参阅下面给出的 Doc.retokenize 上下文管理器示例 −
import spacy nlp_model = spacy.load("en_core_web_sm") from spacy.tokens import Doc doc = nlp_model("This is Tutorialspoint.com.") with doc.retokenize() as retokenizer: retokenizer.merge(doc[0:0]) doc
输出
您将看到以下输出 −
is Tutorialspoint.com.
示例 2
这是 Doc.retokenize 上下文管理器的另一个示例 −
import spacy nlp_model = spacy.load("en_core_web_sm") from spacy.tokens import Doc doc = nlp_model("This is Tutorialspoint.com.") with doc.retokenize() as retokenizer: retokenizer.merge(doc[0:2]) doc
输出
您将看到以下输出 −
This is Tutorialspoint.com.
重新标记方法
下表简要介绍了重新标记方法。下表详细解释了两种重新标记方法。
Sr.No. | 方法 &描述 |
---|---|
1 | Retokenizer.merge 它将标记一个要合并的跨度。 |
2 | Retokenizer.split 它将标记一个要拆分成指定正交的标记。 |
属性
spaCy 中 Doc 类的属性解释如下 −
Sr.No. | Doc属性和说明 |
---|---|
1 | Doc.ents 用于文档中的命名实体。 |
2 | Doc.noun_chunks 用于迭代特定文档中的基本名词短语。 |
3 | Doc.sents 用于迭代特定文档中的句子。 |
4 | Doc.has_vector 表示一个布尔值,指示词向量是否与对象相关联。 |
5 | Doc.vector 表示实值含义。 |
6 | Doc.vector_norm 表示文档向量表示的 L2 范数。 |