| دروس | الموقع | الوثائق | ؟ المساهمة | ؟ Luggingface |
من فضلك ، ساعد مشروع مجتمعنا. نجمة على جيثب!
أخبار مثيرة (يناير ، 2024): اكتشف ما هو جديد في الكلام 1.0 هنا!
Speechbrain هي مجموعة أدوات Pytorch مفتوحة المصدر تقوم بتسريع تطوير AI للمحادثة ، أي التكنولوجيا وراء مساعدي الكلام ، ودردشة ، ونماذج اللغة الكبيرة .
تم تصميمه لإنشاء تقنيات متقدمة وسهلة للمعالجة الكلام والنص .
مع ظهور التعلم العميق ، أصبحت المجالات التي كانت ذات مرة مثل معالجة الكلام و NLP قريبة جدًا الآن. الشبكة العصبية المصممة جيدًا ومجموعات البيانات الكبيرة هي كل ما تحتاجه.
نعتقد أن الوقت قد حان الآن لمجموعة أدوات شاملة ، مما يحاكي الدماغ البشري ، يدعم بشكل مشترك تقنيات متنوعة لأنظمة الذكاء الاصطناعى المحادثة المعقدة.
يمتد هذا التعرف على الكلام ، والتعرف على المتحدثين ، وتعزيز الكلام ، وفصل الكلام ، ونمذجة اللغة ، والحوار ، وما بعده.
تتماشى مع هدفنا طويل الأجل المتمثل في محادثة الإنسان الطبيعي ، بما في ذلك الأفراد غير اللفظيين ، لقد أضفنا مؤخرًا دعمًا لطريقة EEG.
نحن نشارك أكثر من 200 وصفة تدريب تنافسية على أكثر من 40 مجموعة بيانات تدعم 20 مهمة لمعالجة الكلام والنص (انظر أدناه).
نحن ندعم كل من التدريب من الصفر والنماذج المسبقة للضوء مثل Whisper و Wav2Vec2 و Wavlm و Hubert و GPT2 و Llama2 وما وراءها. يمكن توصيل النماذج الموجودة على Luggingface بسهولة وضبطها.
لأي مهمة ، تقوم بتدريب النموذج باستخدام هذه الأوامر:
python train . py hparams / train . yamlيتم تغليف المداخن الفائقة في ملف YAML ، بينما يتم تنظيم عملية التدريب من خلال نص Python.
حافظنا على بنية رمز متسقة عبر مهام مختلفة.
لتحسين التكرار ، يتم استضافة سجلات التدريب ونقاط التفتيش على 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" )تسريع البحث : تسريع الأبحاث الأكاديمية والصناعية. يمكنك تطوير ودمج نماذج جديدة دون عناء ، ومقارنة أدائها مع خطوط الأساس لدينا.
⚡ النماذج الأولية السريعة : مثالية للنماذج الأولية السريعة في المشاريع الحساسة للوقت.
؟ الأداة التعليمية : بساطة Probskbrain تجعلها مورد تعليميًا قيمًا. يتم استخدامها من قبل مؤسسات مثل ميلا وجامعة كونكورديا وجامعة أفينيون والعديد من الآخرين لتدريب الطلاب.
للبدء في الكلام ، اتبع هذه الخطوات البسيطة:
قم بتثبيت Fkebrain باستخدام PYPI:
pip install speechbrainالوصول إلى الكلام في رمز Python الخاص بك:
import speechbrain as sbيوصى بهذا التثبيت للمستخدمين الذين يرغبون في إجراء تجارب وتخصيص مجموعة الأدوات وفقًا لاحتياجاتهم.
استنساخ مستودع github وتثبيت المتطلبات:
git clone https://github.com/speechbrain/speechbrain.git
cd speechbrain
pip install -r requirements.txt
pip install --editable .الوصول إلى الكلام في رمز Python الخاص بك:
import speechbrain as sb سيتم تنعكس أي تعديلات على حزمة speechbrain تلقائيًا ، وذلك بفضل العلم --editable .
تأكد من أن التثبيت صحيح عن طريق تشغيل الأوامر التالية:
pytest tests
pytest --doctest-modules speechbrainفي الكلام ، يمكنك تدريب نموذج لأي مهمة باستخدام الخطوات التالية:
cd recipes / < dataset > / < task > /
python experiment . py params . yaml سيتم حفظ النتائج في output_folder المحددة في ملف YAML.
الموقع: استكشف المعلومات العامة على الموقع الرسمي.
البرامج التعليمية: ابدأ بالبرامج التعليمية الأساسية التي تغطي الوظائف الأساسية. ابحث عن البرامج التعليمية والمواضيع المتقدمة في فئة دفاتر التعليمية في وثائق الكلام.
الوثائق: تتوفر معلومات مفصلة عن واجهة برمجة تطبيقات الكلام ، وإرشادات المساهمة ، والرمز في الوثائق.
| المهام | مجموعات البيانات | التقنيات/النماذج |
|---|---|---|
| التعرف على الكلام | Aishell-1 ، CommonVoice ، Dvoice ، Ksponspeech ، Librispeech ، Media ، Rescuespeech ، Switchboard ، Timit ، Tedlium2 ، VoiceBank | CTC ، محولات الطاقة ، المحولات ، SEQ2SEQ ، تقنيات البحث العوارض لـ CTC ، SEQ2SeQ ، محولات الطاقة) ، الإنقاذ ، المطابقة ، الفرع ، hyperconformer ، Kaldi2-FST |
| التعرف على المتحدث | voxceleb | ECAPA-TDNN ، RESNET ، XVECTORS ، PLDA ، تطبيع النتيجة |
| فصل الكلام | WSJ0Mix ، Librimix ، Wham! ، Whamr! ، Aishell1mix ، Binauralwsj0mix | sepformer ، Resepformer ، skim ، dualpath rnn ، convtasnet |
| تعزيز الكلام | DNS ، الصوتية | Sepformer ، Metricgan ، Metricgan-U ، Segan ، إخفاء الطيف ، إخفاء الوقت |
| التفسير | ESC50 | خرائط قابلة للاستماع لمصنفات الصوت (L-MAC) ، التعلم إلى التفسير (L2I) ، معامل المصفوفة غير السالبة (NMF) ، PIQ |
| توليد الكلام | السمعية | الانتشار ، الانتشار الكامن |
| نص إلى كلام | ljspeech ، libritts | Tacotron2 ، Tacotron2 ، Tacotron2 ، Fastspeech2 |
| الصوت | ljspeech ، libritts | Hifigan ، Diffwave |
| فهم اللغة المنطوقة | وسائل الإعلام ، slurp ، أوامر الكلام بطلاقة ، أجهزة توقيت و such | SLU المباشر ، SLU مفصل ، SLU متعددة المراحل |
| ترجمة الكلام إلى الكلام | CVSS | Hubert ، Hifigan ، Wav2Vec2 |
| ترجمة الكلام | فيشر Callhome (الإسبانية) ، IWSLT22 (LowResource) | WAV2VEC2 |
| تصنيف العاطفة | IEMOCAP ، zaionemotiondataset | ECAPA-TDNN ، WAV2VEC2 ، العاطفة مذكرات |
| تحديد اللغة | voxlingua107 ، اللغة العامة | ecapa-tdnn |
| اكتشاف النشاط الصوتي | libriparty | crdnn |
| تصنيف الصوت | ESC50 ، urbansound | CNN14 ، ECAPA-TDNN |
| التعلم الخاضع للإشراف | CommonVoice ، Librispeech | WAV2VEC2 |
| التعلم المتري | MELA M ، صوتية | تقدير أعمى SNR ، التعلم PESQ |
| تنسيق | توقيت | CTC ، Viterbi ، إلى الأمام |
| تسوية | أمي | ECAPA-TDNN ، محلات X ، التجميع الطيفي |
| المهام | مجموعات البيانات | التقنيات/النماذج |
|---|---|---|
| نمذجة اللغة | CommonVoice ، Librispeech | n-grams ، rnnlm ، transformerlm |
| توليد الاستجابة | multiwoz | GPT2 ، Llama2 |
| grapheme-to-phoneme | Librispeech | RNN ، المحول ، تعلم المناهج الدراسية ، خسارة متجانسة |
| المهام | مجموعات البيانات | التقنيات/النماذج |
|---|---|---|
| الصور الحركية | BNCI2014001 ، BNCI2014004 ، BNCI2015001 ، LEE2019_MI ، ZHOU201 | eEgnet ، algralowconvnet ، eEgConformer |
| P300 | BNCI2014009 ، EPFLP300 ، BI2015A ، | eEgnet |
| ssvep | LEE2019_SSVEP | eEgnet |
يتضمن الكلام مجموعة من الوظائف الأصلية التي تعزز تطوير تقنيات الذكاء الاصطناعي للمحادثة. فيما يلي بعض الأمثلة:
تزامن التدريب: تعمل فئة Brain كأداة قابلة للتخصيص بالكامل لإدارة حلقات التدريب والتقييم على البيانات. إنه يبسط حلقات التدريب مع توفير المرونة لتجاوز أي جزء من العملية.
إدارة Hyperparameter: يحدد ملف Hyperparameter المستند إلى YAML جميع أجهزة التمييز المفرطة ، من الأرقام الفردية (على سبيل المثال ، معدل التعلم) إلى الكائنات الكاملة (على سبيل المثال ، النماذج المخصصة). هذا الحل الأنيق يبسط بشكل كبير البرنامج النصي التدريبي.
Dataloader الديناميكي: يتيح قراءة البيانات المرنة والفعالة.
تدريب GPU: يدعم التدريب الفردي والمتعدد GPU ، بما في ذلك التدريب الموزع.
التضمين الديناميكي: يعمل التضليل الديناميكي على الطيران على تعزيز المعالجة الفعالة للإشارات المتغيرة الطول.
التدريب المختلط الدقة: يسارع التدريب من خلال تقنيات الدقة المختلطة.
قراءة البيانات الفعالة: تقرأ مجموعات البيانات الكبيرة بكفاءة من نظام ملفات الشبكة المشتركة (NFS) عبر WebDataset.
تكامل الوجه المعانقة: واجهات بسلاسة مع Huggingface للنماذج الشائعة مثل Wav2Vec2 و Hubert.
تكامل أوريون: واجهات مع أوريون لضبط الفائق.
تقنيات تكبير الكلام: تشمل specaugment ، الضوضاء ، الصدى ، وأكثر من ذلك.
نصوص إعداد البيانات: تتضمن البرامج النصية لإعداد البيانات لمجموعات البيانات المدعومة.
يتطور الكلام بسرعة ، مع جهود مستمرة لدعم مجموعة متنامية من التقنيات في المستقبل.
يدمج Fkeerbrain مجموعة متنوعة من التقنيات ، بما في ذلك تلك التي تحقق الأداء التنافسي أو المتطور.
للحصول على نظرة عامة شاملة على الأداء الذي تم تحقيقه عبر المهام ومجموعات البيانات والتقنيات المختلفة ، يرجى زيارة هنا.
لدينا خطط طموحة للمستقبل ، مع التركيز على الأولويات التالية:
Scale Up: نحن نهدف إلى توفير وصفات وتقنيات شاملة لتدريب النماذج الضخمة على مجموعات البيانات الواسعة.
Scale Down: في حين توفر Scaling Up أداءً غير مسبوق ، فإننا ندرك تحديات نشر نماذج كبيرة في سيناريوهات الإنتاج. نحن نركز على AI في الوقت الفعلي ، قابلة للتشغيل ، ومحادثة صغرى.
نماذج لغة كبيرة متعددة الوسائط : نتصور مستقبلًا حيث يمكن لنموذج الأساس الواحد التعامل مع مجموعة واسعة من المهام النصية والكلام والصوت. يركز فريقنا الأساسي على تمكين تدريب LLMs المتقدمة متعددة الوسائط.
إذا كنت تستخدم Prosebain في بحثك أو عملك ، فيرجى الاستشهاد به باستخدام إدخال Bibtex التالي:
@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 }
}