Tensorflow saver:内核似乎已经死了

2024-10-01 07:47:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我在保存/恢复tensorflow模型时遇到了很多麻烦,要么我的“内核似乎已经死了”,要么我得到了错误(“变量。。。已经退出”)。在

当我的内核死机时,我会在控制台中看到以下错误日志:

[I 21:13:41.505 NotebookApp] Saving file at /Nanodegree_MachineLearning/06_Capstone/capstone.ipynb
terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc
[I 21:17:05.416 NotebookApp] KernelRestarter: restarting kernel (1/5)
WARNING:root:kernel 81679b46-ec9b-4ce6-b5be-ae2d9cf01210 restarted
[I 21:17:41.778 NotebookApp] Saving file at /Nanodegree_MachineLearning/06_Capstone/capstone.ipynb
[19324:20881:1229/212110:ERROR:object_proxy.cc(583)] Failed to call method: org.freedesktop.UPower.GetDisplayDevice: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.UnknownMethod: Method "GetDisplayDevice" with signature "" on interface "org.freedesktop.UPower" doesn't exist

我的代码如下:

^{pr2}$

要恢复模型,我使用:

predicions = tf.argmax(fc2,1)
predicted_classes = []

try:
    saver
except NameError:
    saver = tf.train.Saver()

with tf.Session() as sess:   
    saver = tf.train.import_meta_graph('foo.meta')
    saver.restore(sess, tf.train.latest_checkpoint('./'))

    predicted_classes = sess.run(predicions, feed_dict={x: X_test, keep_prob: 1.0})

我尝试了很多不同的方法,有时有效(但不总是!),有时它崩溃,有时我得到变量错误。我是否必须以其他方式使用保存/恢复?在

我正在使用: Ubuntu 14.04版 狂蟒之灾3 Python 3.5.2版 张量流量0.12

在jupyter笔记本内

谢谢你!在


Tags: org模型tf错误train内核atfile
1条回答
网友
1楼 · 发布于 2024-10-01 07:47:15

当内存不足时会发生这种情况,解决方法是尝试较小的批处理大小。我看到您正在将测试集输入到一个run调用中,这需要足够的内存同时执行所有示例。您可以做一些类似于eval_in_batches的操作来聚合几个较小的运行调用的精确度

相关问题 更多 >