اگر یک آهنگساز هستید که میخواهید ایدههای پراکنده در یک ضبط صوتی را به نت تبدیل کنید، تا امروز باید با خطاهای زیاد در تشخیص همزمان چندین ساز کنار میآمدید. رقم ۴۸.۲ اکنون استاندارد جدید دقت در تبدیل خودکار موسیقی به نت (Automatic Music Transcription) است. این جهش خیرهکننده از طریق مدل MuScriptor محقق شده است؛ ابزاری که توسط Kyutai و تیم Mirelo توسعه یافت تا شکاف میان ابزارهای تکسازه و تبدیل میکسهای کامل صوتی به MIDI را پر کند.
تبدیل یک میکس کامل صوتی به نت، مدتهاست که به عنوان یک مانع بزرگ در حوزه بازیابی اطلاعات موسیقی (MIR) شناخته میشود. در حالی که ابزارهای تشخیص تکسازه به خوبی عمل میکنند، ارکستراسیونهای پیچیده و لایههای متعدد صدا معمولاً هوش مصنوعی را گیج میکنند. MuScriptor برای حل این مشکل، فرآیند ترنسکریپشن را به عنوان یک مسئله مدلسازی زبانی (Language Modeling) تعریف میکند. این رویکرد، یادآور تغییر پارادایم در پردازش صوت است که در آن مدلهای زبانی برای کاهش هزینهها و افزایش دقت در تولید و تحلیل صوت جایگزین روشهای سنتی پردازش سیگنال میشوند. این مدل سعی میکند گامبهگام توکنهای مربوط به گام (Pitch)، زمانبندی (Timing) و نوع ساز را از روی یک طیفنگاشت (Mel-spectrogram) پیشبینی کند. این رویکرد از طرح توکنسازی MT3 پیروی میکند و در واقع صوت را به یک توالی نمادین تبدیل مینماید.
مدلها و مجوزها
به نقل از گزارش Marktechpost، این تیم سه نسخهی مختلف از وزنهای مدل را در Hugging Face منتشر کرده است تا توسعهدهندگان بتوانند بین عملکرد و بهرهوری تعادلی برقرار کنند:
- Small: دارای ۱۰۳ میلیون پارامتر.
- Medium: دارای ۳۰۷ میلیون پارامتر (که نسخه پیشفرض است).
- Large: دارای ۱.۴ میلیارد پارامتر.
از نظر حقوقی، کد استنتاج (Inference code) این مدل تحت مجوز MIT منتشر شده است، اما وزنهای مدل دارای مجوز CC BY-NC 4.0 هستند که استفادههای تجاری از آنها را محدود میکند. این محدودیتها در دنیای مدلهای موسیقی اهمیت ویژهای دارند، بهویژه زمانی که بحثهای حقوقی پیرامون استفاده از مجموعههای عظیم دادههای موسیقی صوتی برای آموزش مدلها به بحثهای داغ جهانی تبدیل شده است.
خطلوله آموزشی سهمرحلهای
عملکرد بالای MuScriptor بیش از آنکه مدیون نوآوری در معماری باشد، به یک پیشرفت مشخص در ترتیب ارائه دادهها وابسته است. آموزش این مدل در سه مرحلهی متمایز صورت گرفته که هر مرحله بر پایه مرحلهی قبلی بنا شده است:
- پیشآموزش (DSynth): در این مرحله، مدل حدود ۱.۴۵ میلیون فایل MIDI را پردازش کرد. برای این کار از یک خطلوله لحظهای (On-the-fly) استفاده شد که در حین آموزش، این فایلها را با بهرهگیری از بیش از ۲۵۰ ساندفونت (Soundfont) و تغییرات تصادفی در کوک (Detuning) سنتز میکرد. افزونسازیها (Augmentations) شامل تغییر گام (Pitch shifting)، تغییر تمپو، تنظیم شدت ضربه (Velocity) و تصادفیسازی سازها بود تا نسخههای تقریباً بینهایتی از تحققهای صوتی ایجاد شود.
- تنظیم دقیق (DReal): تیم توسعه از یک مجموعه داده داخلی شامل ۱۷۰ هزار ضبط صوتی استفاده کرد که در مجموع بیش از ۱۱ هزار ساعت صوت با یادداشتهای نتهای همتراز (Aligned) بود. اکثر این ترازها از طریق همگامسازی صوتی-نمادین با استفاده از درونیابی (Interpolation) و تغییر زمان پویا (Dynamic Time Warping) به دست آمدند. تیم همچنین جفتهای بیکیفیت را بر اساس فاصله وارپینگ و حداکثر فاکتور اتساع زمانی (Time-dilation factor) فیلتر کرد.
- پسآموزش RL (DRL): با استفاده از ۳۰۰ ترک که به صورت دستی تأیید شده بودند، تیمی از متدی شبیه به GRPO استفاده کرد که ترکیبی از الگوریتم REINFORCE و نرمالسازی مزیت نسبی گروهی (Group-relative advantage normalization) است. تابع پاداش در اینجا مجموع سه امتیاز F-score (شروع نت، فریم و پایان نت) است و به مدل میآموزد تا ترنسکریپشنهای پاکتر و دقیقتر را ترجیح دهد.
نتایج بنچمارک
آزمایش روی مجموعه داده DTest شامل ۳۷۲ قطعه موسیقی که از دادههای آموزش جدا شده بودند، تفاوت خیرهکنندهای را با مدل پایه YourMT3+ نشان میدهد. تیم پژوهشی از معیارهای مستقل از ساز (Instrument-agnostic) کتابخانه mir_eval استفاده کرد، که در این میان Multi F1 سختگیرانهترین معیار است، زیرا تشخیص درست ساز را نیز الزامی میداند.
با استفاده از مدل Large (حدود ۱.۳ میلیارد پارامتر)، نتایج به شرح زیر است:
- مدل YourMT3+ (پایه): Onset F1 برابر با ۳۲.۵، Frame F1 برابر با ۴۵.۵، Offset F1 برابر با ۱۷.۸، Drums F1 برابر با ۴۱.۴ و Multi F1 برابر با ۲۱.۹.
- فقط آموزش مصنوعی (DSynth): Onset F1 برابر با ۳۴.۵، Frame F1 برابر با ۴۸.۹، Offset F1 برابر با ۱۶.۱، Drums F1 برابر با ۲۱.۰ و Multi F1 برابر با ۱۶.۲.
- ترکیب مصنوعی و واقعی (DReal): Onset F1 برابر با ۵۴.۴، Frame F1 برابر با ۶۹.۳، Offset F1 برابر با ۴۲.۳، Drums F1 برابر با ۴۳.۳ و Multi F1 برابر با ۴۱.۶.
- خطلوله کامل (شامل RL): Onset F1 برابر با ۶۰.۴، Frame F1 برابر با ۷۳.۳، Offset F1 برابر با ۴۹.۰، Drums F1 برابر با ۵۰.۲ و Multi F1 برابر با ۴۸.۲.
این نتایج ثابت میکند که دادههای واقعی بیشترین اهمیت را دارند؛ چرا که افزودن DReal تمامی شاخصها را تقریباً ۲۰ امتیاز افزایش داد. علاوه بر این، مقدار Frame F1 در مجموعه Dagstuhl ChoirSet از ۵۱.۰ به ۸۰.۷ رسید.
پیادهسازی و کاربردهای عملی
برای توسعهدهندگان، شروع کار تنها با یک دستور pip install muscriptor (یا uv add muscriptor) ممکن است. کاربران میتوانند رویدادهای نت را بهصورت جریانی (Stream) دریافت کنند (مانند NoteStartEvent و NoteEndEvent) یا فایلهای MIDI را خروجی بگیرند. مدل همچنین شامل یک رابط کاربری تحت وب است که با دستور uvx muscriptor serve اجرا شده و یک پیانو-رول زنده را نمایش میدهد. برای مدلهای منتشر شده، توصیه میشود مقدار cfg_coef روی ۱ نگه داشته شود.
این انتشار، استانداردهای چندین حوزه را تغییر میدهد:
- تهسازان (Producers): استخراج یک خط باس MIDI از یک میکس برای تغییر ساز (Re-voice) در نرمافزارهای DAW.
- موسیقهشناسان: تبدیل ضبطهای صوتی تاریخی به پارتیتورهای قابل ویرایش.
- پژوهشگران MIR: تغذیه سیستمهای تشخیص آکورد یا کلید موسیقی با نتهای دقیق.
- مربیان: ساخت ابزارهای تمرینی با پیانو-رولهای زنده.
- برنامهنویسان: استفاده از شرطیسازی ساز (مثلاً با پاس دادن
instruments=["drums"]) برای جداسازی ترکهای خاص.
نقاط قوت و ضعف
MuScriptor روی ۱۷۰ هزار ضبط واقعی از ژانرهایی چون موسیقی کلاسیک تا هوی متال آموزش دیده است. قابلیت شرطیسازی ساز در این مدل باعث پایداری پیشبینیها در بخشهای مختلف میشود.
با این حال، مدل نقاط کوری دارد. توکنساز آن شدت ضربه (Velocity) را حذف میکند و نمیتواند نتهای همپوشانی که گام و ساز یکسان دارند را نمایش دهد. همچنین دقت در آثار کرال (Chorals) پایینتر است. علاوه بر این، اندازه قطعات ۵ ثانیهای، دسترسی مدل به زمینه بلندمدت را محدود میکند و نسخه Large برای رسیدن به سرعت عملیاتی به GPU نیاز دارد.
پژوهشگران اکنون میتوانند به وزنهای مدل و مقاله کامل از طریق گیتهاب دسترسی پیدا کنند تا بررسی کنند یادگیری تقویتی چگونه زمانبندی شروع نتها را بهتر از آموزشهای صرفاً مصنوعی بهبود بخشیده است.
گام بعدی شما
- اگر توسعهدهنده هستید، کتابخانه muscriptor را نصب کرده و با دادههای صوتی خود آزمایش کنید.
- برای دقت حداکثری در خروجی، مقدار
cfg_coefرا روی ۱ تنظیم کنید. - مقاله کامل را در گیتهاب بخوانید تا ببینید یادگیری تقویتی چگونه زمانبندی شروع نتها را بهبود بخشیده است.
اما تأثیر این مدل بر آینده تولید موسیقی مولد حتی پیچیدهتر است؛ به تحلیل ما درباره مدلهای تبدیل متن به موسیقی مراجعه کنید.




گفتگو