
罪魁祸首是
训练过程中给模型传值时的如下语句:

而其中函数seq2embeded()中用到了tensorflow的运算:

这两句会增加graph节点,使得图在训练过程中不断增大,就会不断消耗内存。
教训:
训练过程中,能用numpy处理的运算尽量不用tensorflow中的运算。
如果必须用tensorflow运算,事先在graph中用placehoder( )定以好运算的tensor,训练过程中用sess.run(..., feed_dict=)传值。