在网上看到一篇利用Tensorflow+RNN模型生成古诗词的练习,觉得挺有意思的便自己来试了下,算是熟悉下Tensorflow+NLP的基本操作流程
首先pip 安装NLTK
在你的Tensorflow环境下 运行pip install nltk
下载数据集:
$ python
>>>import nltk
>>> nltk.download()
使用的数据集:全唐诗(43030首):https://pan.baidu.com/s/1o7QlUhO
RNN介绍:
RNN的目的使用来处理序列数据。在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的,每层之间的节点是无连接的。但是这种普通的神经网络对于很多问题却无能无力。例如,你要预测句子的下一个单词是什么,一般需要用到前面的单词,因为一个句子中前后单词并不是独立的。RNNs之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。
由于原文的代码版本比较低,所以很多还要自己调整,想一想还是把总的源码贴上吧 GIT传送
当然,由于我的小破笔记本安装的是CPU版本的Tensorflow,速度实在太慢,训练的时间就设的比较短,当然对于古诗词这种艺术创作,目前AI还是基本无能为力,生成的东西也都是狗屁不通的,但是至少格式对了:
网友评论