- 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 - 架構
本章介紹了 spaCy 中的資料結構,並解釋了物件及其作用。
資料結構
spaCy 中的核心資料結構如下:
Doc - 這是 spaCy 架構中最重要的物件之一,它擁有標記序列及其所有註釋。
Vocab - spaCy 另一個重要的核心資料結構物件是 Vocab。它擁有一個查詢表集合,使文件之間可以共享常見資訊。
spaCy 的資料結構有助於集中字串、詞向量和詞彙屬性,透過避免儲存資料的多個副本來節省記憶體。
物件及其作用
以下是 spaCy 中的物件及其作用和示例:
Span
它是Doc物件的切片,我們在上面討論過。我們可以使用以下命令從切片建立 Span 物件:
doc[start : end]
示例
下面是一個 span 的示例:
import spacy
import en_core_web_sm
nlp_example = en_core_web_sm.load()
my_doc = nlp_example("This is my first example.")
span = my_doc[1:6]
span
輸出
is my first example.
Token
顧名思義,它代表單個標記,例如單詞、標點符號、空格、符號等。
示例
下面是一個 token 的示例:
import spacy
import en_core_web_sm
nlp_example = en_core_web_sm.load()
my_doc = nlp_example("This is my first example.")
token = my_doc[4]
token
輸出
example
Tokenizer
顧名思義,tokenizer 類將文字分割成單詞、標點符號等。
示例
此示例將建立一個僅包含英語詞彙表的空分詞器:
from spacy.tokenizer import Tokenizer from spacy.lang.en import English nlp_lang = English() blank_tokenizer = Tokenizer(nlp_lang.vocab) blank_tokenizer
輸出
<spacy.tokenizer.Tokenizer at 0x26506efc480>
Language
這是一個文字處理管道,我們需要每個程序載入一次並將例項傳遞到應用程式中。呼叫spacy.load()方法時將建立此類。
它包含以下內容:
共享詞彙表
語言資料
從模型包載入的可選模型資料
包含諸如標記器或解析器之類的元件的處理管道。
示例
此語言示例將初始化英語語言物件
from spacy.vocab import Vocab from spacy.language import Language nlp_lang = Language(Vocab()) from spacy.lang.en import English nlp_lang = English() nlp_lang
輸出
執行程式碼後,您將看到以下輸出:
<spacy.lang.en.English at 0x26503773cf8>
廣告