performance - Ray Tune 用于使用指定 session 目录 (!=/tmp/ray/) 进行超参数调整

标签 performance hyperparameters ray

我正在使用 Ray Tune 来调整 pytorch 模型的超参数。 默认的ray session 目录(/tmp/ray)所在的存储容量是有限的,因此我想在使用tune.Tuner()时指定 session 目录(即/tmp/ray→/my_directory)。 我found 我可以指定一个参数 --temp-dir 或以某种方式将其传递给 ray.init()。

但是,我既不调用 ray 也不调用 ray.init(),并且根本不知道在哪里设置 session 目录。有什么简单的技巧吗? 为了调整超参数,我基本上将tune.trainable的对象传递给tune.Tuner()并调用tuner.fit()。

感谢您的建议! 斯蒂尔森

到目前为止,我发现错误“设备上没有剩余空间”连接到/tmp 上的有限容量。 我发现有一个默认的射线 session 目录,将其设置到不同的位置可以解决问题。但我现在只是不知道如何以及在哪里将其传递给tune.Tuner()

最佳答案

如果您在脚本中运行 Ray Tune 而不调用 ray.init()您自己,它将使用默认设置为您调用(它将仅启动本地射线集群)。

你能做的就是在运行tuner.fit()之前自己调用它并通过 _temp_dir论据:

import ray
from ray import tune

# ...

ray.init(_temp_dir="/path/to/tmp/ray")
tune = tune.Tuner(
    # ...
)

或者,您可以从命令行启动 Ray。那么你必须使用 ray.init("auto")在你的脚本中:

终端:

ray start --head --temp-dir /path/to/tmp/ray

脚本:

import ray
from ray import tune

# ...

ray.init("auto")
tune = tune.Tuner(
    # ...
)

最后,您也可以仅符号链接(symbolic link)您的 /tmp/ray目录到其他地方

终端:

ln -s /tmp/ray /path/to/tmp/ray

关于performance - Ray Tune 用于使用指定 session 目录 (!=/tmp/ray/) 进行超参数调整,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75029247/

相关文章:

c++ - 了解 C++11 中 lambda 函数的开销

machine-learning - 如何分解大型网格搜索?

tensorflow - 神经网络框架和 RL 算法库有什么区别?

kubernetes - 在Kubernetes集群上使用ray和Jupyterhub

javascript - jQuery:使用 .load() 加载 php 文件时,导致 XHR 完成加载随着每次加载呈指数增长

c++ - 从 Visual Studio 启动应用程序时出现页面错误

java - 如何使用connector-j知道从mysql服务器返回的数据大小

python - 在 hyperopt 中设置条件搜索空间的问题

python - 如果超参数调整的影响很小,我该如何改进我的 XGBoost 模型?

python - 提高 python dblquad 和多处理的速度