快捷方式

Wav2Vec2ASRBundle

class torchaudio.pipelines.Wav2Vec2ASRBundle[源]

用于打包相关信息以使用预训练的 Wav2Vec2Model 的数据类。

此类提供用于实例化预训练模型以及检索预训练权重和模型附加数据所需信息的接口。

Torchaudio 库会实例化此类对象,每个对象代表一个不同的预训练模型。客户端代码应通过这些实例访问预训练模型。

请参阅下方以了解用法和可用值。

示例 - ASR
>>> import torchaudio
>>>
>>> bundle = torchaudio.pipelines.HUBERT_ASR_LARGE
>>>
>>> # Build the model and load pretrained weight.
>>> model = bundle.get_model()
Downloading:
100%|███████████████████████████████| 1.18G/1.18G [00:17<00:00, 73.8MB/s]
>>>
>>> # Check the corresponding labels of the output.
>>> labels = bundle.get_labels()
>>> print(labels)
('-', '|', 'E', 'T', 'A', 'O', 'N', 'I', 'H', 'S', 'R', 'D', 'L', 'U', 'M', 'W', 'C', 'F', 'G', 'Y', 'P', 'B', 'V', 'K', "'", 'X', 'J', 'Q', 'Z')
>>>
>>> # Resample audio to the expected sampling rate
>>> waveform = torchaudio.functional.resample(waveform, sample_rate, bundle.sample_rate)
>>>
>>> # Infer the label probability distribution
>>> emissions, _ = model(waveform)
>>>
>>> # Pass emission to decoder
>>> # `ctc_decode` is for illustration purpose only
>>> transcripts = ctc_decode(emissions, labels)
使用 Wav2Vec2ASRBundle 的教程
Speech Recognition with Wav2Vec2

使用 Wav2Vec2 进行语音识别

使用 Wav2Vec2 进行语音识别
Forced Alignment with Wav2Vec2

使用 Wav2Vec2 进行强制对齐

使用 Wav2Vec2 进行强制对齐

属性

sample_rate

property Wav2Vec2ASRBundle.sample_rate: float

模型训练所使用的音频的采样率。

类型

浮点数

方法

get_labels

Wav2Vec2ASRBundle.get_labels(*, blank: str = '-') Tuple[str, ...][源]

输出类别标签。

第一个是空白符,它是可自定义的。

参数

blank (str, optional) – 空白符。 (默认为 '-')

返回

对于在 ASR 上微调的模型,返回一个包含表示输出类别标签的字符串的元组。

返回类型

Tuple[str, …]

示例
>>> from torchaudio.pipelines import HUBERT_ASR_LARGE as bundle
>>> bundle.get_labels()
('-', '|', 'E', 'T', 'A', 'O', 'N', 'I', 'H', 'S', 'R', 'D', 'L', 'U', 'M', 'W', 'C', 'F', 'G', 'Y', 'P', 'B', 'V', 'K', "'", 'X', 'J', 'Q', 'Z')

get_model

Wav2Vec2ASRBundle.get_model(*, dl_kwargs=None) Module

构建模型并加载预训练权重。

权重文件从互联网下载,并使用 torch.hub.load_state_dict_from_url() 进行缓存。

参数

dl_kwargs (关键字参数字典) – 传递给 torch.hub.load_state_dict_from_url()

返回

Wav2Vec2Model 的变体。

对于下面列出的模型,会对输入执行额外的层归一化。

对于所有其他模型,将返回一个 Wav2Vec2Model 实例。

  • WAV2VEC2_LARGE_LV60K

  • WAV2VEC2_ASR_LARGE_LV60K_10M

  • WAV2VEC2_ASR_LARGE_LV60K_100H

  • WAV2VEC2_ASR_LARGE_LV60K_960H

  • WAV2VEC2_XLSR53

  • WAV2VEC2_XLSR_300M

  • WAV2VEC2_XLSR_1B

  • WAV2VEC2_XLSR_2B

  • HUBERT_LARGE

  • HUBERT_XLARGE

  • HUBERT_ASR_LARGE

  • HUBERT_ASR_XLARGE

  • WAVLM_LARGE

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

查找开发资源并让您的问题得到解答

查看资源