0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OpenAI最新研发的MuseNet的深度神经网络,可以制作4分钟时长的音乐作品

电子工程师 来源:lq 2019-04-29 10:27 次阅读

基于深度神经网络进行语音合成、音乐风格迁移,正成为不少致力于“让人人成为音乐家”的研究人员所追求的事情。像此前我们报道的微软小冰作词又作曲,AI帮清华博士写说唱歌词晋级,甚至不久前中央音乐学院招音乐AI方向博士生。不久前,为了纪念著名作曲家巴赫诞辰,Google 根据巴赫合唱和声训练而成的机器学习模式 Coconet 吸引了不少人前来围观。

最近,OpenAI最新研发的MuseNet的深度神经网络,可以制作 4 分钟时长的音乐作品,其中涵盖 10 种不同的乐器(如钢琴、鼓、贝斯、吉他),甚至还能将诸如乡村风格、莫扎特风格、甲壳虫乐队风格的音乐融合起来。

首先需要说明的是,MuseNet 并没有根据人类输入的对音乐理解进行显式编程,而是通过学习预测成千上万个 MIDI 文件的下一个 token 来发现和弦、节奏和风格的模式。MuseNet 采用了无监督神经网络语言模型 GPT2.0(是的,就是此前被誉为可以 BERT 媲美的 NLP 模型 GPT2.0,普遍观点是,经过预训练可以预测上下文,无论是音频还是文本。)

据悉,5 月 12 日将正式开放 MuseNet 语言生成工具的试用版本。(以下为学习了肖邦作曲风格的英国女歌手 Adele 的 Someone Like You的 AI编曲录音。)

传送门:

https://openai.com/blog/musenet/

▌过程原理

在简单模式(默认显示)中,用户会听到预设生成的随机未切割样本;然后选择某作曲家或风格下的著名作品片段,即可生成各种风格的音乐。

在高级模式下,用户可直接与模型交互。这个过程需要完成的时间会更长,但用户可以创建一个全新的作品。

注意:MuseNet 通过计算所有可能的音符和乐器的概率来生成每个音符,模型会倾向采用你选择的乐器,但也可能会选择逼得乐器;同样,MuseNet 也会搭配不同风格的乐器,如果用户自行选择最接近作家或乐队常用分风格或乐器,产生的音乐会更自然。

研究人员还创建了作曲家和乐器的 token,以便更好地控制 MuseNet 生成的样本类型。训练期间,这些作曲家和乐器 token 将预先添加到每个样本中,因此模型将学习利用该信息进行音符预测。生成音乐时,可以调整模型,如拉赫玛尼诺夫的钢琴曲为前提,以创建选定风格的音乐。

研究人员还将 MuseNet 中的嵌入进行可视化,以深入了解模型所学到的内容。他们采用了 t-SNE 创建各种风格嵌入的余弦相似性。(如下 2D 图像所示,可查看某个特定作曲家或风格之间的关系。)

▌利用 Sparse Transformer 记住长期结构

MuseNet 使用 Sparse Transformer 的重算和优化内核来训练一个具有 24 个注意力头的 72 层网络,并将全部注意力放在 4096 个 token 的上下文中。这个长文本的目的是能够记住一个片段中的长期结构。或者,它还可以创建音乐旋律结构。

音乐生成是测试 Sparse Transformer 的一个有用域,因为它位于文本和图像的中间位置。它具有文本的 token 结构。在图形中,你可以查看 N 个 token,而在音乐中,查看之前的起点没有固定数。此外,还可以很容易听到该模型是否在按照成百上千个 token 顺序来获取长期结构。

▌数据集

研究人员收集了不同来源的 MuseNet 训练数据(ClassicalArchives、BitMidi、MAESTRO ),涵盖爵士乐、流行乐,以及非洲、印度和阿拉伯等不同风格的音乐。

首先,研究人员采用 transformer 在序列数据上进行训练:给定一组音符,要求它预测其他即将出现的音符。在尝试了几种不同方法后将 MIDI 文件编码为适用于此任务的 token。

在这种其中,他们采用和弦方法,将每次听到的音符组合视为单独的 “和弦”,并为每个和弦指定一个 token。然后,通过仅关注音符开头压缩音乐模式,并尝试使用字节对编码方案进行近一步压缩。

研究人员还尝试了标记时间推移的两种不同方法:一是根据音乐节奏进行缩放的 token,代表节拍或节拍的一小部分;二是以绝对时间为单位来标记 token。他们采用了一种结合了表现力和简洁性的编码方式:将音高、音量以及乐器信息组合称一个 token。

在训练中,

通过提高和降低音高来调换音符。(之后的训练中,减少了调换数量,使得每个乐器都有生成的音符。)

提高音量,调高或降低不同样本的整体音量。

增加时间,当使用以秒为单位的绝对时间编码时,可有效稍微减缓或加速片段。

在 token 嵌入空间中使用 mixup。

研究人员还创建了一个内部评测,在训练中,通过模型预测给定的样本是否来自数据集还是之前生成的样本,进行评判。

▌嵌入

为了给模型提供更加结构化的上下文,研究人员还添加几种不同类型的嵌入。

