Новая версия

#4
by NGC404 - opened

Доброе утро , когда ждать новую версию модели ?

Доброе, после праздников

Крута, буду ждать с нетерпением. )))

Во-первых, спасибо за русский язык! Это то, чего многим клонированиям не хватает, тем более с таким доступным подключением (в локальной среде). Во-вторых, можно ли вам как-то помочь с апдейтами?)
И можно узнать, что нового будет в обновлении? По поводу ударений в словах из другого топика - да, прям очень часто не туда они.

🖐️, в новом релизе будет расширен датасет (возможно уйдет проблема с ударениями) и будет добавлен английский язык

То есть нет точной зависимости между ударениями и объёмом датасета?

Ооо, за английский одновременно с русским отдельное спасибо.

Спасибо за модель. Хочу натренировать эту модель на другом языке. Подскажите сколько данных и какого характера желательно нужно для получения хороших результатов?

Добрый день, можно получить хорошие результаты, начиная с 50к семплов, но чем больше, тем лучше. Важно, чтобы каждый голос был уникальным. Подробнее можно почитать в оригинальном репозитории

Как узнал о проекте, уже несколько недель каждый день захожу сюда чтобы проверить, не появилась-ли новая версия.
Нету-ли до сих пор каких-то примерных дат, когда стоит ожидать модель? 🥲

@AugustLight вся правда, тоже захожу сюда в надежде на появление новой версии)

Доброе утро, к концу недели будет новая версия, если качество модели меня устроит

Я такая же фигня 😀 Очень жду !!!

Тоже захожу каждый день )))

Нас таких уже несколько)

Спасибо за новую версию. К сожалению "акцентатор нада". Русский язык слишком сложный для этой модели. Пример слова "слова".

В каком то из обсуждений советовали вставлять @ в качестве ударений

Я игрался со знаком ' . Это работает, но после ударение падает на несколько слог.

В моём случае знак ' не давал положительного эффекта

у меня есть очень крутая идея: сделать так чтобы за ударения отвечал знак "+".
я уже знаю хорошую модель для расставления ударений - RUAccent(даже знаком с автором). И она работает просто превосходно.
я думаю даже смогу сам дописать поддержку Ruaccent перед синтезом. Главное чтобы модель понимала что это.

P.S: либо просто + заменю на @. Думаю там знак для ударения не так принципиален.

вот статья на хабре: https://habr.com/ru/articles/767560/

у меня есть очень крутая идея: сделать так чтобы за ударения отвечал знак "+".
я уже знаю хорошую модель для расставления ударений - RUAccent(даже знаком с автором). И она работает просто превосходно.
я думаю даже смогу сам дописать поддержку Ruaccent перед синтезом. Главное чтобы модель понимала что это.

P.S: либо просто + заменю на @. Думаю там знак для ударения не так принципиален.

вот статья на хабре: https://habr.com/ru/articles/767560/

У меня есть такой скрипт могу скинуть я уже это сделал

у меня есть очень крутая идея: сделать так чтобы за ударения отвечал знак "+".
я уже знаю хорошую модель для расставления ударений - RUAccent(даже знаком с автором). И она работает просто превосходно.
я думаю даже смогу сам дописать поддержку Ruaccent перед синтезом. Главное чтобы модель понимала что это.

P.S: либо просто + заменю на @. Думаю там знак для ударения не так принципиален.

вот статья на хабре: https://habr.com/ru/articles/767560/

Есть много хороших. Знаки и место можно переписать с питоном, несложно соединить с F5TTS, чтобы подготовили текст для воспроизведения. Всё упирается в модель интерпретации. "Датасет нада" :)

у меня есть очень крутая идея: сделать так чтобы за ударения отвечал знак "+".
я уже знаю хорошую модель для расставления ударений - RUAccent(даже знаком с автором). И она работает просто превосходно.
я думаю даже смогу сам дописать поддержку Ruaccent перед синтезом. Главное чтобы модель понимала что это.

P.S: либо просто + заменю на @. Думаю там знак для ударения не так принципиален.

вот статья на хабре: https://habr.com/ru/articles/767560/

У меня есть такой скрипт могу скинуть я уже это сделал

я думаю, если на то пошло, то лучше сразу сделать с ним space.

Есть такой датасет https://ankiweb.net/shared/info/613414639 , но с ним поработать надо.

Будет ли исправление ударений или может у кого-нибудь есть мысли, как их исправить?

Будет ли исправление ударений или может у кого-нибудь есть мысли, как их исправить?

что я только не пробовал: и использовать "@" и "`" и "+". Даже буквы повышал. Но ничего из этого не дало результат.
RUAccent неплохо расставляет ударения. Главное понять, как заставить модель акцентировать внимание в нужных местах.

