Udostępnij za pośrednictwem


Chainer Klasa

Reprezentuje narzędzie do szacowania na potrzeby trenowania w eksperymentach Chainer.

PRZESTARZAŁE. ScriptRunConfig Użyj obiektu z własnym zdefiniowanym środowiskiem lub jednym z nadzorowanych środowisk usługi Azure ML Chainer. Aby zapoznać się z wprowadzeniem do konfigurowania przebiegów eksperymentów za pomocą polecenia ScriptRunConfig, zobacz Konfigurowanie i przesyłanie przebiegów trenowania.

Obsługiwane wersje: 5.1.0, 7.0.0

Zainicjuj narzędzie do szacowania chainer.

Dziedziczenie
azureml.train.estimator._framework_base_estimator._FrameworkBaseEstimator
Chainer

Konstruktor

Chainer(source_directory, *, compute_target=None, vm_size=None, vm_priority=None, entry_script=None, script_params=None, node_count=1, process_count_per_node=1, distributed_backend=None, distributed_training=None, use_gpu=False, use_docker=True, custom_docker_base_image=None, custom_docker_image=None, image_registry_details=None, user_managed=False, conda_packages=None, pip_packages=None, conda_dependencies_file_path=None, pip_requirements_file_path=None, conda_dependencies_file=None, pip_requirements_file=None, environment_variables=None, environment_definition=None, inputs=None, source_directory_data_store=None, shm_size=None, resume_from=None, max_run_duration_seconds=None, framework_version=None, _enable_optimized_mode=False, _disable_validation=True, _show_lint_warnings=False, _show_package_warnings=False)

Parametry

Nazwa Opis
source_directory
Wymagane
str

Katalog lokalny zawierający pliki konfiguracji eksperymentu.

compute_target
Wymagane

Docelowy obiekt obliczeniowy, w którym nastąpi trenowanie. Może to być obiekt lub ciąg "local".

vm_size
Wymagane
str

Rozmiar maszyny wirtualnej docelowego obliczeniowego, który zostanie utworzony na potrzeby trenowania. Obsługiwane wartości: dowolny rozmiar maszyny wirtualnej platformy Azure.

vm_priority
Wymagane
str

Priorytet maszyny wirtualnej docelowego obliczeniowego, który zostanie utworzony na potrzeby trenowania. Jeśli nie zostanie określona, zostanie użyta wartość "dedykowana".

Obsługiwane wartości: "dedykowane" i "lowpriority".

Ma to zastosowanie tylko wtedy, gdy vm_size param element jest określony w danych wejściowych.

entry_script
Wymagane
str

Ścieżka względna do pliku zawierającego skrypt trenowania.

script_params
Wymagane

Słownik argumentów wiersza polecenia, który ma być przekazywany do skryptu szkoleniowego określonego w pliku entry_script.

node_count
Wymagane
int

Liczba węzłów w docelowym obiekcie obliczeniowym używanym do trenowania. Jeśli jest większe niż 1, zadanie rozproszone mpI zostanie uruchomione. Tylko element docelowy AmlCompute jest obsługiwany w przypadku zadań rozproszonych.

process_count_per_node
Wymagane
int

Liczba procesów na węzeł. Jeśli jest większe niż 1, zadanie rozproszone mpI zostanie uruchomione. Tylko element docelowy AmlCompute jest obsługiwany w przypadku zadań rozproszonych.

distributed_backend
Wymagane
str

Zaplecze komunikacji na potrzeby trenowania rozproszonego.

PRZESTARZAŁE. Użyj parametru distributed_training .

Obsługiwane wartości: "mpi".

"mpi": MPI/Horovod

Ten parametr jest wymagany, gdy node_count lub process_count_per_node> 1.

Gdy node_count == 1 i process_count_per_node == 1, nie będzie używane zaplecze, chyba że zaplecze jest jawnie ustawione. Tylko element docelowy AmlCompute jest obsługiwany w przypadku trenowania rozproszonego.

distributed_training
Wymagane
Mpi

Parametry uruchamiania rozproszonego zadania trenowania.

Aby uruchomić zadanie rozproszone z zapleczem MPI, użyj Mpi obiektu , aby określić process_count_per_node.

use_gpu
Wymagane

Określa, czy środowisko do uruchomienia eksperymentu powinno obsługiwać procesory GPU. Jeśli ma wartość true, domyślny obraz platformy Docker oparty na procesorze GPU będzie używany w środowisku. Jeśli wartość false, zostanie użyty obraz oparty na procesorze CPU. Domyślne obrazy platformy Docker (procesor CPU lub PROCESOR GPU) będą używane tylko wtedy, gdy custom_docker_image parametr nie jest ustawiony. To ustawienie jest używane tylko w obiektach docelowych obliczeniowych z obsługą platformy Docker.

