| Tutoriels | Site Web | Documentation | ? Contribution | ? Houggingface |
S'il vous plaît, aidez notre projet communautaire. Star sur github!
Nouvelles passionnantes (janvier 2024): Découvrez ce qui est nouveau dans SpeechBrain 1.0 ici!
SpeechBrain est une boîte à outils Pytorch open source qui accélère le développement de l'IA conversationnel , c'est-à-dire la technologie derrière les assistants de la parole , les chatbots et les modèles de gros langues .
Il est fabriqué pour une création rapide et facile de technologies avancées pour le traitement de la parole et du texte .
Avec l'essor de l'apprentissage en profondeur, des domaines autrefois lointains comme le traitement de la parole et la PNL sont désormais très proches. Un réseau neuronal bien conçu et de grands ensembles de données sont tout ce dont vous avez besoin.
Nous pensons qu'il est maintenant temps pour une boîte à outils holistique qui, imitant le cerveau humain, soutient conjointement diverses technologies pour des systèmes d'IA conversationnels complexes.
Cela couvre la reconnaissance de la parole , la reconnaissance des conférenciers , l'amélioration de la parole , la séparation de la parole , la modélisation du langage , le dialogue et au-delà.
Aligné sur notre objectif à long terme de la conversation naturelle de la machine humaine, y compris pour les individus non verbaux, nous avons récemment ajouté un soutien à la modalité EEG.
Nous partageons plus de 200 recettes de formation compétitives sur plus de 40 ensembles de données prenant en charge 20 tâches de traitement de la parole et du texte (voir ci-dessous).
Nous soutenons à la fois la formation à partir de zéro et des modèles pré-entraînés raffinés tels que Whisper, Wav2Vec2, Wavlm, Hubert, GPT2, LLAMA2, et au-delà. Les modèles sur Hugging Face peuvent être facilement branchés et affinés.
Pour toute tâche, vous formez le modèle en utilisant ces commandes:
python train . py hparams / train . yamlLes hyperparamètres sont encapsulés dans un fichier YAML, tandis que le processus de formation est orchestré via un script Python.
Nous avons maintenu une structure de code cohérente sur différentes tâches.
Pour une meilleure réplicabilité, les journaux de formation et les points de contrôle sont hébergés sur Dropbox.
from speechbrain . inference import EncoderDecoderASR
asr_model = EncoderDecoderASR . from_hparams ( source = "speechbrain/asr-conformer-transformerlm-librispeech" , savedir = "pretrained_models/asr-transformer-transformerlm-librispeech" )
asr_model . transcribe_file ( "speechbrain/asr-conformer-transformerlm-librispeech/example.wav" )Accélération de la recherche : accélérer la recherche universitaire et industrielle. Vous pouvez développer et intégrer de nouveaux modèles sans effort, en comparant leurs performances à nos lignes de base.
⚡️ Prototypage rapide : idéal pour le prototypage rapide dans les projets sensibles au temps.
? Outil éducatif : la simplicité de Speechbrain en fait une précieuse ressource éducative. Il est utilisé par des institutions comme Mila, l'Université Concordia, l'Université Avignon et bien d'autres pour la formation des étudiants.
Pour commencer avec Speech Brain, suivez ces étapes simples:
Installer Speech Brain à l'aide de PYPI:
pip install speechbrainAccédez à Speech Brain dans votre code Python:
import speechbrain as sbCette installation est recommandée pour les utilisateurs qui souhaitent mener des expériences et personnaliser la boîte à outils en fonction de leurs besoins.
Clone le référentiel GitHub et installer les exigences:
git clone https://github.com/speechbrain/speechbrain.git
cd speechbrain
pip install -r requirements.txt
pip install --editable .Accédez à Speech Brain dans votre code Python:
import speechbrain as sb Toutes les modifications apportées au package speechbrain seront automatiquement reflétées, grâce au drapeau --editable .
Assurez-vous que votre installation est correcte en exécutant les commandes suivantes:
pytest tests
pytest --doctest-modules speechbrainDans SpeechBrain, vous pouvez former un modèle pour toute tâche en utilisant les étapes suivantes:
cd recipes / < dataset > / < task > /
python experiment . py params . yaml Les résultats seront enregistrés dans le output_folder spécifié dans le fichier YAML.
Site Web: Explorez les informations générales sur le site officiel.
Tutoriels: Commencez par des tutoriels de base couvrant les fonctionnalités fondamentales. Trouvez des tutoriels et des sujets avancés dans la catégorie des cahiers de tutoriels dans la documentation Speech Brain.
Documentation: Des informations détaillées sur l'API Speechbrain, les directives de contribution et le code sont disponibles dans la documentation.
| Tâches | Ensembles de données | Technologies / modèles |
|---|---|---|
| Reconnaissance de la parole | Aishell-1, Commonvoice, Dvoice, Ksponspeech, LibrisPeEch, Media, RescueSpeech, Switchboard, Timit, TedLium2, VoiceBank | CTC, transducteurs, transformateurs, seq2seq, techniques de recherche de faisceau pour CTC, SEQ2SEQ, transducteurs), RESSORATION, CONFORMER, BRANCHFORMER, HYPERCONFORMER, KALDI2-FST |
| Reconnaissance de l'orateur | Voxceleb | ECAPA-TDNN, RESNET, XVECTORS, PLDA, Score Normalisation |
| Séparation de la parole | WSJ0MIX, Librimix, Wham!, Whamr!, Aishell1Mix, Binauralwsj0Mix | SepFormer, RepoFormer, SKIM, DUALPATH RNN, convtasnet |
| Amélioration de la parole | DNS, VoiceBank | Sepformer, Metricgan, Metricgan-U, Segan, masquage spectral, masquage du temps |
| Interprétabilité | ESC50 | Cartes écoutables pour les classificateurs audio (L-MAC), l'apprentissage à l'interprétation (L2I), Factorisation de matrice non négative (NMF), PIQ |
| Génération de discours | Audiomnist | Diffusion, diffusion latente |
| Texte vocal | LjSpeech, Libritts | Tacotron2, Tacotron2 multi-pardeur zéro-shot, FastSpeech2 |
| Vocolage | LjSpeech, Libritts | HIFIGAN, Diffwave |
| Compréhension de la langue parlée | Médias, Slurp, Commandes de discours courantes, minuteries et telles | SLU direct, SLU découplé, SLU à plusieurs degrés |
| Traduction de la parole | CVSS | Hubert discret, Hifigan, Wav2Vec2 |
| Traduction de la parole | Fisher Callhome (espagnol), IWSLT22 (LowResource) | wav2vec2 |
| Classification des émotions | IemoCap, ZaionemotionDataset | ECAPA-TDNN, WAV2VEC2, Diarisation des émotions |
| Identification du langage | Voxlingua107, CommonLanguage | Ecapa-tdnn |
| Détection d'activité vocale | Libritry | CRDNN |
| Classification saine | ESC50, Urbansound | CNN14, ECAPA-TDNN |
| Apprentissage auto-supervisé | CommonVoice, LibRispenech | wav2vec2 |
| Apprentissage métrique | Real-M, VoiceBank | Estimation SNR aveugle, apprentissage pesq |
| Alignement | Timidre | CTC, viterbi, avant en avant |
| Diarité | Ami | ECAPA-TDNN, Vectors X, regroupement spectral |
| Tâches | Ensembles de données | Technologies / modèles |
|---|---|---|
| Modélisation des langues | CommonVoice, LibRispenech | n-grams, rnnlm, transformère |
| Génération de réponse | Multiples | Gpt2, lama2 |
| Graphème à phonème | Bibliothèque | RNN, transformateur, apprentissage du curriculum, perte d'homographes |
| Tâches | Ensembles de données | Technologies / modèles |
|---|---|---|
| Imagerie motrice | BNCI2014001, BNCI2014004, BNCI2015001, LEE2019_MI, ZHOU201 | EEGNET, ShallowConvnet, EegConFormer |
| P300 | BNCI2014009, EPFLP300, BI2015A, | Eegnet |
| Svep | Lee2019_ssvep | Eegnet |
SpeechBrain comprend une gamme de fonctionnalités indigènes qui améliorent le développement des technologies de l'IA conversationnelles. Voici quelques exemples:
Orchestration de formation: la classe Brain sert d'outil entièrement personnalisable pour gérer la formation et les boucles d'évaluation sur les données. Il simplifie les boucles de formation tout en offrant la flexibilité de remplacer toute partie du processus.
Gestion de l'hyperparamètre: un fichier hyperparamètre basé sur YAML spécifie tous les hyperparamètres, des nombres individuels (par exemple, le taux d'apprentissage) pour compléter les objets (par exemple, modèles personnalisés). Cette solution élégante simplifie considérablement le script d'entraînement.
Dynamic DatalOader: permet la lecture de données flexible et efficace.
Formation GPU: prend en charge la formation unique et multi-GPU, y compris la formation distribuée.
Batching dynamique: le lot dynamique à la volée améliore le traitement efficace des signaux de longueur variable.
Formation de précision mixte: accélère la formation à travers des techniques de précision mixte.
La lecture efficace des données: lit efficacement de grands ensembles de données à partir d'un système de fichiers réseau partagé (NFS) via webDataset.
Étreindre l'intégration du visage: interface parfaitement avec HuggingFace pour des modèles populaires tels que Wav2Vec2 et Hubert.
Intégration d'Orion: interfaces avec Orion pour le réglage de l'hyperparamètre.
Techniques d'augmentation de la parole: comprend le spécification, le bruit, la réverbération, etc.
Scripts de préparation des données: comprend des scripts pour préparer des données pour les ensembles de données pris en charge.
SpeechBrain évolue rapidement, avec des efforts continus pour soutenir un éventail croissant de technologies à l'avenir.
SpeechBrain intègre une variété de technologies, y compris celles qui atteignent des performances compétitives ou de pointe.
Pour un aperçu complet des performances obtenues sur différentes tâches, ensembles de données et technologies, veuillez visiter ici.
Nous avons des plans ambitieux pour l'avenir, en mettant l'accent sur les priorités suivantes:
Évolution: nous visons à fournir des recettes et des technologies complètes pour la formation de modèles massifs sur des ensembles de données approfondis.
Échelle: Bien que la mise à l'échelle offre des performances sans précédent, nous reconnaissons les défis du déploiement de grands modèles dans les scénarios de production. Nous nous concentrons sur l'IA conversationnelle en temps réel, streamable et à petite empreinte.
Modèles de grande langue multimodaux : nous envisageons un avenir où un modèle de fondation unique peut gérer un large éventail de tâches de texte, de parole et d'audio. Notre équipe principale se concentre sur l'activation de la formation des LLM multimodales avancés.
Si vous utilisez Speech Brain dans votre recherche ou votre entreprise, veuillez la citer en utilisant l'entrée Bibtex suivante:
@misc { speechbrainV1 ,
title = { Open-Source Conversational AI with {SpeechBrain} 1.0 } ,
author = { Mirco Ravanelli and Titouan Parcollet and Adel Moumen and Sylvain de Langen and Cem Subakan and Peter Plantinga and Yingzhi Wang and Pooneh Mousavi and Luca Della Libera and Artem Ploujnikov and Francesco Paissan and Davide Borra and Salah Zaiem and Zeyu Zhao and Shucong Zhang and Georgios Karakasidis and Sung-Lin Yeh and Pierre Champion and Aku Rouhe and Rudolf Braun and Florian Mai and Juan Zuluaga-Gomez and Seyed Mahed Mousavi and Andreas Nautsch and Xuechen Liu and Sangeet Sagar and Jarod Duret and Salima Mdhaffar and Gaelle Laperriere and Mickael Rouvier and Renato De Mori and Yannick Esteve } ,
year = { 2024 } ,
eprint = { 2407.00463 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.LG } ,
url = { https://arxiv.org/abs/2407.00463 } ,
}
@misc { speechbrain ,
title = { {SpeechBrain}: A General-Purpose Speech Toolkit } ,
author = { Mirco Ravanelli and Titouan Parcollet and Peter Plantinga and Aku Rouhe and Samuele Cornell and Loren Lugosch and Cem Subakan and Nauman Dawalatabad and Abdelwahab Heba and Jianyuan Zhong and Ju-Chieh Chou and Sung-Lin Yeh and Szu-Wei Fu and Chien-Feng Liao and Elena Rastorgueva and François Grondin and William Aris and Hwidong Na and Yan Gao and Renato De Mori and Yoshua Bengio } ,
year = { 2021 } ,
eprint = { 2106.04624 } ,
archivePrefix = { arXiv } ,
primaryClass = { eess.AS } ,
note = { arXiv:2106.04624 }
}