Распределенное обучение - файл уже используется - PullRequest
0 голосов
/ 29 февраля 2020

Я новичок в Azure ML и пытаюсь запустить скрипт обучения Pytorch, который использует Horovod для распределенного обучения.

Мой эксперимент определен следующим образом:

cpu_cluster = ComputeTarget(workspace=ws, name=compute_target)

estimator = PyTorch(source_directory=project_folder, 
                    script_params=script_params,
                    compute_target=cpu_cluster,
                    entry_script=experiment_entry_script,
                    distributed_training=Mpi(process_count_per_node=2),
                    framework_version='1.3',
                    node_count=1,
                    use_gpu=True,
                    pip_packages=['fasttext', 'unidecode', 'nltk', 'sortedcontainers', 'azureml-dataprep[fuse,pandas]'])

Дело в том, что в какой-то момент в моем учебном скрипте мне нужно загрузить текстовый файл, который будет размечен, превращен в векторы встраивания и передан в модель, но, поскольку я использую два процесса, два процесса пытаются загрузить почти в тот же файл, поэтому я получаю ошибку ввода-вывода («Процесс не может получить доступ к файлу« [путь к файлу здесь] », поскольку он используется другим процессом.»).

Пожалуйста, как я могу правильно настроить эксперимент или написать свой учебный сценарий, чтобы избежать этого?

Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...