paddlespeech.s2t.models.ds2.deepspeech2 模块

Deepspeech2 ASR 模型

class paddlespeech.s2t.models.ds2.deepspeech2.DeepSpeech2InferModel(*args, **kwargs)[来源]

基础: DeepSpeech2Model

方法

__call__(*inputs, **kwargs)

将self作为一个函数调用。

add_parameter(name, parameter)

添加一个参数实例。

add_sublayer(name, sublayer)

添加一个子层实例。

apply(fn)

递归地将 fn 应用到每个子层(由 .sublayers() 返回)以及自身。

buffers([include_sublayers])

返回当前层及其子层中的所有缓冲区的列表。

children()

返回一个迭代器,遍历直接子层。

clear_gradients()

清除此层所有参数的梯度。

create_parameter(shape[, attr, dtype, ...])

为该层创建参数。

create_tensor([name, persistable, dtype])

为该层创建张量。

create_variable([name, persistable, dtype])

为该层创建张量。

eval()

将该层及其所有子层设置为评估模式。

extra_repr()

该层的额外表示,您可以自定义实现自己的层。

forward(audio_chunk, audio_chunk_lens[, ...])

计算模型损失

from_config(config)

根据配置参数构建一个DeepSpeec2Model

from_pretrained(dataloader, config, ...)

从预训练模型构建一个DeepSpeech2Model模型。

full_name()

此层的完整名称,由 name_scope + "/" + MyLayer.__class__.__name__ 组成

load_dict(state_dict[, use_structured_name])

从 state_dict 设置参数和可持久化缓存。

named_buffers([prefix, include_sublayers])

返回一个迭代器,遍历层中的所有缓冲区,生成名称和张量的元组。

named_children()

返回一个直接子层的迭代器,同时提供层的名称和层本身。

named_parameters([prefix, include_sublayers])

返回一个迭代器,遍历层中的所有参数,生成名称和参数的元组。

named_sublayers([prefix, include_self, ...])

返回Layer中所有子层的迭代器,生成名称和子层的元组。

parameters([include_sublayers])

返回当前层及其子层的所有参数的列表。

register_buffer(name, tensor[, persistable])

将一个张量注册为该层的缓冲区。

register_forward_post_hook(hook)

为层注册一个前向后钩子。

register_forward_pre_hook(hook)

为层注册一个前向预钩子。

set_dict(state_dict[, use_structured_name])

从 state_dict 设置参数和可持久化的缓冲区。

set_state_dict(state_dict[, use_structured_name])

从state_dict设置参数和持久化缓冲区。

state_dict([destination, include_sublayers, ...])

获取当前层及其子层的所有参数和可持久化缓冲区。

sublayers([include_self])

返回子层的列表。

to([device, dtype, blocking])

通过给定的设备、数据类型和阻塞方式转换层的参数和缓冲区。

to_static_state_dict([destination, ...])

获取当前层及其子层的所有参数和缓冲区。

train()

将此层及其所有子层设置为训练模式。

向后

解码

导出

注册状态字典钩子

export()[来源]
forward(audio_chunk, audio_chunk_lens, chunk_state_h_box=None, chunk_state_c_box=None)[来源]

计算模型损失

Args:

音频 (张量): [B, T, D]音频长度 (张量): [B]文本 (张量): [B, U]文本长度 (张量): [B]

Returns:

损失 (张量): [1]

class paddlespeech.s2t.models.ds2.deepspeech2.DeepSpeech2Model(feat_size, dict_size, num_conv_layers=2, num_rnn_layers=4, rnn_size=1024, rnn_direction='forward', num_fc_layers=2, fc_layers_size_list=[512, 256], use_gru=False, blank_id=0, ctc_grad_norm_type=None)[来源]

基础: Layer

DeepSpeech2 网络结构。

