VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • Python3实现写作

本文转载至知乎ID:Charles(白露未晞)知乎个人专栏
下载W3Cschool手机App,0基础随时随地学编程>>戳此了解

导语

T_T没有科研梦想的人半夜过来水篇文章~~~

让Python学会写写歌,创创作~~~

纯属娱乐~~~

改编自PyTorch官网的一个教程,不过我用TF写的,然后生成英文变成了生成中文~~~

Let's Go~~~

 

相关文件

百度网盘下载链接: https://pan.baidu.com/s/1VUEFR82CqyDj2w9SS4xnFA 

密码: 3dmx

 

开发工具

Python版本:3.6.4

相关模块:tensorflow-gpu模块;numpy模块;以及一些Python自带的模块。

其中TensorFlow-GPU版本为:

1.6.0

 

环境搭建

安装Python并添加到环境变量,pip安装需要的相关模块即可。

原理简介

关于RNN的介绍,请参考我之前的文章:

Python实现简单的机器翻译模型(点击蓝字进入)

这里我们使用Char RNN模型进行训练。

即Seq2Seq模型中的特殊情况输入与输出等长。

也就是类似下图的样子(图源网络):

具体实现过程详见相关文件中的源代码。

 

使用演示

在cmd窗口运行Char_RNN.py文件并根据提示输入相关信息即可。

训练相关的参数请在config.py文件中调整:

训练所用的数据路径以及生成新文本所用的预热数据请在Char_RNN.py文件中调整:

训练演示视频:

因为时间太长了,我只录了训练的前面一部分。

最终训练结果如下图所示:

 

结果展示

因为时间和资源有限。

这里只展示周杰伦的所有歌词作为样本进行训练之后测试的结果。

当然你完全可以找其他文本作为训练语料来生成风格各异的“文章”,“歌词”等等~~~

结果如下:

(预热歌词为:是曾与你躲过雨的屋檐)

好吧我并不知道它在说啥T_T

一个失败的案例T_T

大概是模型太low了。而且训练数据是我从网上直接下载的,也没有预处理过T_T。中间竟然突然冒出一个括号我也是颓了T_T

 

更多

随便玩玩的T_T~~~

有兴趣的同学可以试着换更复杂的模型~~~

然后训练的语料最好处理一下~~~

好久没写TF了,代码可能写的有点糟糕T_T

就这样吧~~~


相关教程