Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pertimbangan untuk Amazon SageMaker Debugger
Pertimbangkan hal berikut saat menggunakan Amazon SageMaker Debugger.
Pertimbangan untuk Pelatihan Terdistribusi
Daftar berikut menunjukkan ruang lingkup validitas dan pertimbangan untuk menggunakan Debugger pada pekerjaan pelatihan dengan kerangka pembelajaran mendalam dan berbagai opsi pelatihan terdistribusi.
-
Horovod
Lingkup validitas penggunaan Debugger untuk pekerjaan pelatihan dengan Horovod
Kerangka Pembelajaran Mendalam Apache MXNet TensorFlow 1.x TensorFlow 2.x TensorFlow 2.x dengan Keras PyTorch Pemantauan kemacetan sistem Ya Ya Ya Ya Ya Operasi kerangka kerja profil Tidak Tidak Tidak Ya Ya Tensor keluaran model debugging Ya Ya Ya Ya Ya -
SageMaker paralel data terdistribusi
Lingkup validitas menggunakan Debugger untuk pekerjaan pelatihan dengan SageMaker data paralel terdistribusi
Kerangka Pembelajaran Mendalam TensorFlow 2.x TensorFlow 2.x dengan Keras PyTorch Pemantauan kemacetan sistem Ya Ya Ya Operasi kerangka kerja profil Tidak* Tidak** Ya Tensor keluaran model debugging Ya Ya Ya * Debugger tidak mendukung pembuatan profil kerangka kerja untuk 2.x. TensorFlow
** SageMaker distributed data parallel tidak mendukung TensorFlow 2.x dengan implementasi Keras.
-
SageMaker distributed model parallel — Debugger tidak mendukung pelatihan paralel model SageMaker terdistribusi.
-
Pelatihan terdistribusi dengan SageMaker pos pemeriksaan — Debugger tidak tersedia untuk pekerjaan pelatihan ketika opsi pelatihan terdistribusi dan SageMaker pos pemeriksaan diaktifkan. Anda mungkin melihat kesalahan yang terlihat seperti berikut:
SMDebug Does Not Currently Support Distributed Training Jobs With Checkpointing Enabled
Untuk menggunakan Debugger untuk pekerjaan pelatihan dengan opsi pelatihan terdistribusi, Anda perlu menonaktifkan SageMaker checkpointing dan menambahkan fungsi checkpointing manual ke skrip pelatihan Anda. Untuk informasi selengkapnya tentang penggunaan Debugger dengan opsi pelatihan terdistribusi dan pos pemeriksaan, lihat dan. Menggunakan data SageMaker terdistribusi paralel dengan Amazon SageMaker Debugger dan pos pemeriksaan Menyimpan Pos Pemeriksaan
-
Parameter Server - Debugger tidak mendukung pelatihan terdistribusi berbasis server parameter.
-
Membuat profil operasi kerangka pelatihan terdistribusi, seperti
AllReduced
pengoperasian data paralel SageMaker terdistribusi dan operasi Horovod, tidak tersedia.
Pertimbangan untuk Pemantauan Kemacetan Sistem dan Operasi Kerangka Profiling
-
Untuk AWS TensorFlow, metrik pemuat data tidak dapat dikumpulkan menggunakan
local_path
pengaturan defaultFrameworkProfile
kelas. Jalur harus dikonfigurasi secara manual dan diakhiri"/"
. Sebagai contoh:FrameworkProfile(local_path="/opt/ml/output/profiler/")
-
Untuk AWS TensorFlow, konfigurasi profil pemuat data tidak dapat diperbarui saat pekerjaan pelatihan sedang berjalan.
-
Untuk AWS TensorFlow,
NoneType
kesalahan mungkin terjadi ketika Anda menggunakan alat analisis dan contoh buku catatan dengan TensorFlow 2.3 pekerjaan pelatihan dan opsi pembuatan profil terperinci. -
Profil Python dan pembuatan profil terperinci hanya didukung untuk Keras. API
-
Untuk mengakses fitur profil mendalam untuk TensorFlow dan PyTorch, saat ini Anda harus menentukan gambar wadah pembelajaran AWS mendalam terbaru dengan CUDA 11. Misalnya, Anda harus menentukan gambar spesifik URI di TensorFlow dan PyTorch estimator sebagai berikut:
-
Untuk TensorFlow
image_uri = f"763104351884.dkr.ecr.{region}.amazonaws.com/tensorflow-training:2.3.1-gpu-py37-cu110-ubuntu18.04"
-
Untuk PyTorch
image_uri = f"763104351884.dkr.ecr.{region}.amazonaws.com/pytorch-training:1.6.0-gpu-py36-cu110-ubuntu18.04"
-
Pertimbangan untuk Tensor Output Model Debugging
-
Hindari menggunakan API operasi fungsional. Debugger tidak dapat mengumpulkan tensor keluaran model dari PyTorch dan skrip MXNet pelatihan yang terdiri dari operasi fungsional. API
-
Debugger tidak dapat mengumpulkan tensor keluaran model dari operasi.
torch.nn.functional
API Saat Anda menulis skrip PyTorch pelatihan, disarankan untuk menggunakan torch.nn
modul sebagai gantinya. -
Debugger tidak dapat mengumpulkan tensor keluaran model dari objek MXNet fungsional di blok hibrida. Misalnya, output ReLu aktivasi (
F.relu
) tidak dapat dikumpulkan dari contoh berikutmxnet.gluon.HybridBlock
dengan F
dalamhybrid_forward
fungsi.import mxnet as mx from mxnet.gluon import HybridBlock, nn class Model(HybridBlock): def __init__(self, **kwargs): super(Model, self).__init__(**kwargs) # use name_scope to give child Blocks appropriate names. with self.name_scope(): self.dense0 = nn.Dense(20) self.dense1 = nn.Dense(20) def hybrid_forward(self, F, x): x = F.relu(self.dense0(x)) return F.relu(self.dense1(x)) model = Model() model.initialize(ctx=mx.cpu(0)) model.hybridize() model(mx.nd.zeros((10, 10), ctx=mx.cpu(0)))
-