@AugustLight Единственный вариант который увидел, это подсказка в ветке "Ударения?"
Расширить словарь символами а', о', и' и так далее. Для этого нужно будет прогнать расшифровки всех датасетов через ruAccent, а потом заново натренировать модель.
Не знаю насколько это реализуемо, всего лишь теория, я явно не эксперт в этом. Единственный вопрос как модель будет понимать символ a', это ведь по сути 2 символа.

@AugustLight Единственный вариант который увидел, это подсказка в ветке "Ударения?"
Расширить словарь символами а', о', и' и так далее. Для этого нужно будет прогнать расшифровки всех датасетов через ruAccent, а потом заново натренировать модель.
Не знаю насколько это реализуемо, всего лишь теория, я явно не эксперт в этом. Единственный вопрос как модель будет понимать символ a', это ведь по сути 2 символа.

надеюсь автор заметит и реализует, потому что у меня к сожалению сейчас нет возможности зафайнтюнить модель 😭🙏

Для такого нужен новый tokenizer, у меня сейчас нет возможности делать свою реализацию. Сейчас экспериментирую с параметрами обучения, возможно будут улучшения

у меня есть очень крутая идея: сделать так чтобы за ударения отвечал знак "+".
я уже знаю хорошую модель для расставления ударений - RUAccent(даже знаком с автором). И она работает просто превосходно.
я думаю даже смогу сам дописать поддержку Ruaccent перед синтезом. Главное чтобы модель понимала что это.

P.S: либо просто + заменю на @. Думаю там знак для ударения не так принципиален.

вот статья на хабре: https://habr.com/ru/articles/767560/

Есть много хороших. Знаки и место можно переписать с питоном, несложно соединить с F5TTS, чтобы подготовили текст для воспроизведения. Всё упирается в модель интерпретации. "Датасет нада" :)
@tomasris
Даже интересно, какие есть еще ударяторы?

Появился такой вопрос: если токенайзер с символов апострофа (или любым другим) сложно реализуем, то никак не получится использовать заглавную букву?
Слышал о проблеме, что F5-TTS просто пропускает заглавную букву или она звучит как-то неправильно.
У меня в голове вырисовывается план, поэтому хочу услышать ваше мнение:

  1. Прогнать все расшифровки голосов датасетов через ruaccent следующим образом: сначала весь текст в lowercase, потом в каждом слове ударная буква превращается в заглавную.
  2. Натренировать модель на этом датасете
  3. Во время использования в поле text to generate подавать полностью lowercase текст и делать ударные буквы заглавными

Появился такой вопрос: если токенайзер с символов апострофа (или любым другим) сложно реализуем, то никак не получится использовать заглавную букву?
Слышал о проблеме, что F5-TTS просто пропускает заглавную букву или она звучит как-то неправильно.
У меня в голове вырисовывается план, поэтому хочу услышать ваше мнение:

  1. Прогнать все расшифровки голосов датасетов через ruaccent следующим образом: сначала весь текст в lowercase, потом в каждом слове ударная буква превращается в заглавную.
  2. Натренировать модель на этом датасете
  3. Во время использования в поле text to generate подавать полностью lowercase текст и делать ударные буквы заглавными

Хорошая идея, но ruaccent проставляет ударения через зам+ок, жарк+ое итп, то есть знаком плюс перед ударной гласной.
Попробую внедрить обработку ruaccent в процесс транскрибирования(делается буквально в десяток строк) и пофайнтюнить модель на не большом объеме данных.

Появился такой вопрос: если токенайзер с символов апострофа (или любым другим) сложно реализуем, то никак не получится использовать заглавную букву?
Слышал о проблеме, что F5-TTS просто пропускает заглавную букву или она звучит как-то неправильно.
У меня в голове вырисовывается план, поэтому хочу услышать ваше мнение:

  1. Прогнать все расшифровки голосов датасетов через ruaccent следующим образом: сначала весь текст в lowercase, потом в каждом слове ударная буква превращается в заглавную.
  2. Натренировать модель на этом датасете
  3. Во время использования в поле text to generate подавать полностью lowercase текст и делать ударные буквы заглавными

Хорошая идея, но ruaccent проставляет ударения через зам+ок, жарк+ое итп, то есть знаком плюс перед ударной гласной.
Попробую внедрить обработку ruaccent в процесс транскрибирования(делается буквально в десяток строк) и пофайнтюнить модель на не большом объеме данных.

А в чем проблема в токенизатор докинуть токенов для ударений? Ну или заюзать какой-нибудь символ для этого уже присутвствующий?

Кстати, можно вот тут спросить в телеграме: @speech_recognition_ru, наверное, подскажут

А в чем проблема в токенизатор докинуть токенов для ударений? Ну или заюзать какой-нибудь символ для этого уже присутвствующий?

Проблема в том, чтобы эти токены ударений проставить в выборку для обучения, если модель при обучении ни разу не видела ударений в валидационном тексте, то она без понятия что с ними делать.

А в чем проблема в токенизатор докинуть токенов для ударений? Ну или заюзать какой-нибудь символ для этого уже присутвствующий?

