Модели и платформы ИИ
OpenVoice: Универсальное мгновенное клонирование голоса
В синтезе речи из текста (TTS) мгновенное клонирование голоса (IVC) позволяет модели TTS клонировать голос любого референтного диктора, используя короткий аудио-сэмпл, без необходимости дополнительной тренировки для референтного диктора. Этот метод также известен как синтез речи с нулевым выстрелом. Подход мгновенного клонирования голоса позволяет гибко настраивать сгенерированный голос и демонстрирует значительную ценность в широком диапазоне реальных ситуаций, включая настраиваемые чат-боты, создание контента и взаимодействие между людьми и большими языковыми моделями (LLM).
Хотя текущие фреймворки клонирования голоса выполняют свою работу хорошо, они имеют несколько проблем в этой области, включая Гибкий контроль над стилем голоса, т.е. модели не имеют возможности манипулировать стилями голоса гибко после клонирования голоса. Другой серьезной проблемой, с которой сталкиваются текущие фреймворки мгновенного клонирования, является Клонирование голоса с нулевым выстрелом в разных языках, т.е. для обучения текущие модели требуют доступа к обширной базе данных с множеством дикторов и языков (MSML), независимо от языка.
Чтобы решить эти проблемы и улучшить модели мгновенного клонирования голоса, разработчики работали над OpenVoice, универсальным фреймворком мгновенного клонирования голоса, который повторяет голос любого пользователя и генерирует речь на нескольких языках, используя короткий аудио-клип от референтного диктора. OpenVoice демонстрирует, что модели мгновенного клонирования голоса могут повторять цвет тона референтного диктора и достигать детального контроля над стилями голоса, включая акцент, ритм, интонацию, паузы и даже эмоции. Что еще более впечатляет, так это то, что фреймворк OpenVoice также демонстрирует замечательные возможности в достижении клонирования голоса с нулевым выстрелом в разных языках, даже если язык не входит в базу данных MSML, что позволяет OpenVoice клонировать голоса в новые языки без обширной предварительной тренировки для этого языка. OpenVoice может обеспечить превосходные результаты мгновенного клонирования голоса, будучи вычислительно жизнеспособным, с операционными затратами, которые могут быть в 10 раз ниже, чем у текущих доступных API с худшей производительностью.
В этой статье мы поговорим о фреймворке OpenVoice более подробно и рассмотрим его архитектуру, которая позволяет ему обеспечивать превосходную производительность по задачам мгновенного клонирования голоса. Итак, начнем.
OpenVoice: Включение универсального мгновенного клонирования голоса
Как упоминалось ранее, мгновенное клонирование голоса, также известное как синтез речи с нулевым выстрелом, позволяет модели TTS клонировать голос любого референтного диктора, используя короткий аудио-сэмпл, без необходимости дополнительной тренировки для референтного диктора. Мгновенное клонирование голоса всегда было горячей темой исследований, с существующими работами, включая фреймворки XTTS и VALLE, которые извлекают вложения диктора и/или акустические токены из референтного аудио, что служит условием для автoreгрессивной модели. Авторегрессивная модель затем генерирует акустические токены последовательно, а затем декодирует эти токены в сырую аудио-волну.
Хотя автoreгрессивные модели мгновенного клонирования голоса повторяют цвет тона замечательно, они не могут манипулировать другими параметрами стиля, включая акцент, эмоцию, паузы и ритм. Кроме того, автoreгрессивные модели также испытывают низкую скорость вывода, а их операционные затраты довольно высоки. Существующие подходы, такие как фреймворк YourTTS, используют неавторегрессивный подход, который демонстрирует значительно более быструю скорость вывода речи по сравнению с автoreгрессивными фреймворками, но все еще не могут обеспечить пользователям гибкий контроль над параметрами стиля. Более того, как автoreгрессивные, так и неавторегрессивные фреймворки мгновенного клонирования голоса требуют доступа к большой базе данных MSML или базе данных с множеством дикторов и языков для клонирования голоса в разных языках.
Чтобы решить проблемы, с которыми сталкиваются текущие фреймворки мгновенного клонирования голоса, разработчики работали над OpenVoice, открытым фреймворком мгновенного клонирования голоса, который направлен на решение следующих проблем, с которыми сталкиваются текущие фреймворки IVC.
- Первая проблема заключается в том, чтобы позволить фреймворкам IVC иметь гибкий контроль над параметрами стиля, помимо цвета тона, включая акцент, ритм, интонацию и паузы. Параметры стиля имеют решающее значение для генерации естественных разговоров и речи, а не монотонного чтения входного текста.
- Вторая проблема заключается в том, чтобы позволить фреймворкам IVC клонировать голоса в разных языках в режиме с нулевым выстрелом.
- Третья проблема заключается в достижении высокой скорости вывода в реальном времени без ухудшения качества.
Чтобы решить первые две проблемы, архитектура фреймворка OpenVoice спроектирована так, чтобы декуплировать компоненты голоса наилучшим образом. Кроме того, OpenVoice генерирует цвет тона, язык и другие функции голоса независимо, что позволяет фреймворку гибко манипулировать отдельными языками и стилями голоса. Фреймворк OpenVoice решает третью проблему по умолчанию, поскольку декуплированная структура снижает вычислительную сложность и требования к размеру модели.
OpenVoice: Методология и архитектура
Технический фреймворк OpenVoice эффективен и удивительно прост в реализации. Не секрет, что клонирование цвета тона для любого диктора, добавление нового языка и обеспечение гибкого контроля над параметрами голоса одновременно может быть сложной задачей. Это связано с тем, что выполнение этих трех задач одновременно требует контролируемых параметров, которые пересекаются с помощью большой комбинаторной базы данных. Кроме того, в обычном синтезе речи от одного диктора, для задач, которые не требуют клонирования голоса, легче добавить контроль над другими параметрами стиля. Основываясь на этом, фреймворк OpenVoice направлен на декуплирование задач мгновенного клонирования голоса на подзадачи. Модель предлагает использовать базовую модель TTS для контроля языка и параметров стиля и использовать конвертер цвета тона для включения референтного цвета тона в сгенерированный голос.

