View a markdown version of this page

Luncurkan pekerjaan pelatihan dengan Debugger menggunakan SageMaker Python SDK - Amazon SageMaker AI

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Luncurkan pekerjaan pelatihan dengan Debugger menggunakan SageMaker Python SDK

catatan

Amazon SageMaker Debugger tidak lagi terbuka untuk pelanggan baru. Pelanggan yang sudah ada dapat terus menggunakan layanan seperti biasa. AWS terus berinvestasi dalam peningkatan keamanan dan ketersediaan untuk Debugger, tetapi kami tidak berencana untuk memperkenalkan fitur baru. Untuk informasi selengkapnya, lihat Perubahan ketersediaan debugger.

Untuk mengonfigurasi estimator SageMaker AI dengan SageMaker Debugger, gunakan Amazon SageMaker Python SDK dan tent Debugger-specific ukan parameter. Untuk sepenuhnya memanfaatkan fungsi debugging, ada tiga parameter yang perlu Anda konfigurasi:debugger_hook_config,tensorboard_output_config, danrules.

penting

Sebelum membangun dan menjalankan metode kecocokan estimator untuk meluncurkan pekerjaan pelatihan, pastikan Anda menyesuaikan skrip pelatihan Anda mengikuti instruksi diMengadaptasi skrip pelatihan Anda untuk mendaftarkan hook.

Membangun Estimator SageMaker AI dengan parameter Debugger-specific

Contoh kode di bagian ini menunjukkan cara membuat estimator SageMaker AI dengan Debugger-specific parameter.

catatan

Contoh kode berikut adalah template untuk membangun estimator kerangka kerja SageMaker AI dan tidak dapat dieksekusi secara langsung. Anda perlu melanjutkan ke bagian berikutnya dan mengkonfigurasi Debugger-specific parameter.

# An example of creating a training job with debugger configuration import boto3 from sagemaker.core import image_uris from sagemaker.core.resources import TrainingJob from sagemaker.core.shapes import ( AlgorithmSpecification, ResourceConfig, OutputDataConfig, StoppingCondition, DebugHookConfig, CollectionConfiguration, DebugRuleConfiguration, ) session=boto3.session.Session() region=session.region_name # Retrieve the training image for your framework # Change framework to "tensorflow", "mxnet", "xgboost", etc. as needed training_image = image_uris.retrieve( framework="pytorch", # or "tensorflow", "mxnet", "xgboost" region=region, version="1.12.0", py_version="py37", instance_type="ml.p3.2xlarge", image_scope="training" ) debug_hook_config=DebugHookConfig(...) debug_rule_configurations=[ DebugRuleConfiguration( rule_configuration_name="built_in_rule", rule_evaluator_image="rule-evaluator-image-uri", ) ] TrainingJob.create( training_job_name="debugger-demo", algorithm_specification=AlgorithmSpecification( training_image=training_image, training_input_mode="File", ), role_arn="arn:aws:iam::123456789012:role/SageMakerRole", resource_config=ResourceConfig(instance_type="ml.p3.2xlarge", instance_count=1, volume_size_in_gb=30), output_data_config=OutputDataConfig(s3_output_path="s3://bucket/output"), stopping_condition=StoppingCondition(max_runtime_in_seconds=3600), # Debugger-specific parameters debug_hook_config=debug_hook_config, debug_rule_configurations=debug_rule_configurations, )

Konfigurasikan parameter berikut untuk mengaktifkan SageMaker Debugger:

  • debugger_hook_config(objek DebuggerHookConfig) - Diperlukan untuk mengaktifkan kait dalam skrip pelatihan yang disesuaikan selamaMengadaptasi skrip pelatihan Anda untuk mendaftarkan hook, konfigurasikan peluncur SageMaker pelatihan (estimator) untuk mengumpulkan tensor keluaran dari pekerjaan pelatihan Anda, dan simpan tensor ke bucket S3 yang aman atau mesin lokal Anda. Untuk mempelajari cara mengkonfigurasi debugger_hook_config parameter, lihatMengkonfigurasi SageMaker Debugger untuk menyimpan tensor.

  • rules(daftar Rule objek) — Konfigurasikan parameter ini untuk mengaktifkan aturan bawaan SageMaker Debugger yang ingin Anda jalankan secara real time. Aturan bawaan adalah logika yang secara otomatis men-debug kemajuan pelatihan model Anda dan menemukan masalah pelatihan dengan menganalisis tensor keluaran yang disimpan di bucket S3 aman Anda. Untuk mempelajari cara mengkonfigurasi rules parameter, lihatCara mengkonfigurasi aturan bawaan Debugger. Untuk menemukan daftar lengkap aturan bawaan untuk men-debug tensor keluaran, lihatAturan debugger. Jika Anda ingin membuat logika Anda sendiri untuk mendeteksi masalah pelatihan, lihatMembuat aturan khusus menggunakan pustaka klien Debugger.

    catatan

    Aturan bawaan hanya tersedia melalui instance SageMaker pelatihan. Anda tidak dapat menggunakannya dalam mode lokal.

  • tensorboard_output_config(objek TensorBoardOutputConfig) - Konfigurasikan SageMaker Debugger untuk mengumpulkan tensor keluaran dalam TensorBoard-compatible format dan menyimpan ke jalur keluaran S3 Anda yang ditentukan dalam objek. TensorBoardOutputConfig Untuk mempelajari selengkapnya, lihat Visualisasikan tensor keluaran Amazon SageMaker Debugger di TensorBoard.

    catatan

    tensorboard_output_configHarus dikonfigurasi dengan debugger_hook_config parameter, yang juga mengharuskan Anda untuk menyesuaikan skrip pelatihan Anda dengan menambahkan sagemaker-debugger kait.

catatan

SageMaker Debugger menyimpan tensor keluaran dengan aman di subfolder bucket S3 Anda. Misalnya, format URI bucket S3 default di akun Anda adalahs3://amzn-s3-demo-bucket-sagemaker-<region>-<12digit_account_id>/<base-job-name>/<debugger-subfolders>/. Ada dua subfolder yang dibuat oleh SageMaker Debugger:debug-output, dan. rule-output Jika Anda menambahkan tensorboard_output_config parameter, Anda juga akan menemukan tensorboard-output folder.

Lihat topik berikut untuk menemukan contoh lebih lanjut tentang cara mengonfigurasi Debugger-specific parameter secara rinci.