Python3实现写作
创始人
2024-06-01 12:41:54
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

相关内容

热门资讯

中证A500ETF摩根(560... 8月22日,截止午间收盘,中证A500ETF摩根(560530)涨1.19%,报1.106元,成交额...
A500ETF易方达(1593... 8月22日,截止午间收盘,A500ETF易方达(159361)涨1.28%,报1.104元,成交额1...
何小鹏斥资约2.5亿港元增持小... 每经记者|孙磊    每经编辑|裴健如 8月21日晚间,小鹏汽车发布公告称,公司联...
中证500ETF基金(1593... 8月22日,截止午间收盘,中证500ETF基金(159337)涨0.94%,报1.509元,成交额2...
中证A500ETF华安(159... 8月22日,截止午间收盘,中证A500ETF华安(159359)涨1.15%,报1.139元,成交额...
科创AIETF(588790)... 8月22日,截止午间收盘,科创AIETF(588790)涨4.83%,报0.760元,成交额6.98...
创业板50ETF嘉实(1593... 8月22日,截止午间收盘,创业板50ETF嘉实(159373)涨2.61%,报1.296元,成交额1...
港股异动丨航空股大幅走低 中国... 港股航空股大幅下跌,其中,中国国航跌近7%表现最弱,中国东方航空跌近5%,中国南方航空跌超3%,美兰...
电网设备ETF(159326)... 8月22日,截止午间收盘,电网设备ETF(159326)跌0.25%,报1.198元,成交额409....
红利ETF国企(530880)... 8月22日,截止午间收盘,红利ETF国企(530880)跌0.67%,报1.034元,成交额29.0...