🚀 VoxLingua107 ECAPA - TDNN 口語語言識別模型
本模型是一個基於語音的語言識別模型,使用 SpeechBrain 在 VoxLingua107 數據集 上訓練得到。它能夠根據語音識別出對應的語言,為語音處理和多語言應用提供了強大支持。
🚀 快速開始
本模型有兩種主要用途:
- 直接用於口語語言識別。
- 作為話語級特徵(嵌入)提取器,用於在您自己的數據上創建專用的語言識別模型。
✨ 主要特性
- 多語言覆蓋:能夠對 107 種不同語言進行分類,包括但不限於英語、中文、日語、法語等。
- 架構優勢:採用了之前用於說話人識別的 ECAPA - TDNN 架構。
📦 安裝指南
文檔未提及安裝步驟,暫無法提供。
💻 使用示例
基礎用法
import torchaudio
from speechbrain.pretrained import EncoderClassifier
language_id = EncoderClassifier.from_hparams(source="TalTechNLP/voxlingua107-epaca-tdnn", savedir="tmp")
signal = language_id.load_audio("https://omniglot.com/soundfiles/udhr/udhr_th.mp3")
prediction = language_id.classify_batch(signal)
print(prediction)
(tensor([[0.3210, 0.3751, 0.3680, 0.3939, 0.4026, 0.3644, 0.3689, 0.3597, 0.3508,
0.3666, 0.3895, 0.3978, 0.3848, 0.3957, 0.3949, 0.3586, 0.4360, 0.3997,
0.4106, 0.3886, 0.4177, 0.3870, 0.3764, 0.3763, 0.3672, 0.4000, 0.4256,
0.4091, 0.3563, 0.3695, 0.3320, 0.3838, 0.3850, 0.3867, 0.3878, 0.3944,
0.3924, 0.4063, 0.3803, 0.3830, 0.2996, 0.4187, 0.3976, 0.3651, 0.3950,
0.3744, 0.4295, 0.3807, 0.3613, 0.4710, 0.3530, 0.4156, 0.3651, 0.3777,
0.3813, 0.6063, 0.3708, 0.3886, 0.3766, 0.4023, 0.3785, 0.3612, 0.4193,
0.3720, 0.4406, 0.3243, 0.3866, 0.3866, 0.4104, 0.4294, 0.4175, 0.3364,
0.3595, 0.3443, 0.3565, 0.3776, 0.3985, 0.3778, 0.2382, 0.4115, 0.4017,
0.4070, 0.3266, 0.3648, 0.3888, 0.3907, 0.3755, 0.3631, 0.4460, 0.3464,
0.3898, 0.3661, 0.3883, 0.3772, 0.9289, 0.3687, 0.4298, 0.4211, 0.3838,
0.3521, 0.3515, 0.3465, 0.4772, 0.4043, 0.3844, 0.3973, 0.4343]]), tensor([0.9289]), tensor([94]), ['th'])
print(prediction[3])
['th']
emb = language_id.encode_batch(signal)
print(emb.shape)
torch.Size([1, 1, 256])
高級用法
文檔未提及高級用法代碼示例,暫無法提供。
📚 詳細文檔
模型描述
這是一個使用 SpeechBrain 在 VoxLingua107 數據集 上訓練的口語語言識別模型。該模型使用了之前用於說話人識別的 ECAPA - TDNN 架構,能夠根據所說的語言對語音進行分類,覆蓋了 107 種不同的語言,包括阿布哈茲語、南非荷蘭語、阿姆哈拉語等。
預期用途和侷限性
用途
- 直接用於口語語言識別。
- 作為話語級特徵(嵌入)提取器,用於在您自己的數據上創建專用的語言識別模型。
侷限性和偏差
由於該模型是在 VoxLingua107 上訓練的,因此存在許多侷限性和偏差,其中一些如下:
- 對小語種的識別準確率可能相當有限。
- 對女性語音的識別效果可能比男性語音差(因為 YouTube 數據中男性語音更多)。
- 根據主觀實驗,對帶有外國口音的語音識別效果不佳。
- 對兒童語音和有語言障礙的人的語音識別效果可能不佳。
訓練數據
該模型在 VoxLingua107 上進行訓練。VoxLingua107 是一個用於訓練口語語言識別模型的語音數據集,由從 YouTube 視頻中自動提取的短語音片段組成,並根據視頻標題和描述的語言進行標註,經過一些後處理步驟以過濾掉誤報。該數據集包含 107 種語言的數據,訓練集中語音的總時長為 6628 小時,每種語言的平均數據量為 62 小時,但每種語言的實際數據量差異很大。此外,還有一個單獨的開發集,包含來自 33 種語言的 1609 個語音片段,由至少兩名志願者驗證確實包含給定的語言。
訓練過程
使用 SpeechBrain 訓練該模型,訓練配方將很快發佈。
評估結果
在開發數據集上的錯誤率為 7%。
🔧 技術細節
文檔未提及詳細技術細節,暫無法提供。
📄 許可證
本項目採用 Apache - 2.0 許可證。
BibTeX 引用和引用信息
@inproceedings{valk2021slt,
title={{VoxLingua107}: a Dataset for Spoken Language Recognition},
author={J{\"o}rgen Valk and Tanel Alum{\"a}e},
booktitle={Proc. IEEE SLT Workshop},
year={2021},
}