在模型中添加LSTM层之前,我不确定是否需要添加密集输入层。例如,使用以下模型:
# Model
model = Sequential()
model.add(LSTM(128, input_shape=(train_x.shape[1], train_x.shape[2])))
model.add(Dense(5, activation="linear"))
LSTM层是否为输入层,密集层是否为输出层(即无隐藏层)?或者Keras是否创建了一个输入层,这意味着LSTM层将是一个隐藏层?
对于简单的示例,当前的配置是可以接受的。一切都是基于你想要得到的结果。模型和层可能会根据目标进行更改。因此,如果模型很复杂,可以使用不同的层和形状创建混合模型。请参阅参考资料。
混合模型分层
你不需要太多。这取决于你想完成什么。
在这里查看一些案例。
在您的情况下,是的,LSTm将是第一层,密集层将是输出层。
问题内容: 我拥有的代码(我无法更改)将Resnet与input_tensor一起使用。 研究源代码,ResNet50函数使用创建一个新的keras输入层,然后创建模型的其余部分。这是我要用自己的模型复制的行为。我从h5文件加载我的模型。 由于此模型已经具有输入层,因此我想用定义的新输入层替换它。 如何替换输入层? 问题答案: 使用以下方法保存模型时: 它将保存以下内容: 模型的体系结构,允许创建
问题内容: 在Keras中创建顺序模型时,我知道您在第一层中提供了输入形状。然后,此输入形状会构成 隐式 输入层吗? 例如,下面的模型明确指定了2个密集层,但这实际上是一个3层模型,即由输入形状隐含的一个输入层,一个具有32个神经元的隐藏密集层,然后一个具有10个可能输出的输出层组成的模型吗? 问题答案: 好吧,实际上它实际上 是 一个隐式输入层,即您的模型是一个具有三层“输入,隐藏和输出”的“老
问题内容: 我试图使用keras训练LSTM模型,但我认为这里出了点问题。 我有一个错误 ValueError:检查输入时出错:预期lstm_17_input具有3个维,但数组的形状为(10000,0,20) 虽然我的代码看起来像 其中已的形状和前几个数据点像 并且具有这样的形状的,它是二进制(0/1)标签阵列。 有人可以指出我在哪里错了吗? 问题答案: 为了完整起见,这是发生了什么。 首先,像K
我正在尝试创建一维卷积模型,但我似乎无法获得正确的输入形状。以下是我所拥有的: 我收到以下错误: 有人有什么建议吗?
我正在使用Keras构建一个CNN,以下Conv1D是我的第一层: 我正在培训以下功能: 其中,train\u df是一个由两列组成的pandas数据帧,其中,对于每一行,标签是一个int(0或1),有效载荷是一个用零填充/截断为1000的浮点数组。train\U df中的培训示例总数为15641。 模型编译,但在训练期间,我得到这个错误: 我看了这篇文章,试图将输入更改为1000个浮点长列表的数
我在一个项目中使用Keras,我不明白Keras是如何使用数据输入的,也就是说Keras在创建第一层时是如何读取我们的输入数据的。 例如: 型号=顺序() 在这个模型中,有10个神经元和一个三维输入意味着什么?如果输入数据有100个示例(矩阵数据中的行数),Keras如何使用它们? 非常感谢。