Tensorflow LSTM在预先训练好的CNN之上

Tensorflow LSTM在预先训练好的CNN之上,tensorflow,keras,conv-neural-network,lstm,Tensorflow,Keras,Conv Neural Network,Lstm,我已经训练了一个CNN,现在我想加载模型,然后在上面放一个LSTM,但是我得到了一些错误 “” 加载CNN的输出 ''' cnn\u model=load\u model(os.path.join('weights','cnn\u patch\u epoch-20.hdf5')) last_layer=cnn_model.get_layer('pool5')。输出 “冻结以前的图层” 对于cnn_model.layers中的图层: layer.trainable=错误 x=时间分布(展平())(

我已经训练了一个CNN,现在我想加载模型,然后在上面放一个LSTM,但是我得到了一些错误

“”
加载CNN的输出
'''
cnn\u model=load\u model(os.path.join('weights','cnn\u patch\u epoch-20.hdf5'))
last_layer=cnn_model.get_layer('pool5')。输出
“冻结以前的图层”
对于cnn_model.layers中的图层:
layer.trainable=错误
x=时间分布(展平())(最后一层)
x=LSTM(神经元,dropout=dropout,name='LSTM')(x)
out=densite(n_输出,内核初始化器=weight_init,name='out')(x)
模型=模型(输入=[cnn_model.input],输出=输出)
model.summary()
我不确定在哪里指定我想要5帧(图像)。所以我的输入是
(无,52242243)
。所以我的问题是我应该在哪里指定它


谢谢

您也可以将您的
cnn\u模型
包装在
TimeDistributed
包装器中

frames=Input(形状=(52242243))
x=时间分布(cnn_模型)(帧)
x=时间分布(展平())(x)
x=LSTM(神经元,dropout=dropout,name='LSTM')(x)
out=densite(n_输出,内核初始化器=weight_init,name='out')(x)
模型=模型(输入=帧,输出=输出)