Audio Generation2020متقدم13 دقيقة قراءة
Jukebox: نموذج توليدي للموسيقى
Jukebox: A Generative Model for Music
Dhariwal, P. · Jun, H. · Payne, C. · Kim, J. W. · Radford, A. · Sutskever, I. — arXiv
المشكلة
المشكلة الجوهرية في توليد الموسيقى من الصوت الخام هي الحجم. دقيقة واحدة من صوت بجودة CD تحتوي على أكثر من 2.6 مليون عيّنة بتردد 44.1 كيلوهرتز. الطرق الرمزية كـMIDI تصف النوتات لكنها تفقد جرس الصوت وديناميكياته والتعبير البشري فيه. ومن ناحية أخرى، نمذجة الموجة الصوتية مباشرةً بنماذج ذاتية الانحدار أمرٌ باهظ حسابياً على هذا النطاق، والنماذج السابقة لم تنتج سوى مقاطع قصيرة بجودة منخفضة. ببساطة، لم يوجد نظام قادر على توليد أغانٍ تمتد لدقائق ببنية متماسكة وغناء واقعي وتنوّع في الأسلوب — كل ذلك في مجال الصوت الخام مباشرةً.
الإسهام
يقدّم Jukebox بنية VQ-VAE هرمية تضغط الصوت الخام (بتردد 44.1 كيلوهرتز) بنسب 8× و32× و128× إلى ثلاثة مستويات من الرموز المنفصلة، بكتاب شيفرة من 2048 مُدخلة لكل مستوى. بعد ذلك تتولّى محوِّلات متفرقة ذاتية الانحدار نمذجة توزيع هذه الرموز: النموذج الأوّلي العلوي يلتقط البنية الموسيقية الكبرى (اللحن والهارموني والإيقاع) مشروطاً بالفنان والنوع وكلمات الأغنية — حتى لو لم تكن محاذاة زمنياً — بينما يتكفّل نموذجان أوّليان للترقية باستعادة التفاصيل الصوتية الدقيقة تدريجياً. دُرِّب النظام على 1.2 مليون أغنية، وينتج أغاني متنوعة تمتد لدقائق ببنية متماسكة وغناء بدائي لكنه واضح.
الأثر
أثبت Jukebox أن توليد الصوت الخام على مستوى أغانٍ كاملة أمرٌ ممكن فعلاً، فسدّ الفجوة بين نماذج الموسيقى الرمزية وتوليد الموجة الصوتية. أسلوبه في ترميز الصوت الهرمي أثّر مباشرةً على نماذج لاحقة مثل MusicLM وAudioLM. وأظهرت الورقة أن النماذج الأوّلية المبنية على قادرة على الحفاظ على تماسك موسيقي على مدى زمني طويل، ممّا مهّد الطريق للجيل الحالي من أنظمة ذكاء الموسيقى. والإسهام الأقل وضوحاً لكنه مهم: تمثيلات VQ-VAE تحمل دلالات موسيقية غنية يمكن استخدامها في مهام فهم الموسيقى واسترجاعها، وليس فقط في التوليد.
تخيّل أنك تريد كتابة سيرة شخص بالتفصيل وليس معك إلا صورة جواز سفره. مستحيل — المعلومات لا تكفي. لكن لو كان لديك ثلاث نسخ من قصة حياته: ملخّص في جملة، ومخطّط في صفحة، وفصل كامل؟
ستبدأ بالملخّص لتُمسك بالخط العام، ثم توسّعه إلى مخطّط فيه المحطات الرئيسية، ثم تبني الفصل الكامل بحواراته وتفاصيله. كل مرحلة تُضيف عمقاً وهي تظل مرتبطة بالمستوى الذي فوقها.
Jukebox يفعل الشيء نفسه مع الموسيقى. يضغط الأغنية إلى ثلاث درجات من التفصيل — هيكل خشن، ورسم تخطيطي متوسط، وموجة صوتية دقيقة — ثم يتعلّم توليد كل درجة بناءً على التي تعلوها. النتيجة: أغانٍ متماسكة تمتد لدقائق، مولَّدة مباشرةً من الصوت الخام.
مشكلة الحجم: لماذا الصوت الخام صعب إلى هذا الحد
لكي نفهم لماذا يُعدّ Jukebox إنجازاً، نحتاج أولاً أن نُدرك حجم المشكلة. الصوت بجودة CD يُؤخذ منه 44,100 عيّنة في الثانية الواحدة. أغنية مدتها 4 دقائق فيها نحو 10.5 ملايين عيّنة. لو أردنا بناء يُولّد عيّنة واحدة في كل خطوة — كما يفعل WaveNet — فسيحتاج إلى التنبؤ بكل عيّنة بالتتابع وهو «ينظر» إلى كل ما سبقها.
لوضع الأمر في سياق مقارن: أغنية من 4 دقائق تُكافئ «مستنداً» من 10.5 ملايين . حتى أكبر النماذج اللغوية لا تعالج سوى بضعة آلاف رمز دفعة واحدة. الفارق ضخم.
الطرق الرمزية مثل MIDI تلتفّ حول المشكلة بتمثيل الموسيقى على شكل أحداث نوتات — نغمة ومدة وشدة. لكنها تُضيّع جرس الصوت والتعبير الغنائي وأجواء التسجيل، أي كل ما يجعل الأغنية تبدو أداءً حيّاً لا تشغيلاً آلياً. التحدي إذن هو العمل مباشرةً على الصوت الخام مع إبقاء المسألة قابلة للحل حسابياً.
الضاغط: VQ-VAE الهرمي
الفكرة الأساسية في Jukebox هي ضغط الصوت الخام إلى سلسلة أقصر بكثير من الرموز المنفصلة قبل محاولة نمذجته. الأداة المستخدمة لذلك هي VQ-VAE، وهو يعتمد على المتجهي.
الفكرة بسيطة: تخيّل نظام بريد يملك مجموعة ثابتة من البطاقات المطبوعة مسبقاً. يقرأ مقطعاً من الصوت ويبحث عن أقرب «بطاقة» مطابقة (متجه من ) ضمن مكتبة من 2048 خياراً. ثم يستخدم فهرس تلك البطاقة فقط لإعادة بناء الصوت. أثناء ، يتعلّم المُرمِّز وكتاب الشيفرة معاً كيف يجعلان هذه البطاقات أكثر تعبيراً.
لكن مستوى واحداً من الضغط لا يكفي. يستخدم Jukebox ثلاثة نماذج VQ-VAE منفصلة تعمل عند دقّات زمنية مختلفة. فكّر فيها كثلاثة مستويات تكبير على خريطة — المدينة، والشارع، والمبنى. المستوى السفلي (ضغط 8×) يحتفظ بالتفاصيل الصوتية الدقيقة كملمس الحروف الساكنة والأنفاس. المستوى الأوسط (ضغط 32×) يلتقط الأنماط الإيقاعية وملامح الجرس. المستوى العلوي (ضغط 128×) لا يحفظ سوى الخطوط الموسيقية العريضة — اللحن والهارموني والبنية العامة.
قرار تصميمي مهم هنا: نماذج VQ-VAE الثلاثة تُدرَّب بشكل مستقل وليس هرمياً. في VQ-VAE الهرمي التقليدي (مثل VQ-VAE-2)، كل مستوى أعلى يُرمِّز فقط ما فات المستوى الأدنى. هنا الوضع مختلف: كل مستوى يُرمِّز الصوت كاملاً بمفرده عند دقّته الخاصة. بمعنى أن رموز أي مستوى تكفي وحدها لإعادة بناء الصوت، وإن اختلفت جودة النتيجة.
لماذا هذا التصميم؟ وجد الباحثون أن المُرمِّز الهرمي المشترك يُؤدي إلى تجاهل المستويات العليا — لأن المستوى السفلي يلتقط تفاصيل كافية فتتعلّم الشبكة إهمال الرموز العلوية. باستخدام مُرمِّزات منفصلة، يُجبَر كل مستوى على تعلّم أفضل ممكن عند نسبة ضغطه.
تدريب VQ-VAE: الخسارة الطيفية وانهيار كتاب الشيفرة
مُرمِّز كل VQ-VAE يتكوّن من أحادية البعد مُكدَّسة — نفس بنية التي عُرفت من WaveNet — وظيفتها تقليص العيّنات الصوتية تدريجياً. فاكّ الترميز يعكس هذه البنية باستخدام لإعادة بناء الموجة الصوتية.
أثناء التدريب تتألف من ثلاثة أجزاء. الأول: ، وهي تُعاقب الفرق بين الصوت الأصلي والمُعاد بناؤه. الثاني: خسارة كتاب الشيفرة، التي تسحب متجهات كتاب الشيفرة نحو مخرجات المُرمِّز المناظرة لها. الثالث: ، وهي تمنع المُرمِّز من القفز بين مُدخلات كتاب الشيفرة بشكل عشوائي.
يُضيف Jukebox مُكوِّناً رابعاً حاسماً: . خسارة إعادة البناء العادية تعمل في المجال الزمني (عيّنة بعيّنة)، لكنها ضعيفة في الحفاظ على الترددات العالية. الخسارة الطيفية تقارن للصوت الأصلي مع المُعاد بناؤه، فتُعاقب التوافقيات المفقودة والملمس عالي التردد بشكل صريح. بدون هذا المكوِّن، تفقد المستويات الوسطى والعليا معظم الترددات فوق بضعة كيلوهرتزات — ويخرج الصوت مكتوماً كأنه خلف حاجز.
من أشهر المشاكل في نماذج VQ-VAE ما يُعرف بـ**: النموذج يتعلّم الاعتماد على حفنة صغيرة من المُدخلات ويُهمل الباقي. تخيّل مكتبة فيها 2048 بطاقة بريدية لكن نظام البريد لا يختار منها سوى 50 — والباقي يتراكم عليه الغبار.
Jukebox يواجه هذه المشكلة بتقنية إعادة البدء العشوائي: كلما انخفض استخدام مُدخلة في كتاب الشيفرة تحت عتبة معينة، تُنقل فوراً إلى موقع قريب من مخرج نشط لـلمُرمِّز. هذا يُبقي جميع المُدخلات «حيّة» ومتتبّعة لتوزيع البيانات الفعلي. والنتيجة لافتة — إنتروبيا كتاب الشيفرة تبقى قريبة من حدّها الأقصى النظري طوال التدريب.
المُلحِّن: النماذج الأوّلية ذاتية الانحدار بالمحوِّل
الضغط وحده لا يصنع موسيقى — كل ما يفعله هو جعل السلسلة قصيرة بما يكفي لنمذجتها. التوليد الحقيقي يحدث في النماذج الأوّلية (): وهي محوِّلات تتعلّم توزيع رموز VQ-VAE ثم تُولّد رموزاً جديدة منه.
النظام يستخدم ثلاثة نماذج أوّلية تُقابل مستويات VQ-VAE الثلاثة، والتوليد يسير من الأعلى إلى الأسفل. أولاً، النموذج الأوّلي العلوي يُولّد الرموز الأكثر ضغطاً (نحو 345 رمزاً لـ24 ثانية من الصوت). هذه الرموز تمثّل القوس الموسيقي الكبير — تسلسل الهارمونيات وخطوط اللحن والإحساس الإيقاعي. بعد ذلك يأتي نموذج الأوسط فيأخذ تلك الرموز ويُولّد رموزاً أكثف تُضيف دقة إيقاعية وتفاصيل في الجرس. وأخيراً نموذج الترقية السفلي يُنتج أكثف الرموز ويستعيد الملمس الصوتي الناعم.
كل نموذج أوّلي عبارة عن بآليات مصمَّمة للسلاسل الطويلة. النموذج العلوي في النسخة ذات الخمسة مليارات معامل يستخدم 79 طبقة بمزيج من أنماط الانتباه الكثيف والمُحلَّل والخُطوي لتغطية كاملةً.
توجيه الموسيقى: التهيئة بالفنان والنوع والكلمات
من أبرز ما يميّز Jukebox هو : إمكانية توجيه التوليد نحو أسلوب فنان بعينه، أو نوع موسيقي، أو حتى كلمات أغنية محددة.
التهيئة بالفنان والنوع بسيطة نسبياً: كل فنان وكل نوع يُربط بمتجه مُتعلَّم، يُدمج مع المعلومات الموضعية ويُمرَّر إلى كل طبقة في المحوِّل. بهذه الطريقة يتعلّم النموذج ربط أنماط موسيقية محددة — جرس الصوت، الآلات المستخدمة، الإيقاع المفضّل — بكل تركيبة فنان ونوع.
التهيئة بالكلمات أصعب. الكلمات هنا غير محاذاة زمنياً — النموذج يتلقّى نص الأغنية كاملاً لكن بلا أي إشارة عن أي كلمة تُقابل أي لحظة في الموسيقى. لحل هذا، يعالج مُرمِّز محوِّل منفصل الكلمات، ثم تتعلّم طبقات في النموذج الأوّلي الموسيقي أن تلتفت إلى الأجزاء المناسبة من الكلمات أثناء توليد كل رمز موسيقي. ومع التدريب، يكتسب النموذج محاذاة تقريبية بين النص والصوت، فينتج غناءً بدائياً لكنه قابل للتمييز.
هنا تفصيل مهم: مُرمِّز الكلمات يعمل على مستوى الحروف وليس الكلمات. لماذا؟ لأن ذلك يتيح للنموذج تعلّم كيف تُنطق الحروف عند الغناء — وهذا ضروري لإنتاج غناء مفهوم. والملفت أن نمط الانتباه بين الكلمات والموسيقى يُظهر بنية قُطرية تقريبية: النموذج يتقدّم عبر النص بالترتيب تقريباً، مع تكرارات ووقفات تتوافق مع الجمل الموسيقية.
خط الإنتاج الكامل: من النص إلى الأغنية
لنتتبّع مراحل التوليد خطوة بخطوة. المستخدم يختار نوعاً موسيقياً (مثل «روك»)، وفناناً (مثل «إلفيس بريسلي»)، وكلمات إن أراد. بعدها يعمل النظام كالتالي:
الخطوة 1 — النموذج الأوّلي العلوي: المحوِّل المتفرق العلوي يُولّد نحو 345 رمزاً لمقطع من 24 ثانية، مشروطاً بالفنان والنوع والكلمات. كل رمز يغطي نحو 70 مللي ثانية ويحمل ملامح موسيقية عريضة.
الخطوة 2 — نموذج الترقية الأوسط: بناءً على الرموز العلوية، يُولّد نحو 1,380 رمزاً تُضيف تفاصيل إيقاعية وجرسيّة عند ضغط 32×.
الخطوة 3 — نموذج الترقية السفلي: بناءً على الرموز الوسطى، يُولّد نحو 5,500 رمز عند ضغط 8×، فيستعيد ملمس الحروف الساكنة والديناميكيات الدقيقة.
الخطوة 4 — فاكّ ترميز VQ-VAE: الرموز السفلية تُستخرج من كتاب الشيفرة وتمرّ عبر فاكّ الترميز لإعادة بناء الموجة الصوتية النهائية.
للأغاني الأطول من 24 ثانية، يلجأ Jukebox إلى : يُولّد مقاطع متراكبة ويدمجها بالتلاشي المتبادل، فيستطيع النموذج الالتفات إلى السياق القريب حتى لو تجاوزت الأغنية نافذة سياق المحوِّل.
النتائج والقيود
Jukebox ينتج أغاني تمتد لدقائق بتماسك محلي ملحوظ: العبارات اللحنية تبدو طبيعية، والهارموني يُحلّ بمنطقية، وجرس الصوت يبقى ثابتاً. النموذج يعمل عبر طيف واسع من الأنواع — بوب وروك وهيب هوب وجاز وكلاسيكي — بسمات أسلوبية واضحة. والمُقيِّمون البشريون أعطوا عيّناته درجات أعلى بكثير من نماذج الصوت الخام السابقة.
لكن هناك قيود حقيقية. البنية الموسيقية على مدى أطول من 30 ثانية تقريباً لا تزال صعبة: الأغاني كثيراً ما تنحرف في المقام أو الإيقاع بدلاً من المحافظة على شكل مقطع-لازمة متماسك. الكلمات المُغنّاة مفهومة تقريبياً — يلتقط المستمع عبارات أحياناً، لكن الغناء لا يكون دقيقاً دائماً. والتوليد بطيء جداً: دقيقة واحدة من الصوت تحتاج نحو 3 ساعات على معالج رسومي V100 للمستوى العلوي وحده، والترقية تأخذ وقتاً إضافياً.
النموذج ذو الخمسة مليارات معامل دُرِّب على 1.2 مليون أغنية (نحو 4,000 ساعة لكل نوع) باستخدام 256 معالج V100. هذا الحجم من الحوسبة يجعل تكرار التجربة أمراً مكلفاً.
الشيفرة: أخذ عيّنات من Jukebox
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
# إعداد التهيئة: الفنان والنوع والكلمات
# هذه التضمينات تُمرَّر إلى النماذج الأوّلية للمحوِّل
artist = "Elvis Presley"
genre = "Rock"
lyrics = """ Well, since my baby left me I found a new place to dwell """
# الخطوة 1: النموذج الأوّلي العلوي يُولّد ~345 رمزاً (ضغط 128×) # كل رمز يغطي ~70 مللي ثانية — يلتقط اللحن والتوافق top_codes = top_prior.sample(
n_samples=1,
artist=artist,
genre=genre,
lyrics=lyrics,
sample_length_in_seconds=24
)
# الخطوة 2: مُرقّي المستوى الأوسط يُضيف تفاصيل إيقاعية (ضغط 32×) # مشروط بالرموز العلوية، يُولّد ~1,380 رمزاً mid_codes = middle_upsampler.sample(
top_codes=top_codes
)
# الخطوة 3: مُرقّي المستوى السفلي يُضيف ملمساً دقيقاً (ضغط 8×) # مشروط بالرموز الوسطى، يُولّد ~5,500 رمز bot_codes = bottom_upsampler.sample(
middle_codes=mid_codes
)
# الخطوة 4: فاكّ ترميز VQ-VAE يُعيد بناء شكل الموجة # يستخرج متجهات كتاب الشيفرة ويمرّرها عبر شبكة فاكّ الترميز audio = vqvae.decode(bot_codes, level=0)الخط الزمني: من WaveNet إلى ذكاء الموسيقى
2016
WaveNet — التوليد ذاتي الانحدار للصوت
قدّمت DeepMind شبكة WaveNet وأثبتت أن الشبكات العصبية ذاتية الانحدار تستطيع توليد الصوت الخام عيّنة بعيّنة بجودة لم تُسبق في تركيب الكلام.
2017
VQ-VAE — تمثيلات كامنة منفصلة
قدّم Van den Oord وآخرون VQ-VAE وأظهروا أن الفضاء الكامن المستمر يمكن استبداله بكتاب شيفرة منفصل دون خسارة تُذكر في جودة إعادة البناء، وهذا فتح الباب لنمذجة الرموز الكامنة بأسلوب ذاتي الانحدار.
2019
MuseNet — الموسيقى الرمزية بالمحوِّلات
MuseNet من OpenAI ولّدت مقطوعات MIDI متعددة الآلات باستخدام المحوِّل، وأظهرت تماسكاً موسيقياً على مدى طويل، لكنها بقيت في نطاق التمثيل الرمزي على مستوى النوتات.
2020
Jukebox — توليد الموسيقى من الصوت الخام على نطاق واسع
جمع بين ضغط VQ-VAE الهرمي ونماذج أوّلية بالمحوِّل المتفرق لتوليد أغانٍ بالدقائق فيها غناء، مباشرةً من الصوت الخام، مع تهيئة بالفنان والنوع والكلمات.
2023
<NodeLink slug="musiclm">MusicLM</NodeLink> — توليد الموسيقى من النص
<NodeLink slug="musiclm">MusicLM</NodeLink> من Google استفاد من أسلوب الترميز الهرمي في Jukebox، واستخدم AudioLM وMuLan لتوليد موسيقى من أوصاف نصية حرّة بتماسك وجودة أفضل.
Jukebox يقع عند نقطة تحوّل في مسيرة ذكاء الموسيقى. أخذ من WaveNet القدرة على نمذجة الموجة الصوتية الخام، ومن VQ-VAE فكرة الترميز المنفصل، ثم أثبت أن هذه الأفكار يمكن أن تعمل على نطاق أغانٍ كاملة. نهجه الهرمي — اضغط، ثم نمذج على عدة مقاييس، ثم ارفع الدقة — أصبح القالب الذي سارت عليه أنظمة لاحقة مثل AudioLM وMusicLM.
لعل الإسهام الأعمق في هذه الورقة هو أنها أظهرت أن رموز VQ-VAE ليست مجرد نواتج ثانوية للضغط — بل تحمل معلومات موسيقية ذات معنى يمكن استخراجها وتوظيفها في مهام فهم الموسيقى، وليس فقط توليدها.
المرجعDhariwal, Jun, Payne, Kim, Radford, Sutskever. Jukebox: A Generative Model for Music. arXiv, 2020.
مصطلحات هذه الورقة
- جدول الرموزCodebook
- النموذج التوليدي التراجعيAutoregressive Model
- اختيار العينات الهرميHierarchical Sampling
- المخطط الطيفي ميلMel Spectrogram
- خسارة الالتزامCommitment Loss
- الفضاء الكامنLatent Space
- رفع الدقةUpsampling
- التوجيهConditioning
- الاحتمال القبلي المبدئيPrior
- التضمينEmbedding
- المحوِّلTransformer
- المُرمِّزEncoder
- مفكّ الترميزDecoder
- خطأ إعادة البناءReconstruction Error
- عنق الزجاجةBottleneck