TensorFlow Klas

Vertegenwoordigt een estimator voor training in TensorFlow-experimenten.

AFGEKEURD. Gebruik het ScriptRunConfig object met uw eigen gedefinieerde omgeving of een van de gecureerde Azure ML TensorFlow-omgevingen. Zie TensorFlow-modellen op schaal trainen met Azure Machine Learning voor een inleiding tot het configureren van TensorFlow-experimentuitvoeringen met ScriptRunConfig.

Ondersteunde versies: 1.10, 1.12, 1.13, 2.0, 2.1, 2.2

Initialiseer een TensorFlow-estimator.

Docker-uitvoeringsreferentie. :type shm_size: str :p aram resume_from: het gegevenspad met de controlepunt- of modelbestanden van waaruit het experiment moet worden hervat. :type resume_from: azureml.data.datapath.DataPath :p aram max_run_duration_seconds: De maximaal toegestane tijd voor de uitvoering. Azure ML probeert dit automatisch te doen

de uitvoering annuleren als deze langer duurt dan deze waarde.

Overname
azureml.train.estimator._framework_base_estimator._FrameworkBaseEstimator
TensorFlow

Constructor

TensorFlow(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, worker_count=1, parameter_server_count=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)

Parameters

source_directory
str
Vereist

Een lokale map met experimentconfiguratiebestanden.

compute_target
AbstractComputeTarget of str
Vereist

Het rekendoel waar de training plaatsvindt. Dit kan een object of de tekenreeks 'lokaal' zijn.

vm_size
str
Vereist

De VM-grootte van het rekendoel dat voor de training wordt gemaakt. Ondersteunde waarden: elke grootte van azure-VM's.

vm_priority
str
Vereist

De VM-prioriteit van het rekendoel dat voor de training wordt gemaakt. Als dit niet is opgegeven, wordt 'dedicated' gebruikt.

Ondersteunde waarden:'dedicated' en 'lowpriority'.

Dit wordt alleen van kracht wanneer de vm_size param is opgegeven in de invoer.

entry_script
str
Vereist

Het relatieve pad naar het bestand met het trainingsscript.

script_params
dict
Vereist

Een woordenlijst met opdrachtregelargumenten die moeten worden doorgegeven aan het trainingsscript dat is opgegeven in entry_script.

node_count
int
Vereist

Het aantal knooppunten in het rekendoel dat voor de training wordt gebruikt. Alleen het AmlCompute doel wordt ondersteund voor gedistribueerde training (node_count> 1).

process_count_per_node
int
Vereist

Wanneer u MPI gebruikt, het aantal processen per knooppunt.

worker_count
int
Vereist

Wanneer u parameterserver gebruikt voor gedistribueerde training, het aantal werkknooppunten.

AFGEKEURD. Geef op als onderdeel van de distributed_training parameter.

parameter_server_count
int
Vereist

Wanneer u parameterserver gebruikt voor gedistribueerde training, het aantal parameterserverknooppunten.

distributed_backend
str
Vereist

De communicatie-back-end voor gedistribueerde training.

AFGEKEURD. Gebruik de distributed_training parameter .

Ondersteunde waarden: 'mpi' en 'ps'. 'mpi' staat voor MPI/Horovod en 'ps' voor Parameter Server.

Deze parameter is vereist wanneer een van node_count, process_count_per_node, worker_countof parameter_server_count> 1. In het geval van 'ps' moet de som van worker_count en parameter_server_count kleiner zijn dan of gelijk zijn aan node_count * (aantal CPU's of GPU's per knooppunt)

Wanneer node_count == 1 en process_count_per_node == 1, wordt er geen back-end gebruikt, tenzij de back-end expliciet is ingesteld. Alleen het AmlCompute doel wordt ondersteund voor gedistribueerde training.

distributed_training
ParameterServer of Mpi
Vereist

Parameters voor het uitvoeren van een gedistribueerde trainingstaak.

Voor het uitvoeren van een gedistribueerde taak met parameterserverback-end gebruikt u het ParameterServer -object om en parameter_server_countop te gevenworker_count. De som van de worker_countparameter_server_count parameters en moet kleiner dan of gelijk zijn aan node_count * (het aantal CPU's of GPU's per knooppunt).

