paddlespeech.s2t.decoders.scorers.scorer_interface模块

得分器接口模块。

class paddlespeech.s2t.decoders.scorers.scorer_interface.BatchPartialScorerInterface[来源]

基础: BatchScorerInterface, PartialScorerInterface

用于束搜索的批部分评分器接口。

方法

batch_init_state(x)

获取解码的初始状态(可选).

batch_score(ys, states, xs)

评分新的令牌批次(必需)。

batch_score_partial(ys, next_tokens, states, xs)

评分新标记(必填)。

final_score(state)

得分 eos(可选)。

init_state(x)

获取用于解码的初始状态(可选)。

score(y, state, x)

评分新令牌(必需)。

score_partial(y, next_tokens, state, x)

打分新令牌(必需)。

select_state(state, i[, new_id])

在主光束搜索中选择具有相对ID的状态。

batch_score_partial(ys: Tensor, next_tokens: Tensor, states: List[Any], xs: Tensor) Tuple[Tensor, Any][来源]

分数新令牌(必填)。

Args:

ys (paddle.Tensor): paddle.int64 前缀标记 (n_batch, ylen).
next_tokens (paddle.Tensor): paddle.int64 要评分的标记 (n_batch, n_token).
states (List[Any]): 前缀标记的评分器状态.
xs (paddle.Tensor):

生成ys的编码器特征(n_batch,xlen,n_feat)。

Returns:
tuple[paddle.Tensor, Any]:

一个得分张量的元组,用于ys,形状为 (n_batch, n_vocab) 以及ys的下一个状态

class paddlespeech.s2t.decoders.scorers.scorer_interface.BatchScorerInterface[来源]

基础: ScorerInterface

批量评分接口。

方法

batch_init_state(x)

获取解码的初始状态(可选)。

batch_score(ys, states, xs)

评分新标记批次(必需)。

final_score(state)

得分 eos(可选)。

init_state(x)

获取用于解码的初始状态(可选)。

score(y, state, x)

评分新令牌(必需)。

select_state(state, i[, new_id])

在主光束搜索中选择具有相对ID的状态。

batch_init_state(x: Tensor) Any[来源]

获取解码的初始状态(可选)。

Args:

x (paddle.Tensor): 编码特征张量

返回:初始状态

batch_score(ys: Tensor, states: List[Any], xs: Tensor) Tuple[Tensor, List[Any]][来源]

评分新令牌批次(必需)。

Args:

ys (paddle.Tensor): paddle.int64 前缀标记 (n_batch, ylen).
states (List[Any]): 前缀标记的计分器状态。
xs (paddle.Tensor):

生成ys的编码器特征(n_batch,xlen,n_feat)。

Returns:
tuple[paddle.Tensor, List[Any]]: Tuple of

下一个标记的批处理分数,形状为(n_batch, n_vocab),以及 ys 的下一个状态列表。

class paddlespeech.s2t.decoders.scorers.scorer_interface.PartialScorerInterface[来源]

基础: ScorerInterface

用于束搜索的部分评分器接口。

当非部分评分器完成评分时,部分评分器会进行评分,并接收预剪枝的下一个令牌进行评分,因为评分所有令牌的负担太重。

得分子集的标记,并不是全部。

Examples:
  • Prefix search for connectionist-temporal-classification models
    • decoders.scorers.ctc.CTCPrefixScorer

方法

final_score(state)

得分 eos(可选)。

init_state(x)

获取用于解码的初始状态(可选)。

score(y, state, x)

评分新令牌(必需)。

score_partial(y, next_tokens, state, x)

评分新令牌(必需)。

select_state(state, i[, new_id])

在主光束搜索中选择具有相对ID的状态。

score_partial(y: Tensor, next_tokens: Tensor, state: Any, x: Tensor) Tuple[Tensor, Any][来源]

分数新令牌(必填)。

Args:

y (paddle.Tensor): 1D 前缀标记 next_tokens (paddle.Tensor): paddle.int64 下一个要评分的标记 state: 前缀标记的解码器状态 x (paddle.Tensor): 生成 ys 的编码器特征

Returns:
tuple[paddle.Tensor, Any]:

y的得分张量的元组,形状为 (len(next_tokens),) 和 ys 的下一状态

class paddlespeech.s2t.decoders.scorers.scorer_interface.ScorerInterface[来源]

基础: object

用于束搜索的评分器接口。

评分器对词汇表中的所有标记进行评分。

Examples:
  • Search heuristics
    • scorers.length_bonus.LengthBonus

  • Decoder networks of the sequence-to-sequence models
    • transformer.decoder.Decoder

    • rnn.decoders.Decoder

  • Neural language models
    • lm.transformer.TransformerLM

    • lm.default.DefaultRNNLM

    • lm.seq_rnn.SequentialRNNLM

方法

final_score(state)

得分 eos(可选).

init_state(x)

获取解码的初始状态(可选)。

score(y, state, x)

评分新令牌(必填)。

select_state(state, i[, new_id])

在主光束搜索中选择相对id的状态。

final_score(state: Any) float[来源]

得分 eos (可选).

Args:

状态:前缀令牌的得分器状态

Returns:

浮动:最终分数

init_state(x: Tensor) Any[来源]

获取解码的初始状态(可选)。

Args:

x (paddle.Tensor): 编码特征张量

返回:初始状态

score(y: Tensor, state: Any, x: Tensor) Tuple[Tensor, Any][来源]

分数新令牌(必填)。

Args:

y (paddle.Tensor): 1D paddle.int64 前缀标记。
state: 前缀标记的评分器状态
x (paddle.Tensor): 生成 ys 的编码器特征。

Returns:
tuple[paddle.Tensor, Any]: Tuple of

下一个标记的得分形状为 (n_vocab) 和 ys 的下一个状态

select_state(state: Any, i: int, new_id: Optional[int] = None) Any[来源]

在主光束搜索中选择具有相对ID的状态。

Args:

状态:前缀标记的解码器状态
i (int):选择主束搜索中状态的索引
new_id (int):如果必要,选择状态的新标签索引

Returns:

状态:修剪状态