Игра Яндекс Практикума
Игра Яндекс Практикума
Игра Яндекс Практикума

Нейросети и песни: как заставить Канье Уэста петь «Гражданскую Оборону»

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

4К открытий9К показов

Рассмотрели три нейросети для создания песен и каверов в духе “Канье Уэст поет песни Гражданской Обороны” или “Жанна Агузарова исполняет хиты Cypress Hill”.

Рассказали, как развернуть нейросети на ПК и использовать для генерации песен.

  1. Musicfy
  2. Jukebox
  3. SoftVC VITS Singing Voice Conversion
Превью видео O87IiarW2lk
Нейросети повлияют на музыкальную индустрию?
Да, заработать на стриминге будет гораздо проще
Нет, живые выступления и харизму они сгенерировать не смогут

Musicfy

Начнем с самой простой для использования нейросети. Musicfy обладает сайтом с максимально простым UI, и всю генерацию можно запустить онлайн.

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

Нейросети и песни: как заставить Канье Уэста петь «Гражданскую Оборону» 1

У Musicfy есть множество функций: можно загрузить свой голос, выбрать голос из библиотеки предустановленных (к примеру, заставить петь песни Эрика Картмана), написать инструментал к песне по одному только вокалу и преобразовать текст в музыку.

Конечно, за такое удовольствие придется заплатить: на сайте есть несколько платных тарифов. Кроме того, на сайте нет никакой информации о том, какие именно технологии используются Musicfy.

Jukebox

Jukebox – это нейросетевая модель от OpenAI для генерации музыки. На сайте OpenAI можно послушать музыку, которую сгенерировала Jukebox, а сама нейросеть доступна на GitHub.

Jukebox улавливает, как устроены музыкальные ноты, ритмы, инструменты и структура песен. В обучении он использует специальные типы нейронных сетей.

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

Также Jukebox использует трансформерные нейронные сети. Они помогают понимать длинные куски музыки и сохранять мелодии и структуру композиции.

Для установки Jukebox на ПК понадобится пакет Conda:

			# Required: Sampling
conda create --name jukebox python=3.7.5
conda activate jukebox
conda install mpi4py=3.0.3 # if this fails, try: pip install mpi4py==3.0.3
conda install pytorch=1.4 torchvision=0.5 cudatoolkit=10.0 -c pytorch
git clone https://github.com/openai/jukebox.git
cd jukebox
pip install -r requirements.txt
pip install -e .

# Required: Training
conda install av=7.0.01 -c conda-forge 
pip install ./tensorboardX
 
# Optional: Apex for faster training with fused_adam
conda install pytorch=1.1 torchvision=0.3 cudatoolkit=10.0 -c pytorch
pip install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./apex
		

После установки нейросеть нужно будет натренировать. Вам понадобится папка с музыкой и промпт:

			mpiexec -n {ngpus} python jukebox/train.py --hps=small_vqvae --name=small_vqvae --sample_length=262144 --bs=4 \
--audio_files_dir={audio_files_dir} --labels=False --train --aug_shift --aug_blend
		

Вместо {audio_files_dir} нужно указать путь к папке с музыкой, а вместо {ngpus} нужно указать мощности GPU, которые вы хотите выделить для тренировки.

После того, как нейросеть пройдет тренировку, можно начать генерацию собственной музыки:

			python jukebox/sample.py --model=5b_lyrics --name=sample_5b_prompted --levels=3 --mode=primed \
--audio_file=path/to/recording.wav,awesome-mix.wav,fav-song.wav,etc.wav --prompt_length_in_seconds=12 \
--sample_length_in_seconds=20 --total_sample_length_in_seconds=180 --sr=44100 --n_samples=6 --hop_fraction=0.5,0.5,0.125
		

Полный гайд по работе с Jukebox читайте на GitHub.

SoftVC VITS Singing Voice Conversion

Нейросеть с открытым доступом, которая была опубликована в марте 2023 года. Обычно в статьях о ней используют короткое название so-vits-svc.

Изначально она была разработана для того, чтобы заставить любимых персонажей из аниме петь песни.

Код нейросети размещен на GitHub, и ее можно развернуть на ПК. Если мощностей не хватает, воспользуйтесь Google Colab.

Нейросети и песни: как заставить Канье Уэста петь «Гражданскую Оборону» 2

Разберем, как запустить нейросеть в Google Colab.

Откройте Colab и поочередно запустите программы Check GPU, Setup 1, Setup 2, Download ContentVec, Setup HF Downloads. После этого перейдите к вкладке Other Downloads (.zip) Step o.1 и добавьте URL архива, в котором находится вокал музыканта, которого вы хотите вставить в оригинальную песню.

Распакуйте архив во вкладке Extract .zip Downloads - Step o.2 и перейдите к пункту Open the file explorer on the left of your screen and drag-and-drop an audio file anywhere. Then run the below cell. Здесь нужно перетащить файл с музыкой, в которую вы хотите вставить вокал музыканта. Нейросеть запустится автоматически.

Заключение

Если вы решили попробовать запустить эти нейросети и сделать свой первый AI кавер, расскажите, что из этого вышло.

Пишите в комментариях, какие мэшапы вы хотели бы сделать, и присылайте ссылки на результаты. :) Лучшие из ваших творений мы вставим в эту статью!

Следите за новыми постами
Следите за новыми постами по любимым темам
4К открытий9К показов