Deepfake голос. 2 урок. Создаем собственную речевую модель.

Ответить
Аватара пользователя
Blink
Сообщения: 349
Зарегистрирован: 16 янв 2024, 10:42
Deepfake голос. 2 урок. Создаем собственную речевую модель.

Сообщение Blink »

Для создания и тренировки модели RVC (Voice Conversion), мы будем использовать библиотеку с веб интерфейсом
VoiceConversionWebUI.

Для чего нужно создавать свою модель? В интернете много уже готовых натренированных голосовых моделей, однако если вы хотите использовать свой голос, или например голос любимой тещи, очевидно что найти готовую модель голоса на просторах интернета не получится. Здесь нам и поможет библиотека VoiceConversionWebUI.

Шаг 1: Скачивание библиотеки и подготовка

Если у вас есть видеокарта, нужно скачать файл RVC-beta.7z .
Если у вас нет дискретной видеокарты, а только встроенная графика в процессор, вам нужен файл RVC1006AMD_Intel.7z

Распаковка архива: Распакуйте архив с помощью программы, поддерживающей формат .7z (например, 7-Zip). После распаковки откройте папку с необходимыми файлами для работы.

Шаг 2: Подготовка аудиоданных для тренировки.

Требования к аудио:
Формат: WAV.
Частота дискретизации: 22,05 kHz или 44,1 kHz — оптимальные для большинства моделей.
Длительность записи: Чем больше данных, тем лучше результат. Минимум 30 минут записи для относительно хорошего качества модели.
Чистота звука: Аудио должно быть без посторонних шумов. Желательно использовать диктофон с хорошим качеством записи, но можно и обойтись диктофоном на телефоне.
Тема речи: Желательно, чтобы текст был разнообразным, но можно тренировать на одной теме, если вы хотите создать модель для определенного типа речи (например, диктора). Если вы хотите заменить голос какого-то исполнителя песни на свой, тогда в записи обязательно нужно поговорить высоко и низко, медленно и быстро (в пределах своего голоса, не нужно искажать его сильно).
Также можно скачать датасет с готовыми аудио для тренировки, или обрезать чью-то речь с интервью.

Шаг 3: Настройка и запуск модели через GUI

В папке найдите файл go-web.bat и запустите его. (в версии для процессора файл go-web-dml.bat)
После этого в браузере запустится страница с графическим интерфейсом.
image.png
Перейдите в раздел с тренировкой модели (3 вкладка).
image.png
Настройка параметров тренировки: В интерфейсе GUI будет несколько параметров для настройки тренировки. Основные из них:
Название модели
Частота дискретизации аудио: для стабильной работы лучше оставить 40k.
Поддержка изменения высоты звука: для обычной речевой модели можно не включать.
Версия архитектуры модели: модели 2 версии получаются более качественные модели
Число процессов ЦП, используемое для оценки высоты голоса и обработки данных: не рекомендуется выбирать максимальное количество.
Путь к папке с аудиозаписями, на которых будет обучаться модель.
Номер говорящего/поющего: для тренировке одного голоса, нужно оставить 0.

Далее нужно нажать кнопку Обработать данные и дождаться окончания.

Если вы выбрали параметр "Поддержка изменения высоты звука", то далее нажмите кнопку извлечь черты.
image.png
Следующие настройки относятся уже к тренировке модели:
Частота сохранения: Раз во сколько эпох будет сохраняться предобученная модель. Лучше не выбирать слишком частые сохранения, но в случае ошибок, можно будет не запускать весь процесс заново.
Полное количество эпох: Старайтесь выбирать такое количество, чтобы модель достаточно обучилась, но и не начала переобучаться. В среднем, для хорошей модели подходит 150-250 эпох, однако все так же зависит от качества изначального датасета.
Размер пачки для GPU: Влияет на скорость обучения, стоит выбирать в связи с мощностью своего процессора/видеокарты.
Сохранять только последний файл '.ckpt': для сохранения места на диске.
Кэшировать все тренировочные сеты в видеопамять: кэширование маленьких датасетов (меньше 10 минут) может ускорить тренировку, но кэширование больших, наоборот, займёт много видеопамяти и не сильно ускорит тренировку. Не рекомендуем выбирать для обучения на процессоре.
Сохранять маленькую финальную модель в папку 'weights' на каждой точке сохранения: В конце можно сравнить модели, обученные на разном количестве эпох, чтобы выбрать лучшую.

После выбора настроек, нажимаем на обучение в одно нажатие и дожидаемся завершения.

Шаг 4: Оценка результатов

После завершения тренировки в папке logs/название_модели появится 2 файла с расширениями .pth и .index. С помощью них вы сможете протестировать модель, используя наш первый урок по дипфейкам.

Шаг 5: Дальнейшая оптимизация

Если результаты не совсем удовлетворяют, вы можете:
Увеличить количество эпох.
Собрать больше данных для тренировки.

Заключение

Процесс создания и тренировки модели RVC требует времени и вычислительных ресурсов. Важно тщательно подходить к подготовке данных и настройке параметров тренировки. С правильными данными и настройками можно получить довольно качественную модель для преобразования голоса.

Ответить