speechbrain.inference.speaker 模块
指定说话人确认模块的推理接口。
- 作者
Aku Rouhe 2021
Peter Plantinga 2021
Loren Lugosch 2020
Mirco Ravanelli 2020
Titouan Parcollet 2021
Abdel Heba 2021
Andreas Nautsch 2022, 2023
Pooneh Mousavi 2023
Sylvain de Langen 2023
Adel Moumen 2023
Pradnya Kandarkar 2023
摘要
类
一个用于说话人确认的即用型模型。 |
参考
- class speechbrain.inference.speaker.SpeakerRecognition(*args, **kwargs)[source]
-
一个用于说话人确认的即用型模型。它可以用于使用 verify_batch() 执行说话人确认。
示例
>>> import torchaudio >>> from speechbrain.inference.speaker import SpeakerRecognition >>> # Model is downloaded from the speechbrain HuggingFace repo >>> tmpdir = getfixture("tmpdir") >>> verification = SpeakerRecognition.from_hparams( ... source="speechbrain/spkrec-ecapa-voxceleb", ... savedir=tmpdir, ... )
>>> # Perform verification >>> signal, fs = torchaudio.load("tests/samples/single-mic/example1.wav") >>> signal2, fs = torchaudio.load("tests/samples/single-mic/example2.flac") >>> score, prediction = verification.verify_batch(signal, signal2)
- MODULES_NEEDED = ['compute_features', 'mean_var_norm', 'embedding_model', 'mean_var_norm_emb']
- verify_batch(wavs1, wavs2, wav1_lens=None, wav2_lens=None, threshold=0.25)[source]
使用余弦距离执行说话人确认。
它返回得分和决定(0 表示不同说话人,1 表示相同说话人)。
- 参数:
wavs1 (Torch.Tensor) – 包含语音波形1的 torch.Tensor (batch, time)。确保采样率 fs=16000 Hz。
wavs2 (Torch.Tensor) – 包含语音波形2的 torch.Tensor (batch, time)。确保采样率 fs=16000 Hz。
wav1_lens (Torch.Tensor) – 包含每个句子相对长度的 torch.Tensor (例如,[0.8 0.6 1.0])
wav2_lens (Torch.Tensor) – 包含每个句子相对长度的 torch.Tensor (例如,[0.8 0.6 1.0])
threshold (Float) – 应用于余弦距离的阈值,用于决定说话人是不同 (0) 还是相同 (1)。
- 返回值:
score – 与二进制确认输出(余弦距离)关联的得分。
prediction – 如果输入的两个信号来自同一个说话人,则预测为 1,否则为 0。