Back to Blog

Як насправді працює відділення стемів: ШІ за розділенням треків

Ви чули результат. Вокал, чисто видалений з міксованого треку, без ударних, що просочуються, без реверберації. Інструментал з повністю відсутнім співаком. Басова лінія, ізольована так, щоб ви могли вивчити кожну ноту.

Це відділення стемів — процес розділення готового, змішаного аудіотреку на його окремі компоненти (вокали, ударні, бас, піано, гітара та інші інструменти). І той факт, що це взагалі працює, є невеликим дивом сучасного машинного навчання. Ось що насправді відбувається під капотом, пояснено для людей, які створюють музику — а не для людей, які пишуть наукові статті.


Що таке стеми в музиці?

Перед тим, як перейти до того, як працює ШІ, давайте визначимо, про що ми говоримо. Стем — це окремий аудіотрек з багатодоріжкового запису. У студійній сесії кожен інструмент і вокал отримують свій трек — бас-барабан, малий барабан, ведучий вокал, бас, синтезатор. Ці сирі треки — це стеми. Коли інженер змішує пісню, він балансує всі ці стеми разом і експортує один стереофайл. Цей фінальний файл — це те, що ви чуєте на Spotify, на DJ-сеті або на радіо.

Відділення стемів — це зворотний процес. Ви починаєте з готового міксу і намагаєтеся відновити ці окремі елементи. Це як взяти спечений торт і спробувати розділити його назад на борошно, яйця, цукор і масло. Ця аналогія насправді досить точна — і пояснює, чому відділення стемів ніколи не є ідеальним. Деяка інформація втрачається в процесі змішування. Частоти перекриваються, динаміка стискається, а ефекти, такі як реверберація і затримка, розмивають звуки по стереополю.

Незважаючи на ці обмеження, сучасне відділення стемів за допомогою ШІ наближається до неймовірних результатів. Хороші моделі можуть ізолювати вокали з мінімальним просочуванням, витягувати ударні, які все ще звучать потужно, і виділяти басові лінії, які залишаються щільними. Не студійно чисто, але придатно для мэшапів, реміксів, DJ-редагувань, практичних треків і семплів.

GreenGo підтримує 6-стемове відділення: вокали, ударні, бас, піано, гітара та інше (все інше — синтезатори, струнні, пади). Деякі інструменти також пропонують 2-стемове відділення, яке просто розділяє вокали від інструменталу. 6-стемове відділення дає вам більше творчого контролю, оскільки ви можете ізолювати окремі інструменти, а не загальну категорію "інше".


Як працює відділення стемів?

По суті, відділення стемів — це проблема, яка називається відділенням джерел — завдання відновлення окремих джерел сигналів з змішаного сигналу. Це вивчалося в аудіодослідженнях протягом десятиліть, але прорив стався приблизно в 2019 році, коли моделі глибокого навчання почали давати результати, які насправді звучали добре.

Ось базовий процес:

  1. Перетворіть аудіо в візуальне представлення. Сирий аудіосигнал — довга послідовність значень амплітуди — перетворюється в спектрограму. Спектрограма — це по суті 2D-образ, що показує, як частотний вміст аудіо змінюється з часом. Час йде по осі x, частота по осі y, а інтенсивність (яскравість) кожного пікселя представляє, скільки енергії є на цій частоті в цей момент.
  2. Введіть спектрограму в нейронну мережу. Модель аналізує це "зображення" і навчається ідентифікувати шаблони, які відповідають конкретним джерелам. Вокали, як правило, займають певні частотні діапазони (приблизно від 300 Гц до 4 кГц) і мають специфічні тимчасові шаблони — тривалі ноти, вібрато, приголосні сплески. Ударні мають різкі транзієнтні атаки. Бас живе в низьких частотах. Мережа була навчена на тисячах прикладів, де вона бачить як змішану спектрограму, так і окремі спектрограми стемів, тому вона навчається відображати з змішаної на індивідуальну.
  3. Генеруйте маски. Для кожного стему модель виводить маску — сітку значень розміром зі спектрограму між 0 і 1. Ця маска говорить, для кожного часо-частотного бін, "скільки з цієї енергії належить вокалам проти ударних проти басу проти інших". Помножте маску на оригінальну спектрограму, і ви отримаєте спектрограму ізольованого стему.
  4. Перетворіть назад в аудіо. Ізольована спектрограма перетворюється назад в хвильову форму за допомогою оберненого перетворення (наприклад, обернене STFT). Інформація про фазу з оригінального міксу повторно використовується, оскільки модель лише передбачає величину. Це одне з основних джерел артефактів — більше про це нижче.