Voor het uitvoeren van een gedistribueerde taak met MPI-back-end gebruikt u het Mpi -object om op te geven process_count_per_node.

use_gpu
bool
Vereist

Hiermee geeft u op of de omgeving om het experiment uit te voeren GPU's moet ondersteunen. Als dit waar is, wordt in de omgeving een standaard docker-installatiekopieën op basis van gpu gebruikt. Als onwaar is, wordt een op CPU gebaseerde installatiekopieën gebruikt. Standaard docker-installatiekopieën (CPU of GPU) worden alleen gebruikt als de custom_docker_image parameter niet is ingesteld. Deze instelling wordt alleen gebruikt in Docker-rekendoelen.

use_docker
bool
Vereist

Hiermee geeft u op of de omgeving waarin het experiment moet worden uitgevoerd docker-gebaseerd moet zijn.

custom_docker_base_image
str
Vereist

De naam van de Docker-installatiekopieën van waaruit de installatiekopieën voor training worden gemaakt.

AFGEKEURD. Gebruik de custom_docker_image parameter .

Als dit niet is ingesteld, wordt een standaard-CPU-installatiekopieën gebruikt als basisinstallatiekopieën.

custom_docker_image
str
Vereist

De naam van de Docker-installatiekopieën van waaruit de installatiekopieën voor training worden gemaakt. Als dit niet is ingesteld, wordt een standaard-CPU-installatiekopieën gebruikt als basisinstallatiekopieën.

image_registry_details
ContainerRegistry
Vereist

De details van het register van de Docker-installatiekopieën.

user_managed
bool
Vereist

Hiermee geeft u op of Azure ML een bestaande Python-omgeving opnieuw gebruikt. Indien onwaar, maakt Azure ML een Python-omgeving op basis van de specificatie conda-afhankelijkheden.

conda_packages
list
Vereist

Een lijst met tekenreeksen die conda-pakketten vertegenwoordigen die moeten worden toegevoegd aan de Python-omgeving voor het experiment.

pip_packages
list
Vereist

Een lijst met tekenreeksen die pip-pakketten vertegenwoordigen die moeten worden toegevoegd aan de Python-omgeving voor het experiment.

conda_dependencies_file_path
str
Vereist

Een tekenreeks die het relatieve pad naar het yaml-bestand conda-afhankelijkheden vertegenwoordigt. Indien opgegeven, installeert Azure ML geen framework-gerelateerde pakketten. AFGEKEURD. Gebruik de conda_dependencies_file parameter .

pip_requirements_file_path
str
Vereist

Een tekenreeks die het relatieve pad naar het tekstbestand pip-vereisten vertegenwoordigt. Dit kan worden opgegeven in combinatie met de pip_packages parameter . AFGEKEURD. Gebruik de pip_requirements_file parameter .

conda_dependencies_file
str
Vereist

Een tekenreeks die het relatieve pad naar het yaml-bestand conda-afhankelijkheden vertegenwoordigt. Indien opgegeven, installeert Azure ML geen framework-gerelateerde pakketten.

pip_requirements_file
str
Vereist

Een tekenreeks die het relatieve pad naar het tekstbestand pip-vereisten vertegenwoordigt. Dit kan worden opgegeven in combinatie met de pip_packages parameter .

environment_variables
dict
Vereist

Een woordenlijst met namen en waarden van omgevingsvariabelen. Deze omgevingsvariabelen worden ingesteld voor het proces waarin het gebruikersscript wordt uitgevoerd.

environment_definition
Environment
Vereist

De omgevingsdefinitie voor het experiment. Het omvat PythonSection, DockerSection en omgevingsvariabelen. Elke omgevingsoptie die niet rechtstreeks via andere parameters aan de Estimator-constructie wordt weergegeven, kan worden ingesteld met behulp van deze parameter. Als deze parameter is opgegeven, heeft deze voorrang op andere omgevingsgerelateerde parameters, zoals use_gpu, custom_docker_image, conda_packagesof pip_packages. Fouten worden gerapporteerd voor deze ongeldige combinaties.

inputs
list
Vereist

Een lijst met DataReferenceDatasetConsumptionConfig of-objecten die als invoer moeten worden gebruikt.

