写点什么

使用生成式 Machine Learning 模型作曲

  • 2019-12-16
  • 本文字数:1759 字

    阅读完需:约 6 分钟

使用生成式 Machine Learning 模型作曲

今天,我们非常高兴地推出世界上第一款支持机器学习的音乐键盘 AWS DeepComposer。是的,您没看错。


机器学习 (ML) 需要数学、计算机科学、编程以及基础设施方面的诸多支持。这些主题非常重要,但是对于许多壮志满怀的 ML 开发人员来说,这样的要求太过严苛,有时候,我要说其实也很无聊。


为了帮助所有人学习实用的 ML 并从中获得乐趣,我们推出了几种基于 ML 的设备。在 AWS re:Invent 2017 上,我们推出了世界上第一种支持深度学习的摄像头 AWS DeepLens,以帮助开发人员了解用于计算机视觉的 ML。去年,我们推出了 AWS DeepRacer,这是一种由强化学习方法驱动的无人 1/18 比例赛车。今年,我们抬高了标杆(抱歉用了俏皮话)。


介绍 AWS DeepComposer


AWS DeepComposer 是一款 32 键、2 个八度音程的键盘,开发人员可以使用该键盘以预训练模型或您自己模型实操生成式 AI。


您可以请求在设备可用时通过电子邮件发送电子邮件,也可以在 AWS 控制台中使用虚拟键盘。


以下是使用方式概述:


登录 DeepComposer 控制台,


录制简短的曲调,或使用预先录制的音乐。


为您偏好的流派选择生成式模型,可以是预训练的或您自己的,


使用此模型生成新的复调乐曲,


在控制台中播放乐曲,


导出乐曲或在 SoundCloud 上共享。


让我向您展示如何使用预训练的模型快速生成您的第一支乐曲作品。然后,我将讨论如何训练自己的模型,最后以支撑 DeepComposer 的底层技术:生成式对抗网络 (GAN) 的粗浅介绍做结。


使用预训练模型


打开控制台,我转到 Music Studio,在这里可以选择预先录制的乐曲,也可以自己录制一个。


我使用前一方法,选择了贝多芬的《欢乐颂》。


我还选择了我想使用的预训练模型:古典、爵士、摇滚或流行。这些模型已经针对大型音乐数据集进行了相应流派的训练,我可以直接使用它们。在没有“金属”的情况下(团队请注意该特性请求),我选择“摇滚”并生成乐曲。


几秒钟后,我看到了该模型生成的额外伴奏。我给它们分配了不同的乐器:鼓、过载吉他、电吉他(清音)和电贝斯(指弹)。


下面的就是结果。您觉得怎么样?


最后,我可以将乐曲导出为 MIDI 或 MP3 文件,并在我的 SoundCloud 账户上共享它。一夜爆红指日可待!


训练您自己的模型


我还可以使用自己偏好流派的数据集训练自己的模型。我需要选择:


生成器和判别器的架构参数(在下一节中将详细介绍),


训练过程中用来衡量算法输出与期望值之间差异的损失函数,


超参数,


在训练模型时,我将能够收听的验证样本。


在训练期间,我可以看到质量指标,并且可以聆听上面选择的验证样本。对模型进行全面训练后,就可以像预先训练的模型一样使用它来生成乐曲。


生成式对抗网络简介


Ian J. Goodfellow、Jean Pouget-Abadie、Mehdi Mirza、Bing Xu、David Warde-Farley、Sherjil Ozair、Aaron Courville 和 Yoshua Bengio 合著的《生成式对抗网络》于 2014 年出版,这是 GAN 诞生的标志。


作者们表示:


在提出的对抗网络框架中,生成模型与一个作为对手的判别模型相对立,判别模型通过学习确定样本是来自模型分配还是来自数据分配。生成模型可被视作类似于一组造假者,它试图生产假币并在未经检测的情况下使用它,而判别模型类似于警察,试图发现假币。在这场比赛中的竞争迫使两支队伍都要改进自己的方法,直到仿冒品与真品无法分辨。


让我在此基础上稍作扩展:


生成器无权访问数据集。它使用随机数据,创建通过判别模型转发的样本。


判别器是一种二进制分类模型,学习如何从伪样本(由生成器组成)中识别真实数据样本(包括在训练集中)。训练过程使用传统技术,例如梯度下降、反向传播等。