Діаграма процесу відділення стемів ШІ, що показує 4-етапний процес: змішана аудіохвиля, перетворення в спектрограму, обробка нейронною мережею та 6 ізольованих виходів стемів

Це класичний підхід. Новіші моделі працюють безпосередньо з самою хвильовою формою, пропускаючи етап спектрограми зовсім. Ми до цього відмінності дійдемо через мить.

Ключове усвідомлення таке: модель не робить нічого магічного. Це розпізнавання шаблонів в масштабах. Після того, як вона побачила достатньо прикладів "ось як виглядає змішаний ударний трек у спектрограмі" і "ось як виглядають ізольовані ударні", мережа навчається передбачати маску ізоляції для нових, невидимих аудіо. Якість відділення повністю залежить від того, наскільки добре модель була навчена і яку архітектуру вона використовує.


Моделі ШІ, що стоять за сучасним відділенням стемів

Кілька моделей з відкритим кодом сприяли прогресу в відділенні стемів за допомогою ШІ. Ось як основні з них порівнюються:

МодельРозробникПідхідСтемиКлючова перевага
SpleeterDeezer (2019)Маскування спектрограми (U-Net)2 або 4Швидкий, легкий, працює на ЦП
Demucs (HTDemucs)Meta / FAIR (2022)Гібридна хвильова форма + спектрограма4Найвища якість, добре справляється з реверберацією
Open-Unmix (UMX)SIGSEP (2019)Маскування спектрограми4Відкритий дослідницький базис, модульний
BS-RoFormerРізні (2023)RoFormer з розділенням по смугах4+Сучасний стан на бенчмарках
Діаграма порівняння 4 моделей відділення стемів ШІ: Spleeter, Open-Unmix, Demucs HTDemucs та BS-RoFormer, що показує оцінки якості та швидкості з 2019 по 2023

Spleeter була моделлю, яка зробила відділення стемів за допомогою ШІ доступним. Випущена Deezer у 2019 році, вона використовувала архітектуру U-Net — спочатку розроблену для сегментації зображень — застосовану до спектрограм. Вона була швидкою, могла працювати на ЦП і давала результати, які були достатніми для DJ-редагувань і грубих реміксів. Вона популяризувала концепцію відділення стемів за допомогою ШІ для музикантів.

Demucs з лабораторії FAIR Meta взяла інший підхід. Замість того, щоб працювати тільки зі спектрограмами, Demucs працює безпосередньо з сирою хвильовою формою, використовуючи комбінацію згорткових і рекурентних шарів. Остання версія, HTDemucs (Гібридний Трансформер Demucs), використовує гібридний підхід: вона обробляє як хвильову форму, так і спектрограму одночасно, а потім об'єднує результати. У наших тестах Demucs виробляє помітно чистіші ізоляції вокалів, ніж Spleeter, особливо на треках з сильною реверберацією або складними аранжуваннями. Вона краще справляється з проблемою "розмивання", оскільки може вивчати тимчасові шаблони безпосередньо з хвильової форми.

BS-RoFormer (RoFormer з розділенням по смугах) є сучасним станом на бенчмарку MUSDB18. Він розділяє частотний діапазон на смуги та обробляє кожну смугу за допомогою трансформера з обертанням позицій. Це більш витратно з точки зору обчислень, але забезпечує найчистіші відділення, які наразі доступні.

Усі ці моделі навчені на одному основному принципі: супервізоване навчання на парних даних. Дослідники використовують набори даних, такі як MUSDB18, які містять 150 повних пісень з їх ізольованими стемами. Модель бачить змішаний трек як вхід і окремі стеми як цільовий вихід. Вона мінімізує різницю між своїм прогнозом і фактичним стемом, поступово навчаючись відділяти джерела, яких вона ніколи не чула раніше.


Маскування спектрограми проти домену хвильової форми — у чому різниця?

Існує два основних підходи до відділення стемів за допомогою ШІ, і різниця важлива для розуміння, чому деякі інструменти звучать краще за інших.

Порівняння підходів до відділення джерел на основі спектрограми та хвильової форми, що показує переваги та недоліки кожного методу

На основі спектрограми (Spleeter, Open-Unmix)

Аудіо перетворюється в спектрограму за допомогою короткочасного перетворення Фур'є (STFT). Модель передбачає маску для кожного стему, і маскована спектрограма перетворюється назад в аудіо. Перевага полягає в швидкості — спектрограми компактні, і модель може бути відносно маленькою. Недолік полягає в тому, що ви втрачаєте інформацію про фазу. STFT дає вам як величину, так і фазу, але модель зазвичай передбачає лише величину. Ви повторно використовуєте фазу оригінального міксу, що є наближенням. Це викликає артефакти, особливо на вокалах з довгими ревербераційними хвостами.

