✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?

Posted 36大数据

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?相关的知识,希望对你有一定的参考价值。

最近深度学习在机器视觉CV、自然语言处理NLP领域表现出强大的潜力,各种深度学习/机器学习框架也层出不穷。

TensorFlow是google于去年(2015.11)开源的深度学习框架,截止目前(2016-11-28)Github上已经有38000+的star数,称之为最近最受欢迎的深度学习框架一点也不过分。

本着学习TensorFlow和RNN的目的,前些天发现了char-rnn这个有趣的项目,具体就是基于字符预测下一个字符。

比如说已知hello的前四个字母hell,那我们就可以据此预测下一个字符很可能是o,因为是字符char级别的,并没有单词或句子层次上的特征提取,相对而言比较简单易学。

因为原作者的代码是基于torch写的,为了熟悉tensorflow,我就仔细地研究了一下具体代码,然后改写成基于tf的代码,github上也有基于TensorFlow的char-rnn-tensorflow,恕我直言,有以下三点比较膈应:

  1. 代码写的不够直观简洁

  2. 另外因为最新tensorflow的部分api有所变化

  3. 中英文之间有一些差异,看能否成功移植到处理中文上

于是打算基于以上两个项目,自己重写!

基本原理

拿中文举例来说,每个字与每个字并不是统计上独立的。

比如说如果不爱就不要再伤害长度为10的序列,如果我们知道如,下一个字有可能是果,如果知道前两个字如果,第三个字就是不的可能性大些,依次类推,如果知道前9个字如果不爱就不要再伤,那么最后一个就有可能是害字。用图直观的表示如下。

✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?

总的来说,这是一个seq2seq的模型,训练数据用的是周杰伦01年到11年所有歌的歌词,训练数据和代码我都放到Github上,可以从这里下载

全部代码如下:

✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?

python3 gen_lyrics 0训练差不多10几分钟,然后运行python3 gen_lyrics.py 1生成的歌词如下:

End.

微信回复文字,查看系列文章
回复 1
大数据可视化 5篇系列文章
回复 2
推荐系统        5篇系列文章
回复 3
机器学习        5篇系列文章
回复 4
随机森林        5篇系列文章
回复 5 
数据科学家     5篇系列文章
回复 6
大数据面试题 5篇系列文章
回复 7
大数据工具    5篇系列文章
回复 8
大数据应用案例  5篇系列文
回复 9
新手入门大数据  5篇系列文
36大数据
dashuju36
36大数据,一个用干货、教程和攻略免费教你玩大数据、用大数据、实现大数据价值的网站。
投稿/合作联系:dashuju36@qq.com 
网址:http://www.36dsj.com
点击下方 “阅读原文”查看更多
↓↓↓

以上是关于✪​ 教程 | 如何用TensorFlow生成周杰伦歌词?的主要内容,如果未能解决你的问题,请参考以下文章

如何用Tensorflow开发一个简单的语音识别器

如何用Tensorflow开发一个简单的语音识别器

送书 | AI插画师:如何用基于PyTorch的生成对抗网络生成动漫头像?

如何用tensorflow训练模型成pb文件和和如何加载已经训练好的模型文件

直播实录|大牛教你如何用 TensorFlow 亲手搭建一套图像识别模块

如何用Tensorflow训练模型成pb文件——基于原始图片的读取