AI Personal Learning
and practical guidance

MuseGAN:生成多轨音乐/配乐的开源模型,轻松创作多种乐器的音乐片段

General Introduction

MuseGAN是一个基于生成对抗网络(GAN)的音乐生成项目,旨在生成多轨(多种乐器)音乐。该项目能够从零开始生成音乐,或根据用户提供的轨道进行伴奏。MuseGAN使用Lakh Pianoroll Dataset进行训练,生成包含贝斯、鼓、吉他、钢琴和弦乐的流行歌曲片段。最新的实现基于3D卷积层的网络架构,具有较小的网络规模,但控制能力有所降低。MuseGAN提供了多种脚本,方便用户管理实验、训练新模型、使用预训练模型进行推理和插值等操作。

MuseGAN:生成多轨音乐/配乐的开源模型,轻松创作多种乐器的音乐片段-1


 

Function List

  • 生成多轨音乐:从零开始生成包含多种乐器的音乐片段。
  • 伴奏生成:根据用户提供的轨道生成伴奏。
  • 训练新模型:提供脚本和配置文件,方便用户训练自己的音乐生成模型。
  • 使用预训练模型:下载并使用预训练模型进行音乐生成。
  • 数据处理:下载和处理训练数据,支持Lakh Pianoroll Dataset。
  • 实验管理:提供多种脚本,方便用户设置和管理实验。
  • 输出格式:生成的音乐可以以numpy数组、图像文件和多轨pianoroll文件格式保存。

 

Using Help

Installation process

  1. 确保已安装pipenv(推荐)或pip。
  2. 使用pipenv安装依赖:

bash
pipenv install
pipenv shell

或使用pip安装依赖:

bash
pip install -r requirements.txt

### 数据准备
1. 下载训练数据:

bash
./scripts/download_data.sh

2. 处理训练数据:

bash
./scripts/process_data.sh

### 训练新模型
1. 设置新实验:

bash
./scripts/setupexp.sh "./exp/myexperiment/" "实验备注"

2. 修改配置文件和模型参数文件以设置实验参数。
3. 训练模型:

bash
./scripts/runtrain.sh "./exp/myexperiment/" "0"

或运行完整实验(训练+推理+插值):

bash
./scripts/runexp.sh "./exp/myexperiment/" "0"

### 使用预训练模型
1. 下载预训练模型:

bash
./scripts/download_models.sh

2. 使用预训练模型进行推理:

bash
./scripts/run_inference.sh "./exp/default/" "0"

或进行插值:

bash
./scripts/run_interpolation.sh "./exp/default/" "0"

### 输出管理
生成的音乐样本默认会在训练过程中生成,可以通过设置配置文件中的`save_samples_steps`为0来禁用此行为。生成的音乐样本会以以下三种格式保存:
- `.npy`:原始numpy数组
- `.png`:图像文件
- `.npz`:多轨pianoroll文件,可通过Pypianoroll包加载
可以通过设置配置文件中的`save_array_samples`、`save_image_samples`和`save_pianoroll_samples`为False来禁用特定格式的保存。生成的pianoroll文件以`.npz`格式保存,以节省空间和处理时间。可以使用以下代码将其写入MIDI文件:

python
from pypianoroll import Multitrack
m = Multitrack('./test.npz')
m.write('./test.mid')

示例结果

一些示例结果可以在./exp/目录中找到。更多示例可以从以下链接下载:

AI Easy Learning

The layman's guide to getting started with AI

Help you learn how to utilize AI tools at a low cost and from a zero base.AI, like office software, is an essential skill for everyone. Mastering AI will give you an edge in your job search and half the effort in your future work and studies.

View Details>
May not be reproduced without permission:Chief AI Sharing Circle " MuseGAN:生成多轨音乐/配乐的开源模型,轻松创作多种乐器的音乐片段

Chief AI Sharing Circle

Chief AI Sharing Circle specializes in AI learning, providing comprehensive AI learning content, AI tools and hands-on guidance. Our goal is to help users master AI technology and explore the unlimited potential of AI together through high-quality content and practical experience sharing. Whether you are an AI beginner or a senior expert, this is the ideal place for you to gain knowledge, improve your skills and realize innovation.

Contact Us
en_USEnglish