source_directory_data_store
Datastore
Vereist

Het back-upgegevensarchief voor projectshare.

shm_size
str
Vereist

De grootte van het gedeelde geheugenblok van de Docker-container. Als dit niet is ingesteld, wordt de standaard azureml.core.environment._DEFAULT_SHM_SIZE gebruikt. Zie Naslaginformatie over Docker-uitvoering voor meer informatie.

resume_from
DataPath
Vereist

Het gegevenspad met het controlepunt of de modelbestanden van waaruit het experiment moet worden hervat.

max_run_duration_seconds
int
Vereist

De maximaal toegestane tijd voor de uitvoering. Azure ML probeert de uitvoering automatisch te annuleren als deze langer duurt dan deze waarde.

framework_version
str
Vereist

De TensorFlow-versie die moet worden gebruikt voor het uitvoeren van trainingscode. Als er geen versie wordt opgegeven, wordt de estimator standaard ingesteld op de nieuwste versie die wordt ondersteund door Azure ML. Gebruik TensorFlow.get_supported_versions() om een lijst te retourneren om een lijst op te halen met alle versies die de huidige Azure ML SDK ondersteunen.

source_directory
str
Vereist

Een lokale map met experimentconfiguratiebestanden.

compute_target
AbstractComputeTarget of str
Vereist

Het rekendoel waar de training plaatsvindt. Dit kan een object of de tekenreeks 'lokaal' zijn.

vm_size
str
Vereist

De VM-grootte van het rekendoel dat voor de training wordt gemaakt. Ondersteunde waarden: elke grootte van azure-VM's.

vm_priority
str
Vereist

De VM-prioriteit van het rekendoel dat voor de training wordt gemaakt. Als dit niet is opgegeven, wordt 'dedicated' gebruikt.

Ondersteunde waarden:'dedicated' en 'lowpriority'.

Dit wordt alleen van kracht wanneer de vm_size param is opgegeven in de invoer.

entry_script
str
Vereist

Het relatieve pad naar het bestand met het trainingsscript.

script_params
dict
Vereist

Een woordenlijst met opdrachtregelargumenten die moeten worden doorgegeven aan het trainingsscript dat is opgegeven in entry_script.

node_count
int
Vereist

Het aantal knooppunten in het rekendoel dat voor de training wordt gebruikt. Alleen het AmlCompute doel wordt ondersteund voor gedistribueerde training (node_count> 1).

process_count_per_node
int
Vereist

Wanneer u MPI gebruikt, het aantal processen per knooppunt.

worker_count
int
Vereist

Wanneer u parameterserver gebruikt, het aantal werkknooppunten.

AFGEKEURD. Geef op als onderdeel van de distributed_training parameter.

parameter_server_count
int
Vereist

Wanneer u parameterserver gebruikt, het aantal parameterserverknooppunten.

distributed_backend
str
Vereist

De communicatie-back-end voor gedistribueerde training.

AFGEKEURD. Gebruik de distributed_training parameter .

Ondersteunde waarden: 'mpi' en 'ps'. 'mpi' staat voor MPI/Horovod en 'ps' voor Parameter Server.

Deze parameter is vereist wanneer een van node_count, process_count_per_node, worker_countof parameter_server_count> 1. In het geval van 'ps' moet de som van worker_count en parameter_server_count kleiner zijn dan of gelijk zijn aan node_count * (aantal CPU's of GPU's per knooppunt)

Wanneer node_count == 1 en process_count_per_node == 1, wordt er geen back-end gebruikt, tenzij de back-end expliciet is ingesteld. Alleen het AmlCompute doel wordt ondersteund voor gedistribueerde training. wordt ondersteund voor gedistribueerde training.

distributed_training
ParameterServer of Mpi
Vereist

Parameters voor het uitvoeren van een gedistribueerde trainingstaak.

Voor het uitvoeren van een gedistribueerde taak met de parameterserverback-end gebruikt ParameterServer u object om en parameter_server_countop te gevenworker_count. De som van de worker_countparameter_server_count parameters en moet kleiner dan of gelijk zijn aan node_count * (het aantal CPU's of GPU's per knooppunt).

