- 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>
广告