BTC$29880

ETH$3666

Шукати

GETMusic: Єдиний фреймворк представлення та дифузії, який може генерувати будь-які музичні треки

За останні роки було досягнуто значного прогресу у створенні музики за допомогою моделей машинного навчання. Однак досі існують проблеми з досягненням ефективності та суттєвого контролю над результатами. Попередні спроби зіткнулися з труднощами, насамперед, через обмеження в представленні музики та архітектурі моделей.

Оскільки існує безліч комбінацій вихідних і цільових треків, існує потреба в уніфікованій моделі, здатній впоратися з комплексними завданнями генерації треків і отримати бажані результати. Сучасні дослідження в галузі генерації символічної музики можна узагальнити у дві категорії, виходячи з прийнятих способів представлення музики. Це підходи на основі послідовностей та на основі образів. Підхід на основі послідовностей представляє музику як послідовність дискретних токенів, тоді як підхід на основі зображень представляє музику у вигляді 2D-зображень, ідеальним вибором яких є піанінороли. Нотний стан представляє музичні ноти у вигляді горизонтальних ліній, де вертикальна позиція позначає висоту тону, а довжина лінії – тривалість.

Щоб задовольнити потребу в уніфікованій моделі, здатній генерувати довільні треки, команда дослідників з Китаю розробила фреймворк під назвою GETMusic (GET розшифровується як Generate Music Tracks). GETMusic дуже добре розуміє вхідні дані і може створювати музику за треками. Цей фреймворк дозволяє користувачам створювати ритми і додавати додаткові елементи для створення бажаних треків. Цей фреймворк здатен створювати музику з нуля, а також може створювати керовані та зведені треки.

Інструкція з налагодження роботи з кодом GETMusic

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

Дослідники підкреслюють, що цей інноваційний фреймворк забезпечує чіткий контроль над генерацією бажаних цільових треків, починаючи з нуля або на основі наданих користувачем вихідних треків. Крім того, GETScore вирізняється лаконічним багатотрековим представленням музики, що спрощує процес навчання моделі та дозволяє створювати гармонійну музику. Крім того, токени висоти тону, що використовуються в цьому представленні, ефективно зберігають поліфонічні залежності, сприяючи створенню гармонійно багатих музичних композицій.

На додаток до можливостей генерації по доріжках, вдосконалений механізм маскування та згладжування в GETDiff дає змогу використовувати заливку з нульовим кадром. Ця чудова функція дозволяє безперешкодно знебарвлювати замасковані токени в будь-яких довільних позиціях в GETScore, розширюючи межі творчості та підвищуючи загальну універсальність фреймворку.

Загалом GETMusic працює добре, перевершуючи багато інших подібних моделей, демонструючи чудову мелодичну, ритмічну та структурну відповідність між цільовими треками та наданими вихідними треками. У майбутньому дослідники планують дослідити потенціал цього фреймворку, приділяючи особливу увагу інтеграції текстів пісень як додаткової доріжки. Така інтеграція має на меті уможливити вражаючу генерацію текстів на мелодії, що ще більше підвищить універсальність та виразність моделі. Безперешкодне поєднання текстових і музичних елементів може відкрити нові творчі можливості та покращити загальний музичний досвід.