- spaCy 教程
- spaCy - 首頁
- spaCy - 簡介
- spaCy - 入門
- spaCy - 模型和語言
- spaCy - 架構
- spaCy - 命令列助手
- spaCy - 頂級函式
- spaCy - 視覺化函式
- spaCy - 實用函式
- spaCy - 相容性函式
- spaCy - 容器
- Doc 類上下文管理器和屬性
- spaCy - 容器 Token 類
- spaCy - Token 屬性
- spaCy - 容器 Span 類
- spaCy - Span 類屬性
- spaCy - 容器 Lexeme 類
- 訓練神經網路模型
- 更新神經網路模型
- spaCy 有用資源
- spaCy - 快速指南
- spaCy - 有用資源
- spaCy - 討論
spaCy - Span 類屬性
在本章中,讓我們學習 spaCy 中的 Span 屬性。
屬性
以下是關於 spaCy 中 Span 類的屬性。
| 序號 | Span 屬性及描述 |
|---|---|
| 1 | Span.ents 用於 Span 中的命名實體。 |
| 2 | Span.as_doc 用於建立對應於 Span 的新的 Doc 物件。它也將包含資料的副本。 |
| 3 | Span.root 提供到句子根節點的最短路徑的標記。 |
| 4 | Span.lefts 用於 Span 左側的標記,其頭部在 Span 內。 |
| 5 | Span.rights 用於 Span 右側的標記,其頭部在 Span 內。 |
| 6 | Span.n_rights 用於 Span 右側的標記,其頭部在 Span 內。 |
| 7 | Span.n_lefts 用於 Span 左側的標記,其頭部在 Span 內。 |
| 8 | Span.subtree 生成 Span 內的標記以及從它們派生的標記。 |
| 9 | Span.vector 表示一個實數值含義。 |
| 10 | Span.vector_norm 表示文件向量表示的 L2 範數。 |
Span.ents
此 Span 屬性用於 Span 中的命名實體。如果已應用實體識別器,則此屬性將返回一個命名實體 Span 物件的元組。
示例 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
輸出
您將收到以下輸出:
383
示例 2
Span.ents 屬性的另一個示例如下所示:
ents[0].label_
輸出
您將收到以下輸出:
‘ORG’
示例 3
下面是 Span.ents 屬性的另一個示例:
ents[0].text
輸出
您將收到以下輸出:
'Tutorialspoint.com'
Span.as_doc
顧名思義,此 Span 屬性將建立一個對應於 Span 的新 Doc 物件。它也將包含資料的副本。
示例
下面給出了 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
輸出
您將收到以下輸出:
India
Span.root
此 Span 屬性將提供到句子根節點的最短路徑的標記。如果樹中有多個標記具有相同的高度,它將取第一個標記。
示例 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
輸出
您將收到以下輸出:
'York'
示例 2
Span.root 屬性的另一個示例如下所示:
doc[york].head.text
輸出
您將收到以下輸出:
'like'
示例 3
下面給出了 Span.root 屬性的一個示例:
new_york = doc[new:york+1] new_york.root.text
輸出
您將收到以下輸出:
'York'
Span.lefts
此 Span 屬性用於 Span 左側的標記,其頭部在 Span 內。
示例
下面提到了 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
輸出
您將收到以下輸出:
['This']
Span.rights
此 Span 屬性用於 Span 右側的標記,其頭部在 Span 內。
示例
下面給出了 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
輸出
您將收到以下輸出:
['Tutorialspoint.com', '.']
Span.n_rights
此 Span 屬性用於 Span 右側的標記,其頭部在 Span 內。
示例
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
輸出
您將收到以下輸出:
2
Span.n_lefts
此 Span 屬性用於 Span 左側的標記,其頭部在 Span 內。
示例
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
輸出
您將收到以下輸出:
1
Span.subtree
此 Span 屬性生成 Span 內的標記以及從它們派生的標記。
示例
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
輸出
您將收到以下輸出:
['This']
Span.vector
此 Span 屬性表示一個實數值含義。預設值為標記向量的平均值。
示例 1
Span.vector 屬性的一個示例如下所示:
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("The website is Tutorialspoint.com.")
doc[1:].vector.dtype
輸出
您將收到以下輸出:
dtype('float32')
示例 2
Span.vector 屬性的另一個示例如下所示:
輸出
您將收到以下輸出:
(96,)
Span.vector_norm
此 Doc 屬性表示文件向量表示的 L2 範數。
示例
Span.vector_norm 屬性的一個示例如下所示:
import spacy
nlp_model = spacy.load("en_core_web_sm")
doc = nlp_model("The website is Tutorialspoint.com.")
doc[1:].vector_norm
doc[2:].vector_norm
doc[1:].vector_norm != doc[2:].vector_norm
輸出
您將收到以下輸出:
True