Programe trabajos de supervisión de desviaciones de sesgo - Amazon SageMaker

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Programe trabajos de supervisión de desviaciones de sesgo

Una vez que haya creado su referencia, puede utilizar el método create_monitoring_schedule() de la instancia de clase ModelBiasModelMonitor para programar una supervisión de la desviación de sesgo cada hora. En las siguientes secciones, se muestra cómo crear un monitor de desviación de sesgo para un modelo implementado en un punto de conexión en tiempo real, así como para un trabajo de transformación por lotes.

importante

Puede especificar una entrada de transformación por lotes o una entrada de punto de conexión, pero no ambas, al crear su programa de supervisión.

A diferencia de la supervisión de la calidad de los datos, debe suministrar etiquetas Ground Truth si desea supervisar la calidad del modelo. Sin embargo, las etiquetas de Ground Truth podrían retrasarse. Para solucionar este problema, especifique los desplazamientos al crear su programa de supervisión. Para obtener más información acerca de cómo crear desplazamientos de tiempo, consulte Desplazamientos del monitor de modelos.

Si ha enviado un trabajo de referencia, el monitor recoge automáticamente la configuración de análisis del trabajo de referencia. Si omite el paso de referencia o el conjunto de datos de captura tiene una naturaleza diferente a la del conjunto de datos de entrenamiento, debe proporcionar la configuración de análisis.

Supervisión de la desviación de sesgo para los modelos implementados en puntos de conexión en tiempo real

Para programar un monitor de desviación de sesgo para un punto de conexión en tiempo real, pase la instancia EndpointInput al argumento endpoint_input de la instancia ModelBiasModelMonitor, como se muestra en el siguiente ejemplo de código:

from sagemaker.model_monitor import CronExpressionGenerator model_bias_monitor = ModelBiasModelMonitor( role=sagemaker.get_execution_role(), ... ) model_bias_analysis_config = None if not model_bias_monitor.latest_baselining_job: model_bias_analysis_config = BiasAnalysisConfig( model_bias_config, headers=all_headers, label=label_header, ) model_bias_monitor.create_monitoring_schedule( monitor_schedule_name=schedule_name, post_analytics_processor_script=s3_code_postprocessor_uri, output_s3_uri=s3_report_path, statistics=model_bias_monitor.baseline_statistics(), constraints=model_bias_monitor.suggested_constraints(), schedule_cron_expression=CronExpressionGenerator.hourly(), enable_cloudwatch_metrics=True, analysis_config=model_bias_analysis_config, endpoint_input=EndpointInput( endpoint_name=endpoint_name, destination="/opt/ml/processing/input/endpoint", start_time_offset="-PT1H", end_time_offset="-PT0H", probability_threshold_attribute=0.8, ), )

Supervisión de la desviación de sesgo para trabajos de transformación por lotes

Para programar un monitor de desviación de sesgo para un trabajo de transformación por lotes, pase la instancia BatchTransformInput al argumento batch_transform_input de la instancia ModelBiasModelMonitor, como se muestra en el siguiente ejemplo de código:

from sagemaker.model_monitor import CronExpressionGenerator model_bias_monitor = ModelBiasModelMonitor( role=sagemaker.get_execution_role(), ... ) model_bias_analysis_config = None if not model_bias_monitor.latest_baselining_job: model_bias_analysis_config = BiasAnalysisConfig( model_bias_config, headers=all_headers, label=label_header, ) schedule = model_bias_monitor.create_monitoring_schedule( monitor_schedule_name=schedule_name, post_analytics_processor_script=s3_code_postprocessor_uri, output_s3_uri=s3_report_path, statistics=model_bias_monitor.baseline_statistics(), constraints=model_bias_monitor.suggested_constraints(), schedule_cron_expression=CronExpressionGenerator.hourly(), enable_cloudwatch_metrics=True, analysis_config=model_bias_analysis_config, batch_transform_input=BatchTransformInput( destination="opt/ml/processing/input", data_captured_destination_s3_uri=s3_capture_path, start_time_offset="-PT1H", end_time_offset="-PT0H", probability_threshold_attribute=0.8 ), )