Voor het uitvoeren van een gedistribueerde taak met MPI-back-end gebruikt Mpi u object om op te geven process_count_per_node.

use_gpu
bool
Vereist

Hiermee geeft u op of de omgeving om het experiment uit te voeren GPU's moet ondersteunen. Als dit waar is, wordt in de omgeving een standaard Docker-installatiekopieën op basis van een GPU gebruikt. Als onwaar is, wordt een op CPU gebaseerde installatiekopieën gebruikt. Standaard docker-installatiekopieën (CPU of GPU) worden alleen gebruikt als custom_docker_image de parameter niet is ingesteld. Deze instelling wordt alleen gebruikt in Docker-rekendoelen.

use_docker
bool
Vereist

Hiermee geeft u op of de omgeving waarin het experiment moet worden uitgevoerd docker-gebaseerd moet zijn.

custom_docker_base_image
str
Vereist

De naam van de Docker-installatiekopieën van waaruit de installatiekopieën voor training worden gemaakt.

AFGEKEURD. Gebruik de custom_docker_image parameter .

Als dit niet is ingesteld, wordt een standaard-CPU-installatiekopieën gebruikt als basisinstallatiekopieën.

custom_docker_image
str
Vereist

De naam van de Docker-installatiekopieën van waaruit de installatiekopieën voor training worden gemaakt. Als dit niet is ingesteld, wordt een standaard-CPU-installatiekopieën gebruikt als basisinstallatiekopieën.

image_registry_details
ContainerRegistry
Vereist

De details van het register van de Docker-installatiekopieën.

user_managed
bool
Vereist

Hiermee geeft u op of Azure ML een bestaande Python-omgeving opnieuw gebruikt. Indien onwaar, maakt Azure ML een Python-omgeving op basis van de specificatie conda-afhankelijkheden.

conda_packages
list
Vereist

Een lijst met tekenreeksen die conda-pakketten vertegenwoordigen die moeten worden toegevoegd aan de Python-omgeving voor het experiment.

pip_packages
list
Vereist

Een lijst met tekenreeksen die pip-pakketten vertegenwoordigen die moeten worden toegevoegd aan de Python-omgeving voor het experiment.

conda_dependencies_file_path
str
Vereist

Het relatieve pad naar het yaml-bestand conda-afhankelijkheden. Indien opgegeven, installeert Azure ML geen framework-gerelateerde pakketten. AFGEKEURD. Gebruik de conda_dependencies_file parameter .

pip_requirements_file_path
str
Vereist

Het relatieve pad naar het tekstbestand pip-vereisten. Dit kan worden opgegeven in combinatie met de pip_packages parameter . AFGEKEURD. Gebruik de pip_requirements_file parameter .

environment_variables
dict
Vereist

Een woordenlijst met namen en waarden van omgevingsvariabelen. Deze omgevingsvariabelen worden ingesteld voor het proces waarin het gebruikersscript wordt uitgevoerd.

conda_dependencies_file
str
Vereist

Een tekenreeks die het relatieve pad naar het yaml-bestand conda-afhankelijkheden vertegenwoordigt. Indien opgegeven, installeert Azure ML geen framework-gerelateerde pakketten.

pip_requirements_file
str
Vereist

Het relatieve pad naar het tekstbestand pip-vereisten. Dit kan worden opgegeven in combinatie met de pip_packages parameter .

environment_variables
Vereist

Een woordenlijst met namen en waarden van omgevingsvariabelen. Deze omgevingsvariabelen worden ingesteld voor het proces waarin het gebruikersscript wordt uitgevoerd.

environment_definition
Environment
Vereist

De omgevingsdefinitie voor het experiment. Het omvat PythonSection, DockerSection en omgevingsvariabelen. Elke omgevingsoptie die niet rechtstreeks via andere parameters aan de Estimator-constructie wordt weergegeven, kan worden ingesteld met behulp van deze parameter. Als deze parameter is opgegeven, heeft deze voorrang op andere omgevingsgerelateerde parameters, zoals use_gpu, custom_docker_image, conda_packagesof pip_packages. Fouten worden gerapporteerd voor deze ongeldige combinaties.

inputs
list
Vereist

Een lijst met azureml.data.data_reference. DataReference-objecten die als invoer moeten worden gebruikt.

