VF | Science
Открыть в Telegram
Генерацией музыки и всем, что связано с аудио ML я занимаюсь, а всем остальным ML интересуюсь) Делюсь знаниями, мыслями, событиями по своей карье, делаю анонсы своих онлайн/офлайн мероприятий. Автор: @varfolomeefff
Больше1 126
Подписчики
Нет данных24 часа
-27 дней
+230 дней
Архив постов
1 126
Это уже не просто изменение архитектуры. Мы меняем порядок доступности информации. Во многих задачах порядок предсказания кажется чем-то естественным и фиксированным, хотя на самом деле это одна из степеней свободы. Можно переставить решения местами, задержать один поток относительно другого, сначала получить грубый план и только потом детализацию. В результате сама условная задача может стать существенно проще.
Мне нравятся эти примеры именно потому, что методы у них совершенно разные, а исследовательские ходы хорошо переносятся между областями.
В одном случае мы выносим часть структуры из обучаемой задачи. В другом — отказываемся пропускать всю информацию через одно представление. В третьем — разводим решения по уровням абстракции и масштабам зависимостей. В четвёртом — меняем порядок доступности информации и тем самым упрощаем условное распределение.
И вот примерно так мне сейчас интереснее читать статьи. Не только спрашивать «что они сделали?», а пытаться восстановить:
Как выглядела задача до изменения? Где в ней находилась лишняя сложность? Какое преобразование переместило или устранило эту сложность? И в каких ещё задачах встречается такая же структура?
Тогда конкретная архитектура остаётся частным случаем, а сама работа добавляет в голову ещё один переносимый способ преобразовывать исследовательские задачи.
#research #ml #papers
1 126
👀 Как абстрактные исследовательские проблемы проявляются в реальных ML-работах
В прошлом посте я писал про идею «базиса» исследовательских проблем: вместо того чтобы запоминать работу как набор архитектурных решений, пытаться понять, какое ограничение авторы обнаружили и как именно они преобразовали задачу.
Хочу показать это на нескольких примерах.
В Etude решают задачу генерации фортепианных аранжировок из аудио. В предыдущих подходах упрощённое промежуточное представление теряло музыкальные детали, но если сохранять всё подряд, модели становилось сложно одновременно извлекать содержание и неявно восстанавливать ритмическую структуру. Авторы разделяют эти две проблемы: делают достаточно богатое представление музыкальных событий, а ритм — темп, такты и доли — извлекают отдельно и используют как фиксированный каркас.
Для меня здесь интересен не сам трёхэтапный пайплайн, а более общий ход: часть сложности можно вообще вынести из пространства, которое должна изучать модель. Если некоторую структуру можно получить отдельно, нет необходимости заставлять основную модель одновременно открывать её заново. При этом важно и обратное: нельзя настолько упростить промежуточное представление, чтобы оно уничтожило информацию, необходимую следующему этапу. Получается поиск не максимально богатого представления, а достаточного именно для конкретного преобразования.
Другой пример — BLIP3o-NEXT. В задаче редактирования изображения семантических признаков авторегрессионной модели оказалось недостаточно, чтобы хорошо сохранять детали исходной картинки. Поэтому авторы дополнительно передают признаки VAE непосредственно в диффузионную модель: и как дополнительное условие, и напрямую в пространство зашумлённого изображения; совместное использование этих путей даёт лучшую согласованность с исходником.
Здесь я вижу другую абстрактную проблему: не существует причины, по которой вся информация обязана проходить через одно универсальное представление. Одному компоненту нужны семантические признаки, другому — низкоуровневые детали. Попытка заставить одно представление одинаково хорошо обслуживать обе задачи сама создаёт узкое место. Иногда правильное решение — дать системе несколько представлений одного объекта, каждое под свой тип вычисления.
В ACE-Step 1.5 особенно хорошо видно разделение по масштабу и уровню абстракции. Языковая модель используется как планировщик: уточняет запрос, определяет структуру песни и формирует компактное описание того, что должно произойти. Диффузионная модель уже занимается акустической реализацией. Внутри неё локальное внимание используется для деталей и транзиентов, а глобальное — для долгосрочной ритмической и мелодической связности.
То есть здесь две отдельные мысли. Во-первых, решения разных уровней абстракции не обязательно стоит принимать одним механизмом. «Что должно произойти?» и «как именно это должно звучать?» — разные задачи. Во-вторых, разные зависимости требуют разных масштабов вычисления. Нет необходимости тратить одинаково дорогой глобальный механизм на то, что определяется локальным контекстом.
Ещё интереснее LeVo. В модели одновременно используются смешанные токены, описывающие совместное звучание вокала и аккомпанемента, и раздельные токены для каждой дорожки. То есть авторы фактически используют несколько представлений одной и той же музыки, потому что каждое сохраняет разные полезные свойства.
Но особенно мне нравится их задержка между потоками: при предсказании раздельных дорожек модель получает доступ к смешанному представлению на несколько шагов вперёд. Формально меняется сама условная структура задачи — трудное предсказание получает больше информации до того, как должно быть принято решение.
1 126
Если грубо собрать повторяющиеся типы исследовательских затруднений, я бы выделил такие: нехватка существенной информации, потеря нужных различий при преобразованиях, неудачная организация представления данных, избыточная сложность самой постановки, плохое разбиение задачи на подзадачи, смешение решений разных уровней абстракции, мешающее взаимодействие компонентов, неверно найденное узкое место, вмешательство не в тот уровень системы, неэффективная организация вычислений, неудачное распределение вычислительного и обучающего бюджета, а также ситуация, когда сам критерий успеха недостаточно хорошо задаёт то, что мы действительно хотим получить.
Мне пока не так важно точное количество категорий. Интереснее сама идея: огромное количество внешне разных ML-задач может быть комбинацией небольшого числа повторяющихся структурных проблем.
Тогда и опыт начинает храниться иначе. Не «в этой работе помог такой-то метод», а «здесь была такая структура ограничения, и её удалось преобразовать вот так».
Наверное, главный вопрос для меня сейчас звучит так:
Где именно в текущей постановке находится сложность, какого она типа и обязана ли она вообще находиться там?
Мне кажется, если научиться быстро отвечать на этот вопрос, накопленный исследовательский опыт превращается из набора отдельных решений в более общий язык мышления.
#research #ml
1 126
👀 Можно ли построить базис исследовательских проблем в ML?
Младший брат последнее время вдохновился моим путем и ML. От части поэтому попытаюсь систематизировать собственное мышление в ML Research в этих нейрослоп постах. За несколько лет накопилось много отдельных паттернов: где помогает декомпозиция, где важнее поменять представление данных, где проблема в обучении, а где в вычислительной части. Но мне всё меньше хочется хранить этот опыт как набор методов. Гораздо интереснее понять, можно ли свести большую часть исследовательских задач к конечному набору абстрактных проблем.
То есть при встрече с новой задачей сначала не спрашивать «что здесь попробовать?», а понять: какого типа ограничение вообще мешает получить лучший результат?
Например, большая группа проблем связана с информацией. Нужной информации может не быть во входе. Она может быть изначально, но потеряться после сжатия, токенизации или другого преобразования. Она может сохраниться, но оказаться представленной так, что модели слишком сложно её использовать. Наконец, информации может быть слишком много: модель вынуждена учитывать детали, которые вообще не важны для целевой задачи.
Отсюда для меня меняется взгляд на представления данных. Хорошее представление — не то, которое сохраняет максимум информации, а то, которое сохраняет нужные различия и делает целевую зависимость проще. Иногда часть структуры вообще лучше не заставлять модель изучать, а вынести наружу: вычислить заранее, передать отдельным условием или представить другим способом.
Другой большой класс проблем — неудачная декомпозиция самой задачи. Что нужно предсказывать первым? Какие переменные должны быть известны заранее? Где принимать глобальное решение, а где уточнять детали? Когда неопределённость нужно сохранить, а когда уже можно выбрать одну гипотезу? Иногда модель становится лучше не потому, что стала мощнее, а потому что мы переписали задачу в более удобной форме.
То же самое относится к уровням абстракции. Глобальная структура и локальные детали, планирование и реализация, смысл и низкоуровневое исполнение могут быть задачами совершенно разной природы. Если один механизм должен решать их одновременно, мы сами создаём лишнюю сложность.
Есть ещё проблемы взаимодействия частей системы. Две задачи могут нуждаться в общей информации, но мешать друг другу, если используют одни и те же параметры или один и тот же обучающий сигнал. Полезная связанность не означает, что всё должно быть общим. Иногда нужно сохранить обмен информацией, но разделить способы её обработки.
Отдельно важна локализация узкого места. Можно долго улучшать архитектуру, кодек, оптимизатор или отдельный блок, когда результат уже ограничен совсем другим компонентом. Тогда задача исследователя — понять, куда сейчас выгоднее направить следующую единицу данных, вычислений, ёмкости модели или качества разметки.
Похожая ошибка — исправлять место, где ошибка проявилась, вместо места, где она возникла. Плохой выход декодера ещё не означает, что проблема в декодере. Возможно, нужная информация была потеряна намного раньше. Поэтому полезно различать место наблюдения ошибки и место, где было принято решение, которое к ней привело.
С вычислениями тоже есть как минимум два разных класса проблем. Где-то мы просто делаем лишнюю работу: повторно считаем одно и то же, используем глобальное вычисление там, где достаточно локального, или выполняем последовательно то, что можно считать параллельно. А где-то вычисления сами по себе используются не там: возможно, выгоднее потратить ресурс не на увеличение модели, а на большее число кандидатов, более качественный поиск или другой способ представления данных.
И ещё один важный класс — когда у задачи вообще нет одного «лучшего» решения. Качество, скорость, устойчивость, разнообразие, управляемость могут конфликтовать. Тогда исследовательская задача состоит не только в максимизации одной метрики, а в понимании того, какие компромиссы фундаментальны, а какие появились из-за выбранной постановки.
1 126
А еще есть Денис, мой друг. Ему 17, а его также зовут на подобные позиции и он в полном контексте грядущих задач.
1 126
Позволю себе поделиться историей… Я уже 4 месяца без работы живу жизнь
Тяжелеющая история случилась в то время. Начал искать работку месяца 2 назад. Подался в Bland AI, Inworld, еще много куда.
Самое интересное было с Bland AI, прошел 5 собесов и тестовое, на Английском. У меня разговорный Английский не очень. Я вообще не ожидал, что я умею говорить на нем для собесов. Сам удивился когда смог.
Намеренно я его не учил, лишь последние годы очень много читал, смотрел видео. Могу понимать все, а сам говорить это другое.
Ну и вот… После защиты тестового на 5 этапе - мне написали такое
Я почти устроился на 280к баксов в год, с перспективой визы в США
1 126
Repost from Voice stuff
🎉 Подготовили статью "Dialogs: a studio-quality expressive conversational Russian speech corpus for dialog assistants", с Ильёй Латышевым, которую приняли на Interspeech 2026
Слова Ильи:
Это был мой первый подобный опыт, и теперь я могу с уверенностью сказать: если кажется, что всё, что может пойти не по плану, обязательно пойдёт не по плану — скорее всего, так и будет 😄 Переносы записей, сорванные дедлайны, организационные сложности, постоянные мелкие проблемы, которые по отдельности кажутся незначительными, но вместе сильно тормозят работу. В какой-то момент начинает казаться, что проект уже никогда не закончится. Но в итоге всё получилось, и я очень рад, что мы довели его до конца. За время работы я понял, насколько много мелочей влияют на качество речевого корпуса. Например: • желательно использовать одинаковые микрофоны и одинаковую аудиоцепочку для всех дикторов; • одинаковое расстояние до микрофонов; • необходимо контролировать уровень фонового шума и акустику помещения; • важно не менять настройки записи между сессиями; • стоит заранее продумать организацию записи, потому что именно она часто становится источником самых неожиданных проблем.Одной из особенностей нашего корпуса стали условия записи диалогов. Два актёра театра сидели напротив друг друга и читали реплики, видя мимику, жесты и эмоциональную реакцию собеседника. Несмотря на то что текст был заранее подготовлен, такое взаимодействие делало реплики значительно более естественными и выразительными. Это заметно отличается от записи, когда каждый диктор работает в одиночку и произносит свои реплики изолированно. В результате получился открытый студийный корпус выразительной русской разговорной речи: • 20 часов записей; • 3 профессиональных диктора — актёра театра; • широкий набор эмоций и разговорных стилей; • открытая лицензия для исследований. Корпус в первую очередь предназначен для файнтюна моделей синтеза речи. В статье мы также показываем результаты обучения моделей и субъективную оценку качества (MOS) для различных разговорных стилей. 📄 Статья на arxiv: https://arxiv.org/abs/2607.14310 📄Статья на hf: https://huggingface.co/papers/2607.14310 🤗 Датасет: https://huggingface.co/datasets/langswap/dialogs-ru-emotional-conversations 🎤 Демо: https://huggingface.co/spaces/frappuccino/dialogs-ru-tts Спасибо Илье за работу над этим проектом - это было очень непросто и ресурсозатратно и я очень хочу чтобы результаты нашей работы приносили пользу таким же исследователям речевых технологий как мы. Подписывайтесь на канал Ильи, он делает крутые обзоры там! @decent_researcher И на этот канал, @voicestuff
1 126
Бтв, приходите на DataFest что-ли, 23го в X5 Tech буду. В этот раз не так масштабно как в прошлом году и я занялся в целом абстрактной секцией ML for Audio. Спикеры по разным городам распределились) Из музыкальных докладов всего 2, один в Питере, другой в Уфе. Будем следить!)
1 126
6. Дальше RL. В речи RL зашёл быстро, потому что есть объективные метрики. TTS-1 берёт α·R_WER + β·R_SIM + γ·R_DNSMOS, считает всё через Whisper/WavLM/DNSMOS и катит GRPO. Без разметчиков. Плюс хитрость — conditional activation: reward на эмоции активен только на сэмплах с тегом эмоции, иначе он бессмысленно штрафует базовые сэмплы. Qwen3-TTS делает DPO, потом GSPO для стабильности на разных задачах.
В музыке всё сложнее, потому что объективных метрик там нет. Musicality, harmony, запоминаемость - субъективщина. Два разных подхода. LeVo делает multi-preference DPO: три оси (lyric alignment через PER, соответствие промпту через MuQ-MuLan, musicality через human seed -> reward model -> 60К пар), под каждую обучают отдельный DPO, потом линейно интерполируют веса трёх моделей. Если оптимизировать одну ось - другие проседают. Интерполяция обходит этот конфликт.
ACE-Step v1.5 пошёл дальше всех. Они отказались от внешних reward моделей вообще и придумали intrinsic rewards - модель сама себе judge через свои внутренние свойства. Attention Alignment Score считается прямо из кросс-атенншн карт диффузии: насколько внимание покрывает все lyric-токены, насколько оно монотонно движется по времени, насколько уверенно сидит в осмысленных регионах. Через DTW аггрегируется в один скаляр, корреляция с человеческой оценкой выше 95%. Далее Pointwise Mutual Information: одна и та же LM играет роль Composer (текст → audio codes) и Listener (audio codes → текст). Reward — это насколько Listener восстанавливает исходный промпт. Если модель сгенерила что-то общее, Listener даст generic caption, PMI будет около нуля. Если сгенерила что-то конкретное и попадающее в промпт - PMI большое. Никаких внешних judge'ов, никакого bias, никакого дрифта на странных генерациях.
И ещё ACE-Step применяет RL не только к генератору. У них GRPO ещё и на captioner'е в пайплайне разметки. Улучшается captioner - улучшается весь корпус - улучшается финальная модель.
#audio #perfomances
1 126
👀 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
1 126
Repost from AI Knowledge
📊 Лекция 11: Advanced DL от AI Knowledge Club
⭐ Тема: Audio Generation
⭐ Лектор: Варфоломеев Захар
Разберем современные пайплайны для генерации речи и музыки. Обсудим как делают данные из больших сырых корпусов, архитектуры моделей, обучение, влияние семантики и RL. Выделю практические инсайды, поделюсь своими идеями для последующих модификаций
Ссылка на степик
▫ 14 мая (этот четверг) в 18:15
▫ Онлайн (ссылку на трансляцию пришлём в чат)
1 126
Repost from Speech Technology
Interesting community on Reddit
https://www.reddit.com/r/VoiceAutomationAI/
will host AMA session with Tony Robinson, one of the most knowledgeable person I know
Upcoming AMA with Dr Tony Robinson (Founder Speechmatics)
Excited to announce that Dr Tony Robinson will be joining Unio - The Voice AI Community powered by SLNG for a live AMA with builders & founders.
If you’re building voice AI, you already know this:
it works in demos… and breaks in production.
Dr Tony has spent 36+ years in Voice AI, starting in 1989 at Cambridge where he built one of the earliest neural network based speech recognition systems, long before deep learning became mainstream.
Today, Speechmatics powers voice AI across 50+ languages, with customers seeing 9x growth in voice agent adoption in 2025.
📅 Date: 27 March
⏰ Time: 10:30 AM PST / 11:00 PM IST
📍 Location: Reddit (r/VoiceAutomationAI)
For the next 24 hours, he’ll be answering questions about:
• What actually breaks in production voice AI (and how to fix it)
• Accents, noise, latency & real-world edge cases
• Designing reliable STT-LLM-TTS pipelines
• Lessons from 35+ years building speech systems
• Where voice AI is really heading (beyond the hype)
• What he’d do differently if starting today
If you're building in Voice AI, AI agents, or conversational automation, this is a rare opportunity to learn from someone who has been solving these problems for decades.
Join the reddit community to drop questions👇
Link in the first comment.
1 126
Кто сказал «мяу»?
ИТ-компания «Криптонит» приглашает на дататон «Криптонит.Тембр», где нужно распознать, кто говорит!
Тебе предстоит обучить Speaker Recognition модель, устойчивую к искажениям аудио, возникающим в реальных сценариях эксплуатации речевых интерфейсов и систем обработки звука:
🔹искажения, вносимые акустической средой;
🔹посторонние шумы;
🔹реверберация;
🔹большое расстояние до микрофона;
🔹искажения каналов связи.
Участвуй и ты сможешь:
🟦получить шанс разделить призовой фонд в 600 000 рублей;
🟦разработать решения в области Audio/Speech ML;
🟦прокачать скиллы в Speaker Recognition и Deep Learning.
👆 Регистрируйтесь до 10 апреля включительно!
Подписывайтесь на телеграм-канал «Криптонит. Разработка, наука, шифрование» — там много всего интересного.
1 126
А писать посты с разборами статей как то приелось, также есть нейронки, да и хочется делиться тем, что я знаю на практике длиною в год.
Я просто выложу список самых интересных и ценных работ.
