我正在尝试在Tensorflow中构建一个循环卷积自编码器,但我遇到了将卷积自编码器与循环层连接的问题。
据我所知,Tensorflow的RNNCell需要输入形状为(batch_size, time_steps, info_vector),但我的1D卷积层的输出形状为(batch_size, info_vector)。有没有办法让Tensorflow存储之前的信息向量?或者我是否需要使用2D卷积,给输入添加一个额外的时间步维度,然后不对该维度进行卷积?
回答:
尝试扩展张量的维度:
cnn_out = last_output_of_cnn # 例如形状为 [32,10]
cnn_out = tf.expand_dims(cnn_output, axis=-1) # 新形状为 [32,10,1]
你可以在RNN的第一层使用这个,这里“时间步”为10。