إسماعيل بن علا

NatVC

تحويل الصوت العصبي في الزمن الحقيقي

الصوت · شتنبر 2025 · مكتمل

تحويل صوت شخص إلى صوت شخص آخر، مباشرة، دون تأخير ملحوظ

التقنياتPyTorchAccelerate (multi-GPU)StreamVCLLVCTensorBoardONNX

NatVC — نظرة عامة

نظرة عامة

تحويل الصوت (Voice Conversion) يجعل متحدثًا يبدو كمتحدث آخر مع الحفاظ على ما يقوله. القيام بذلك مباشرة أمر صعب: كل ميلي ثانية من المعالجة تضيف تأخيرًا يمكن للمستمع سماعه. أطروحة الماجستير الخاصة بي في Centrale Lyon، التي أنجزتها خلال تدريبي في SteelSeries، طرحت سؤالًا: هل يستطيع نموذج مبني على StreamVC تحويل أي صوت إلى أي صوت آخر في الزمن الحقيقي، ضمن ميزانية الكمون (latency) لتطبيق مباشر، دون فقدان الطبيعية؟

بنيت نظام تحويل صوت بـ PyTorch وONNX بكمون من طرف إلى طرف أقل من 80 ms، ودرّبته على عدة وحدات GPU باستخدام Accelerate ودالة خسارة mel متعددة المقاييس، وأضفت مزجًا لأصوات متعددة في الزمن الحقيقي مبنيًا على بنية LLVC.

من خلال ضبط دقيق موجّه ومعالجة لاحقة للموجة الصوتية، حسّن النظام مقياس MOS (متوسط درجة الرأي، وهو تقييم المستمعين لطبيعية الصوت) بمقدار 0.3 نقطة مقارنة بخط الأساس StreamVC. هذا عمل صناعي، لذا يبقى الوصف على مستوى عام والكود ملكية خاصة.

السؤال

هل يستطيع نموذج مبني على StreamVC إجراء تحويل صوت من أي متحدث إلى أي آخر في الزمن الحقيقي، ضمن ميزانية الكمون لتطبيق مباشر، دون التضحية بطبيعية الصوت؟

أهم الميزات

كيف يعمل

  1. الانطلاق من StreamVC

    بنية تحويل صوت متدفقة (streaming) شكّلت خط الأساس، واختيرت لأنها تعالج الصوت فور وصوله.

  2. التدريب على نطاق واسع

    تدريب موزّع على عدة وحدات GPU باستخدام Accelerate، مع دالة خسارة mel متعددة المقاييس لمقارنة الصوت المولَّد بالصوت المستهدف على عدة مستويات دقة.

  3. مزج الأصوات

    مزج أصوات متعددة في الزمن الحقيقي مبني على بنية LLVC.

  4. تحسين الجودة

    ضبط دقيق موجّه ومعالجة لاحقة للموجة الصوتية رفعا MOS بمقدار 0.3 نقطة مقارنة بخط الأساس StreamVC.

  5. النشر للزمن الحقيقي

    نظام بـ PyTorch وONNX يحافظ على كمون من طرف إلى طرف أقل من 80 ms.

التقنيات المستخدمة

ما تعلمته

الحدود

مشاريع ذات صلة