На основі хвильової форми (Demucs, BS-RoFormer)

Модель працює безпосередньо з сирими аудіозразками. Ніякого перетворення спектрограми не потрібно. Мережа навчається передбачати ізольовану хвильову форму безпосередньо. Перевага полягає в тому, що фаза обробляється природно — це частина хвильової форми. Недолік полягає в тому, що хвильові форми набагато довші за спектрограми (3-хвилинна пісня на 44,1 кГц має майже 8 мільйонів зразків), тому модель повинна бути більш складною і вимагати більше обчислень.

Гібридний підхід (HTDemucs) поєднує обидва: він обробляє хвильову форму для тимчасової точності та спектрограму для частотної точності, а потім об'єднує результати. Це наразі є оптимальним варіантом для якості проти продуктивності.


Як відділити стеми за допомогою GreenGo

GreenGo включає відділення стемів за допомогою ШІ, вбудоване безпосередньо в додаток. Вам не потрібно завантажувати свої треки на веб-сайт, чекати в черзі або стикатися з водяними знаками на виході. Ось як це працює:

  1. Відкрийте трек. Відтворюйте будь-яке аудіо в браузері GreenGo або відкрийте локальний аудіофайл, який у вас вже є. Трек не потрібно попередньо обробляти або мати специфічний формат — GreenGo обробляє WAV, MP3, FLAC і AAC.
  2. Натисніть кнопку відділення стемів. У панелі інструментів GreenGo натисніть значок відділення стемів. Модель ШІ працює локально на вашому комп'ютері і починає розділяти трек на шість стемів: вокали, ударні, бас, піано, гітара та інше.
  3. Попередній перегляд кожного стему. GreenGo показує вам всі шість стемів як окремі хвильові форми. Соло будь-який стем, щоб почути його в ізоляції. Це місце, де ви перевіряєте на просочування — якщо вокальний стем має артефакти ударних, або басовий стем має мелодію, що просочується, ви можете вирішити, чи є якість відділення достатньою для вашого випадку використання.
  4. Експортуйте те, що вам потрібно. Завантажте окремі стеми або всі шість одночасно. Виберіть WAV для безвтратної якості (найкраще для роботи в DAW і семплювання) або MP3 для менших файлів (підходить для DJ-редагувань і практики). GreenGo також автоматично аналізує BPM кожного стему та музичну тональність, і записує метадані безпосередньо в експортовані файли.
  5. Вставте у свій робочий процес. Експортовані стеми помічені ID3 метаданими — BPM, тональність, артист, назва — тому вони чисто імпортуються в Rekordbox, Serato, Traktor, Ableton або будь-яке інше DJ-програмне забезпечення або DAW.

Весь процес займає секунди для типового треку. Ніякого часу на завантаження, ніякої черги, жодного стороннього сервера, що обробляє ваше аудіо. Все працює на вашій машині — Windows або macOS. GreenGo пропонує 7-денний безкоштовний пробний період (необхідна кредитна картка), а безкоштовний рівень дозволяє відділити до 3 пісень перед підпискою за $5.99/місяць.


Поради для отримання найкращих результатів відділення стемів

Відділення стемів за допомогою ШІ є хорошим, але не ідеальним. Ці поради допоможуть вам отримати найчистіші результати:

  • Починайте з найвищої якості джерела, яку можете. MP3 на 320 кбіт/с або безвтратний WAV завжди будуть відділятися краще, ніж потік на 128 кбіт/с. Артефакти стиснення плутають модель — вони виглядають як шум по всіх частотних діапазонах, ускладнюючи розрізнення джерел.
  • Відділіть перед тим, як змінювати темп. Якщо вам потрібно змінити темп треку, спочатку відділіть стеми, а потім змініть темп кожного стему окремо. Розтягування змішаного треку спочатку вводить артефакти, які модель відділення посилює.
  • Використовуйте стеми для того, для чого вони хороші. Ізоляція вокалів найкраще працює на треках з чітким ведучим вокалом і мінімальною підтримкою вокалів. Відділення ударних найкраще працює на треках з акустичними або електронними ударними, які мають чіткі транзієнти. Щільні мікси з насиченим звучанням завжди будуть виробляти більше просочування.
  • EQ стеми після відділення. Навіть з хорошим відділенням ви часто отримаєте низькочастотне просочування у вокальному стемі або високочастотне просочування в басовому стемі. Швидкий високочастотний фільтр на вокалах (вирізати нижче 100 Гц) і низькочастотний на басі (вирізати вище 2 кГц) очищає більшість залишкових просочувань.
  • Перевірте "інший" стем на залишки вокалів. Якщо відділення вокалів не ідеальне, ви іноді почуєте призраки вокалів в іншому стемі. Це нормально — модель розділяє енергію ймовірнісно. Якщо залишок занадто гучний, спробуйте інший файл джерела або прийміть, що трек занадто щільний для чистого відділення.
  • Уникайте повторної обробки. Не відділяйте вже відділений стем. Запуск відділення стемів на вокальному стемі, щоб "додатково очистити його", зазвичай погіршує ситуацію — модель не була навчена на частково відділеному аудіо.
  • Відповідайте форматам стемів вашому випадку використання. Експортуйте як WAV, якщо плануєте завантажити стеми в DAW для виробництва. MP3 підходить для DJ-редагувань, де розмір файлу важливіший за абсолютну точність. Якість відділення однакова в обох випадках — формат впливає лише на фінальний експорт.

