【问题标题】:Keras in R: freeing up memory after multiple training sessionsR 中的 Keras:在多次训练后释放内存
【发布时间】:2021-12-27 20:11:03
【问题描述】:

我正在 R 中训练多个模型。一段时间后,我的内存不足。

从基本的谷歌搜索来看,在 R 中覆盖对象后,tensorflow 会话似乎将内容保存在内存中。这是其他人遇到的一个问题,但是我没有看到任何对 R 中的 keras 有帮助的答案。

Keras: release memory after finish training process

Tensorflow2.0: GPU runs out of memory during hyperparameter tuning loop

我尝试在每次循环后运行这些命令:

rm(model)

k_clear_session()

tf$compat$v1$keras$backend$clear_session()

但这些问题仍然存在。关于如何释放 Keras 使用的内存的任何想法?

我在笔记本电脑上运行这段代码,我很确定我没有 GPU。

【问题讨论】:

  • 运行gc()(甚至可能重复)没有帮助吗?有时,R 在垃圾收集方面反应迟缓,需要一试身手。
  • 你能添加一个可重现的例子吗?
  • @t-kalinowski 不,我不能。
  • 如果没有可重复的例子,任何人都很难帮助你......

标签: r tensorflow keras memory tensorflow2.0


【解决方案1】:

我记得在 R 中有一些记忆问题(不记得是 keras 还是其他东西),但以下一项或组合应该会有所帮助:

remove(list=ls()) #remove your objects

gc() #garbage collection

.rs.restartR() #restart the R session (clean the memory but doesn't detach your packages)

【讨论】:

  • 嗯,我会试一试。我熟悉 R 在内存不足时的行为方式,但 Keras 包的工作方式似乎有所不同。内存不足错误出现在 Python 中。
猜你喜欢
  • 2018-12-02
  • 2021-07-30
  • 1970-01-01
  • 1970-01-01
  • 2020-01-27
  • 1970-01-01
  • 1970-01-01
  • 2019-03-03
  • 1970-01-01
相关资源
最近更新 更多