除了方文山,用 TA 你也能帮周杰伦写歌词了
周杰伦几乎陪伴了每个90后的青春,那如果AI写杰伦风格的歌词会写成怎样呢?
首先当然我们需要准备杰伦的歌词,这里一共收录了他的十几张专辑,近5000多行歌词。
原文档格式:
第一步数据预处理
处理后结果:
将处理完的数据写入内存并将文本转换完数字
构建神经网络
a. 构建输入层
b. 构建堆叠RNN单元
其中rnn_size指的是RNN隐层神经元个数
c. Word Embedding
因为单词太多,所以需要进行embedding,模型中加入Embedding层来降低输入词的维度
d. 构建神经网络,将RNN层与全连接层相连
其中cell为RNN单元; rnn_size: RNN隐层结点数量;input_data即input tensor;vocab_size:词汇表大小; embed_dim: 嵌入层大小
e. 构造batch
这里我们根据batch_size和seq_length分为len//(batch_size*seq_length)个batch,每个batch包含输入和对应的目标输出
模型训练
训练结果
train_loss还不错,不过可能过拟合了。
最后让我们加载模型,看看生成情况
哎哟不错哦!
最后的最后我还扩大了歌词库,这次引入了更多流行歌手,来看看效果吧。
好像更不错了!
如果你也喜欢杰伦,请点赞并分享生成的歌词。
版权声明: 本文为 InfoQ 作者【华为云开发者社区】的原创文章。
原文链接:【http://xie.infoq.cn/article/19aef5ba5de3e5fc5e515c43f】。文章转载请联系作者。
评论 (1 条评论)