Часто задавані питання

Як працює відділення стемів?

Відділення стемів використовує моделі глибокого навчання, навчальні на парних аудіоданих — змішаних піснях поряд з їх окремими стемами. Модель перетворює аудіо в спектрограму (або обробляє сирі хвильові форми), ідентифікує шаблони, які відповідають кожному джерелу (вокали, ударні, бас, піано, гітара, інше), і генерує маски ізоляції, які розділяють змішаний сигнал на окремі стеми. Результат перетворюється назад в аудіо.

Чи покращується відділення стемів за допомогою ШІ?

Так, і помітно. Моделі з 2019 року (Spleeter) виробляли відділення з чутними артефактами та значним просочуванням. Поточні моделі, такі як Demucs HTDemucs та BS-RoFormer, виробляють ізоляції вокалів, які майже чисті для професійного використання. Поліпшення відбувається завдяки кращим архітектурам (трансформерам, гібридній обробці хвильової форми-спектрограми) та більшим навчальним наборам даних.

У чому різниця між 2-стемовим і 6-стемовим відділенням?

2-стемове відділення розділяє трек на вокали та інструментал. 6-стемове відділення розділяє на вокали, ударні, бас, піано, гітару та інше. 6-стемове відділення дає вам більше творчого контролю — ви можете ізолювати лише ударні для брейкбіту, витягнути басову лінію для реміксу, виділити піано для семплу або заглушити вокали для інструменталу. 2-стемове відділення швидше і достатньо, якщо вам потрібен лише акапела або інструментал.

Чи може відділення стемів ідеально ізолювати вокали?

Ні. Деяка інформація назавжди втрачається під час змішування. Частоти перекриваються, ревербераційні хвости розмиваються по стереополю, а стиснення впливає на всі джерела одночасно. Сучасне ШІ наближається — 85-95% ізоляції в залежності від треку — але ви майже завжди почуєте слабкі сліди інших інструментів у вокальному стемі або призраки вокалів в інструментальному. EQ і гейтування можуть ще більше зменшити ці артефакти.

Чи працює відділення стемів на будь-якому жанрі?

Це працює на більшості жанрів, але результати варіюються. Електронна музика з чистими, розділеними частотними діапазонами (хаус, техно) добре відділяється. Хіп-хоп з помітними вокалами та чіткими ударними також добре працює. Щільні рокові мікси з насиченими гітарами, вокалами та тарілками, що заповнюють той же частотний діапазон, є більш складними. Класична музика та джаз з акустичними інструментами є найскладнішими, оскільки джерела більш природно зливаються.

Чи легально використовувати програмне забезпечення для відділення стемів?

Використання програмного забезпечення для відділення стемів на треках, які ви володієте або ліцензували, є легальним. Використання відділених стемів для комерційних релізів (реміксів, семплів) вимагає очищення прав у правовласника. Особисте використання — практика, аналіз, DJ-редагування для ваших власних сетів — зазвичай підпадає під справедливе використання, але законодавство про авторське право варіюється в залежності від країни. Завжди перевіряйте свої місцеві регуляції.


Відділення стемів пройшло шлях від дослідницької цікавості до практичного інструменту всього за кілька років. Моделі ШІ, що стоять за цим — Demucs, Spleeter, BS-RoFormer — продовжують покращуватися, а такі інструменти, як GreenGo, роблять їх доступними без завантаження вашої музики на сервер незнайомця. Чи ви створюєте мэшапи, готуєте DJ-редагування, практикуєтеся над інструменталами або семплюєте для виробництва, розуміння того, як працює технологія, допомагає вам отримати кращі результати.

Хочете спробувати на своїх треках? Відділення стемів вбудоване в GreenGo — один клік, без завантаження, без водяного знака. Спробуйте безкоштовно протягом 7 днів (необхідна кредитна картка), і відділіть до 3 пісень на безкоштовному рівні.

Написано Ігорем — розробником програмного забезпечення для музики та DJ в GreenGo.