Keras InvalidArgumentError未知输入节点

时间:2018-03-03 22:11:51

标签: python tensorflow keras lstm

我正在尝试在Keras训练一个简单的LSTM。我的数据有以下几个方面:

train_x.shape, train_y.shape, test_x.shape, test_y.shape
> ((534, 1, 7), (534, 1, 1), (259, 1, 7), (259, 1, 1))

模型定义如下:

model = Sequential()
model.add(LSTM(100, input_shape = (train_x.shape[1],train_x.shape[2]), return_sequences=True))

model.add(Dense(1))
model.compile(loss='mae', optimizer='adam')
res = model.fit(train_x, train_y, validation_data=(test_x,test_y), epochs=100, batch_size=32, verbose=2, shuffle=False)

我之前使用的网络的较小版本有效,但当我增加隐藏节点和时期的数量时,我开始收到以下错误:

InvalidArgumentError: Node 'IsVariableInitialized_3370': Unknown input node 'lstm_17/kernel'

我似乎无法通过缩小到以前的配置来编译模型。我对Tensorflow内部结构并不十分熟悉,因此错误和堆栈跟踪对我没有帮助。谁能解释这个错误意味着什么和/或我可能做错了什么?

1 个答案:

答案 0 :(得分:1)

我得到了一个非常类似的错误,我也在使用LSTM。我在Windows上使用Spyder,我只需重启Spyder就可以避免这个问题。