В своей основе фреймворк OpenVoice использует два компонента: конвертер цвета тона и базовую модель TTS. Базовая модель TTS может быть либо модели от одного диктора, либо модели от нескольких дикторов, что позволяет точно контролировать параметры стиля, языка и акцента. Модель генерирует голос, который затем передается конвертеру цвета тона, который изменяет базовый цвет тона на цвет тона референтного диктора.
Фреймворк OpenVoice предлагает много гибкости при выборе базовой модели TTS, поскольку он может использовать модель VITS с небольшими модификациями, что позволяет ей принимать вложения языка и стиля в ее предсказателе продолжительности и текстовом кодировщике. Фреймворк также может использовать модели, такие как Microsoft (MSFT ) TTS, которые коммерчески доступны, или модели, такие как InstructTTS, которые могут принимать подсказки стиля. На данный момент фреймворк OpenVoice использует модель VITS, хотя другие модели также являются жизнеспособным вариантом.
Переходя ко второму компоненту, конвертер цвета тона является компонентом кодировщика-дешифровщика, содержащим обратимый нормализующий поток в центре. Кодировщик в конвертере цвета тона является одномерной свёрточной нейронной сетью (CNN), которая принимает спектр базовой модели TTS как входные данные. Кодировщик затем генерирует карты функций в качестве выходных данных. Извлекатель цвета тона является простой двумерной CNN, которая работает с мел-спектрограммой входного голоса и генерирует единственный вектор функций в качестве выходных данных, который кодирует информацию о цвете тона. Слои нормализующего потока принимают карты функций, сгенерированные кодировщиком, в качестве входных данных и генерируют представление функций, которое сохраняет все свойства стиля, но исключает информацию о цвете тона. Фреймворк OpenVoice затем применяет слои нормализующего потока в обратном направлении и принимает представления функций в качестве входных данных и выводит слои нормализующего потока. Фреймворк затем декодирует слои нормализующего потока в сырые аудио-волновые формы с помощью стека транспонированных одномерных свёрточных нейронных сетей.
Вся архитектура фреймворка OpenVoice является прямой, без использования автoreгрессивных компонентов. Компонент конвертера цвета тона похож на конверсию голоса на концептуальном уровне, но отличается по функциональности, целям обучения и индуктивному предвзятству в структуре модели. Слои нормализующего потока имеют ту же структуру, что и модели потока текста в речь, но отличаются по функциональности и целям обучения.
Кроме того, существует другой подход к извлечению представлений функций, реализованный фреймворком OpenVoice, который обеспечивает лучшее качество аудио. Также стоит отметить, что фреймворк OpenVoice не намерен изобретать новые компоненты в архитектуре модели, а оба основных компонента, т.е. конвертер цвета тона и базовая модель TTS, взяты из существующих работ. Основная цель фреймворка OpenVoice заключается в создании декуплированного фреймворка, который отделяет контроль языка и стиля голоса от клонирования цвета тона. Хотя подход довольно прост, он очень эффективен, особенно для задач, которые контролируют стили и акценты, или для задач обобщения на новые языки. Достижение того же контроля при использовании связанного фреймворка требует большого количества вычислений и данных и не обобщается хорошо на новые языки.
В своей основе основная философия фреймворка OpenVoice заключается в декуплировании генерации языка и стилей голоса от генерации цвета тона. Одним из основных преимуществ фреймворка OpenVoice является то, что клонированный голос является плавным и высокого качества, пока модель TTS от одного диктора говорит плавно.
OpenVoice: Эксперимент и результаты
Оценка задач клонирования голоса является сложной задачей по нескольким причинам. Во-первых, существующие работы часто используют разные данные для обучения и тестирования, что делает сравнение этих работ внутренне несправедливым. Хотя краудсорсинг может быть использован для оценки метрик, таких как средний балл мнения, сложность и разнообразие тестовых данных существенно повлияют на общий результат. Во-вторых, разные методы клонирования голоса имеют разные данные для обучения, и разнообразие и масштаб этих данных существенно влияют на результаты. Наконец, основная цель существующих работ часто отличается друг от друга, поэтому они отличаются по функциональности.
Из-за этих трех причин несправедливо сравнивать существующие фреймворки клонирования голоса численно. Вместо этого имеет больше смысла сравнивать эти методы качественно.
Точное клонирование цвета тона
Чтобы проанализировать его производительность, разработчики создали тестовую базу с анонимными лицами, персонажами игр и знаменитостями в качестве базы референтных дикторов, и имеет широкое распределение голосов, включая как нейтральные образцы, так и уникальные выразительные голоса. Фреймворк OpenVoice может клонировать референтный цвет тона и генерировать речь на нескольких языках и акцентах для любого из референтных дикторов и 4 базовых дикторов.

