Загрузка...

[AI] Learning and using your own voice model.

Thread in Articles created by gruckz Aug 15, 2023. 7373 views

  1. gruckz
    gruckz Topic starter Aug 15, 2023 17 Nov 10, 2021
    Всем Ку
    Недавно наткнулся на форуме на пару статей по замене своего голоса с помощью моделей в реальном времени.
    В частности, эта описывает как раз весь процесс использования другого голоса онлайн, советую ознакомиться с ней после, я буду на нее ссылаться в самом конце.
    Это интересная тема, но я хотел бы дополнить ее. Рассказать, как натренировать собственную голосовую модель. С ее помощью можно перепевать песни как бы своим голосом - прикольная тема, но больше просто поприкалываться. Хотя если будет интересно - пишите, расскажу. Но сейчас же речь о более прикладном моменте: натренировать модель и после использовать КОНКРЕТНЫЙ голос (т.е. вашего друга, бабки, любого чела) в реальном времени. Постараюсь писать супер подробно, со скринами, чтобы не было вопросов. Итак, приступим.
    В данной статье я буду рассказывать про обучение собственной голосовой модели с помощью RVC и использование ее с w-okada. Я видел на форуме инфу по использованию w-okada, как раз в вышеуказанной статье. К ней я лишь добавлю момент с добавлением своей модели. По RVC же я видел только гайд по kaggle, но в случае с kaggle много лишних телодвижений, плюс мне нравится все хостить на своем компе. Если вы уже смешарик и вам есть что сказать - пожалуйста, пишите. Я и сам не волшебник, только учусь.
    Шаг нулевой
    Для начала, расскажу, что нам понадобится:​

    10-15 минут записи голоса человека. Если пробуете на себе - сядьте и запишите несколько минут просто разговора на диктофон (лучше в телефоне, там качество получше). Если другого челика - все зависит от вас. Я брал либо голосовые из телеги - вполне неплохо, либо записывал диалог в дискорде (на скрытничах). В общем, любая запись, без помех и сторонних шумов.
    • Нормальная видеокарта. Думаю, 1650+ должно хватить. Хотя и хуже можно, просто наберитесь терпения.
    • Несколько часов. Тренировка модели займет пару часов, если не трогать комп (на моей 3080 идет полтора часа где то). Советую закинуть на ночь и не париться.
    • python на компе. лично я юзаю 3.9. Надеюсь, с установкой питонов траблов не будет ни у кого. Если что, лично у меня стоит 3.9 версия - качайте с офф сайта, не забудьте при установке поставить галочку add python to PATH.
    • комп с виндой. Если у вас только мак - извиняйте, за мак не помогу.
      Пишите в лс, попробуем разобраться.
    Шаг первый
    Для начала, если хотим немного изучить вопрос, переходим по гитхаб ссылке. Если же нет, то жмем на хаггинфейс ссылку, ищем RVC-beta.7z файлик весом 5.19 GB (на момент написания статьи) и качаем его. [IMG]
    Скачали - распаковываем куда удобно. Стандартные предостережения про отсутствие русских символов в пути и наличие места на диске с запасом также применимы. Теперь запускаем файлик go-web.bat и немного ждем.[IMG]
    Поздравляю, вы установили и запустили модель.
    Шаг второй
    Нас встречает примерно такая картина:[IMG]
    Возможно, винда по дефолту открыла модельку в edge. Разницы никакой, но лично мне всегда спокойнее, когда на первых порах делаю 1в1 то же, что и автор. Так что просто скопируйте адрес локал хоста - он будет в терминале после строчки Running on local URL: - и вставьте в удобный для вас браузер, opera gx в моем случае.
    Переходим на вкладку Train, третья по счету.
    [IMG]
    Идем по порядку, слева-направо сверху-вниз. (Скрины для вас вольно переводил)
    Step 1: [IMG]

    Enter the experiment name: - Вставьте название модельки: пишем что угодно, условно, "test".
    1. Target sample rate: Частота дискретизации: Ставим 40к.
    2. Whether the model has pitch guidance (required for singing, optional for speech): - Будет ли моделька способна задавать тон и высоту голоса. Ставим да.
    3. Version - Версия, ставим v2. Проверяем, что target sample rate осталась на 40к.
    4. Number of CPU processes used for pitch extraction and data processing: - Кол-во задействованных процессов, оставляем как поставилось.
    Step 2a:[IMG]
    0. Для начала, заходим в корень модели (куда распаковали, создаем папку 'training', в ней папку 'test' (называйте как угодно). В эту папку кидаем наши аудиозаписи. Не парьтесь, будь то одна запись на 15 минут или 15 на одну минуту - модель сама все разрежет как ей будет нужно. За расширение тоже не переживайте, моделька кушала у меня и aac, и mp3, и ogg. В крайнем случае, перегоните в одно из этих.
    1. Enter the path of the training folder: - Укажите путь к папке с записями: training/test
    2. Please specify the speaker/singer ID: - Не трогаем, нам это не нужно.
    3. Жмем кнопку Process data. В консольке побегут сообщение, позже в Output information появится start preprocess, моделька начнет обрабатывать ваши записи. После появится ненужная нам инфа, после end preprocess. Увидели это - все хорошо. В целом, не знаю, что должно пойти не так, чтобы у вас на данном этапе что-то упало.
    Step 2b: [IMG]
    1. Enter the GPU index(es) separated by '-', e.g., 0-1-2 to use GPU 0, 1, and 2: - Смотрим, чтобы моделька корректно определила вашу видюху. В 99% случае ничего менять не нужно будет.
    2. GPU information - ваша видюха.
    3. Select the pitch extraction algorithm - Как сказано в скобках, pm - второпях, dio - середнячок, harvest - хорошо но долго. В теории, на ваше усмотрение, но я всегда ставлю harvest.
    4. После, жмем feature extraction. Как и в прошлом случае, побегут строки в консольке, вы увидите, как модель нарезает ваши аудиозаписи и обрабатывает их. Немного подождите, промотайте все **** вниз, увидели all-feature-done - все круто.
    Step 3:
    [IMG]
    1. Save frequency (save_every_epoch): - как часто моделька будет сохраняться. Ставим 10.
    2. Total training epochs (total_epoch): - Сколько всего будет эпох тренировок. Ставим 200.
    3. Batch size per GPU: - Не трогаем, либо как хотим (я ставлю 20).
    4. Save only the latest '.ckpt' file to save disk space: - Сохранить только последний чекпоинт - ставим Yes.
    5. Cache all training sets to GPU memory. - Ставим No.
    6. Save a small final model to the 'weights' folder at each save point: - Ставим Yes. Если моделька сломается в середине пути, будут хотя бы какие-то результаты. Иначе вообще все по новой.
    7. И, наконец, жмем "One-click training". Все, мы запустили процесс. Теперь лишь осталось дождаться окончания обработки моделью. Советую, как писал выше, оставить комп на ночь. Можете немного подождать, чтобы удостовериться, что все норм. Если увидите в консольке, epoch 1, epoch 2, epoch 3 - значит все окей, моделька медленно но верно работает. Если что-то падает или не работает, гуглите, или пишите сюда - буду по мере возможностей помогать, по крайней мере то, что знаю сам.
    Шаг третий
    Итак, теперь, если все прошло хорошо, вы натренировали модель на чей-то - или свой - голос, поздравляю! Теперь вы можете попробовать перепеть какие-то треки сами, или выпустить "фит" с каким-нибудь артистом. Я лично пару дней перепевал любимые песни. Но, опять таки, это тема отдельного разговора. Если будет интересно - пишите, сделаю гайд. Сейчас же расскажу, как использовать модель в реальном времени. В начале статьи я упоминал статейку - переходим, читаем. Статья объяснит, как пользоваться прогой и менять голос, я - как менять на конкретный. Итак, открыли программу, жмем edit:
    [IMG]
    Далее листаем вниз, жмем на свободном месте upload:
    [IMG]
    Далее, VoiceChangerType ставим RVC, model жмем select file и выбираем по указанном пути. В моем случае, C:\AI_voice\RVC-beta0717\weights\test.pth. Из-за того, что ранее мы с вами поставили Yes напротив сохранения каждую 10ую эпоху, у вас будем много моделек - если все сработает до конца - удалите их, и оставьте только последнюю. Index выбирать не нужно, жмем upload, и немного ждем, пока загрузится моделька.
    он будет по адресу модель\****\название, в моем случае RVC-beta0717\****\test, называться будет "очень длинное название.index". но как мне показалось, особо ничего он не дает.
    [IMG]
    Заключение
    Ну вот, собственно, и все. Если вы все сделали правильно - рядом с предустановленными модельками появится ваша. Ее использовать как абсолютно любую другую, в статейке это описано. Если будут вопросы - пишите, постараюсь ответить. Ну или опять таки, гугл в помощь. Спасибо что дочитали, и удачи!​
     
    This article was useful for you?
    You can thank the author of the topic by transferring funds to your balance
    Thank the author
  2. актив
    можно голосовые записывать притворяясь блогерами :BrainCosmic: :2011_like:
     
    1. gruckz Topic starter
      актив, да, в том числе) Я в скором времени планирую попробовать на папича натренировать)
  3. fckngwrld
    мне впадлу установить даже будет
     
    1. View previous comments (2)
    2. vuchaev2015
      fckngwrld, чтобы говорить голосом моргенштерна это того стоит
    3. OppsDestroyer
      fckngwrld, ты говоришь установить , лень даже читать бозе ))
  4. vuchaev2015
    vuchaev2015 Aug 15, 2023 все ближе и ближе... 23,528 Feb 15, 2018
    норм гайд, но если комп слабый лучше обучать на блокноте kaggle или google colab, как раз гайд по обучению на kaggle уже был на форуме :orange:
     
    1. View previous comments (2)
    2. vasyatakoitos
      vuchaev2015, красав я с тобой вчера общался дрочил
    3. gruckz Topic starter
      vuchaev2015, да, все так, гайд по kaggle уже был - я оставил на него ссылку. но мне все таки больше нравится на своем компе все делать.
  5. Инопланетянец
    Статью с телеги лолза спиздили(
     
    1. View previous comments (6)
    2. gruckz Topic starter
    3. gruckz Topic starter
  6. lord11111212
    можно результат бро
     
    1. gruckz Topic starter
      lord11111212, тебя интересует просто пример работы? Можешь написать в лс, я скину фрагмент.
  7. Tekumi
    Tekumi Aug 15, 2023 :happycat::happycat::happycat::happycat::happycat: 11,115 Aug 2, 2022
    прикольно, а она будет нормально работать только на том языке который был в исходных аудио файлах?
     
    1. View previous comments (1)
    2. Элейна
      gruckz, хуй, японская модель может хорошо говорить на русском, но плохо на английском, как и наоборот
      Зависит от хуй знает чего
    3. gruckz Topic starter
      Элейна, по моему опыту, использование модели на том же языке, на котором она тренировалась - залог успеха. На других языках уже как повезёт!
    4. Элейна
      gruckz, зависит от схожести звучания языка. Про язык оригинала можно и не говорить, и так понятно, что будет хорошл с большим шансом
  8. Siski_piski
    Siski_piski Aug 16, 2023 14,699 Oct 25, 2021
    хорошая вещь, жалко, что почти всегда потенциал будет сводиться к озвучке паст про говно
     
  9. Кустовой
    на амд ворк?
     
    1. gruckz Topic starter
      Кустовой, лично я не пробовал, но должно работать. только надо другую модель скачать
  10. МЕТИЛАМИН
    херня, лучше использовать rvc с mangio crepe
     
  11. ИроничныйЧёрт
    А есть вариант с помощью этой модели озвучить текст? не изменять голос, а текст озвучить?
     
    1. View previous comments (6)
    2. ИроничныйЧёрт
      vuchaev2015, я хз что такое rvc и so vits svc
    3. gruckz Topic starter
      ИроничныйЧёрт, rvc - это та голосовая модель, которая используется в этом гайде. so vits svc - аналог. отвечая на твой вопрос - именно с нуля синтезировать голос на ней невозможно, насколько мне известно - это не ее профиль. как тебе уже посоветовали, имеет смысл записать самому аудио, а потом переозвучить. ну либо на крайняк, другой моделью озвучить текст, а потом загнать ее сюда.
  12. id451248464
    Подскажите что лучше, harvest или rmvpe?
     
    1. gruckz Topic starter
      id451248464, приветствую! Для обучения только harvest, rvmpe там отсутствует. Для использования я лично использую rvmpe, но это нужно пробовать под себя индивидуально.
  13. anton11198
    anton11198 Aug 19, 2023 33 Mar 25, 2020
    жду гайд по перепевке треков:ok_love:
     
    1. gruckz Topic starter
      anton11198, отлично, рад видеть интерес к теме, спасибо!
  14. PycoderWizard
    300 эпох - 5 часов обучения на 3050 :hamster:
     
  15. безразлично
    [IMG]Работает,правда комп с китайской рефкой rtx 2060 сейчас улетит
     
  16. Dantesmq
    Dantesmq Aug 22, 2023 8 Jun 8, 2022
    карты амд не ворк? [IMG]
     
    1. gruckz Topic starter
      Dantesmq, для амд надо качать другую сборку
    2. Dantesmq
      самая нижняя из выделенных верно?

      gruckz, [IMG]
    3. gruckz Topic starter
      Dantesmq, да, верно, directml для amd
  17. MegaSa1nt
    MegaSa1nt Aug 26, 2023 0 Apr 27, 2019
    Здравствуйте! RTX 3070, одна эпоха тренируется раз в 8-9 минут, на 200 эпох это примерно 30 часов, как я могу ускорить процесс?
     
    1. MegaSa1nt
      MegaSa1nt, Исправил установкой новой версии RVC
    2. gruckz Topic starter
      MegaSa1nt, рад, что вы нашли ответ на свой вопрос. В целом, я бы советовал то же самое, ещё бы посмотрел на ваши настройки. Но если проблема уже решена - рад, что вы справились самостоятельно!
  18. MegaSa1nt
    MegaSa1nt Aug 29, 2023 0 Apr 27, 2019
    Забавное дополнение: в RVC уже есть программа для изменения голоса в реальном времени, нужно всего лишь запустить go-realtime-gui.bat
    [IMG]
     
    1. gruckz Topic starter
      MegaSa1nt, спасибо за ваше наблюдение! да, действительно, это так. но на мой личный взгляд, okada будет поудобнее)
  19. kosichev
    kosichev Oct 6, 2023 5 Jun 25, 2023
    есть G и D, какую надо загружать?
     
  20. id730392871
    Я всё равно не понимаю, как этим пользоваться...
     
Top
Loading...