Spacy 简明教程
spaCy - Span Class Properties
在本章中,让我们学习 spaCy 中跨度的属性。
Properties
以下是 spaCy 中跨度类的属性。
Sr.No. |
Span Properties & Description |
1 |
Span.ents 用于跨度中的命名实体。 |
2 |
Span.as_doc 用于创建与跨度对应的新的文档对象。它还将复制其数据。 |
3 |
Span.root 向标记提供到句子的根部的最短路径。 |
4 |
Span.lefts 用于跨度左侧的标记,它们的头位于跨度内。 |
5 |
Span.rights 用于位于 span 右侧并且头部位于 span 之内的标记。 |
6 |
Span.n_rights 用于位于 span 右侧并且头部位于 span 之内的标记。 |
7 |
Span.n_lefts 用于位于 span 左侧并且头部位于 span 之内的标记。 |
8 |
Span.subtree 返回位于 span 之内并且从 span 派生的标记。 |
9 |
Span.vector Represents a real-valued meaning. |
10 |
Span.vector_norm 表示文档向量表示的 L2 范数。 |
Span.ents
此 Span 属性用于 span 中的命名实体。如果已应用实体识别器,则此属性将返回命名实体 span 对象元组。
Example 1
Span.ents 属性的一个示例如下所示 −
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("This is Tutorialspoint.com.")
span = doc[0:5]
ents = list(span.ents)
ents[0].label
Output
您将收到以下输出 −
383
Example 2
Span.ents 属性的另一个示例如下所示 −
ents[0].label_
Output
您将收到以下输出 −
‘ORG’
Example 3
以下是 Span.ents 属性的另一个示例 −
ents[0].text
Output
您将收到以下输出 −
'Tutorialspoint.com'
Span.as_doc
顾名思义,此 Span 属性将创建一个对应于 Span 的新 Doc 对象。它还将拥有数据副本。
Example
Span.as_doc 属性的一个示例如下所示 −
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("I like India.")
span = doc[2:4]
doc2 = span.as_doc()
doc2.text
Output
您将收到以下输出 −
India
Span.root
此 Span 属性将提供标记与句子根之间的最短路径。如果有多个标记在树中高度较高,它将采用第一个标记。
Example 1
Span.root 属性的一个示例如下所示 −
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("I like New York in Autumn.")
i, like, new, york, in_, autumn, dot = range(len(doc))
doc[new].head.text
Output
您将收到以下输出 −
'York'
Example 2
Span.root 属性的另一个示例如下所示 −
doc[york].head.text
Output
您将收到以下输出 −
'like'
Example 3
以下是 Span.root 属性的一个示例 −
new_york = doc[new:york+1]
new_york.root.text
Output
您将收到以下输出 −
'York'
Span.lefts
此 Span 属性用于 span 左侧并且头部位于 span 之内的标记。
Example
Span.lefts 属性的一个示例如下所示 −
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("This is Tutorialspoint.com.")
lefts = [t.text for t in doc[1:4].lefts]
lefts
Output
您将收到以下输出 −
['This']
Span.rights
此 Span 属性用于 span 右侧并且头部位于 span 之内的标记。
Example
Span.rights 属性的一个示例如下所示 −
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("This is Tutorialspoint.com.")
rights = [t.text for t in doc[1:2].rights]
rights
Output
您将收到以下输出 −
['Tutorialspoint.com', '.']
Span.n_rights
此 Span 属性用于 span 右侧并且头部位于 span 之内的标记。
Example
Span.n_rights 属性示例如下所示 −
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("This is Tutorialspoint.com.")
doc[1:2].n_rights
Output
您将收到以下输出 −
2
Span.n_lefts
此 Span 属性用于那些在其头部位于 span 内的 span 左侧的标记中。
Example
Span.n_lefts 属性示例如下所示 −
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("This is Tutorialspoint.com.")
doc[1:2].n_lefts
Output
您将收到以下输出 −
1
Span.subtree
此 Span 属性产生 span 内的标记以及从它们派生的标记。
Example
Span.subtree 属性示例如下所示 −
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("This is Tutorialspoint.com.")
subtree = [t.text for t in doc[:1].subtree]
subtree
Output
您将收到以下输出 −
['This']