use_docker
Wymagane

Określa, czy środowisko do uruchomienia eksperymentu powinno być oparte na platformie Docker.

custom_docker_base_image
Wymagane
str

Nazwa obrazu platformy Docker, z którego obraz do użycia do trenowania zostanie utworzony.

PRZESTARZAŁE. Użyj parametru custom_docker_image .

Jeśli nie zostanie ustawiony, zostanie użyty domyślny obraz oparty na procesorze CPU jako obraz podstawowy.

custom_docker_image
Wymagane
str

Nazwa obrazu platformy Docker, z którego obraz do użycia do trenowania zostanie utworzony. Jeśli nie zostanie ustawiony, zostanie użyty domyślny obraz oparty na procesorze CPU jako obraz podstawowy.

image_registry_details
Wymagane

Szczegóły rejestru obrazów platformy Docker.

user_managed
Wymagane

Określa, czy usługa Azure ML ponownie używa istniejącego środowiska języka Python. Jeśli wartość false, usługa Azure ML utworzy środowisko języka Python na podstawie specyfikacji zależności conda.

conda_packages
Wymagane

Lista ciągów reprezentujących pakiety conda do dodania do środowiska języka Python na potrzeby eksperymentu.

pip_packages
Wymagane

Lista ciągów reprezentujących pakiety pip do dodania do środowiska języka Python na potrzeby eksperymentu.

conda_dependencies_file_path
Wymagane
str

Ścieżka względna do pliku yaml zależności conda. Jeśli zostanie określony, usługa Azure ML nie zainstaluje żadnych pakietów powiązanych ze strukturą. PRZESTARZAŁE. Użyj parametru conda_dependencies_file .

pip_requirements_file_path
Wymagane
str

Ścieżka względna do pliku tekstowego wymagań pip. Można to podać w połączeniu z parametrem pip_packages . PRZESTARZAŁE. Użyj parametru pip_requirements_file .

conda_dependencies_file
Wymagane
str

Ścieżka względna do pliku yaml zależności conda. Jeśli zostanie określony, usługa Azure ML nie zainstaluje żadnych pakietów powiązanych ze strukturą.

pip_requirements_file
Wymagane
str

Ścieżka względna do pliku tekstowego wymagań pip. Można to podać w połączeniu z parametrem pip_packages .

environment_variables
Wymagane

Słownik nazw i wartości zmiennych środowiskowych. Te zmienne środowiskowe są ustawiane w procesie, w którym jest wykonywany skrypt użytkownika.

environment_definition
Wymagane

Definicja środowiska eksperymentu. Obejmuje ona zmienne środowiskowe PythonSection, DockerSection i Environment. Każda opcja środowiska nie jest bezpośrednio uwidaczniona za pośrednictwem innych parametrów do konstrukcji narzędzia do szacowania, można ustawić przy użyciu tego parametru. Jeśli ten parametr zostanie określony, będzie on mieć pierwszeństwo przed innymi parametrami powiązanymi ze środowiskiem, takimi jak use_gpu, , custom_docker_imageconda_packageslub pip_packages. Błędy zostaną zgłoszone w przypadku nieprawidłowych kombinacji.

inputs
Wymagane

Lista obiektów lubDatasetConsumptionConfig, DataReference które mają być używane jako dane wejściowe.

source_directory_data_store
Wymagane

Magazyn danych zaplecza dla udziału projektu.

shm_size
Wymagane
str

Rozmiar bloku pamięci udostępnionej kontenera platformy Docker. Jeśli nie zostanie ustawiona, zostanie użyta domyślna azureml.core.environment._DEFAULT_SHM_SIZE. Aby uzyskać więcej informacji, zobacz Dokumentacja uruchamiania platformy Docker.

resume_from
Wymagane

Ścieżka danych zawierająca pliki punktu kontrolnego lub modelu, z których ma być wznowione eksperyment.

max_run_duration_seconds
Wymagane
int

Maksymalny dozwolony czas przebiegu. Usługa Azure ML podejmie próbę automatycznego anulowania przebiegu, jeśli będzie to trwać dłużej niż ta wartość.

framework_version
Wymagane
str

Wersja łańcucha, która ma być używana do wykonywania kodu szkoleniowego. Chainer.get_supported_versions() Zwraca listę wersji obsługiwanych przez bieżący zestaw SDK.

source_directory
Wymagane
str

Katalog lokalny zawierający pliki konfiguracji eksperymentu.

compute_target
Wymagane

Docelowy obiekt obliczeniowy, w którym nastąpi trenowanie. Może to być obiekt lub ciąg "local".

vm_size
Wymagane
str

Rozmiar maszyny wirtualnej docelowego obliczeniowego, który zostanie utworzony na potrzeby trenowania. Obsługiwane wartości: dowolny rozmiar maszyny wirtualnej platformy Azure.

