Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jadwalkan pekerjaan pemantauan kualitas model
Setelah Anda membuat baseline Anda, Anda dapat memanggil create_monitoring_schedule()
metode instance ModelQualityMonitor
kelas Anda untuk menjadwalkan monitor kualitas model per jam. Bagian berikut menunjukkan cara membuat monitor kualitas model untuk model yang diterapkan ke titik akhir real-time serta untuk pekerjaan transformasi batch.
penting
Anda dapat menentukan input transformasi batch atau input titik akhir, tetapi tidak keduanya, saat Anda membuat jadwal pemantauan.
Tidak seperti pemantauan kualitas data, Anda perlu menyediakan label Ground Truth jika Anda ingin memantau kualitas model. Namun, label Ground Truth bisa ditunda. Untuk mengatasinya, tentukan offset saat Anda membuat jadwal pemantauan.
Offset monitor model
Pekerjaan kualitas model meliputi StartTimeOffset
danEndTimeOffset
, yang merupakan bidang ModelQualityJobInput
parameter create_model_quality_job_definition
metode yang berfungsi sebagai berikut:
-
StartTimeOffset
- Jika ditentukan, pekerjaan kurangi waktu ini dari waktu mulai. -
EndTimeOffset
- Jika ditentukan, pekerjaan kurangi waktu ini dari waktu akhir.
Format offset adalah, misalnya, -PT7H, di mana 7H adalah 7 jam. Anda dapat menggunakan -PT #H atau -P #D, di mana H = jam, D = hari, dan m = menit, dan # adalah nomornya. Selain itu, offset harus dalam format durasi ISO 8601
Misalnya, jika Ground Truth Anda mulai masuk setelah 1 hari, tetapi tidak selesai selama seminggu, atur StartTimeOffset
ke -P8D
dan EndTimeOffset
ke-P1D
. Kemudian, jika Anda menjadwalkan pekerjaan untuk dijalankan2020-01-09T13:00
, itu menganalisis data dari antara 2020-01-01T13:00
dan2020-01-08T13:00
.
penting
Irama jadwal harus sedemikian rupa sehingga satu eksekusi selesai sebelum eksekusi berikutnya dimulai, yang memungkinkan pekerjaan penggabungan Ground Truth dan pekerjaan pemantauan dari eksekusi selesai. Runtime maksimum eksekusi dibagi antara dua pekerjaan, jadi untuk pekerjaan pemantauan kualitas model per jam, nilai yang MaxRuntimeInSeconds
ditentukan sebagai bagian dari StoppingCondition
harus tidak lebih dari 1800.
Pemantauan kualitas model untuk model yang digunakan ke titik akhir waktu nyata
Untuk menjadwalkan monitor kualitas model untuk titik akhir real-time, teruskan EndpointInput
instance Anda ke endpoint_input
argumen ModelQualityMonitor
instance Anda, seperti yang ditunjukkan dalam contoh kode berikut:
from sagemaker.model_monitor import CronExpressionGenerator model_quality_model_monitor = ModelQualityMonitor( role=sagemaker.get_execution_role(), ... ) schedule = model_quality_model_monitor.create_monitoring_schedule( monitor_schedule_name=schedule_name, post_analytics_processor_script=s3_code_postprocessor_uri, output_s3_uri=s3_report_path, schedule_cron_expression=CronExpressionGenerator.hourly(), statistics=model_quality_model_monitor.baseline_statistics(), constraints=model_quality_model_monitor.suggested_constraints(), schedule_cron_expression=CronExpressionGenerator.hourly(), enable_cloudwatch_metrics=True, endpoint_input=EndpointInput( endpoint_name=endpoint_name, destination="/opt/ml/processing/input/endpoint", start_time_offset="-PT2D", end_time_offset="-PT1D", ) )
Pemantauan kualitas model untuk pekerjaan transformasi batch
Untuk menjadwalkan monitor kualitas model untuk pekerjaan transformasi batch, teruskan BatchTransformInput
instance Anda ke batch_transform_input
argumen ModelQualityMonitor
instance Anda, seperti yang ditunjukkan dalam contoh kode berikut:
from sagemaker.model_monitor import CronExpressionGenerator model_quality_model_monitor = ModelQualityMonitor( role=sagemaker.get_execution_role(), ... ) schedule = model_quality_model_monitor.create_monitoring_schedule( monitor_schedule_name=mon_schedule_name, batch_transform_input=BatchTransformInput( data_captured_destination_s3_uri=s3_capture_upload_path, destination="/opt/ml/processing/input", dataset_format=MonitoringDatasetFormat.csv(header=False), # the column index of the output representing the inference probablity probability_attribute="0", # the threshold to classify the inference probablity to class 0 or 1 in # binary classification problem probability_threshold_attribute=0.5, # look back 6 hour for transform job outputs. start_time_offset="-PT6H", end_time_offset="-PT0H" ), ground_truth_input=gt_s3_uri, output_s3_uri=s3_report_path, problem_type="BinaryClassification", constraints = constraints_path, schedule_cron_expression=CronExpressionGenerator.hourly(), enable_cloudwatch_metrics=True, )