source_directory_data_store
str
Vereist

Het back-upgegevensarchief voor projectshare.

shm_size
Vereist

De grootte van het gedeelde geheugenblok van de Docker-container. Als dit niet is ingesteld, wordt de standaardwaarde azureml.core.environment._DEFAULT_SHM_SIZE. Zie voor meer informatie

framework_version
str
Vereist

De TensorFlow-versie die moet worden gebruikt voor het uitvoeren van trainingscode. Als er geen versie wordt opgegeven, wordt de estimator standaard ingesteld op de nieuwste versie die wordt ondersteund door Azure ML. Gebruik TensorFlow.get_supported_versions() om een lijst te retourneren om een lijst op te halen met alle versies die de huidige Azure ML SDK ondersteunen.

_enable_optimized_mode
bool
Vereist

Incrementele omgevingsbuild inschakelen met vooraf gebouwde frameworkinstallatiekopieën voor een snellere voorbereiding van de omgeving. Een vooraf gebouwde frameworkinstallatiekopieën zijn gebouwd op basisinstallatiekopieën van Azure ML met standaard CPU-/GPU-basisinstallatiekopieën met vooraf geïnstalleerde frameworkafhankelijkheden.

_disable_validation
bool
Vereist

Schakel scriptvalidatie uit voordat u de verzending uitvoert. De standaardwaarde is True.

_show_lint_warnings
bool
Vereist

Waarschuwingen voor linting van scripts weergeven. De standaardwaarde is False.

_show_package_warnings
bool
Vereist

Waarschuwingen voor pakketvalidatie weergeven. De standaardwaarde is False.

Opmerkingen

Wanneer u een trainingstaak indient, voert Azure ML uw script uit in een Conda-omgeving binnen een Docker-container. Voor de TensorFlow-containers zijn de volgende afhankelijkheden geïnstalleerd.

Afhankelijkheden | TensorFlow 1.10/1.12 | TensorFlow 1,13 | TF 2.0/2.1/2.2 | ———————————— | ——————– | ————— | —————— | Python | 3.6.2 | 3.6.2 | 3.6.2 | CUDA (alleen GPU-installatiekopie) | 9,0 | 10,0 | 10,0 | cuDNN (alleen GPU-installatiekopieën) | 7.6.3 | 7.6.3 | 7.6.3 | NCCL (alleen GPU-installatiekopieën) | 2.4.8 | 2.4.8 | 2.4.8 | azureml-defaults | Meest recente | Meest recente | Meest recente | azureml-dataset-runtime[fuse,pandas] | Meest recente | Meest recente | Meest recente | IntelMpi | 2018.3.222 | 2018.3.222 | —- | OpenMpi | —- | —- | 3.1.2 | horovod | 0.15.2 | 0.16.1 | 0.18.1/0.19.1/0.19.5 | miniconda | 4.5.11 | 4.5.11 | 4.5.11 | tensorflow | 1.10.0/1.12.0 | 1.13.1 | 2.0.0/2.1.0/2.2.0 | git | 2.7.4 | 2.7.4 | 2.7.4 |

De v1 Docker-installatiekopieën breiden Ubuntu 16.04 uit. De v2 Docker-installatiekopieën breiden Ubuntu 18.04 uit.

Als u aanvullende afhankelijkheden wilt installeren, kunt u de pip_packages parameter of conda_packages gebruiken. U kunt ook de pip_requirements_file parameter of conda_dependencies_file opgeven. U kunt ook uw eigen installatiekopieën bouwen en de custom_docker_image parameter doorgeven aan de estimator-constructor.

Zie voor meer informatie over Docker-containers die worden gebruikt in TensorFlow-training https://github.com/Azure/AzureML-Containers.

De TensorFlow-klasse ondersteunt twee methoden voor gedistribueerde training:

Zie de zelfstudie TensorFlow-modellen op schaal trainen en registreren met Azure Machine Learning voor voorbeelden en meer informatie over het gebruik van TensorFlow in gedistribueerde training.

Kenmerken

DEFAULT_VERSION

DEFAULT_VERSION = '1.13'

FRAMEWORK_NAME

FRAMEWORK_NAME = 'TensorFlow'