写点什么

使用生成式 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:00660

评论

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

太牛了,Github上标星30K+的SpringBoot实战电商项目mall

Java 程序员 后端

如何在Spring Boot应用中优雅的使用Date和LocalDateTime

Java 程序员 后端

如何让自己像打王者荣耀一样发了疯、拼了命、石乐志的学习

Java 程序员 后端

如果当时这15道题能答好,现在应该已经被录取了(记一次面试的亲身经历 2020-7-20

Java 程序员 后端

太全了吧!阿里面试官纯手打:金三银四跳槽必会Java核心知识点笔记整理

Java 程序员 后端

架构实战营 - 毕业总结

雪中亮

架构实战营 #架构实战营

太难了,面试官不讲武德!来骗来偷袭,分层架构图案例

Java 程序员 后端

如何保证Redis与数据库的双写一致性?,十分钟带你看懂Netty如何实现C-S

Java 程序员 后端

太为难我了,阿里面试了7轮(5年经验,java百度图像识别接口

Java 程序员 后端

太狠了!阿里技术官熬夜半年肝出来的Spring Boot巅峰之作,爱了

Java 程序员 后端

如何在分布式系统中正确的使用缓存?别给你的项目引入定时炸弹!

Java 程序员 后端

模块二作业

doublechun

「架构实战营」

太厉害了,终于有人把TCP-IP协议整合成864页学习笔记了

Java 程序员 后端

太强了!阿里大神亲码“SpringCloud核心手册,2021Java常见笔试题

Java 程序员 后端

太狠了,Spring全家桶笔记,一站式通关全攻略,已入职某厂涨薪18K

Java 程序员 后端

如何正确使用Spring Cloud Zookeeper,不懂来学,java教程下载网盘

Java 程序员 后端

如何理解互斥锁、条件锁、读写锁以及自旋锁(1),mysql入门到精通电子书

Java 程序员 后端

天真,居然还有人认为java的参数传递方式是引用传递(1)

Java 程序员 后端

如何快速成长为技术大牛?阿里资深技术专家的总结亮了!

Java 程序员 后端

如何让阿三 Windows 10、11 的恢复分区(Recovery Partition

Java 程序员 后端

如何阅读一本书-读书笔记,java二到三年经验面试题

Java 程序员 后端

如何使用Spring Cloud Consul的其他配置和发现功能,不会来学

Java 程序员 后端

如何保证高可用?搞定三种集群模式,Redis还不是手到擒来

Java 程序员 后端

如何在今年难找工作的大环境下成功入职阿里?Java架构师面试高频300题:集合

Java 程序员 后端

天真,居然还有人认为java的参数传递方式是引用传递,互联网java工程师面试突击训练网盘

Java 程序员 后端

头条「2020最新」Spring最易学习教程,百度java面试经验

Java 程序员 后端

如何设计一个百万级用户的抽奖系统?,三面蚂蚁核心金融部

Java 程序员 后端

如果当时这16道题能答好,现在应该已经被录取了(记一次面试的亲身经历 2020-9-9

Java 程序员 后端

太难了,救救孩子吧,到现在还搞不懂TCP的三次握手四次挥手

Java 程序员 后端

字节跳动Java开放岗面经:14天快速面试,已拿offer,Java全套百度云

Java 程序员 后端

天才第一步!Java架构速成笔记必备精品成就年薪百万,掌门一对一java面试流程

Java 程序员 后端

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