Я хочу обучить методу ансамбля, при котором каждый член ансамбля обучается на подмножестве данных (обозначенном вселенной). Это работает с:
ray.remote()
def train_on_universe(universe):
something
, и я называю это как:
status = []
for mini_universe in universe_list:
status.append(train_on_universe.remote(mini_universe))
ray.get(status)
, который отлично тренируется параллельно. Теперь я хочу обучить метод для нескольких начальных чисел параллельно, таким образом, есть внешний l oop вокруг внутреннего l oop распараллеливания лучей.
Наивный подход:
ray.remote()
def run_method(seed):
set_seed(seed)
status = []
for mini_universe in universe_list:
status.append(train_on_universe.remote(mini_universe))
ray.get(status)
и
results = []
for seed in seed_list:
status.append(run_method.remote(seed))
ray.get(results)
приводит к ошибке: BlockingIOError: [Errno 11] Ресурс временно недоступен
Что - это правильный способ сделать это внешнее-внутреннее l oop распараллеливание в луче, или есть другой метод, который следует использовать вместо луча для запуска нескольких семян во внешнем l oop?
Спасибо и пожалуйста, дайте мне знать, если вам понадобится дополнительная информация.