TensorFlow Kelas

Menunjukkan estimator untuk pelatihan dalam eksperimen TensorFlow.

TIDAK DIGUNAKAN LAGI. Gunakan objek ScriptRunConfig dengan lingkungan yang Anda tentukan sendiri atau salah satu lingkungan yang dikumpulkan Azure ML TensorFlow. Untuk pengenalan konfigurasi eksperimen TensorFlow yang berjalan dengan ScriptRunConfig, lihat Melatih model TensorFlow dalam skala dengan Azure Machine Learning.

Versi yang didukung: 1.10, 1.12, 1.13, 2.0, 2.1, 2.2

Warisan
azureml.train.estimator._framework_base_estimator._FrameworkBaseEstimator
TensorFlow

Konstruktor

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)

Parameter

source_directory
str
Diperlukan

Direktori lokal yang berisi file konfigurasi eksperimen.

compute_target
AbstractComputeTarget atau str
Diperlukan

Target komputasi di mana pelatihan akan terjadi. Ini bisa berupa objek atau untai (karakter) "lokal".

vm_size
str
Diperlukan

Ukuran mesin virtual dari target komputasi yang akan dibuat untuk pelatihan. Nilai yang didukung: Ukuran mesin virtual Azure apa pun.

vm_priority
str
Diperlukan

Prioritas mesin virtual dari target komputasi yang akan dibuat untuk pelatihan. Jika tidak ditentukan, 'dedicated' digunakan.

Nilai yang didukung:'dedicated' dan 'lowpriority'.

Ini berlaku hanya jika vm_size param ditentukan dalam input.

entry_script
str
Diperlukan

Jalur relatif ke file yang berisi skrip pelatihan.

script_params
dict
Diperlukan

Kamus argumen baris perintah untuk diteruskan ke skrip pelatihan yang ditentukan dalam entry_script.

node_count
int
Diperlukan

Jumlah node dalam target komputasi yang digunakan untuk pelatihan. Hanya target AmlCompute yang didukung untuk pelatihan terdistribusi (node_count> 1).

process_count_per_node
int
Diperlukan

Saat menggunakan MPI, jumlah proses per node.

worker_count
int
Diperlukan

Saat menggunakan Server Parameter untuk pelatihan terdistribusi, jumlah node pekerja.

TIDAK DIGUNAKAN LAGI. Tentukan sebagai bagian dari parameter distributed_training.

parameter_server_count
int
Diperlukan

Saat menggunakan Server Parameter untuk pelatihan terdistribusi, jumlah node kluster parameter.

distributed_backend
str
Diperlukan

Backend komunikasi untuk pelatihan terdistribusi.

TIDAK DIGUNAKAN LAGI. Gunakan parameter distributed_training.

Nilai yang didukung: 'mpi' dan 'ps'. 'mpi' mewakili MPI/Horovod dan 'ps' mewakili Server Parameter.

Parameter ini diperlukan ketika salah satu dari node_count, process_count_per_node, worker_count, atau parameter_server_count> 1. Dalam kasus 'ps', jumlah worker_count dan parameter_server_count harus kurang dari atau sama dengan node_count * (jumlah CPU atau GPU per node)

Ketika node_count == 1 dan process_count_per_node == 1, tidak ada backend yang akan digunakan kecuali backend diatur secara eksplisit. Hanya target AmlCompute yang didukung untuk pelatihan terdistribusi.

distributed_training
ParameterServer atau Mpi
Diperlukan

Parameter untuk menjalankan pekerjaan pelatihan terdistribusi.

Untuk menjalankan pekerjaan terdistribusi dengan backend Server Parameter, gunakan objek ParameterServer untuk menentukan worker_count dan parameter_server_count. Jumlah parameter worker_count dan parameter_server_count harus kurang dari atau sama dengan node_count * (jumlah CPU atau GPU per node).

Untuk menjalankan pekerjaan yang terdistribusi dengan backend MPI, gunakan objek Mpi untuk menentukan process_count_per_node.

use_gpu
bool
Diperlukan

Menentukan apakah lingkungan untuk menjalankan eksperimen harus mendukung GPU. Jika true, gambar docker default berbasis GPU akan digunakan di lingkungan. Jika false, gambar berbasis CPU akan digunakan. Gambar docker default (CPU atau GPU) hanya akan digunakan jika parameter custom_docker_image tidak diatur. Pengaturan ini hanya digunakan di target komputasi yang diaktifkan oleh Docker.

use_docker
bool
Diperlukan

Tentukan apakah lingkungan tempat menjalankan eksperimen harus berbasis Docker atau tidak.

custom_docker_base_image
str
Diperlukan

Nama gambar Docker tempat gambar yang akan digunakan untuk pelatihan akan dibuat.

TIDAK DIGUNAKAN LAGI. Gunakan parameter custom_docker_image.

Jika tidak diatur, gambar berbasis CPU default akan digunakan sebagai gambar dasar.

custom_docker_image
str
Diperlukan

Nama gambar Docker dari mana gambar yang akan digunakan untuk pelatihan akan dibuat. Jika tidak diatur, gambar berbasis CPU default akan digunakan sebagai gambar dasar.

image_registry_details
ContainerRegistry
Diperlukan

Detail dari registri gambar Docker.

user_managed
bool
Diperlukan

Tentukan apakah Azure Machine Learning menggunakan kembali lingkungan python yang ada. Jika False, Azure Machine Learning akan membuat lingkungan Python berdasarkan spesifikasi dependensi conda.