除了标准位置嵌入外,还有学习到的嵌入,可在给定的样本中追踪时间推移;然后,他们还在每个和弦中的音符添加了嵌入;最后,他们添加了两个结构化嵌入,该嵌入可表明模型既定的音乐样本在较大音乐片段中的位置。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4771

    浏览量

    100751
  • 生成器
    +关注

    关注

    7

    文章

    315

    浏览量

    21009
  • 程序员
    +关注

    关注

    4

    文章

    952

    浏览量

    29800
  • 机器学习
    +关注

    关注

    66

    文章

    8415

    浏览量

    132616

原文标题:程序员拯救乐坛?OpenAI用“逆天”GPT2.0搞了个AI音乐生成器

文章出处:【微信号:rgznai100,微信公众号:rgznai100】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    详解深度学习、神经网络与卷积神经网络的应用

    处理技术也可以通过深度学习来获得更优异的效果,比如去噪、超分辨率和跟踪算法等。为了跟上时代的步伐,必须对深度学习与神经网络技术有所学习和研究。本文将介绍
    的头像 发表于 01-11 10:51 2037次阅读
    详解<b class='flag-5'>深度</b>学习、<b class='flag-5'>神经网络</b>与卷积<b class='flag-5'>神经网络</b>的应用

    从AlexNet到MobileNet,带你入门深度神经网络

    取得了良好的性能。可以说,DNN其实是一种架构,是指深度超过几个相似层的神经网络结构,一般能够达到几十层,或者由一些复杂的模块组成。ILSVRC(ImageNet大规模视觉识别挑战赛)每年都不断被
    发表于 05-08 15:57

    【PYNQ-Z2试用体验】基于PYNQ的神经网络自动驾驶小车 - 项目规划

    的数篇帖子里,我会围绕“基于PYNQ的神经网络自动驾驶小车”项目,对整个项目的实现进行详解,相信有电子设计基础的网友们也可以很容易进行复现,制作并训练一辆属于自己的自动驾驶小车。 一、作品
    发表于 03-02 23:10

    神经网络资料

    基于深度学习的神经网络算法
    发表于 05-16 17:25

    解析深度学习:卷积神经网络原理与视觉实践

    解析深度学习:卷积神经网络原理与视觉实践
    发表于 06-14 22:21

    深度神经网络是什么

    多层感知机 深度神经网络in collaboration with Hsu Chung Chuan, Lin Min Htoo, and Quah Jia Yong. 与许忠传,林敏涛和华佳勇合作
    发表于 07-12 06:35

    基于深度神经网络的激光雷达物体识别系统

    的激光雷达物体识别技术一直难以在嵌入式平台上实时运行。经纬恒润经过潜心研发,攻克了深度神经网络在嵌入式平台部署所面临的算子定制与加速、量化策略、模型压缩等难题,率先实现了高性能激光检测神经网络
    发表于 12-21 07:59

    卷积神经网络模型发展及应用

    十余年来快速发展的崭新领域,越来越受到研究者的关注。卷积神经网络(CNN)模型是深度学习模型中最重要的一种经典结构,其性能在近年来深度学习任务上逐步提高。由于可以自动学习样本数据的特征
    发表于 08-02 10:39

    【人工神经网络基础】为什么神经网络选择了“深度”?

    由 Demi 于 星期四, 2018-09-06 09:33 发表 现在提到“神经网络”和“深度神经网络”,会觉得两者没有什么区别,神经网络还能不是“
    发表于 09-06 20:48 691次阅读

    什么是神经网络?什么是卷积神经网络

    在介绍卷积神经网络之前,我们先回顾一下神经网络的基本知识。就目前而言,神经网络深度学习算法的核心,我们所熟知的很多深度学习算法的背后其实都
    的头像 发表于 02-23 09:14 3527次阅读

    卷积神经网络深度神经网络的优缺点 卷积神经网络深度神经网络的区别

    深度神经网络是一种基于神经网络的机器学习算法,其主要特点是由多层神经元构成,可以根据数据自动调整神经
    发表于 08-21 17:07 4114次阅读

    10分钟快速了解神经网络(Neural Networks)

    神经网络深度学习算法的基本构建模块。神经网络是一种机器学习算法,旨在模拟人脑的行为。它由相互连接的节点组成,也称为人工神经元,这些节点组织成层次结构。Source:victorzho
    的头像 发表于 09-21 08:30 4390次阅读
    10<b class='flag-5'>分钟</b>快速了解<b class='flag-5'>神经网络</b>(Neural Networks)

    深度神经网络模型有哪些

    模型: 多层感知器(Multilayer Perceptron,MLP): 多层感知器是最基本的深度神经网络模型,由多个全连接层组成。每个隐藏层的神经元数量可以不同,通常使用激活函数如
    的头像 发表于 07-02 10:00 1388次阅读

    bp神经网络深度神经网络

    BP神经网络(Backpropagation Neural Network)是一种常见的前馈神经网络,它使用反向传播算法来训练网络。虽然BP神经网络在某些方面与
    的头像 发表于 07-03 10:14 843次阅读

    深度神经网络与基本神经网络的区别

    在探讨深度神经网络(Deep Neural Networks, DNNs)与基本神经网络(通常指传统神经网络或前向神经网络)的区别时,我们需
    的头像 发表于 07-04 13:20 860次阅读