网站怎么做发送邮件的超链接,seo顾问合同,做app得多少钱,宁波本地网站排行《昇思 25 天学习打卡营第 15 天 | 基于MindNLPMusicGen生成自己的个性化音乐 》 活动地址#xff1a;https://xihe.mindspore.cn/events/mindspore-training-camp 签名#xff1a;Sam9029 MusicGen概述
MusicGen是由Meta AI的Jade Copet等人提出的一种基于单个语言模型MusicGen生成自己的个性化音乐 》 活动地址https://xihe.mindspore.cn/events/mindspore-training-camp 签名Sam9029 MusicGen概述
MusicGen是由Meta AI的Jade Copet等人提出的一种基于单个语言模型LM的音乐生成模型能够根据文本描述或音频提示生成高质量的音乐样本。该模型的研究成果发表在论文《Simple and Controllable Music Generation》中。
MusicGen模型结构
MusicGen模型基于Transformer结构分为三个阶段
文本编码用户输入的文本描述通过文本编码器模型转换为一系列隐形状态表示。解码预测训练MusicGen解码器来预测离散的隐形状态音频token。音频恢复使用音频压缩模型如EnCodec解码音频token以恢复音频波形。
MusicGen的特点
使用谷歌的t5-base作为文本编码器模型。使用EnCodec 32kHz作为音频压缩模型。解码器是针对音乐生成任务训练的语言模型架构。采用单阶段Transformer LM结合高效的token交织模式取消了分层或上采样的多层级结构。
实验环境配置
实验环境已预装MindSpore 2.2.14可以通过以下命令安装或更新MindSpore及相关库
!pip uninstall mindspore -y
!pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindspore2.2.14
!pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindnlp jieba soundfile librosaMusicGen模型使用
MusicGen提供了small、medium和big三种规格的预训练权重文件。本指南使用small规格的权重以快速生成质量较低的音频。
from mindnlp.transformers import MusicgenForConditionalGeneration
model MusicgenForConditionalGeneration.from_pretrained(facebook/musicgen-small)生成音乐
MusicGen支持贪心和采样两种生成模式。采样模式通常能得到更好的结果。以下代码展示了如何使用无提示生成和文本提示生成
unconditional_inputs model.get_unconditional_inputs(num_samples1)
audio_values model.generate(**unconditional_inputs, do_sampleTrue, max_new_tokens256)# 保存音频
sampling_rate model.config.audio_encoder.sampling_rate
scipy.io.wavfile.write(musicgen_out.wav, ratesampling_rate, dataaudio_values[0, 0].asnumpy())思考与见解
生成质量与速度small规格的权重文件虽然生成速度快但音频质量较低。在实际应用中需要在速度和质量之间做出权衡。文本提示生成通过文本提示生成音乐时guidance_scale参数对生成结果的影响显著。较高的guidance_scale可以生成与文本描述更匹配的音乐。音频提示生成MusicGen同样支持音频提示这为音乐创作提供了更多可能性例如在现有旋律基础上进行变奏。
通过本实验学习了如何使用MindNLP和MusicGen生成个性化音乐。MusicGen模型的灵活性和易用性使其成为音乐创作和研究的有力工具。未来可以探索更多基于文本和音频提示的音乐生成应用以及如何进一步优化生成音乐的质量和多样性。