vm_priority
Wymagane
str

Priorytet maszyny wirtualnej docelowego obliczeniowego, który zostanie utworzony na potrzeby trenowania. Jeśli nie zostanie określona, zostanie ona domyślnie ustawiona na "dedykowaną".

Obsługiwane wartości: "dedykowane" i "lowpriority".

Ma to zastosowanie tylko wtedy, gdy parametr vm_size jest określony w danych wejściowych.

entry_script
Wymagane
str

Ścieżka względna do pliku zawierającego skrypt trenowania.

script_params
Wymagane

Słownik argumentów wiersza polecenia, który ma być przekazywany do skryptu szkoleniowego określonego w pliku entry_script.

node_count
Wymagane
int

Liczba węzłów w docelowym obiekcie obliczeniowym używanym do trenowania. Jeśli jest większe niż 1, zadanie rozproszone mpI zostanie uruchomione. Tylko element docelowy AmlCompute jest obsługiwany w przypadku zadań rozproszonych.

process_count_per_node
Wymagane
int

Liczba procesów na węzeł. Jeśli wartość jest większa niż 1, zostanie uruchomione zadanie rozproszone MPI. Tylko AmlCompute docelowy obiekt docelowy obliczeniowy jest obsługiwany w przypadku zadań rozproszonych.

distributed_backend
Wymagane
str

Zaplecze komunikacji na potrzeby trenowania rozproszonego.

PRZESTARZAŁE. Użyj parametru distributed_training .

Obsługiwane wartości: "mpi".

"mpi": MPI/Horovod

Ten parametr jest wymagany, gdy node_count wartość lub process_count_per_node> 1.

Gdy node_count == 1 i process_count_per_node == 1, nie będzie używane zaplecze, chyba że zaplecze jest jawnie ustawione. Tylko element docelowy AmlCompute jest obsługiwany w przypadku trenowania rozproszonego.

distributed_training
Wymagane
Mpi

Parametry uruchamiania rozproszonego zadania trenowania.

W przypadku uruchamiania zadania rozproszonego z zapleczem MPI użyj Mpi obiektu , aby określić element process_count_per_node.

use_gpu
Wymagane

Określa, czy środowisko do uruchomienia eksperymentu powinno obsługiwać procesory GPU. W przypadku wartości true domyślny obraz platformy Docker oparty na procesorze GPU będzie używany w środowisku. Jeśli wartość false, zostanie użyty obraz oparty na procesorze CPU. Domyślne obrazy platformy Docker (procesor CPU lub procesor GPU) będą używane tylko wtedy, gdy custom_docker_image parametr nie zostanie ustawiony. To ustawienie jest używane tylko w docelowych obiektach obliczeniowych z obsługą platformy Docker.

use_docker
Wymagane

Określa, czy środowisko do uruchomienia eksperymentu powinno być oparte na platformie Docker.

custom_docker_base_image
Wymagane
str

Nazwa obrazu platformy Docker, z którego obraz do użycia do trenowania zostanie skompilowany.

PRZESTARZAŁE. Użyj parametru custom_docker_image .

Jeśli nie zostanie ustawiony, domyślny obraz oparty na procesorze CPU będzie używany jako obraz podstawowy.

custom_docker_image
Wymagane
str

Nazwa obrazu platformy Docker, z którego obraz do użycia do trenowania zostanie skompilowany. Jeśli nie zostanie ustawiony, domyślny obraz oparty na procesorze CPU będzie używany jako obraz podstawowy.

image_registry_details
Wymagane

Szczegóły rejestru obrazów platformy Docker.

user_managed
Wymagane

Określa, czy usługa Azure ML ponownie używa istniejącego środowiska języka Python. Jeśli wartość false, usługa Azure ML utworzy środowisko języka Python na podstawie specyfikacji zależności conda.

conda_packages
Wymagane

Lista ciągów reprezentujących pakiety Conda do dodania do środowiska języka Python na potrzeby eksperymentu.

pip_packages
Wymagane

Lista ciągów reprezentujących pakiety pip do dodania do środowiska języka Python na potrzeby eksperymentu.

conda_dependencies_file_path
Wymagane
str

Ścieżka względna do pliku yaml zależności conda. Jeśli zostanie określony, usługa Azure ML nie zainstaluje żadnych pakietów powiązanych ze strukturą. PRZESTARZAŁE. Użyj parametru conda_dependencies_file .

pip_requirements_file_path
Wymagane
str

Ścieżka względna do pliku tekstowego wymagań pip. Można to podać w połączeniu z parametrem pip_packages . PRZESTARZAŁE. Użyj parametru pip_requirements_file .

conda_dependencies_file
Wymagane
str

