【发布时间】:2018-06-19 21:41:51
【问题描述】:
我正在使用 Keras 和 TensorFlow 后端运行模型。一切都很完美:
model = Sequential()
model.add(Dense(dim, input_dim=dim, activation='relu'))
model.add(Dense(200, activation='relu'))
model.add(Dense(1, activation='linear'))
model.compile(loss='mse', optimizer='Adam', metrics=['mae'])
history = model.fit(X, Y, epochs=12,
batch_size=100,
validation_split=0.2,
shuffle=True,
verbose=2)
但只要我包含记录器和回调以便我可以记录 tensorboard,我就会得到 p>
InvalidArgumentError(有关回溯,请参见上文):您必须为占位符张量“input_layer_input_2”提供一个值,其 dtype 为 float 和 shape [?,1329]...
这是我的代码:(实际上,它工作了 1 次,第一次,然后 ecer 出现该错误)
model = Sequential()
model.add(Dense(dim, input_dim=dim, activation='relu'))
model.add(Dense(200, activation='relu'))
model.add(Dense(1, activation='linear'))
model.compile(loss='mse', optimizer='Adam', metrics=['mae'])
logger = keras.callbacks.TensorBoard(log_dir='/tf_logs',
write_graph=True,
histogram_freq=1)
history = model.fit(X, Y,
epochs=12,
batch_size=100,
validation_split=0.2,
shuffle=True,
verbose=2,
callbacks=[logger])
【问题讨论】:
-
因为它第一次工作,我会尝试重新启动整个会话。可能你的记忆中有一些变量没有被删除。
-
我尝试了 %reset 但没有成功。但是尝试完全重新启动内核并成功了。关于如何在不重新启动内核的情况下清除它的任何建议?每次之后都必须这样做有点烦人。
-
试试这个:
from keras import backend as K cfg = K.tf.ConfigProto() cfg.gpu_options.allow_growth = True K.set_session(K.tf.Session(config=cfg))
标签: tensorflow machine-learning neural-network keras tensorboard