Гибкий контроль над стилями голоса
Одной из целей фреймворка OpenVoice является гибкий контроль над стилями голоса с помощью конвертера цвета тона, который может изменить цвет тона, сохраняя все другие функции и свойства голоса.
Эксперименты показывают, что модель сохраняет стили голоса после конвертирования в референтный цвет тона. В некоторых случаях, однако, модель немного нейтрализует эмоции, проблему, которую можно решить, передавая меньше информации в слои потока, чтобы они не смогли избавиться от эмоций. Фреймворк OpenVoice может сохранить стили от базового голоса благодаря использованию конвертера цвета тона. Это позволяет фреймворку OpenVoice манипулировать базовой моделью TTS, чтобы легко контролировать стили голоса.

Клонирование голоса в разных языках
Фреймворк OpenVoice не включает в себя обширную базу данных с множеством дикторов и языков для незнакомого языка, но он может добиться почти идеального клонирования голоса в разных языках в режиме с нулевым выстрелом. Возможности клонирования голоса в разных языках фреймворка OpenVoice имеют два аспекта:
- Модель может точно клонировать цвет тона референтного диктора, когда язык референтного диктора не встречается в базе данных MSML.
- Кроме того, в случае, когда язык референтного диктора не встречается, фреймворк OpenVoice может клонировать голос референтного диктора и говорить на языке, если базовая модель TTS поддерживает этот язык.
Заключительные мысли
В этой статье мы поговорили об OpenVoice, универсальном фреймворке мгновенного клонирования голоса, который повторяет голос любого пользователя и генерирует речь на нескольких языках, используя короткий аудио-клип от референтного диктора. Основная интуиция, лежащая в основе OpenVoice, заключается в том, что пока модель не должна выполнять клонирование цвета тона референтного диктора, фреймворк может использовать базовую модель TTS для контроля языка и стилей голоса.
OpenVoice демонстрирует, что модели мгновенного клонирования голоса могут повторять цвет тона референтного диктора и достигать детального контроля над стилями голоса, включая акцент, ритм, интонацию, паузы и даже эмоции. OpenVoice может обеспечить превосходные результаты мгновенного клонирования голоса, будучи вычислительно жизнеспособным, с операционными затратами, которые могут быть в 10 раз ниже, чем у текущих доступных API с худшей производительностью.