Ścieżka względna do pliku yaml zależności conda. Jeśli zostanie określony, usługa Azure ML nie zainstaluje żadnych pakietów powiązanych ze strukturą.

pip_requirements_file
Wymagane
str

Ścieżka względna do pliku tekstowego wymagań pip. Można to podać w połączeniu z parametrem pip_packages .

environment_variables
Wymagane

Słownik nazw i wartości zmiennych środowiskowych. Te zmienne środowiskowe są ustawiane w procesie wykonywania skryptu użytkownika.

environment_definition
Wymagane

Definicja środowiska dla eksperymentu. Obejmuje ona zmienne środowiskowe PythonSection, DockerSection i . Za pomocą tego parametru można ustawić opcję środowiska, która nie jest bezpośrednio widoczna za pośrednictwem innych parametrów konstrukcji narzędzia do szacowania. Jeśli ten parametr zostanie określony, pierwszeństwo będzie mieć inne parametry związane ze środowiskiem, takie jak use_gpu, custom_docker_image, conda_packageslub pip_packages. Błędy będą zgłaszane w przypadku nieprawidłowych kombinacji.

inputs
Wymagane

Lista azureml.data.data_reference. Obiekty DataReference do użycia jako dane wejściowe.

source_directory_data_store
Wymagane

Magazyn danych kopii zapasowej dla udziału projektu.

shm_size
Wymagane
str

Rozmiar bloku pamięci udostępnionej kontenera platformy Docker. Jeśli nie zostanie ustawiona, zostanie użyta domyślna azureml.core.environment._DEFAULT_SHM_SIZE. Aby uzyskać więcej informacji, zobacz Dokumentacja uruchamiania platformy Docker.

resume_from
Wymagane

Ścieżka danych zawierająca pliki punktu kontrolnego lub modelu, z których ma być wznowione eksperyment.

max_run_duration_seconds
Wymagane
int

Maksymalny dozwolony czas dla przebiegu. Usługa Azure ML podejmie próbę automatycznego anulowania przebiegu, jeśli trwa dłużej niż ta wartość.

framework_version
Wymagane
str

Wersja chainer, która ma być używana do wykonywania kodu szkoleniowego. Chainer.get_supported_versions() Zwraca listę wersji obsługiwanych przez bieżący zestaw SDK.

_enable_optimized_mode
Wymagane

Włącz kompilację środowiska przyrostowego za pomocą wstępnie utworzonych obrazów platformy w celu szybszego przygotowania środowiska. Wstępnie utworzony obraz struktury jest oparty na domyślnych obrazach podstawowych procesora CPU/procesora GPU usługi Azure ML ze wstępnie zainstalowanymi zależnościami platformy.

_disable_validation
Wymagane

Wyłącz walidację skryptu przed przesłaniem. Wartość domyślna to True.

_show_lint_warnings
Wymagane

Pokaż ostrzeżenia dotyczące lintingu skryptu. Wartość domyślna to False.

_show_package_warnings
Wymagane

Pokaż ostrzeżenia dotyczące walidacji pakietu. Wartość domyślna to False.

Uwagi

Podczas przesyłania zadania trenowania usługa Azure ML uruchamia skrypt w środowisku conda w kontenerze platformy Docker. Kontenery chainer mają zainstalowane następujące zależności.

Zależności | Chainer 5.1.0 | Chainer 7.0.0 | —————————- | —————– | ————— | Python | 3.6.2 | 3.6.2 | CUDA (tylko obraz gpu) | 9.0 | 9.0 | cuDNN (tylko obraz procesora GPU) | 7.6.3 | 7.6.3 | NCCL (tylko obraz gpu) | 2.4.8 | 2.4.8 | azureml-defaults | Najnowsze | Najnowsze | IntelMpi | 2018.3.222 | 2018.3.222 | horovod | 0.15.2 | 0.15.2 | miniconda | 4.5.11 | 4.5.11 | chainer | 5.1.0 | 7.0.0 | cupy-cuda90 (tylko obraz gpu) | 5.2.0 | 7.0.0 | git | 2.7.4 | 2.7.4 |

Obrazy platformy Docker rozszerzają system Ubuntu 16.04.

Aby zainstalować dodatkowe zależności, możesz użyć parametru pip_packages lub conda_packages . Możesz też określić pip_requirements_file parametr lub conda_dependencies_file . Alternatywnie możesz utworzyć własny obraz i przekazać custom_docker_image parametr do konstruktora narzędzia do szacowania.

Aby uzyskać więcej informacji na temat kontenerów platformy Docker używanych w trenowaniu usługi Chainer, zobacz https://github.com/Azure/AzureML-Containers.

Atrybuty

DEFAULT_VERSION

DEFAULT_VERSION = '5.1.0'

FRAMEWORK_NAME

FRAMEWORK_NAME = 'Chainer'