TensorFlow 使用上个模型输出的一个向量表示 来给RNN生成一段文本

import tensorflow as tf

from tensorflow.contrib.rnn import LSTMCell

cell = LSTMCell(128,state_is_tuple=False)
init_state = tf.random_normal([16,128]) # 可以是上一模型的输出

output,new_state = cell(inputs=init_state,state=init_state)

for i in range(20):
    output,new_state = cell(inputs=output,state=init_state) # 这个state=也试试传output

print()

或者

import tensorflow as tf

from tensorflow.contrib.rnn import LSTMCell

cell = LSTMCell(128,state_is_tuple=False)
init_state = tf.random_normal([16,128]) # 可以是上一模型的输出

output,new_state = cell(inputs=init_state,state=init_state) # new_state是[batch_size,256]

mlp = tf.keras.layers.Dense(units=128)
new_state = mlp(new_state)

for i in range(20):
    output,new_state = cell(inputs=output,state=new_state) 
    new_state = mlp(new_state)

print()

或者

import tensorflow as tf


cell = tf.keras.layers.LSTMCell(128)
init_state = tf.random_normal([16,1,128]) # 可以是上一模型的输出

output,new_state = cell(inputs=init_state,states=init_state)

for i in range(20):
    output,new_state = cell(inputs=output,states=init_state) 

print()

或者

import tensorflow as tf


cell = tf.keras.layers.LSTMCell(128)
init_state = tf.random_normal([16,20,128]) # 可以是上一模型的输出

output,new_state = cell(inputs=init_state,states=init_state)

print()
©️2020 CSDN 皮肤主题: 创作都市 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值