Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python keras.backend.clear_session()是在进程中删除会话还是全局删除会话?_Python_Tensorflow_Keras_Multiprocessing - Fatal编程技术网

Python keras.backend.clear_session()是在进程中删除会话还是全局删除会话?

Python keras.backend.clear_session()是在进程中删除会话还是全局删除会话?,python,tensorflow,keras,multiprocessing,Python,Tensorflow,Keras,Multiprocessing,我在单独的脚本中创建了多达100个keras模型,并使用model.save()将它们保存到本地。 为了训练他们,我使用multiprocessing.pool。在这些过程中,我分别加载每个模型。由于发生内存错误,我使用了keras.backend.clear\u session()。这似乎有效,但我也读到它删除了模型的权重 回到我的问题上来,如果我在池的每个进程中导入“从keras导入后端为K”,最后,在保存模型后,我使用K.clear_session(),我是清除并行运行进程的重要数据,还是

我在单独的脚本中创建了多达100个keras模型,并使用model.save()将它们保存到本地。 为了训练他们,我使用multiprocessing.pool。在这些过程中,我分别加载每个模型。由于发生内存错误,我使用了keras.backend.clear\u session()。这似乎有效,但我也读到它删除了模型的权重

回到我的问题上来,如果我在池的每个进程中导入“从keras导入后端为K”,最后,在保存模型后,我使用K.clear_session(),我是清除并行运行进程的重要数据,还是只清除这个进程的数据

如果删除并行运行进程的重要数据。是否有可能在流程内创建本地tensorflow会话。然后将所需模型分配给此会话,然后清除此本地会话

我很感谢你的任何意见

另外,如果有人知道clear_session()的确切功能,这将很有帮助。对这个函数的解释不是很有用,特别是对于像我这样的初学者


谢谢:)

我面临类似的问题,但我不是并行运行模型,而是我;E任何一个模型(在不同的文件夹中,但模型文件名相同)都将运行

当我在没有clear_会话的情况下直接运行模型时,它与以前加载的模型冲突,无法切换到其他模型。在语句开始时包含clear_会话(加载模型)后,它开始工作,但是它也删除了在程序开始时声明的预测活动所必需的全局变量

吸取的教训: clear_会话不仅会“销毁当前TF图并创建一个新TF图”。如文档中所述,还会删除程序中定义的全局变量

所以我在clear_session语句之后定义了全局变量

**感谢您的反馈