TensorFlow Classe
Representa um avaliador para preparação em experimentações do TensorFlow.
PRETERIDO. Utilize o objeto com o ScriptRunConfig seu próprio ambiente definido ou um dos ambientes organizados do TensorFlow do Azure ML. Para obter uma introdução à configuração das execuções de experimentação do TensorFlow com ScriptRunConfig, veja Preparar modelos do TensorFlow em escala com o Azure Machine Learning.
Versões suportadas: 1.10, 1.12, 1.13, 2.0, 2.1, 2.2
Inicialize um avaliador do TensorFlow.
Referência de execução do Docker. :type shm_size: str :p aram resume_from: o caminho de dados que contém o ponto de verificação ou os ficheiros de modelo a partir dos quais pretende retomar a experimentação. :type resume_from: azureml.data.datapath.DataPath :p aram max_run_duration_seconds: O tempo máximo permitido para a execução. O Azure ML tentará automaticamente
cancele a execução se demorar mais tempo do que este valor.
- Herança
-
azureml.train.estimator._framework_base_estimator._FrameworkBaseEstimatorTensorFlow
Construtor
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)
Parâmetros
Name | Description |
---|---|
source_directory
Necessário
|
Um diretório local que contém ficheiros de configuração de experimentação. |
compute_target
Necessário
|
O destino de computação onde a preparação vai acontecer. Pode ser um objeto ou a cadeia "local". |
vm_size
Necessário
|
O tamanho da VM do destino de computação que será criado para a preparação. Valores suportados: qualquer tamanho de VM do Azure. |
vm_priority
Necessário
|
A prioridade da VM do destino de computação que será criado para a preparação. Se não for especificado, é utilizado "dedicado". Valores suportados:"dedicado" e "lowpriority". Isto só entra em vigor quando o |
entry_script
Necessário
|
O caminho relativo para o ficheiro que contém o script de preparação. |
script_params
Necessário
|
Um dicionário de argumentos da linha de comandos para passar para o script de preparação especificado em |
node_count
Necessário
|
O número de nós no destino de computação utilizado para a preparação. Apenas o AmlCompute destino é suportado para preparação distribuída ( |
process_count_per_node
Necessário
|
Ao utilizar o MPI, o número de processos por nó. |
worker_count
Necessário
|
Ao utilizar o Servidor de Parâmetros para preparação distribuída, o número de nós de trabalho. PRETERIDO. Especifique como parte do |
parameter_server_count
Necessário
|
Ao utilizar o Servidor de Parâmetros para preparação distribuída, o número de nós do servidor de parâmetros. |
distributed_backend
Necessário
|
O back-end de comunicação para formação distribuída. PRETERIDO. Utilize o Valores suportados: "mpi" e "ps". "mpi" representa MPI/Horovod e "ps" representa o Servidor de Parâmetros. Este parâmetro é necessário quando qualquer um dos Quando |
distributed_training
Necessário
|
Parâmetros para executar uma tarefa de preparação distribuída. Para executar uma tarefa distribuída com o back-end do Parameter Server, utilize o ParameterServer objeto para especificar Para executar uma tarefa distribuída com o back-end MPI, utilize o Mpi objeto para especificar |
use_gpu
Necessário
|
Especifica se o ambiente para executar a experimentação deve suportar GPUs.
Se for verdade, será utilizada uma imagem de docker predefinida baseada em GPU no ambiente. Se for falso, será utilizada uma imagem baseada na CPU. As imagens predefinidas do docker (CPU ou GPU) só serão utilizadas se o |
use_docker
Necessário
|
Especifica se o ambiente para executar a experimentação deve ser baseado no Docker. |
custom_docker_base_image
Necessário
|
Será criado o nome da imagem do Docker a partir da qual será criada a imagem a utilizar para preparação. PRETERIDO. Utilize o Se não estiver definida, será utilizada uma imagem baseada na CPU predefinida como imagem base. |
custom_docker_image
Necessário
|
Será criado o nome da imagem do Docker a partir da qual será criada a imagem a utilizar para preparação. Se não estiver definida, será utilizada uma imagem baseada na CPU predefinida como imagem base. |
image_registry_details
Necessário
|
Os detalhes do registo de imagens do Docker. |
user_managed
Necessário
|
Especifica se o Azure ML reutiliza um ambiente python existente. Se for falso, o Azure ML criará um ambiente Python com base na especificação de dependências de conda. |
conda_packages
Necessário
|
Uma lista de cadeias que representam pacotes conda a serem adicionados ao ambiente python para a experimentação. |
pip_packages
Necessário
|
Uma lista de cadeias que representam pacotes pip a serem adicionados ao ambiente python para a experimentação. |
conda_dependencies_file_path
Necessário
|
Uma cadeia que representa o caminho relativo para o ficheiro yaml de dependências de conda.
Se especificado, o Azure ML não instalará pacotes relacionados com a arquitetura.
PRETERIDO. Utilize o |
pip_requirements_file_path
Necessário
|
Uma cadeia que representa o caminho relativo para o ficheiro de texto dos requisitos pip.
Isto pode ser fornecido em combinação com o |
conda_dependencies_file
Necessário
|
Uma cadeia que representa o caminho relativo para o ficheiro yaml de dependências de conda. Se especificado, o Azure ML não instalará pacotes relacionados com a arquitetura. |
pip_requirements_file
Necessário
|
Uma cadeia que representa o caminho relativo para o ficheiro de texto dos requisitos pip.
Isto pode ser fornecido em combinação com o |
environment_variables
Necessário
|
Um dicionário de nomes e valores de variáveis de ambiente. Estas variáveis de ambiente são definidas no processo em que o script de utilizador está a ser executado. |
environment_definition
Necessário
|
A definição de ambiente para a experimentação. Inclui PythonSection, DockerSection e variáveis de ambiente. Qualquer opção de ambiente não exposta diretamente através de outros parâmetros para a construção do Avaliador pode ser definida com este parâmetro. Se este parâmetro for especificado, terá precedência sobre outros parâmetros relacionados com o ambiente, como |
inputs
Necessário
|
Uma lista de DataReference objetos ou DatasetConsumptionConfig para utilizar como entrada. |
source_directory_data_store
Necessário
|
O arquivo de dados de cópia de segurança da partilha de projetos. |
shm_size
Necessário
|
O tamanho do bloco de memória partilhado do contentor do Docker. Se não estiver definido, é utilizada a azureml.core.environment._DEFAULT_SHM_SIZE predefinida. Para obter mais informações, veja Referência de execução do Docker. |
resume_from
Necessário
|
O caminho de dados que contém o ponto de verificação ou os ficheiros de modelo a partir dos quais pretende retomar a experimentação. |
max_run_duration_seconds
Necessário
|
O tempo máximo permitido para a execução. O Azure ML tentará cancelar automaticamente a execução se demorar mais tempo do que este valor. |
framework_version
Necessário
|
A versão do TensorFlow a ser utilizada para executar o código de preparação.
Se não for fornecida nenhuma versão, o avaliador irá predefinir a versão mais recente suportada pelo Azure ML.
Utilize |
source_directory
Necessário
|
Um diretório local que contém ficheiros de configuração de experimentação. |
compute_target
Necessário
|
O destino de computação onde a preparação vai acontecer. Pode ser um objeto ou a cadeia "local". |
vm_size
Necessário
|
O tamanho da VM do destino de computação que será criado para a preparação. Valores suportados: qualquer tamanho de VM do Azure. |
vm_priority
Necessário
|
A prioridade da VM do destino de computação que será criado para a preparação. Se não for especificado, é utilizado "dedicado". Valores suportados:"dedicado" e "lowpriority". Isto só entra em vigor quando o |
entry_script
Necessário
|
O caminho relativo para o ficheiro que contém o script de preparação. |
script_params
Necessário
|
Um dicionário de argumentos da linha de comandos para passar para o script de preparação de tne especificado em |
node_count
Necessário
|
O número de nós no destino de computação utilizado para a preparação. Apenas o AmlCompute destino é suportado para preparação distribuída ( |
process_count_per_node
Necessário
|
Ao utilizar o MPI, o número de processos por nó. |
worker_count
Necessário
|
Ao utilizar o Servidor de Parâmetros, o número de nós de trabalho. PRETERIDO. Especifique como parte do |
parameter_server_count
Necessário
|
Ao utilizar o Servidor de Parâmetros, o número de nós do servidor de parâmetros. |
distributed_backend
Necessário
|
O back-end de comunicação para formação distribuída. PRETERIDO. Utilize o Valores suportados: "mpi" e "ps". "mpi" representa MPI/Horovod e "ps" representa o Servidor de Parâmetros. Este parâmetro é necessário quando qualquer um dos Quando |
distributed_training
Necessário
|
Parâmetros para executar uma tarefa de preparação distribuída. Para executar uma tarefa distribuída com o back-end do Servidor de Parâmetros, utilize ParameterServer o objeto para especificar Para executar uma tarefa distribuída com back-end MPI, utilize Mpi o objeto para especificar |
use_gpu
Necessário
|
Especifica se o ambiente para executar a experimentação deve suportar GPUs.
Se for verdade, será utilizada uma imagem predefinida do Docker baseada em GPU no ambiente. Se for falso, será utilizada uma imagem baseada na CPU. As imagens predefinidas do docker (CPU ou GPU) só serão utilizadas se |
use_docker
Necessário
|
Especifica se o ambiente para executar a experimentação deve ser baseado no Docker. |
custom_docker_base_image
Necessário
|
Será criado o nome da imagem do Docker a partir da qual será criada a imagem a utilizar para preparação. PRETERIDO. Utilize o Se não estiver definida, será utilizada uma imagem baseada na CPU predefinida como imagem base. |
custom_docker_image
Necessário
|
Será criado o nome da imagem do Docker a partir da qual será criada a imagem a utilizar para preparação. Se não estiver definida, será utilizada uma imagem baseada na CPU predefinida como imagem base. |
image_registry_details
Necessário
|
Os detalhes do registo de imagens do Docker. |
user_managed
Necessário
|
Especifica se o Azure ML reutiliza um ambiente Python existente. Se for falso, o Azure ML criará um ambiente Python com base na especificação de dependências de conda. |
conda_packages
Necessário
|
Uma lista de cadeias que representam pacotes conda a serem adicionados ao ambiente python para a experimentação. |
pip_packages
Necessário
|
Uma lista de cadeias que representam pacotes pip a serem adicionados ao ambiente python para a experimentação. |
conda_dependencies_file_path
Necessário
|
O caminho relativo para o ficheiro yaml de dependências de conda. Se especificado, o Azure ML não instalará pacotes relacionados com a arquitetura.
PRETERIDO. Utilize o |
pip_requirements_file_path
Necessário
|
O caminho relativo para o ficheiro de texto dos requisitos do pip.
Isto pode ser fornecido em combinação com o |
environment_variables
Necessário
|
Um dicionário de nomes e valores de variáveis de ambiente. Estas variáveis de ambiente são definidas no processo em que o script de utilizador está a ser executado. |
conda_dependencies_file
Necessário
|
Uma cadeia que representa o caminho relativo para o ficheiro yaml de dependências de conda. Se especificado, o Azure ML não instalará pacotes relacionados com a arquitetura. |
pip_requirements_file
Necessário
|
O caminho relativo para o ficheiro de texto dos requisitos do pip.
Isto pode ser fornecido em combinação com o |
environment_variables
Necessário
|
Um dicionário de nomes e valores de variáveis de ambiente. Estas variáveis de ambiente são definidas no processo em que o script de utilizador está a ser executado. |
environment_definition
Necessário
|
A definição de ambiente para a experimentação. Inclui PythonSection, DockerSection e variáveis de ambiente. Qualquer opção de ambiente não exposta diretamente através de outros parâmetros para a construção do Avaliador pode ser definida com este parâmetro. Se este parâmetro for especificado, terá precedência sobre outros parâmetros relacionados com o ambiente, como |
inputs
Necessário
|
Uma lista de azureml.data.data_reference. Objetos DataReference a utilizar como entrada. |
source_directory_data_store
Necessário
|
O arquivo de dados de cópia de segurança da partilha de projetos. |
shm_size
Necessário
|
O tamanho do bloco de memória partilhado do contentor do Docker. Se não estiver definido, a predefinição é azureml.core.environment._DEFAULT_SHM_SIZE. Para obter mais informações, veja |
framework_version
Necessário
|
A versão do TensorFlow a ser utilizada para executar o código de preparação. Se não for fornecida nenhuma versão, o avaliador irá predefinir a versão mais recente suportada pelo Azure ML. Utilize TensorFlow.get_supported_versions() para devolver uma lista para obter uma lista de todas as versões suportadas pelo SDK do Azure ML atual. |
_enable_optimized_mode
Necessário
|
Ative a compilação de ambiente incremental com imagens de arquitetura pré-criadas para uma preparação mais rápida do ambiente. Uma imagem de arquitetura pré-criada baseia-se nas imagens base predefinidas da CPU/GPU do Azure ML com dependências de arquitetura pré-instaladas. |
_disable_validation
Necessário
|
Desative a validação do script antes de executar a submissão. A predefinição é Verdadeiro. |
_show_lint_warnings
Necessário
|
Mostrar avisos de linting de script. A predefinição é Falso. |
_show_package_warnings
Necessário
|
Mostrar avisos de validação de pacotes. A predefinição é Falso. |
Observações
Ao submeter uma tarefa de preparação, o Azure ML executa o script num ambiente conda num contentor do Docker. Os contentores do TensorFlow têm as seguintes dependências instaladas.
Dependências | 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 (apenas imagem GPU) | 9.0 | 10.0 | 10.0 | cuDNN (apenas imagem GPU) | 7.6.3 | 7.6.3 | 7.6.3 | NCCL (apenas imagem GPU) | 2.4.8 | 2.4.8 | 2.4.8 | azureml-defaults | Mais recente | Mais recente | Mais recente | azureml-dataset-runtime[fuse,pandas] | Mais recente | Mais recente | Mais 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 |
As imagens do Docker v1 expandem o Ubuntu 16.04. As imagens do Docker v2 expandem o Ubuntu 18.04.
Para instalar dependências adicionais, pode utilizar o pip_packages
parâmetro ou conda_packages
. Em alternativa, pode especificar o pip_requirements_file
parâmetro ou conda_dependencies_file
.
Em alternativa, pode criar a sua própria imagem e transmitir o custom_docker_image
parâmetro ao construtor do avaliador.
Para obter mais informações sobre os contentores do Docker utilizados na preparação do TensorFlow, consulte https://github.com/Azure/AzureML-Containers.
A classe TensorFlow suporta dois métodos de preparação distribuída:
Para obter exemplos e mais informações sobre como utilizar o TensorFlow na preparação distribuída, veja o tutorial Train and register TensorFlow models at scale with Azure Machine Learning (Preparar e registar modelos do TensorFlow em escala com o Azure Machine Learning).
Atributos
DEFAULT_VERSION
DEFAULT_VERSION = '1.13'
FRAMEWORK_NAME
FRAMEWORK_NAME = 'TensorFlow'