audio_gen_aikc.pdf
👀 Audio Generation 2024-2026
Недавно собрался силами провести семинар в МИСиС от AIKC. Рассказал как сейчас делают генерацию музыки и речи. От подготовки данных из большых сырых корпусов, до применения RL. Поделился своими инсайдами и направлениями ресерча. Презу приложил к посту. Запись выложат на Stepic. Тут поделюсь сухой выжимкой без моих размышлений и комментариев)
Структура семинара поделилась на общие паттерны для речи и музыки, и специфичные для речи и музыки. Некоторые идеи отлично ложатся с одного домена на другой, но еще не были применены для речи/музыки.
1. Говоря о данных, а у нас корпуса могут доходить до 5М часов как в Qwen3-TTS, или 1М часов как в Inworld TTS-1, или 27М семпов музыки как в ACE-Step-1,5... Хочется уметь автоматически и качественно отбирать данные для претрейна/CPT/SFT. В речи есть объективные метрики типа WER/PER, SIM, всякие MOS'ы. Это более приятный сценарий, в отличие от музыки, где нет объективных метрик. Поэтому сейчас хороший сценарий для музыки - использовать frontier LLM модели типа Gemini 2.5 Pro. Авторы ACE-Step предложили занятный self-evolving pipeline.
2. Говоря о репрезентациях аудио, сейчас идет смещение к аудио кодекам. В речи главный приоритет - стриминг. Низкий битрейт 12-25Hz, casual-only decoder для реалтайма, а попытки сжать битрейт еще ниже до 5Hz обычно неудачны, НО недавно вышел SiTok. В музыке стриминг не нужен, нам скорее хочется сделать кодек работающий с 48kHz аудио и длинным контекстом. Длина последовательности при 25Hz ~= 7500*количество кодбуков, бюджет растет до десятков тысяч токенов. Плюс хочется учитывать когерентность между треками: вокал и разные инструменты аккомпанемента. Авторы LeVo придумали классный кодек для этого. А для работы с длинным контекстом хорошее решение предложили авторы Qwen3-TTS, сделали curriculum по контексту с 8 до 32к токенов. Конечно сейчас также мейнстрим разными способами добавлять семантику в кодеки, стандарт - стиль Mimi Codec.
3. Собрав данные и определив репрезентации, подумаем о архитектуре. Тут мне нравится схема от BLIP3o-Next, хоть тут и про картинки. Их AR+Diffusion пайплайн. Накидывают RL на AR для хорошего понимания сцены, позиционирования объектов, прочей семантики. Потом через кросс-атеншн в DiT блоки добавляют инфу из AR блока. Почитайте работу) В речи подобный паттерн нарастает.
Впрочем, говоря про pure AR: готовый стек LLM, in-context learning — voice cloning «из коробки», законы масштабирования, но бывает exposure bias, hallucinations, repetitions и качество ограничено codec bottleneck. Иначе гововря про Non-AR: параллельная генерация — нет последовательной задержки, continuous latents — нет codec bottleneck, нет exposure bias, но alignment text-audio — центральная сложность, long-form coherence хуже, чем у AR, тяжелее применять RL
4. Переходя к обучению, конечно увидим пайплайн PT->CPT->SFT->RL, а говоря про инференс и стримнг обратите внимание на техрепорт Iworld TTS-1. В музыке говоря про long-context снова обратите внимание на curriculum по длине от Qwen3-TTS, про структурное сегментирование у YuE/ACE-Step, dual-treck+mixed tokens generation от LeVo.
5. Для управляемости генерацией мейнстрим - LM как планировщик. Вместо промпт -> output делают промпт -> LM blueprint -> output. В речи это thinking pattern из Qwen3-TTS, активируется для сложных voice description промптов, как ризонинг в LLM. Плюс emotion/non-verbal tags ([whispering], [breathe]), которые в Inworld TTS-1 учат через LoRA на парных (neutral, stylized) данных - полный FT теряет базовую cloning capability. В музыке размах больше: ACE-Step делает Composer Agent, который раскладывает «sad jazz ballad» в YAML с BPM, key, structure, instruments, mood - DiT-рендерер занимается только акустикой. YuE добавляет structural progressive conditioning - генерация по сегментам [verse][chorus][bridge] с передачей контекста, авторы явно называют это CoT для музыки.
#audio #perfomances
Недавно собрался силами провести семинар в МИСиС от AIKC. Рассказал как сейчас делают генерацию музыки и речи. От подготовки данных из большых сырых корпусов, до применения RL. Поделился своими инсайдами и направлениями ресерча. Презу приложил к посту. Запись выложат на Stepic. Тут поделюсь сухой выжимкой без моих размышлений и комментариев)
Структура семинара поделилась на общие паттерны для речи и музыки, и специфичные для речи и музыки. Некоторые идеи отлично ложатся с одного домена на другой, но еще не были применены для речи/музыки.
1. Говоря о данных, а у нас корпуса могут доходить до 5М часов как в Qwen3-TTS, или 1М часов как в Inworld TTS-1, или 27М семпов музыки как в ACE-Step-1,5... Хочется уметь автоматически и качественно отбирать данные для претрейна/CPT/SFT. В речи есть объективные метрики типа WER/PER, SIM, всякие MOS'ы. Это более приятный сценарий, в отличие от музыки, где нет объективных метрик. Поэтому сейчас хороший сценарий для музыки - использовать frontier LLM модели типа Gemini 2.5 Pro. Авторы ACE-Step предложили занятный self-evolving pipeline.
2. Говоря о репрезентациях аудио, сейчас идет смещение к аудио кодекам. В речи главный приоритет - стриминг. Низкий битрейт 12-25Hz, casual-only decoder для реалтайма, а попытки сжать битрейт еще ниже до 5Hz обычно неудачны, НО недавно вышел SiTok. В музыке стриминг не нужен, нам скорее хочется сделать кодек работающий с 48kHz аудио и длинным контекстом. Длина последовательности при 25Hz ~= 7500*количество кодбуков, бюджет растет до десятков тысяч токенов. Плюс хочется учитывать когерентность между треками: вокал и разные инструменты аккомпанемента. Авторы LeVo придумали классный кодек для этого. А для работы с длинным контекстом хорошее решение предложили авторы Qwen3-TTS, сделали curriculum по контексту с 8 до 32к токенов. Конечно сейчас также мейнстрим разными способами добавлять семантику в кодеки, стандарт - стиль Mimi Codec.
3. Собрав данные и определив репрезентации, подумаем о архитектуре. Тут мне нравится схема от BLIP3o-Next, хоть тут и про картинки. Их AR+Diffusion пайплайн. Накидывают RL на AR для хорошего понимания сцены, позиционирования объектов, прочей семантики. Потом через кросс-атеншн в DiT блоки добавляют инфу из AR блока. Почитайте работу) В речи подобный паттерн нарастает.
Впрочем, говоря про pure AR: готовый стек LLM, in-context learning — voice cloning «из коробки», законы масштабирования, но бывает exposure bias, hallucinations, repetitions и качество ограничено codec bottleneck. Иначе гововря про Non-AR: параллельная генерация — нет последовательной задержки, continuous latents — нет codec bottleneck, нет exposure bias, но alignment text-audio — центральная сложность, long-form coherence хуже, чем у AR, тяжелее применять RL
4. Переходя к обучению, конечно увидим пайплайн PT->CPT->SFT->RL, а говоря про инференс и стримнг обратите внимание на техрепорт Iworld TTS-1. В музыке говоря про long-context снова обратите внимание на curriculum по длине от Qwen3-TTS, про структурное сегментирование у YuE/ACE-Step, dual-treck+mixed tokens generation от LeVo.
5. Для управляемости генерацией мейнстрим - LM как планировщик. Вместо промпт -> output делают промпт -> LM blueprint -> output. В речи это thinking pattern из Qwen3-TTS, активируется для сложных voice description промптов, как ризонинг в LLM. Плюс emotion/non-verbal tags ([whispering], [breathe]), которые в Inworld TTS-1 учат через LoRA на парных (neutral, stylized) данных - полный FT теряет базовую cloning capability. В музыке размах больше: ACE-Step делает Composer Agent, который раскладывает «sad jazz ballad» в YAML с BPM, key, structure, instruments, mood - DiT-рендерер занимается только акустикой. YuE добавляет structural progressive conditioning - генерация по сегментам [verse][chorus][bridge] с передачей контекста, авторы явно называют это CoT для музыки.
#audio #perfomances