随着判别器的学习,其权重将更新。


相同的更新将应用于生成器。这是理解 GAN 的关键:通过应用这些更新,生成器逐渐学习如何生成与判别器认为真实的样本越来越接近的样本。


综上所述,您必须进行造假专家的培训才能成为出色的假冒者…但这可不是职业建议! 如果您想了解更多信息,可以在我自己的博客中点赞这篇博文,其中介绍了如何使用 Apache MXNet GAN 生成 MNIST 样本。


如果您只是想演奏乐曲并像这个小家伙一样开心,那也同样欢迎!


即将推出!


AWS DeepComposer 绝对劲爆。您可以立即注册预览,并在键盘发布时得到通知。


本文转载自 AWS 技术博客。


原文链接:https://amazonaws-china.com/cn/blogs/china/aws-deepcomposer-compose-music-with-generative-machine-learning-models/


2019-12-16 08:00676

评论

发布
暂无评论
发现更多内容

Go-基本元素

HelloBug

Go 语言

简简单单实现 Python Web 的登录注册页面,还包含一半逻辑。

梦想橡皮擦

8月日更

破解AI开课难题!2021 全国人工智能师资培训落地厦门大学

百度大脑

人工智能

2021 OceanBase 数据库大赛来袭!邀你改编世界,码出未来

OceanBase 数据库

数据库 oceanbase OceanBase 开源 OceanBase 社区版 OceanBase 数据库大赛

python3学习笔记-20210817(变量名与字符串)

姬翔

微服务架构师-docker私有镜像仓库的配置和使用

学神来啦

Linux 容器 微服务 运维 架构师

GIT远程仓库

一个大红包

8月日更

上游思维:在系统的关键处找一个支点

石云升

读书笔记 8月日更 上游思维

耗时24小时整理了网络安全学习路线,非常详细!

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

高可用架构(下)

编号94530

数据库 架构设计 异地多活容灾 高可用架构

Flink 和流式应用运维(十-上)

Databri_AI

flink API REST API

「最好」的敌人是「好」

非著名程序员

提升认知 认知提升 个人提升 8月日更

敏捷开发

LeifChen

Scrum 敏捷开发 迭代 8月日更

ipfs挖矿是怎样赚钱的?ipfs挖矿值得投资吗?

IPFS挖矿值得投资吗 IPFS挖矿是怎样赚钱的

云原生时代到来了么?

escray

学习 极客时间 如何落地业务建模 8月日更

Magician has released a new version

Magician网络编程包

Java Web 网络编程 io nio

【架构设计模块五】:设计微博系统中”微博评论“的高性能高可用计算架构

Ryoma

架构实战营模块五作业

maybe

DAPP去中心化交易所开发|DAPP与APP的区别

Geek_23f0c3

交易所开发 去中心化交易所系统开发 DAPP智能合约交易系统开发

OceanBase源码解读(二):SQL的一生

OceanBase 数据库

数据库 分布式数据库 oceanbase OceanBase 开源 OceanBase 社区版

ipfs矿机公司实力排行如何?ipfs矿机排名如何?

ipfs矿机公司实力排行如何 ipfs矿机排名如何

基于springcloud springboot vue elementui商城源码毕设实战

清风

Vue Java 分布式 毕业设计

CODING DevOps 高级架构师王炜入选木兰开源社区首批导师

CODING DevOps

DevOps Nocalhost 木兰开源社区 开发者生态

Go- 变量

HelloBug

变量 Go 语言

还在死磕 Ajax?那可就 out 了!

编程三昧

JavaScript 大前端 8月日更 Fetch

从0开始的TypeScriptの十:泛型

空城机

typescript 大前端 8月日更

Go- 常量

HelloBug

常量 const Go 语言

JavaScript单元测试的“抹茶”组合:Mocha和Chai

devpoint

JavaScript 单元测试 8月日更

java springboot微信小程序授权登录开发

清风

小程序 java小程序

🏆【分布式技术专题】【分布式技术专题】RocketMQ延迟消息实现原理和源码分析

洛神灬殇

RocketMQ 延时队列 8月日更 DelayedQueue

蔚来事故背后,“致命弯道”在辅助驾驶和自动驾驶之间

脑极体

使用生成式 Machine Learning 模型作曲_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章