背景html
最近互联网上出现一个热词就是“freestyle”,源于一个比拼rap的综艺节目。在节目中须要大量考验选手的freestyle能力,freestyle指的是rapper即兴的根据一段主题讲一串rap。freestyle除了考验一我的rap的技巧,其实我以为最难的是如何在短期内在脑海中浮现出有韵律的歌词。网络
本文会介绍如何自动生成歌词,到底什么工具备这样的功效呢?答案是PAI。PAI平台是阿里云人工智能平台,在上面能够经过最简单的拖拉拽的方式,完成对各类结构化以及非结构化数据的处理。由于有了PAI,这种自动生成歌词的事情都再也不成为难题。我如今不光能够瞬间生成万首歌词,我还能够同时融合周杰伦、王力宏、林俊杰、汪峰的歌词风格在里面,由于PAI利用深度学习能力能够快速的学习这些歌手的全部歌曲而且实现本身创做歌词。不信?下面我就来show一下PAI的威力。app
执行过程框架
1.首先进入PAI:https://data.aliyun.com/product/learn机器学习
开通机器学习以及机器学习内的GPU服务。ide
2.训练数听说明工具
这里咱们的数据是一份txt文件,文件中包含了周杰伦、王力宏、林俊杰、汪峰的歌词,一共有接近300首歌,歌词都是去掉标题等干扰因素的(花了好几个小时整理)。数据截图:学习
3.实验代码说明阿里云
本实验使用的是PAI内置的深度学习框架Tensorflow,使用的了seq2seq以及RNN网络进行歌词语义的学习以及建模。使用train.py文件生成模型,使用predict.py文件进行预测。如下是部分网络结构搭建的截图,你们能够在下方找到源代码下载地址进行使用。(PS:实例代码虽然能够运行,可是数据IO采用的是低效方式,高效方式能够参考此文https://yq.aliyun.com/articles/126918)人工智能
4.数据上传
将实验数据和代码文件打包上传到OSS(之因此打包是本文案例使用的是原生PYTHON的数据IO方式,须要代码和训练数据组成同一个tar.gz文件)。OSS是PAI可读的对象存储工具,具体方式能够参考此视频连接https://help.aliyun.com/video_detail/54945.html
5.搭建实验
在PAI的画布拖动OSS以及Tensorflow组件搭建以下实验,两个Tensorflow节点分别对应着训练和预测节点,先训练生成写歌模型,而后预测节点获取模型自动生成歌词。
配置对应的执行代码路径和输出路径,跟上面的OSS路径对应。下图是负责预测的Tensorflow节点配置。
点击运行,PAI就开始学习歌词而且尝试本身写做啦。
写歌结果
通过差很少20分钟的学习,PAI已经掌握了几位歌坛大神的歌词技巧,下面就看看PAI写出来的歌词是怎样的。(歌词须要在log中查看,能够参考https://yq.aliyun.com/articles/72841
歌词来了
看上去写的歌还算通畅,没有出现特别多语病。固然,想写出更好的词,须要对训练模型的迭代次数、词长等参数进行不断调试,也能够多为PAI输送更多的歌词供训练,由于300多的样本仍是略显单薄。
以上就是经过PAI自动写歌词的教程,但愿对各位喜欢音乐和尝试作文本自动生成的同窗有帮助,让咱们一块儿freestyle起来!!
下载地址
数据以及代码已经打包,直接上传PAI配置路径便可使用:http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/
文章连接:http://click.aliyun.com/m/26320/