我制作了Keras模型,但错误消息:“ ValueError:没有要保存的变量”不断出现,我不知道它的含义以及引起问题的原因。
我试图改变存储Keras模型的方式,但这似乎不是问题所在……
下面的代码是构建Keras模型的一部分。
tensorboard_callback = TensorBoard(log_dir = log_path, write_graph = True, embeddings_freq = 'batch')
es_min_valLoss = EarlyStopping(monitor = 'val_loss', patience = 15, mode = 'min')
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
train_history=model.fit(x = trainData, y = trainLabels, validation_split = validation_split,
epochs = epochs, batch_size = batch_size, verbose = 2,
callbacks=[tensorboard_callback, es_min_valLoss])
错误消息如下:
Traceback (most recent call last):
File "<ipython-input-27-9694f30344b3>", line 9, in <module>
callbacks=[tensorboard_callback, es_min_valLoss])
File "D:\Anaconda3\envs\tensorflow-gpu\lib\site-packages\keras\models.py", line 1002, in fit
validation_steps=validation_steps)
File "D:\Anaconda3\envs\tensorflow-gpu\lib\site-packages\keras\engine\training.py", line 1705, in fit
validation_steps=validation_steps)
File "D:\Anaconda3\envs\tensorflow-gpu\lib\site-packages\keras\engine\training.py", line 1155, in _fit_loop
callbacks.set_model(callback_model)
File "D:\Anaconda3\envs\tensorflow-gpu\lib\site-packages\keras\callbacks.py", line 52, in set_model
callback.set_model(model)
File "D:\Anaconda3\envs\tensorflow-gpu\lib\site-packages\keras\callbacks.py", line 802, in set_model
self.saver = tf.train.Saver(list(embeddings.values()))
File "D:\Anaconda3\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\training\saver.py", line 832, in __init__
self.build()
File "D:\Anaconda3\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\training\saver.py", line 844, in build
self._build(self._filename, build_save=True, build_restore=True)
File "D:\Anaconda3\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\training\saver.py", line 869, in _build
raise ValueError("No variables to save")
ValueError: No variables to save
答案 0 :(得分:1)
您的嵌入数据是什么?您必须将embeddings_data
传递给TensorBoard回调。如果您不使用嵌入,请删除参数embeddings_freq
Keras文档很棒,您可以阅读有关TensorBoard回调here
的更多信息。