Проблема в том, чтобы эти токены ударений проставить в выборку для обучения, если модель при обучении ни разу не видела ударений в валидационном тексте, то она без понятия что с ними делать.

Ну да, нужно чтобы либо автор заново обучил модель, либо поучить на небольшом корпусе поверх.

Ну да, нужно чтобы либо автор заново обучил модель, либо поучить на небольшом корпусе поверх.

Ну да, вот я и хочу добавить ruaccent в текущую логику транскрибирования при подготовке сета. Закинуть пару аудиокниг и проверить эту гипотезу, прежде, чем думать о более глобальном переобучении. =)

Отличная работа с ruaccent, кстати. Очень шустро, и качественно расставляет ударения!

Есть ли какие-то продвижения у создателя модели или у других участников? Мониторю каждый день

Добрый день, сейчас обучаю модель на датасете с ударениями. По срокам ориентировки нет

У меня, кстати, получилось с ударениями через ruaccent. Но ресурсов на полноценное обучение и больших датасетов нет.
В сумме у меня есть около 400 часов датасета, сделанного из аудиокниг, которые прогнал через whisper. Затем 25% от результата прогнал через ruaccent и тюню на базовой модеи. Если разметить ударения на всех данных, модель плохо начинает работать на словах без ударений.

Примерно на 20к шагов уже получается более или менее осознанная русская речь. В районе 200к уже начинают кривенько работать ударения. На 300к уже очень даже сносный результат.

С какими проблемами столкнулся:

  1. Whisper, конечно, далеко не идеально размечает текст, довольно много откровенно мусорных сэмплов. Вычищал руками сэмплы с сильным несоответствием между количеством токенов и длиной аудио. А так-же транскрипты типа строк из 100+ одной буквы (ааааа.., ээээээ.. итп)
  2. ruaccent, конечно, очень хорошо расставляет ударения и ё. Но вот спикеры очень часто проговаривают ударения не "по канону". Помогает только ручная дообработка.

В итоге вручную дообработал около 3% датасета, хоть чуть-чуть утучшил обучение. В итоге, как и почти все в обучение упирается в качество данных ))

А, и еще, с числами тоже беда. Числа тоже преобразовал в текст с помощью num2words. Есть еще проблемы с 1-й -> один-й итп, но это лучше, чем когда в тексте просто числа, и на выходе бессвязное бормотание

А, и еще, с числами тоже беда. Числа тоже преобразовал в текст с помощью num2words. Есть еще проблемы с 1-й -> один-й итп, но это лучше, чем когда в тексте просто числа, и на выходе бессвязное бормотание

Можно попробовать https://github.com/Den4ikAI/runorm, но он в глубокой бете и может быть нестабильным.

У меня, кстати, получилось с ударениями через ruaccent. Но ресурсов на полноценное обучение и больших датасетов нет.
В сумме у меня есть около 400 часов датасета, сделанного из аудиокниг, которые прогнал через whisper. Затем 25% от результата прогнал через ruaccent и тюню на базовой модеи. Если разметить ударения на всех данных, модель плохо начинает работать на словах без ударений.

Примерно на 20к шагов уже получается более или менее осознанная русская речь. В районе 200к уже начинают кривенько работать ударения. На 300к уже очень даже сносный результат.

С какими проблемами столкнулся:

  1. Whisper, конечно, далеко не идеально размечает текст, довольно много откровенно мусорных сэмплов. Вычищал руками сэмплы с сильным несоответствием между количеством токенов и длиной аудио. А так-же транскрипты типа строк из 100+ одной буквы (ааааа.., ээээээ.. итп)
  2. ruaccent, конечно, очень хорошо расставляет ударения и ё. Но вот спикеры очень часто проговаривают ударения не "по канону". Помогает только ручная дообработка.

В итоге вручную дообработал около 3% датасета, хоть чуть-чуть утучшил обучение. В итоге, как и почти все в обучение упирается в качество данных ))

Получается бросаем все силы на очистку датасета?)

Ну что значит бросаем? В любом обучении всегда важны не только объем, но и качество данных. Это всегда понятно, а не я обнаружил. Я только жаловался на не очень высокое качество данных полученных через автотранскрибацию с whisper.
Я руками поразбирал common voice, и там даже в отобранных данных из-за не выского качества процентов 30 подойдут только для обучения распознавания голоса, но не для его генерации.
Если в данных большой процент слов произносится не правильно, неразборчиво или с неправильным ударением, то и готовая модель будет так генерировать.

более менее получается проставить ударения если продублировать букву. например так - "жиительница москвыы потеряяла боолее двуух миллиоонов рублеей, повеерив мошеенникам, котоорые обещаали ей быыстрый зааработок на биирже "
иногда звучит не много странно но вроде работает. писать с большой буквы вообще как я понял нельзя, он её не произносит, глотает

Your need to confirm your account before you can post a new comment.

Sign up or log in to comment