Parameters:
  • audio (变量) -- 音频频谱数据层。

  • 文本 (变量) -- 转录文本数据层。

  • audio_len (变量) -- 有效的序列长度数据层。

  • feat_size (int) -- 音频的特征大小。

  • dict_size (int) -- 词汇表大小,用于分词转录。

  • num_conv_layers (int) -- 卷积层的堆叠数量。

  • num_rnn_layers (int) -- 堆叠RNN层的数量。

  • rnn_size (int) -- RNN 层大小(RNN 单元的维度)。

  • num_fc_layers (int) -- 全连接层的堆叠数量。

  • fc_layers_size_list ([int,]) -- 全连接层大小的列表。

  • use_gru (bool) -- 如果设置为 True,则使用 gru。如果设置为 False,则使用简单的 rnn。

Returns:

一个输出的非标准化对数概率层(在softmax之前)和一个ctc成本层的元组。

Return type:

层输出的元组

方法

__call__(*inputs, **kwargs)

将self作为一个函数调用。

add_parameter(name, parameter)

添加一个参数实例。

add_sublayer(name, sublayer)

添加一个子层实例。

apply(fn)

递归地将 fn 应用到每个子层(由 .sublayers() 返回)以及自身。

buffers([include_sublayers])

返回当前层及其子层中的所有缓冲区的列表。

children()

返回一个迭代器,遍历直接子层。

clear_gradients()

清除此层所有参数的梯度。

create_parameter(shape[, attr, dtype, ...])

为该层创建参数。

create_tensor([name, persistable, dtype])

为该层创建张量。

create_variable([name, persistable, dtype])

为该层创建张量。

eval()

将该层及其所有子层设置为评估模式。

extra_repr()

该层的额外表示,您可以自定义实现自己的层。

forward(audio, audio_len, text, text_len)

计算模型损失

from_config(config)

根据配置参数构建DeepSpeec2Model

from_pretrained(dataloader, config, ...)

从预训练模型构建一个DeepSpeech2Model模型。

full_name()

此层的完整名称,由 name_scope + "/" + MyLayer.__class__.__name__ 组成

load_dict(state_dict[, use_structured_name])

从 state_dict 设置参数和可持久化缓存。

named_buffers([prefix, include_sublayers])

返回一个迭代器,遍历层中的所有缓冲区,生成名称和张量的元组。

named_children()

返回一个直接子层的迭代器,同时提供层的名称和层本身。

named_parameters([prefix, include_sublayers])

返回一个迭代器,遍历层中的所有参数,生成名称和参数的元组。

named_sublayers([prefix, include_self, ...])

返回Layer中所有子层的迭代器,生成名称和子层的元组。

parameters([include_sublayers])

返回当前层及其子层的所有参数的列表。

register_buffer(name, tensor[, persistable])

将一个张量注册为该层的缓冲区。

register_forward_post_hook(hook)

为层注册一个前向后钩子。

register_forward_pre_hook(hook)

为层注册一个前向预钩子。

set_dict(state_dict[, use_structured_name])

从 state_dict 设置参数和可持久化的缓冲区。

set_state_dict(state_dict[, use_structured_name])

从state_dict设置参数和持久化缓冲区。

state_dict([destination, include_sublayers, ...])

获取当前层及其子层的所有参数和可持久化缓冲区。

sublayers([include_self])

返回子层的列表。

to([device, dtype, blocking])

通过给定的设备、数据类型和阻塞方式转换层的参数和缓冲区。

to_static_state_dict([destination, ...])

获取当前层及其子层的所有参数和缓冲区。

train()

将此层及其所有子层设置为训练模式。

向后

解码

注册状态字典钩子

decode(audio, audio_len)[来源]
forward(audio, audio_len, text, text_len)[来源]

计算模型损失

Args:

音频 (张量): [B, T, D]音频长度 (张量): [B]文本 (张量): [B, U]文本长度 (张量): [B]

Returns:

损失 (张量): [1]

classmethod from_config(config)[来源]

从配置构建一个DeepSpeec2Model 参数

config: yacs.config.CfgNode

配置

返回

DeepSpeech2Model

根据配置构建的模型。

classmethod from_pretrained(dataloader, config, checkpoint_path)[来源]

从预训练模型构建一个 DeepSpeech2Model 模型。 参数 ---------- dataloader: paddle.io.DataLoader

config: yacs.config.CfgNode

模型配置

checkpoint_path: Path or str

预训练模型检查点的路径,不带扩展名

Returns:
DeepSpeech2Model

从预训练结果构建的模型。