| Tutorials | Website | Dokumentation | ? Beitragen | ? Umarmung |
Bitte helfen Sie unserem Community -Projekt. Star auf Github!
Aufregende Nachrichten (Januar 2024): Entdecken Sie hier, was in Speechbrain 1.0 hier ist!
Speechbrain ist ein Open-Source -Pytorch-Toolkit, das die Entwicklung der Konversations-KI , dh die Technologie hinter Sprachassistenten , Chatbots und Großsprachenmodellen beschleunigt.
Es wird für eine schnelle und einfache Schaffung fortschrittlicher Technologien für die Sprach- und Textverarbeitung hergestellt.
Mit dem Aufstieg des tiefen Lernens sind einst distanzierende Domänen wie Sprachverarbeitung und NLP jetzt sehr nahe. Ein gut gestaltetes neuronales Netzwerk und große Datensätze sind alles, was Sie brauchen.
Wir glauben, dass es jetzt Zeit für ein ganzheitliches Toolkit ist, das das menschliche Gehirn gemeinsam verschiedene Technologien für komplexe Konversations -KI -Systeme unterstützt.
Dies umfasst Spracherkennung , Sprechererkennung , Sprachverbesserung , Sprachtrennung , Sprachmodellierung , Dialog und darüber hinaus.
In Übereinstimmung mit unserem langfristigen Ziel der natürlichen Konversation des Menschen-Maschinen, auch für nonverbale Personen, haben wir kürzlich Unterstützung für die EEG-Modalität hinzugefügt.
Wir teilen über 200 wettbewerbsfähige Schulungsrezepte für mehr als 40 Datensätze, die 20 Sprach- und Textverarbeitungsaufgaben unterstützen (siehe unten).
Wir unterstützen sowohl das Training von Grund auf als auch fein abgestimmte, vorgefertigte Modelle wie Whisper, Wav2VEC2, Wavlm, Hubert, GPT2, Llama2 und darüber hinaus. Die Modelle zum Umarmungen können leicht eingesteckt und fein abgestimmt werden.
Für jede Aufgabe trainieren Sie das Modell mit diesen Befehlen:
python train . py hparams / train . yamlDie Hyperparameter werden in einer YAML -Datei eingekapselt, während der Trainingsprozess durch ein Python -Skript orchestriert wird.
Wir haben eine konsistente Codestruktur über verschiedene Aufgaben hinweg beibehalten.
Für eine bessere Reproduzierbarkeit werden Trainingsprotokolle und Kontrollpunkte auf Dropbox gehostet.
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" )Forschungsbeschleunigung : Beschleunigung der akademischen und industriellen Forschung. Sie können neue Modelle mühelos entwickeln und integrieren und ihre Leistung mit unseren Baselines vergleichen.
⚡️ Rapid Prototyping : Ideal für schnelle Prototypen in zeitempfindlichen Projekten.
? Bildungsinstrument : Die Einfachheit des Sprachhirns macht es zu einer wertvollen Bildungsressource. Es wird von Institutionen wie Mila, der Concordia University, der Avignon University und vielen anderen für Studentenausbildung verwendet.
Befolgen Sie die folgenden Schritte, um mit Speechbrain zu beginnen:
Installieren Sie die Sprache mit PYPI:
pip install speechbrainGreifen Sie in Ihrem Python -Code auf Speechbrain zu:
import speechbrain as sbDiese Installation wird für Benutzer empfohlen, die Experimente durchführen und das Toolkit entsprechend ihren Anforderungen anpassen möchten.
Klonen Sie das Github -Repository und installieren Sie die Anforderungen:
git clone https://github.com/speechbrain/speechbrain.git
cd speechbrain
pip install -r requirements.txt
pip install --editable .Greifen Sie in Ihrem Python -Code auf Speechbrain zu:
import speechbrain as sb Alle Änderungen am speechbrain -Paket werden dank der --editable automatisch reflektiert.
Stellen Sie sicher, dass Ihre Installation korrekt ist, indem die folgenden Befehle ausgeführt werden:
pytest tests
pytest --doctest-modules speechbrainIn Sprachbrain können Sie ein Modell für jede Aufgabe aus den folgenden Schritten trainieren:
cd recipes / < dataset > / < task > /
python experiment . py params . yaml Die Ergebnisse werden in der in der YAML -Datei angegebenen output_folder gespeichert.
Website: Entdecken Sie allgemeine Informationen auf der offiziellen Website.
Tutorials: Beginnen Sie mit grundlegenden Tutorials, die grundlegende Funktionen abdecken. Finden Sie erweiterte Tutorials und Themen in der Kategorie "Tutorial Notebooks" in der Dokumentation der Sprachbrainer.
Dokumentation: Detaillierte Informationen zu der Sprach -API, Beitragsrichtlinien und Code finden Sie in der Dokumentation.
| Aufgaben | Datensätze | Technologien/Modelle |
|---|---|---|
| Spracherkennung | Aishell-1, CommonVoice, Dvoice, Ksponspeech, Librispeech, Media, RescueSpeech, Switchboard, Timit, Tedlium2, Voicebank | CTC, Wandler, Transformatoren, SEQ2SEQ, BeamSearch-Techniken für CTC, SEQ2SEQ, Wandler), Rescoring, Conformer, Branchformer, Hyperconformer, Kaldi2-FST |
| Sprechererkennung | Voxceleb | ECAPA-TDNN, RESNET, XVECTORS, PLDA, Score Normalisierung |
| Sprachtrennung | Wsj0mix, librimix, wham !, whamr! | Sepformer, Resespformer, Skim, DualPath RNN, Convtasnet |
| Sprachverbesserung | DNS, Voicebank | Sepformer, Metricgan, Metricgan-U, Segan, Spektralmaskierung, Zeitmaskierung |
| Interpretierbarkeit | Esc50 | Hörbare Karten für Audio-Klassifizierer (L-MAC), Lern-to-Interpret (L2I), nicht negative Matrixfaktorisierung (NMF), PIQ |
| Sprachgenerierung | Audiomnist | Diffusion, latente Diffusion |
| Text-to-Speech | Ljspeech, libritts | Tacotron2, Zero-Shot Multi-Sprecher Tacotron2, Fastspeech2 |
| Vokodierung | Ljspeech, libritts | HiFigan, Diffwave |
| Gesprochenes Sprachverständnis | Medien, Slurp, fließende Sprachbefehle, Timer-und -öf | Direkte SLU, entkoppelte SLU, mehrstufige SLU |
| Sprach-zu-Sprach-Übersetzung | CVSS | Diskreter Hubert, Hifigan, Wav2VEC2 |
| Sprachübersetzung | Fisher Callhome (Spanisch), IWSLT22 (LowResource) | WAV2VEC2 |
| Emotionsklassifizierung | Iemocap, ZaionemotionDataset | Ecapa-tdnn, Wav2Vec2, Emotionendurchfallung |
| Sprachidentifizierung | Voxlingua107, CommonLanguage | Ecapa-tdnn |
| Sprachaktivitätserkennung | Libriiparty | Crdnn |
| Klassifizierung | ESC50, Urbansound | CNN14, ECAPA-TDNN |
| Selbstüberprüftes Lernen | CommonVoice, Librispeech | WAV2VEC2 |
| Metrisches Lernen | Real-M, Voicebank | Blind SNR-Bewertung, Pesq-Lernen |
| Ausrichtung | Timit | CTC, Viterbi, vorwärts vorwärts |
| Diarisierung | AMI | Ecapa-tdnn, x-Vektoren, spektrales Clustering |
| Aufgaben | Datensätze | Technologien/Modelle |
|---|---|---|
| Sprachmodellierung | CommonVoice, Librispeech | N-Grams, Rnnlm, Transformerlm |
| Antwortgenerierung | Multiwoz | Gpt2, llama2 |
| Graphem-to-Phonem | Librispeech | RNN, Transformator, Lehrplanlernen, Homographenverlust |
| Aufgaben | Datensätze | Technologien/Modelle |
|---|---|---|
| Motorbilder | BNCI2014001, BNCI2014004, BNCI2015001, LEE2019_MI, Zhou201 | EEGNET, Shallowconvnet, Eegconformer |
| P300 | BNCI2014009, EPFLP300, BI2015A, | EEGNET |
| Ssvep | LEE2019_SSVEP | EEGNET |
Sprachhäute umfassen eine Reihe nativer Funktionen, die die Entwicklung von Gesprächstechnologien verbessern. Hier sind einige Beispiele:
Trainingsorchestrierung: Die Brain dient als vollständig anpassbares Instrument zur Verwaltung von Schulungs- und Bewertungsschleifen über Daten. Es vereinfacht die Trainingsschleifen und bietet die Flexibilität, einen Teil des Prozesses zu überschreiben.
Hyperparameter-Verwaltung: Eine YAML-basierte Hyperparameterdatei gibt alle Hyperparameter an, von einzelnen Zahlen (z. B. Lernrate) bis hin zu Fertigstellung von Objekten (z. B. benutzerdefinierte Modelle). Diese elegante Lösung vereinfacht das Trainingsskript drastisch.
Dynamic Dataloader: Ermöglicht flexible und effiziente Datenlesung.
GPU-Schulung: Unterstützt das Einzel- und Multi-GPU-Training, einschließlich verteilter Schulungen.
Dynamisches Batching: Dynamisches Batching auf der Fliege verbessert die effiziente Verarbeitung von Signalen mit variabler Länge.
Training mit gemischtem Präzision: Beschleunigt das Training durch Techniken mit gemischten Präzision.
Effizientes Datenlesen: Lesen große Datensätze effizient aus einem Shared Network Datei System (NFS) über WebDataset.
Umarmung der Gesichtsintegration: Schnittstellen nahtlos mit Umarmung für beliebte Modelle wie WAV2VEC2 und Hubert.
Orion -Integration: Schnittstellen mit Orion für die Hyperparameterabstimmung.
Sprachvergrößerungstechniken: Beinhaltet Spezifikation, Lärm, Nachhall und mehr.
Datenvorbereitungsskripte: Enthält Skripte zum Vorbereiten von Daten für unterstützte Datensätze.
Die Sprache entwickelt sich rasch weiter, wobei in Zukunft kontinuierliche Bemühungen zur Unterstützung einer wachsenden Reihe von Technologien unterstützt werden.
Sprache integriert eine Vielzahl von Technologien, einschließlich derer, die wettbewerbsfähige oder hochmoderne Leistung erzielen.
Für einen umfassenden Überblick über die erreichte Leistung für verschiedene Aufgaben, Datensätze und Technologien finden Sie hier bitte.
Wir haben ehrgeizige Pläne für die Zukunft mit Schwerpunkt auf folgenden Prioritäten:
Skalieren: Wir wollen umfassende Rezepte und Technologien für die Schulung massiver Modelle für umfangreiche Datensätze bereitstellen.
SKAHR DESSENS: Während die Skalierung eine beispiellose Leistung liefert, erkennen wir die Herausforderungen beim Einsetzen großer Modelle in Produktionsszenarien. Wir konzentrieren uns auf Echtzeit-, Streamable- und Small-Footprint-Konversations-KI.
Multimodale Großsprachmodelle : Wir stellen uns eine Zukunft vor, bei der ein einzelnes Fundamentmodell eine Vielzahl von Text-, Sprach- und Audioaufgaben bewältigen kann. Unser Kernteam konzentriert sich darauf, die Ausbildung fortschrittlicher multimodaler LLMs zu ermöglichen.
Wenn Sie Sprachbrain in Ihrer Forschung oder Ihrem Geschäft verwenden, zitieren Sie sie bitte mit dem folgenden Bibtex -Eintrag:
@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 }
}