本文用一个简单的分类(Classification)任务来演示在Tensorflow中使用RNN的基本技巧。更确切地说是使用LSTM(你可以认为它是一种特殊的RNN)。鉴于本文仅属于入门级教程,因此你可以不必太关心LSTM的内部结构。但是对于RNN的基本认知仍然是必要的。这个例子的源码主要来自文献【1】(笔者有修改),而【1】的作者又是参考的文献【2】。
如果你感觉自己对RNN仍然一窍不通,那么你可以参考本系列博文之前的一篇文章《传说中的RNN到底是何方神圣?》 。注意当我们说RNN的时候其实指的就是LSTM(下面给出代码中我们也提供了GRU的使用范例,参考被注释掉的部分,因为在TensorFlow中只要换一个函数就可以了)。
当然,对于Tensorflow的基本使用也是必备的,例如,你应该知道place holder、session这些东西都是什么,以及还如何正确地使用它们。同样,如果你对这些内容仍然一窍不通,那么你可以参考本系列博文之前的一篇文章《TensorFlow简明入门宝典 》。
<