问题标签 [ray]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1369 浏览

python - Python代码射线投射多点

我正在尝试编写一个 Ray Casting python 代码,它将返回一个Trueor列表False,它将显示点是否在多边形中。我有一个包含多个多边形的纬度/经度的列表,以及两个附加列表,一个是纬度,另一个是点的经度。所以基本上我要做的是使用列表,看看多个点是否在多个多边形中。任何建议都会非常有帮助,因为我是新的 Python,并且边走边学!

下面是创建光线投射以查看一个点是否是一个多边形的函数,因此需要查看多个点是否在多个多边形中,为每个点返回 True 或 False,因此返回[True, False, True, False]

多边形中一点的光线投射:

0 投票
1 回答
447 浏览

python - Python Ray 可以处理多大的数据?

Python Ray 对于机器学习应用程序来说看起来很有趣。但是,我想知道 Python Ray 能处理多大。它是受内存限制还是实际上可以处理超出内存的数据?

0 投票
2 回答
4304 浏览

python - 远程射线调用未检测到函数参数

执行 @ray.remote 函数时,会引发以下异常,即使我提供了函数定义中设置的所有参数:

编辑:我的远程函数定义和远程调用的最小示例如下:

编辑:下面的完整例外

0 投票
1 回答
1379 浏览

python-3.x - 运行 python 的 ray packge 调优时无法腌制 _thread.RLock 对象(超参数调优)

我正在尝试使用 Ray 的tune包进行超参数调整。

下面显示的是我的代码:

当我尝试运行它时,我遇到了错误。下面显示的是堆栈跟踪。这是我第一次使用 Tune,所以我不确定我在这里做错了什么。另请注意,ray 给出的示例算法在我的机器上运行良好。

/home/suleka/anaconda3/lib/python3.6/site-packages/h5py/init .py:36: FutureWarning:不推荐将 issubdtype 的第二个参数从 floatto转换np.floating。将来,它将被视为np.float64 == np.dtype(float).type. from ._conv import register_converters as _register_converters 警告:由于setproctitle未安装,因此未更新工作人员名称。安装这个 pip install setproctitle(或 ray[debug])启用对工作进程的监控。回溯(最后一次调用):文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 918 行,在 save_global obj2 中,parent = _getattribute(module, name) File“/home/suleka/ anaconda3/lib/python3.6/pickle.py",第 266 行,在 _getattribute .format(name, obj)) 属性错误:无法获取本地属性 'wrap_function..WrappedFunc' on

在处理上述异常的过程中,又出现了一个异常:

回溯(最后一次调用):文件“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”,第 639 行,在 save_global return Pickler.save_global(self, obj,名称=名称)文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 922 行,在 save_global(obj,module_name,name)中)_pickle.PicklingError:无法腌制 .WrappedFunc'>:它不是 ray.tune.trainable.wrap_function..WrappedFunc

在处理上述异常的过程中,又出现了一个异常:

回溯(最近一次调用最后):文件“/home/suleka/Documents/sales_prediction/auto_LSTM_withoutZero.py”,第 322 行,在 register_trainable('train_mnist', train) 文件“/home/suleka/anaconda3/lib/python3.6 /site-packages/ray/tune/registry.py”,第 38 行,在 register_trainable _global_registry.register(TRAINABLE_CLASS, name, trainable) 文件“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/ tune/registry.py”,第 77 行,在寄存器 self._to_flush[(category, key)] = pickle.dumps(value) 文件“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/ cloudpickle/cloudpickle.py”,第 881 行,转储 cp.dump(obj) 文件“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”,第 268 行,在转储返回 Pickler.dump(self,obj)文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 409 行,在转储 self.save(obj) 文件“/home/suleka/anaconda3/lib/python3.6/pickle. py", line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py", line 648,在 save_global 返回 self.save_dynamic_class(obj) 文件“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”,第 495 行,在 save_dynamic_class save(clsdict) 文件中/home/suleka/anaconda3/lib/python3.6/pickle.py", line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6 /pickle.py",第 821 行,在 save_dict self._batch_setitems(obj.items()) 文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 847 行,在 _batch_setitems save(v) 文件“/home/suleka/anaconda3/lib/python3.6/pickle. py", line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py", line 410,在 save_function self.save_function_tuple(obj) 文件中“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”,第 553 行,在 save_function_tuple 中保存(状态)文件“/ home/suleka/anaconda3/lib/python3.6/pickle.py", line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/ pickle.py”,第 821 行,在 save_dict self._batch_setitems(obj.items()) 文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 847 行,在 _batch_setitems save(v) 文件“/home/suleka/anaconda3/lib/python3.6/pickle. py", line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 781, in save_list self._batch_appends( obj) 文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 808 行,在 _batch_appends save(tmp[0]) 文件“/home/suleka/anaconda3/lib/python3.6/pickle .py", line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py",第 405 行,在 save_function self.save_function_tuple(obj) 文件中“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”,第 553 行,在 save_function_tuple 保存(状态)文件“/home/suleka/anaconda3/lib/python3.6/ pickle.py", line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 821, in save_dict self. _batch_setitems(obj.items()) 文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 847 行,在 _batch_setitems save(v) 文件“/home/suleka/anaconda3/lib/python3. 6/pickle.py", line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 821, in save_dict self._batch_setitems(obj.items()) 文件“/home/suleka/anaconda3/lib/python3.6/pickle.py", 第 847 行, in _batch_setitems save(v) File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 476, in save f(self, obj) # Call unbound具有显式自我文件“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”的方法,第 405 行,在 save_function self.save_function_tuple(obj) 文件“/home/suleka/ anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”,第 553 行,在 save_function_tuple 保存(状态)文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”, line 476, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 821, in save_dict self._batch_setitems(obj.items ()) 文件“/home/suleka/anaconda3/lib/python3.6/pickle.py", 第 847 行, in _batch_setitems save(v) File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 476, in save f(self, obj) # Call unbound具有显式自我文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”的方法,第 821 行,在 save_dict self._batch_setitems(obj.items()) 文件“/home/suleka/anaconda3/lib/ python3.6/pickle.py”,第 847 行,在 _batch_setitems save(v) 文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 476 行,保存 f(self, obj) #使用显式 self 文件“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”调用未绑定方法,第 405 行,在 save_function self.save_function_tuple(obj) 文件“/home/ suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle。py", line 553, in save_function_tuple save(state) File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 476, in save f(self, obj) # Call unbound method with explicit self文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 821 行,在 save_dict self._batch_setitems(obj.items()) 文件“/home/suleka/anaconda3/lib/python3.6/ pickle.py”,第 847 行,在 _batch_setitems save(v) 文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 476 行,在 save f(self, obj) # 调用未绑定的方法显式自我文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 821 行,在 save_dict self._batch_setitems(obj.items()) 文件“/home/suleka/anaconda3/lib/python3. 6/pickle.py",第 847 行,在 _batch_setitems save(v) 文件中"/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 521 行,保存 self.save_reduce(obj=obj, *rv) 文件“/home/suleka/anaconda3/lib/python3.6/pickle .py", line 605, in save_reduce save(cls) File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 476, in save f(self, obj) # 使用显式调用未绑定的方法self 文件“/home/suleka/anaconda3/lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”,第 636 行,在 save_global 返回 self.save_dynamic_class(obj) 文件“/home/suleka/anaconda3/ lib/python3.6/site-packages/ray/cloudpickle/cloudpickle.py”,第 495 行,在 save_dynamic_class 保存(clsdict)文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 476 行, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 821 行,在 save_dict self._batch_setitems(obj.items()) 文件“/home/suleka/anaconda3/lib/python3.6/pickle. py”,第 847 行,在 _batch_setitems save(v) 文件中“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 521 行,在保存 self.save_reduce(obj=obj, *rv) 文件中“ /home/suleka/anaconda3/lib/python3.6/pickle.py”,第 634 行,在 save_reduce 保存(状态)文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 476 行, in save f(self, obj) # Call unbound method with explicit self File "/home/suleka/anaconda3/lib/python3.6/pickle.py", line 821, in save_dict self._batch_setitems(obj.items())文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 847 行,在 _batch_setitems 保存(v)文件“/home/suleka/anaconda3/lib/python3.6/pickle.py”,第 496 行,保存 rv = reduce(self.proto) TypeError: can't pickle _thread.RLock objects

0 投票
1 回答
2217 浏览

python-3.x - ap_uniform_sampler() 缺少 1 个必需的位置参数:python 的 Ray Tune 包中的“高”

我正在尝试使用 Ray Tune包对使用纯 Tensorflow 实现的 LSTM 进行超参数调整。为此,我使用了超频带调度程序和HyperOptSearch算法,并且还使用了可训练的类方法。当我尝试运行它时,我收到以下错误:

类型错误:ap_uniform_sampler() 缺少 1 个必需的位置参数:“高”

下面显示的是堆栈跟踪:

FutureWarning:不推荐将 issubdtype 的第二个参数从floatto转换np.floating。将来,它将被视为np.float64 == np.dtype(float).type. from ._conv import register_converters as _register_converters 处理 STDOUT 和 STDERR 被重定向到 /tmp/ray/session_2018-12-19_09-43-46_5469/logs。等待 127.0.0.1:14332 的 redis 服务器响应... 等待 127.0.0.1:25158 的 redis 服务器响应... 使用 /dev/shm 启动具有 3.220188364 GB 内存的 Plasma 对象存储。无法启动 UI,您可能需要运行“pip install jupyter”。== 状态 == 使用 HyperBand:num_stopped=0 total_brackets=0 第 0 轮:请求的资源:0/4 CPU,0/0 GPU 此节点上的内存使用量:3.7/8.1 GB

我的代码如下所示:

0 投票
2 回答
1727 浏览

python-3.x - Tune of Ray 包中“num_samples”用于超参数优化的目的

我正在尝试使用Tune为 LSTM(纯 Tensorflow)执行超参数优化任务。我在hyperopt算法上遵循了他们的示例。在示例中,他们在“配置”部分中使用了以下行。

“num_samples”:如果 args.smoke_test 为 10,否则为 1000,

文档没有解释这是什么。我可以确定这是否是一段有用的代码,或者我应该如何为我的场景更改它。所以如果能知道这行代码的意思就好了。

可以通过此链接找到示例 hyperopt 代码

0 投票
1 回答
1660 浏览

python - 并行运行 openai-gym 环境

以下代码摘自https://bair.berkeley.edu/blog/2018/01/09/ray/

当我阅读这段代码时,我感到很困惑。这段代码真的是并行运行的吗?根据我的理解,只有一个env,所以上面的代码应该按顺序执行操作,即一个接一个地执行操作。如果是这样,那么做上述事情的意义何在?

0 投票
1 回答
1449 浏览

python - Python:*args 和远程函数中的列表之间的区别

定义一个列表

版本 1

版本 2

第一个代码工作正常,但版本 2 不起作用。错误信息是

ray.get(f.remote(f_ids)) + 不支持的操作数类型:“common.ObjectID”和“common.ObjectID”

我想做第 2 版之类的事情的原因是我实际上想做以下事情

我不知道如何制作g1and g2as *g1*g2所以我想出了第 2 版。为什么第 2 版不起作用?我该如何解决?

参考代码在这里 https://ray.readthedocs.io/en/latest/example-parameter-server.html#synchronous-parameter-server

0 投票
2 回答
2963 浏览

python - 并行:从同级文件夹导入 python 文件

我有一个目录树

每个文件中的代码如下

这是我收到的错误消息的一部分

回溯(最近一次通话最后):

文件“/Users/aptx4869/anaconda3/envs/p35/lib/python3.5/site-packages/ray/function_manager.py”,第 616 行,在 fetch_and_register_actor unpickled_class = pickle.loads(pickled_class)

文件“/Users/aptx4869/anaconda3/envs/p35/lib/python3.5/site-packages/ray/cloudpickle/cloudpickle.py”,第 894 行,在子 导入(名称)中

ImportError:没有名为“my_utility”的模块

回溯(最近一次通话最后):

文件“main.py”,第 12 行,在 print(*ray.get(ids), sep='\n')

文件“/Users/aptx4869/anaconda3/envs/p35/lib/python3.5/site-packages/ray/worker.py”,第 2377 行,获取提升值 ray.worker.RayTaskError: ray_worker (pid=30025, host =AiMacbook)

异常:名称为 MyWorker 的 actor 导入失败,因此无法执行此方法

如果我删除所有与 相关ray的语句,上面的代码就可以正常工作。因此,我大胆猜测原因是ray每个actor在一个新进程中运行,并且sys.path.append只在主进程中起作用。所以我将以下代码添加到worker.py

但它仍然不起作用:显示相同的错误消息。现在我的想法用完了,我该怎么办?

0 投票
1 回答
1266 浏览

pytorch - 如何在 Pytorch 中将 GPU 与 Ray 结合使用?我应该为远程类指定 num_gpus 吗?

当我将 Ray 与 pytorch 一起使用时,我没有为远程类设置任何 num_gpus 标志。

我收到以下错误

主要过程是:我创建一个远程类并将一个pytorch模型传输state_dict()(created in main function)给它。在 main 函数中,torch.cuda.is_available()is True,但在 remote 函数中,torch.cuda.is_available()is False。谢谢

我尝试设置 num_gpus=1 并遇到一个新问题:程序卡住了。以下是重现此问题的最小示例代码。谢谢。