Memory leaks 操作系统-内存问题

Memory leaks 操作系统-内存问题,memory-leaks,optuna,Memory Leaks,Optuna,我正在尝试在优化运行之间释放内存。我正在使用Python3.8和最新版本的Optuna。我运行命令:optuna.create_study(),然后在循环中调用optuna.optimize(…),每次都使用一个新的目标函数。当我监视内存使用情况时,每次调用optuna.create_study()命令时,内存使用情况都会不断增加,直到我的处理器最终终止程序。为了更清楚地了解情况,第一次运行占用了超过3%的内存,最终累积到>80%。关于如何在连续调用create_study()之间从内存中删除一

我正在尝试在优化运行之间释放内存。我正在使用Python3.8和最新版本的Optuna。我运行命令:optuna.create_study(),然后在循环中调用optuna.optimize(…),每次都使用一个新的目标函数。当我监视内存使用情况时,每次调用optuna.create_study()命令时,内存使用情况都会不断增加,直到我的处理器最终终止程序。为了更清楚地了解情况,第一次运行占用了超过3%的内存,最终累积到>80%。关于如何在连续调用create_study()之间从内存中删除一项研究,您有什么想法吗?

我在使用pytorch时也遇到过类似的问题。根据optuna文档,我尝试了以下解决方案:

study.optimize(目标,n_试验=n_试验,试验后gc_试验=真)

这应该类似于

导入gc

study.optimize(目标,n_试验=n_试验,回调=[lambda研究,试验:gc.collect()])

然而,他们没有一个为我工作。我唯一能修复它的方法就是将pytorch版本升级到最新版本。我不知道您是否正在使用Pytork或其他ML软件包,但如果上述代码行不起作用,您可能需要更新相应的软件包