Spacy 简明教程

spaCy - Container Token Class

本章将帮助读者理解 spaCy 中的 Token 类。

Token Class

如前面所讨论的,Token 类表示单独的标记,如单词、标点符号、空格、符号等。

Attributes

下表解释了它的属性 −

NAME

TYPE

DESCRIPTION

Doc

Doc

它表示父文档。

sent

Span

在版本 2.0.12 中引入,表示此标记所隶属的句子跨度。

Text

unicode

它是 Unicode 原生文本内容。

text_with_ws

unicode

它表示文本内容,带尾随空格字符(如果存在)。

whitespace_

unicode

顾名思义,就是尾随空格字符(如果存在)。

Orth

int

这是 Unicode 原文文本内容的 ID。

orth_

unicode

这是 Unicode 原文文本内容,与 Token.text 相同。此文本内容主要用于与其他属性保持一致。

Vocab

Vocab

此属性代表父级 Doc 的词库对象。

tensor

ndarray

从 2.1.7 版本开始引入,表示标记在父级 Doc 张量的切片。

Head

Token

这是此标记的句法父级。

left_edge

Token

顾名思义,这是此标记的句法后代的最左标记。

right_edge

Token

顾名思义,这是此标记的句法后代的最右标记。

I

Int

表示标记在父级文档中的索引的整数类型属性。

ent_type

int

这是命名实体类型。

ent_type_

unicode

这是命名实体类型。

ent_iob

int

这是命名实体标记的 IOB 代码。此处,3 = 标记开始一个实体,2 = 标记在实体外部,1 = 标记在实体内部,0 = 未设置实体标记。

ent_iob_

unicode

这是命名实体标记的 IOB 代码。“B” = 标记开始一个实体,“I” = 标记在实体内部,“O” = 标记在实体外部,"" = 未设置实体标记。

ent_kb_id

int

从 2.2 版本开始引入,表示引用此标记是其一部分的命名实体的知识库 ID。

ent_kb_id_

unicode

从 2.2 版本开始引入,表示引用此标记是其一部分的命名实体的知识库 ID。

ent_id

int

该标记是实体的 ID(如有)。此属性当前并未使用,但可能用于共指解析。

ent_id_

unicode

该标记是实体的 ID(如有)。此属性当前并未使用,但可能用于共指解析。

Lemma

int

词干是标记的基本形式,没有任何屈折后缀。

lemma_

unicode

这是标记的基本形式,没有任何屈折后缀。

Norm

int

此属性代表标记的规范。

norm_

unicode

此属性代表标记的规范。

Lower

int

顾名思义,它是令牌的小写形式。

lower_

unicode

它也是令牌文本的小写形式,等效于 Token.text.lower()。

Shape

int

为了显示正字法特征,此属性用于转换标记的字符串。

shape_

unicode

为了显示正字法特征,此属性用于转换标记的字符串。

Prefix

int

它是令牌开头的长度为 N 的子字符串的哈希值。默认值为 N=1。

prefix_

unicode

它是令牌开头的长度为 N 的子字符串。默认值为 N=1。

Suffix

int

它是令牌结尾的长度为 N 的子字符串的哈希值。默认值为 N=3。

suffix_

unicode

它是令牌结尾的长度为 N 的子字符串。默认值为 N=3。

is_alpha

bool

此属性表示令牌是否由字母字符组成? 它等效于 token.text.isalpha()。

is_ascii

bool

此属性表示令牌是否由 ASCII 字符组成? 它等效于 all(ord(c) < 128 for c in token.text)。

is_digit

Bool

此属性表示令牌是否由数字组成? 它等效于 token.text.isdigit()。

is_lower

Bool

此属性表示令牌是否为小写? 它等效于 token.text.islower()。

is_upper

Bool

此属性表示令牌是否为大写? 它等效于 token.text.isupper()。

is_title

bool

此属性表示令牌是否为标题形式? 它等效于 token.text.istitle()。

is_punct

bool

此属性表示令牌是否标点符号?

is_left_punct

bool

此属性表示令牌是否左标点符号,例如“(“?

is_right_punct

bool

此属性表示令牌是否右标点符号,例如“)”?

is_space

bool

此属性表示令牌是否由空格字符组成? 它等效于 token.text.isspace()。

is_bracket

bool

此属性表示令牌是否为括号?

is_quote

bool

此属性表示令牌是否引号?

is_currency

bool

此属性在版本 2.0.8 中引入,它表示令牌是否为货币符号?

like_url

bool

此属性表示令牌是否类似于 URL?

like_num

bool

此属性表示标记是否表示一个数字?

like_email

bool

此属性表示标记是否类似于电子邮件地址?

is_oov

bool

此属性表示标记是否具有词向量?

is_stop

bool

此属性表示标记是否属于"停用列表"?

Pos

int

它表示通用词性标记集中的词性粗标注。

pos_

unicode

它表示通用词性标记集中的词性粗标注。

Tag

int

它表示词性细标注。

tag_

unicode

它表示词性细标注。

Dep

int

此属性表示句法依存关系。

dep_

unicode

此属性表示句法依存关系。

Lang

Int

此属性表示父文档词汇的语言。

lang_

unicode

此属性表示父文档词汇的语言。

Prob

float

它是标记词类型的平滑对数似然估计值。

Idx

int

它是标记在父文档中的字符偏移量。

Sentiment

float

它表示一个标量值,指示标记的正负性。

lex_id

int

它表示标记词法类型的顺序 ID,用于对表进行索引。

Rank

int

它表示标记词法类型的顺序 ID,用于对表进行索引。

Cluster

int

它是 Brown cluster ID。

_

Underscore

它表示添加自定义属性扩展的用户空间。

Methods

以下是 Token 类中使用的方法 -

Sr.No.

Method & Description

1

Token._ init _ 用于构建 Token 对象。

2

Token.similarity 用于计算语义相似度估计值。

3

Token.check_flag 用于检查布尔标志的值。

4

Token._ len _ 用于计算标记中的 Unicode 字符数量。

ClassMethods

以下是 Token 类中使用的类方法 -

Sr.No.

Classmethod & Description

1

Token.set_extension 它在令牌上定义一个自定义属性。

2

Token.get_extension 它将按名称查找以前的扩展。

3

Token.has_extension 它将检查令牌类上是否已注册扩展。

4

Token.remove_extension 它将移除令牌类上以前注册的扩展。