Использование ИИ смоделировать гитарную педаль TS-9

Цифровой клон гитарной педали TS-9 с открытым исходным кодом в режиме реального времени с использованием машинного обучения (с демо-видео)

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

Но что, если бы мы могли пропустить всю эту математику и физику и сразу перейти к тому, что нам действительно нужно, к отличному звуку. Что, если бы вы могли сказать: мне все равно, что происходит внутри этих металлических ящиков, мне нужен только звук! Этот подход называется черным ящиком моделированием, а открытые платформы искусственного интеллекта делают его доступным для всех.

Часть меня, как инженера, хочет крикнуть: «эй, это жульничество!» Можете ли вы действительно пропустить всю тяжелую работу по анализу схем, моделированию компонентов и головной боли, вызывающей математику, и просто сбрасывать данные на компьютер? решить за вас? Ответ и да, и нет.

Искусственный интеллект берет традиционное решение проблем и переворачивает его с ног на голову. Вам все еще нужно понять, как настроить свою проблему, но решается она по-другому. Определение наилучшей архитектуры модели и параметров обучения — это отдельная наука (или искусство), и все зависит от того, нужно ли начинать с хороших данных. В случае гитарной педали TS-9 данные поступают в виде аудиозаписей.

Записывая вход в педаль и выход из педали, вы обращаетесь с ним как с черным ящиком. Вход и выход известны, но нам не нужно понимать, как это работает. Нейронная сеть обучается на звуковых данных вести себя так же, как настоящая педаль. Вы даже можете запустить эту модель в режиме реального времени на своей гитаре, создав вокруг нее высокопроизводительное аудиоприложение, по сути создав цифровой клон.

Примечание. Подробнее о моих методах сбора данных можно прочитать здесь.

Это отлично подходит для захвата звука педали при определенных настройках. В случае с педалью TS-9 это может выглядеть как Drive на 100%, Tone на 50% и Level на 50%. Но как мы можем воспроизвести все возможные положения ручки в одной модели? Больше данных!

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

Для TS-9 в качестве настраиваемых параметров были выбраны регуляторы Drive и Tone. Ручка уровня могла быть включена, но она может быть аппроксимирована простой ручкой громкости в плагине аудио в реальном времени. Это также добавит больше данных и усложнит обучение.

Для обучающих данных были взяты 2-минутные образцы при положениях ручки 0%, 25%, 50%, 75% и 100%. Для двух ручек это дает 5 * 5 = 25 различных комбинаций для 25 отдельных 2-минутных записей плюс базовый входной аудиофайл. После записи звука каждая дорожка экспортировалась в виде 32-битных монофонических (1-канальных) файлов WAV с плавающей запятой. Общий размер аудиоданных составил примерно 520 МБ.

Для обучения использовалась вилка GuitarML проекта Automated-GuitarAmpModelling. Этот форк содержит дополнительный код для обработки звука условной модели. Проект написан на python и использует Pytorch и содержит несколько моделей машинного обучения для моделирования аналоговых эффектов. Модель LSTM (Long Short-Term Memory) использовалась для педали TS-9.

Примечание. Обработанные входные файлы WAV содержат три канала: один для аудио, один для параметра регулятора Drive (диапазон от 0,0 до 1,0) и один для параметра регулятора Tone (диапазон от 0,0 до 1,0) в качестве входных данных для модель LSTM. Выходные файлы WAV содержат один канал — выходной звук.

Фреймворк JUCE использовался для создания приложения реального времени, названного TS-M1N3 (плохой каламбур). Установщики для Windows/Mac можно загрузить с Github вместе с исходным кодом и они доступны в форматах VST3/AU/Standalone. RTNeural использовался для нейросетевого вывода модели LSTM и обеспечивает значительное улучшение скорости.

Примечание. Для получения дополнительной информации о создании аудиоприложения в реальном времени с помощью нейронной сети LSTM ознакомьтесь с этими статьями.

Вот демонстрационное видео, сравнивающее оригинальную педаль TS-9 с клоном плагина при различных настройках:

Выражаем особую благодарность старшему коллективу разработчиков MLAMSK UAH (Университет Алабамы в Хантсвилле), чьи исследования и усердная работа напрямую повлияли на результаты, представленные в этой статье.

Надеюсь, вам понравилась эта статья, спасибо за прочтение!