conda_packages
list
Diperlukan

Daftar untai (karakter) yang menunjukkan paket conda yang akan ditambahkan ke lingkungan Python untuk eksperimen.

pip_packages
list
Diperlukan

Daftar untai (karakter) yang menunjukkan paket pip yang akan ditambahkan ke lingkungan Python untuk eksperimen.

conda_dependencies_file_path
str
Diperlukan

Untai (karakter) yang menunjukkan jalur relatif ke file yaml dependensi conda. Jika ditentukan, Azure Machine Learning tidak akan memasang paket terkait kerangka kerja apa pun. TIDAK DIGUNAKAN LAGI. Gunakan parameter conda_dependencies_file.

pip_requirements_file_path
str
Diperlukan

Untai (karakter) yang menunjukkan jalur relatif ke file teks persyaratan pip. Ini dapat dilengkapi dengan kombinasi parameter pip_packages. TIDAK DIGUNAKAN LAGI. Gunakan parameter pip_requirements_file.

conda_dependencies_file
str
Diperlukan

Untai (karakter) yang menunjukkan jalur relatif ke file yaml dependensi conda. Jika ditentukan, Azure Machine Learning tidak akan menginstal paket terkait kerangka kerja apa pun.

pip_requirements_file
str
Diperlukan

String yang mewakili jalur relatif ke file teks persyaratan pip. Ini dapat dilengkapi dengan kombinasi parameter pip_packages.

environment_variables
dict
Diperlukan

Sebuah kamus berisi nama dan nilai variabel lingkungan. Variabel lingkungan ini diatur pada proses saat skrip pengguna sedang dijalankan.

environment_definition
Environment
Diperlukan

Definisi lingkungan untuk eksperimen. Ini termasuk PythonSection, DockerSection, dan variabel lingkungan. Opsi lingkungan apa pun yang tidak diekspos secara langsung melalui parameter lain ke konstruksi Estimator dapat diatur menggunakan parameter ini. Jika parameter ini ditentukan, parameter akan diprioritaskan dari parameter terkait lingkungan lainnya seperti use_gpu, custom_docker_image, conda_packages, atau pip_packages. Kesalahan akan dilaporkan pada kombinasi yang tidak valid ini.

inputs
list
Diperlukan

Daftar objek DataReference atau DatasetConsumptionConfig yang akan digunakan sebagai input.

source_directory_data_store
Datastore
Diperlukan

Penyimpanan data pendukung untuk berbagi proyek.

shm_size
str
Diperlukan

Ukuran blok memori bersama kontainer Docker. Jika tidak diatur, azureml.core.environment._DEFAULT_SHM_SIZE default digunakan. Untuk informasi selengkapnya, lihat Referensi eksekusi Docker.

resume_from
DataPath
Diperlukan

Jalur data yang berisi file titik pemeriksaan atau model untuk melanjutkan eksperimen.

max_run_duration_seconds
int
Diperlukan

Waktu maksimum yang diizinkan untuk eksekusi. Azure Machine Learning akan mencoba untuk membatalkan eksekusi secara otomatis jika diperlukan waktu lebih lama dari nilai ini.

framework_version
str
Diperlukan

Versi TensorFlow yang akan digunakan untuk menjalankan kode pelatihan. Jika tidak ada versi yang disediakan, penghitung akan default ke versi terbaru yang didukung oleh Azure Machine Learning. Gunakan TensorFlow.get_supported_versions() untuk menampilkan daftar guna mendapatkan daftar semua versi yang didukung SDK Azure Machine Learning saat ini.

Keterangan

Saat mengirimkan pekerjaan pelatihan, Azure Machine Learning menjalankan skrip Anda di lingkungan conda dalam kontainer Docker. Kontainer TensorFlow memiliki dependensi yang diinstal berikut.

Dependencies | 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 (GPU image only) | 9.0 | 10.0 | 10.0 | cuDNN (GPU image only) | 7.6.3 | 7.6.3 | 7.6.3 | NCCL (GPU image only) | 2.4.8 | 2.4.8 | 2.4.8 | azureml-defaults | Latest | Latest | Latest | azureml-dataset-runtime[fuse,pandas] | Latest | Latest | Latest | 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 |

Gambar Docker v1 memperluas Ubuntu 16.04. Gambar Docker v2 memperluas Ubuntu 18.04.

Untuk memasang dependensi tambahan, Anda dapat menggunakan parameter pip_packages atau conda_packages. Atau, Anda dapat menentukan parameter pip_requirements_file atau conda_dependencies_file. Atau, Anda dapat membangun gambar Anda sendiri, dan meneruskan parameter custom_docker_image ke konstruktor penghitung.

Untuk informasi selengkapnya tentang kontainer Docker yang digunakan dalam pelatihan TensorFlow, lihat https://github.com/Azure/AzureML-Containers.

Kelas TensorFlow mendukung dua metode pelatihan terdistribusi:

Untuk contoh dan informasi selengkapnya tentang menggunakan TensorFlow dalam pelatihan terdistribusi, lihat tutorial Melatih dan mendaftarkan model TensorFlow pada skala dengan Azure Machine Learning.

Atribut

DEFAULT_VERSION

DEFAULT_VERSION = '1.13'

FRAMEWORK_NAME

FRAMEWORK_NAME = 'TensorFlow'