当前位置:   article > 正文

昇思25天学习打卡营第11天|MindSpore-基于MindNLP+MusicGen生成自己的个性化音乐

昇思25天学习打卡营第11天|MindSpore-基于MindNLP+MusicGen生成自己的个性化音乐

基于MindNLP+MusicGen生成自己的个性化音乐

MusicGen是来自Meta AI的Jade Copet等人提出的基于单个语言模型(LM)的音乐生成模型,能够根据文本描述或音频提示生成高质量的音乐样本,相关研究成果参考论文《Simple and Controllable Music Generation》。

MusicGen模型基于Transformer结构,可以分解为三个不同的阶段:

  1. 用户输入的文本描述作为输入传递给一个固定的文本编码器模型,以获得一系列隐形状态表示。
  2. 训练MusicGen解码器来预测离散的隐形状态音频token。
  3. 对这些音频token使用音频压缩模型(如EnCodec)进行解码,以恢复音频波形。

MusicGen直接使用谷歌的t5-base及其权重作为文本编码器模型,并使用EnCodec 32kHz及其权重作为音频压缩模型。MusicGen解码器是一个语言模型架构,针对音乐生成任务从零开始进行训练。

MusicGen 模型的新颖之处在于音频代码的预测方式。传统上,每个码本都必须由一个单独的模型(即分层)或通过不断优化 Transformer 模型的输出(即上采样)进行预测。与传统方法不同,MusicGen采用单个stage的Transformer LM结合高效的token交织模式,取消了多层级的多个模型结构,例如分层或上采样,这使得MusicGen能够生成单声道和立体声的高质量音乐样本,同时提供更好的生成输出控制。MusicGen不仅能够生成符合文本描述的音乐,还能够通过旋律条件控制生成的音调结构。

en使用的码本延迟模式,来源于 MusicGen paper.

环境准备

机器内存需要至少 25GB

Python版本:Python 3.9.19

所需安装依赖

  1. pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindspore==2.2.14
  2. pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindnlp jieba soundfile librosa

详细依赖如下:

  1. Package Version
  2. ------------------------------ --------------
  3. absl-py 2.1.0
  4. addict 2.4.0
  5. aiofiles 22.1.0
  6. aiohttp 3.9.5
  7. aiosignal 1.3.1
  8. aiosqlite 0.20.0
  9. altair 5.3.0
  10. annotated-types 0.7.0
  11. anyio 4.4.0
  12. argon2-cffi 23.1.0
  13. argon2-cffi-bindings 21.2.0
  14. arrow 1.3.0
  15. astroid 3.2.2
  16. asttokens 2.0.5
  17. astunparse 1.6.3
  18. async-timeout 4.0.3
  19. attrs 23.2.0
  20. audioread 3.0.1
  21. auto-tune 0.1.0
  22. autopep8 1.5.5
  23. Babel 2.15.0
  24. backcall 0.2.0
  25. beautifulsoup4 4.12.3
  26. black 24.4.2
  27. bleach 6.1.0
  28. certifi 2024.6.2
  29. cffi 1.16.0
  30. charset-normalizer 3.3.2
  31. click 8.1.7
  32. cloudpickle 3.0.0
  33. colorama 0.4.6
  34. comm 0.2.1
  35. contextlib2 21.6.0
  36. contourpy 1.2.1
  37. cycler 0.12.1
  38. dataflow 0.0.1
  39. datasets 2.20.0
  40. debugpy 1.6.7
  41. decorator 5.1.1
  42. defusedxml 0.7.1
  43. dill 0.3.8
  44. dnspython 2.6.1
  45. download 0.3.5
  46. easydict 1.13
  47. email_validator 2.2.0
  48. entrypoints 0.4
  49. evaluate 0.4.2
  50. exceptiongroup 1.2.0
  51. executing 0.8.3
  52. fastapi
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/寸_铁/article/detail/788228
推荐阅读
相关标签
  

闽ICP备14008679号