1749
HuggingFace: https://huggingface.co/Den4ikAI GitHub: https://github.com/Den4ikAI Донат: https://pay.cloudtips.ru/p/b9d86686 Личка: https://t.me/bceloss Канал одного Audio-ресерчера
Всем привет ребятки, выложил тут датасет с ютуба, сделан через пайплайн FireRed Vad -> двойной гигаам с мерджингом (пунктуация из е2е и текст из обычной) -> алайн через квен алайн -> отчистка через clearer voice
Данные в формате опус, 48khz, mono, один спикер, у каждого опус файла есть txt файл с текстом аудио, в метадате данные в формате путь||текст(с ударениями)||время аудио в секундах
https://huggingface.co/datasets/TeraTTS/betterset
👀 Про аудио кодеки в Deep Learning School
Сегодня выложили 2 части лекции и она немножко затянулась, примерно на 100 минут :)
На лекции мы обсудили основополагающую технологию VQ-VAE и дошли до современных подходов к обучению аудиокодеков. Попутно рассмотрели специфические для них проблемы и способы их решения — такие как недифференцируемость в процессе обучения, коллапс кодовой книги, неэффективное покрытие домена и недостаточная репрезентативность для последующих задач. Отметили тенденции в современных исследованиях, разобрали конкретные примеры актуальных аудиокодеков и подумали, как можно объединить существующие подходы для обучения собственного кодека, потенциально превосходящего текущие решения. В завершение поговорили о практических рекомендациях по обучению кодеков и дополнительной литературе по теме.
Лекцию сделал без глубокого погружения в конкретные работы, зато мы обсудили гораздо больше других мыслей и сохранили интуицию по самым важным идеям и проблемам VQ-VAE моделей. Хотелось сделать лецию с упором на актуальные идеи и дать ровно столько, чтобы вы могли решить, куда стоит углубиться самостоятельно, имея фундамент заложенный после просмотра. Пишите возникающие вопросы в чат курса DLS или мне @varfolomeefff
Предлагаю посмотреть и поделиться мнением под постом. Давно я длинные лекции не читал.
На днях выделю особенно интересные тезисы из лекции в канал и обсужу их. Интуиция на леции правда животрепещущая и есть, о чем поспорить/подумать.
Часть 1: https://youtu.be/4mVfb-mhv9k?si=k9Q2wgtsA1h2DcP0
Часть 2: https://youtu.be/kOS6qHc6K2g?si=Po-jHSLwpeO5LmkZ
#audio #perfomances
Наш проект на Лето с AIRI 👾
Мы с Захаром @vf_science решили выложить постер с нашим методом, по которому, вероятно, будет наш финальный проект.
Но есть несколько дополнений, ибо места в постере мало (проговорим вживую на постерной сессии):
1. Перплексия считается по кодбуку, а не по языковой модели (И да, чем больше тем лучше)
2. MOS низкий, поскольку у нас небыло времени обучить на достаточном количестве данных, а рисерч пропозал делать надо :)
3. Планируем сэмплировть новые коды в менее плотных местах распределения + имеет смысл проводить революцию среди насэмплированных кодов
@den4ikresearch
Спасибо Илье и донатерам за поддержку. Теперь некоторые технические детали:
* В датасете будет 2-5к часов аудио (скорее всего больше)
* Формат: mp3, 16bit depth, 44100, 320kbps
* Речь разговорная, но некоторая примесь читающей (книги) тоже будет.
* Разметка eMOS для каждого сэмпла
* Длина сэмплов 1-3 предложения
* Разметка таймстемпов слов (получена через wav2vec2)
* Разметка ударений (обычные слова по словарю, омографы - по аудио)
Я надеюсь, что мне удастся выполнить задуманное. Штош, начнем снова поднимать опенсурс с колен.
Думаю уже можно поднять занавес перед своим ресерчем. Мне уже не терпится)
Прошло 2 месяца и мы с Денисом наконец-то завели эксперименты. Точнее, мы их заводили лишь последние трое суток и спали по 3 часа, ибо лишь недавно компьют освободился. Очень тороплюсь, потому что хочется поехать на "Лето с AIRI", а сегодня последний день для подачи заявки. Буду заполнять proposal research и записывать видосик.
Объясню на скорую руку. Кароч, я делаю метод для обучения моделей, основанных на VQ-VAE, который адаптирует размер кодовой книги для задач генерации и ретривала. Часто модели, которые решают эти задачи на основе VQ-VAE используют кодовую книгу, подобранную для задачи реконструкции, ее не обучают для целевой задачи. Поэтому кодовая книга может быть не совсем подходящей, то есть ее распределение либо слишком простое, либо слишком сложное для целевой задачи, не говоря о том, что оно может просто плохо перекрывать датасет. Я предлагаю метод для динамического обновления размера кодовой книги в процессе обучения, ориентируясь на датасет и целевую задачу. Кодовая книга должна идеально адаптироваться под задачу, модель и данные, полностью раскрывая потенциал модели))
При всем при этом:
*️⃣ кодовая книга будет оставаться замороженной в процессе всего обучения
*️⃣ нам не нужно заново инициализировать кодовую книгу, достаточно использовать предобученную или инициализировать ее 1 раз
*️⃣ латентное пространство модели остается стабильным и не меняется критично в процессе адаптации кодовой книги
*️⃣ упрощается подбор архитектуры и гиперпараметров модели
*️⃣ (скоро проверим на практике) улучшает качество модели в случаях, когда с фиксированной кодовой книгой лосс вышел на плато
Экспов еще будет весьма много. Ожидайте подробностей в скором времени...
#research #carieer
Яндекс представил инновационный метод дообучения нейросетей LoRA
Yandex B2B Tech представил клиентам инновационный метод дообучения нейросетей LoRA (Low-Rank Adaptation). Который позволяет бизнесу самостоятельно и быстро адаптировать искусственный интеллект под свои специфические задачи. При этом стоимость использования дообученных моделей останется на уровне базовых версий.
Технология уже доступна на платформе AI Studio и работает с нейросетью YandexGPT и опенсорсной моделью LLaMA. В ближайшее время компания планирует расширить список поддерживаемых моделей, включив Qwen и DeepSeek, которые можно будет запускать на выделенных мощностях по запросу. Это позволит компаниям использовать несколько дообученных нейросетей одновременно, комбинируя их для различных сценариев.
https://mltimes.ai/yandeks-predstavil-innovaczionnyj-metod-doobucheniya-nejrosetej-lora/
Ого, нормальный опенсурс добрался до домена музыки! Авторегрессионка генерирует вокал и аккомпанемент. Ждите обзор, это весьма значимое событие!
https://huggingface.co/m-a-p/YuE-s1-7B-anneal-zh-cot
Статья про RUAccent вышла!
Читать тут: https://aclanthology.org/2025.coling-main.444/
💸Поддержать автора
@den4ikresearch
Fish-Speech: Leveraging Large Language Models for Advanced Multilingual Text-to-Speech Synthesis
[статья] | [код]
Решил разобрать статью про новый синтезатор речи FishSpeech, который активно продвигается сообществом, в том числе и русским.
Работа по TTS, авторы которой пытаются решать некоторые проблемы авторегрессионных TTS: стабильность генерации, мультиязычность, а также скорость инференса.
Для этого они сделали Dual-AR (dual autoregressive) архитектуру.
Она состоит из двух трансформеров: Slow и Fast. На вход в Slow Transformer подаются токены текста, а на выходе получаются скрытые состояния. На основе информации от Slow он генерирует токены из кодбука.
Из примечательного — модель лучше работает с несколькими языками за счет использования LLaMA для извлечения языковых фич. На мой взгляд, ллм, наоборот, будет больше мешать, добавляя излишние галлюцинации на языках, данных для которых в трейне было немного. Во время тестов регулярно проскакивали артефакты, например, "." озвучивалось как "точка". Да и VITS (который в статье упоминался как фонемная модель) прекрасно работает на графемах. Также авторы пытались обучать модель с LoRA (а зачем, если модель с 0 инициализируется?).
Для генерации аудио разработчики используют GFSQ. У VQVAE есть проблемы (про них можно почитать в посте Захара), а одна из них — коллапс кодбука. Если обычный VQ-VAE квантует фичермапы, то GFSQ делит фичермапы на группы, каждая из которых обрабатывается отдельно.
Следующий блок модели — FireFly-GAN. Собой он представляет доработанный EVA-GAN. FF-GAN использует улучшенную архитектуру сверток, а именно depth-wise separable convolution и dilated convolution. Вместо MRF (Multi-Receptive Field) используется ParallelVlock, который обрабатывает данные параллельно через три ResBlock.
Про тренировку особо ничего не сказано, кроме того, что она проходит в 3 этапа: Претрейн, Файнтюн, DPO. Обучение авторегрессионки заняло неделю на 8xH100. Обучение вокодера на 8x4090 заняло еще неделю. Про DPO ничего не сказано, как и про всё остальное, поэтому больше, чем описано в посте, вы не узнаете.
Метрики:
WER 6.89% (лучше ground truth с 9.22%)
Схожесть голоса близка к оригиналу (0.914 Resemblyzer, 0.762 SpeechBrain)
MOS 4.05 из 5.0
В целом, статья с гордой пометкой "TECHNICAL REPORT" не раскрывает важных деталей работы, и приходится ковырять код. Утверждения, выдвигаемые авторами работы, на мой взгляд, недостаточно обоснованы.
P.S. Я решил включить режим ревьювера #2.
@den4ikresearch
Благодарю за помощь, я зарегистрировался на конференцию.
Читать полностью…
Разгребал тут значит почту.....
И увидел письмо счастья от Coling (первый скрин). Они хотят, чтобы я заплатил за очный сбор 375 баксов в лучшем случае (если я смогу их убедить в том, что я студент), а иначе с меня сдерут 850 баксов. Если я не заплачу, то мою работу не опубликуют в материалах конференции.
К сожалению, у меня нет 40к рублей на это всё, поэтому я прошу помощи у вас
Если вам не сложно, поддержите копеечкой: https://pay.cloudtips.ru/p/b9d86686
Колаб для семинара, в котором мы обучим поверх кодов Mimi кодека классификатор голосов на мужской и женский 😄
Используем 8 кодбуков, обучаем 8 трансформер-энкодеров, делаем темпоральный пулинг по токенам, а затем атеншн пулинг между энкодерами. Потом обычный классификатор. Из прикольного - визуализация атеншна на разные уровни RVQ.
Научились работать с RVQ и в качестве упражнения можете посчитать разные статистики для кодовых книг, например perpexity (покажет насколько равномерно используются коды) или утилизацию кодов на разных уровнях/на первом. Или попробовать другую простенькую задачу и посмотреть как интерпретируются уровни RVQ, вероятно на разных уровнях содержится разная семантика/смысл.
https://colab.research.google.com/drive/1L6sTCrpdxybkSOOrc4G2E4AuRnQLWZQj#scrollTo=cHGzcgj8oRVi
Наш русскоязычный датасет для TTS опубликован!
Сегодня выкладываем открытые корпуса на 4000+ часов речи, а еще синтезатор речи ESpeech-TTS-1
Наш датасет содержит больше 4000 часов русской речи. Статистика по корпусам:
Многоголосые:
ESpeech-podcasts - 3200 часов
ESpeech-webinars - 850 часов
Одноголосые:
ESpeech-igm - 220 часов
ESpeech-buldjat - 54 часа
ESpeech-upvote - 296 часов
ESpeech-tuchniyzhab - 306 часов
Данные лежат вот тут: https://huggingface.co/ESpeech
Техрепорт датасета доступен тут: https://github.com/Den4ikAI/ESpeech/blob/main/ESpeech_techreport.pdf
Также, мы решили провести некоторые эксперименты с TTS. Получилось обучить F5-TTS на 10000 часов речи и сделать одну из лучших по нашим замерам моделей в опенсурсе для русского языка.
Какие модели доступны?
ESpeech-TTS-1 [RL] V1 - Первая версия модели с RL
ESpeech-TTS-1 [RL] V2 - Вторая версия модели с RL
ESpeech-TTS-1 PODCASTER [SFT] - Модель обученная только на подкастах, лучше генерирует спонтанную речь
ESpeech-TTS-1 [SFT] 95K - чекпоинт с 95000 шагов (на нем основана RL V1)
ESpeech-TTS-1 [SFT] 265K - чекпоинт с 265000 шагов (на нем основана RL V2)
Лайкайте модель которая больше понравится чтобы мы понимали есть ли смысл запускать RL.
Послушать модели без скачивания можно вот здесь:
https://huggingface.co/spaces/Den4ikAI/ESpeech-TTS
Совместно с @speech_recognition_ru ещё сделали лидерборд русского ТТС, где можно глянуть метрики:
https://huggingface.co/spaces/ESpeech/open_tts_leaderboard_ru
Задать вопросы по поводу данных и модели можно в наших телеграм каналах:
/channel/den4ikresearch
/channel/voice_stuff_chat
Вы можете мне задонатить, чтобы у меня были ресурсы делать более крутые модели и датасеты:
USDT (TRC20): TEpEM4VVmGmqKHn4Xz1FxM7qZiXjWtUEUB
BTC: bc1qw5lq7fc455e47hggax6zp8txw4ru7yvsxvawv3
https://www.tbank.ru/cf/7WKnNMqWtOx
❤️ Секция про ML в музыке на DataFest 2025!
Посмотреть запись секции: https://vkvideo.ru/video-164555658_456241380?t=5h35m33s
Отдельно доклады будут выложены на ютубе позже.
Впервые за время существования датафеста (10 лет!) мною была собрана секция про ML в музыке и сразу 5 спикеров на 1 площадке:
▪️Максим Смоляков: "AI-Generated Music: методологии оценки качества и оптимизация генерации."
▪️Алексей Попов: "Генерация пения с помощью диффузионных трансформеров."
▪️Иван Разворотнев: "Foundation Audio Models For Music."
▪️Николай Глазырин: "Трейлеры в Яндекс Музыке с точки зрения ML инженера."
▪️Захар Варфоломеев (я): "Автоматическая транскрипция музыки в ноты фортепиано. Часть 2. "
На докладах мы послушали музычку и узнали множество инсайдов при работе с авторегрессией и диффузией для генерации музыки, а также обсудили задачи music information retrieval (MIR), где поговорили о foundation моделях в музыке, существующих подходах (актуальных и не очень), выделении трейлеров в музыке, исследованиях по аудио кодекам... список длинный, поэтому предлагаю почитать резюме в формате карточек!
🔤🔤На карточки про себя места не хватило, интересную мысль с моего доклада расскажу в следующем посте. Идеи применимы не только к моей задаче транскрипции музыки, а в целом к TTS/ASR моделям и не только 😬
#music #audio #perfomances
🚀 Разгоняем open-source-TTS
Сегодня я инвестирую в создание открытого корпуса русской речи!
Почему это важно?
Русские TTS-модели отстают от мирового уровня примерно на два года. Главная причина - это нехватка крупных, качественных и общедоступных датасетов. Без данных сложно быстро тестировать идеи и выпускать новые модели.
Кто делает датасет?
Знакомый вам Денис @bceloss, уже собирает нужные данные. Грант позволит ему работать над проектом фул-тайм и выложить результат в открытый доступ уже к концу лета.
Что это даёт лично мне?
Я хочу брать свежие модели с Hugging Face и решать прикладные задачи без глубокого ресёрча и бесконечной поддержки собственных пайплайнов. Чем больше открытых данных, тем быстрее это станет реальностью. Тем больше китайцев, которые обучат свои новые XYITTS на русском языке и тем проще мне решать реально важные задачи.
Как помочь уже сейчас?
1. Подпишитесь на канал Дениса @den4ikresearch.
2. Вы можете ему задонатить.
3. Репостните эту новость, чтобы о проекте узнало больше команд.
4. Напишите в комментариях, какие форматы и метаданные вам особенно нужны в корпусе.
5. Публикуйте свои данные и системы!
https://youtu.be/NrO20Jb-hy0?si=GtwCAwN77gf8y1zw
Подарите мне постер пж 😮
Запускаю наш с Захаром рисерч по кодекам для ттс. Также первые звуки модели:
Читать полностью…
Вот так бывает.... Сидишь с другом ночами, пишете код, а потом оказывается, что в чекпоинте нет дискриминатора
Читать полностью…
DiffRhythm: Blazingly Fast and Embarrassingly Simple End-to-End Full Length Song Generation with Latent Diffusion
[paper] | [code] | [hf_demo]
Опенсурс для генерации музыки развивается 👍
Теперь, в отличие от YuE у нас первая модель для генерации полного трека на латентной диффузии — DiffRhythm. Можно генерить треки длительностью до 4 минут 45 секунд с вокалом и аккомпанементом значительно быстрее всяких авторегрессионок, очевидно) Модель основана на двух последовательно обученных компонентах: VAE и DiT (рис. 1).
VAE основан на Stable Audio 2 и отличается полностью сверточной архитектурой, чтобы обрабатывать аудио произвольной длины. Учится на реконструкцию качественных треков и для лучшей устойчивости делают аугументацию имитирующую MP3-сжатие. Входные данные случайно сжимаются с переменным битрейтом, а на выходе мы также хотим качественное аудио. Также накинули 2 лосса: multi-resolution STFT и adversarial, дискриминатор сделали в 4 раза больше, чем в Stable Audio, чтобы моделька видела больше деталей и реконструкция была лучше.
DiT в DiffRhythm отвечает за генерацию латентных представлений и адаптирован для работы с длинными музыкальными последовательностями. Принимает 3 кондишна:
*️⃣ Стиль. Короткий аудиофрагмент обрабатывается через LSTM, где финальное скрытое состояние используется как глобальная информация о стиле.
*️⃣ Временной шаг. Embedding текущего шага диффузии суммируется со стилевым признаком, формируя глобальное условие.
*️⃣ Текст песни. Преобразуется в фонемы через grapheme-to-phoneme (G2P) конверсию, затем встраивается в непрерывные эмбеддинги через слой embedding. Эти признаки конкатенируются с зашумлённым латентным представлением и подаются в DiT.
DiT состоит из 16 слоёв декодера LLaMA с 2048-мерным скрытым размером и 32 головами внимания (64 измерения на голову), что составляет 1.1 миллиарда параметров. Для оптимизации используются FlashAttention2, дабы ускорить вычисления внимания для длинных последовательностях и gradient checkpointing, дабы снизить потребление памяти при обучении. Также применяется 20% dropout к стилю и тексту для поддержки classifier-free guidance (CFG) с масштабом 4 на инференсе. Учится это все дело с conditional flow matching, где моделька учится преобразовывать шум в данные через ODE. Музыка генерится за 32 шага с Euler ODE солвером и на протяжении всего трека музыка остается цельной, то есть мы получаем не набор случайных звуков))
Но, пожалуй, самое главное в этой работе — это алаймент текста и латентных представлений. Вокальные сегменты часто прерываются длительными инструментальными частями, что создаёт разрывы в временной последовательности. Также одни и те же слова могут звучать по-разному из-за различного аккомпанемента, что усложняет выравнивание. Авторы сказали, что всякий кросс-аттеншн или прямая конкатенация фичей не позволяют генерить разборчивые песни. Поэтому авторы предлагают выравнивание на уровне предложений, требующее только аннотаций начала предложений t_i_start (рис. 2) и делают его так:
*️⃣ Преобразуют текст в последовательность фонем через G2P преобразование
*️⃣ Инициализуют последовательность для алаймента P_i длиной L_max (4м45с), которая полностью заполнена падингами
*️⃣ Размещение фонем p_i в P_i на позициях, соответствующих временным меткам (𝑓_𝑖_start=[𝑡_𝑖_start * 𝐹_𝑠], где 𝐹_𝑠=21.5Гц)
Такой алаймент уменьшает потребность в детальных аннотациях, расходы на подготовку датасета и разборчивость вокала становится лучше. Бьютифул.
А теперь мои мысли: делать ллама подобные сетки с кучей аудио токенов, каким то ризонингом на лирику здорово, но можно делать как DiffRhythm. Авторегрессия, к слову, хорошая тем, что с ней можно учить все, этот подход универсален. Foundation моделей на диффузии я пока не видел (upd: видел). Ну и наверное авторегрессия хорошая для бизнеса, который может дать деняк, взять авторегрессию и поскейлить модельки, чтобы решить большинство возникающих задач. Что думаете?
#music #papers
Подборка каналов
Ребята предложили залететь в подборку каналов, я согласился, потому что ребята — топ! Так что про всех понемногу:
• Захар — человеку 18 лет, а ведет один из немногих каналов по аудио и делает уже свой стартап
• Антон — руководитель OCR команды в яндексе и делает прикольные посты про то как быть руководителем (мне сейчас актуально)
• Дэнчик — легенда в 15 лет статья на А* делает офигенные модельки на аудио
• Андрей — уважаемый человек, прошли одну школу жизни МФТИ + Сколтех. Мне нравятся его лайфхаки
• Никиты — прикольный посты про систем дизайну и его путь в ML
• Коля — постит полезное, но в основном мемы (иногда и отдохнуть хочется).
• Дима — офигенно пишет про ML, есть подборка с материалами, а также пишет много про основы ML и системный дизайн, что я считаю важным знать, но самому уже не интересно про это писать :(
• Александр — придумал интересный для меня формат обзоров на посты других людей), что уже за гранью моего понимания, но думаю мега эффективным людям будет полезно
• Сергей Николенко — уважаемый человек, поднимал ML, еще когда я был ребёнком. Тут просто человеку респект.
Онлайн на колинге никакущий.
Решил провести параллельную сессию здесь)
Ровно в 00:00 по UTC+8, решил написать небольшие итоги года.
Этот год был непростой, много взял, но многое и дал. Вырос канал, была подана статья на A ранговую конфу, удалось победить сбер в расстановки ударений.
Ждите в 2025 новых интересных ресерчей, а также, вероятно, завершение проекта расстановки ударений. Впереди еще много нерешенных на достаточном уровне нлпшных задач.
А пока вот вам новогодний стишок от CDLM, генератора стихов сделанного в результате экспериментов с char level моделями:
Поздравляю с Новым годом,
Знакомых, близких и друзей.
Прошу вас всех, под небосводом,
Хочу, чтоб было всем теплей.
Ещё хочу, чтоб было счастье,
И приходило в каждый дом.
Чтоб забывались все напасти,
И всем уютно было в нём.
Сбор средств окончен, спасибо всем участвующим
Читать полностью…
Возвращаюсь к вам с вдохновляющими новостями!
Поскольку RUAccent достиг впечатляющих результатов в развитии отечественного TTS, я решил написать научную статью и податься на разные тематические конференции.
Так вот, статью про RUAccent приняли на конференцию COLING 2025! Это моя первая конференция и теперь я думаю, как выучить разговорный английский за 2 месяца и ехать ли вообще на конфу))))
P. S. Статью еще не успел загрузить на arxiv, скоро исправлюсь.
Поддержать автора
@den4ikresearch