

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Zeitplan für Überwachungsaufgaben
<a name="model-monitor-scheduling"></a>

**Anmerkung**  
Amazon SageMaker Model Monitor steht neuen Kunden nicht mehr offen. Bestehende Kunden können den Service weiterhin wie gewohnt nutzen. AWS investiert weiterhin in Sicherheits- und Verfügbarkeitsverbesserungen für Model Monitor, wir planen jedoch nicht, neue Funktionen einzuführen. Weitere Informationen finden Sie unter [Änderung der Verfügbarkeit von Amazon SageMaker Model Monitor](model-monitor-availability-change.md). 

Amazon SageMaker Model Monitor bietet Ihnen die Möglichkeit, die von Ihren Echtzeit-Endpunkten gesammelten Daten zu überwachen. Sie können Ihre Daten nach einem wiederkehrenden Zeitplan oder einmalig sofort überwachen. Sie können mit der [`CreateMonitoringSchedule`](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateMonitoringSchedule.html) API einen Überwachungsplan erstellen.

Mit einem Überwachungsplan kann die SageMaker KI mit der Verarbeitung von Aufträgen beginnen, um die während eines bestimmten Zeitraums gesammelten Daten zu analysieren. Bei der Verarbeitung vergleicht die SageMaker KI den Datensatz für die aktuelle Analyse mit den von Ihnen bereitgestellten Basisstatistiken und Einschränkungen. Anschließend generiert die SageMaker KI einen Bericht über Verstöße. Darüber hinaus werden für jedes zu analysierende Merkmal CloudWatch Metriken ausgegeben.

SageMaker AI bietet einen vorgefertigten Container für die Durchführung von Analysen von tabellarischen Datensätzen. Alternativ können Sie, wie im Thema [Unterstützung für Ihre eigenen Container mit Amazon SageMaker Model Monitor](model-monitor-byoc-containers.md) beschrieben, Ihren eigenen Container bereitstellen.

Sie können einen Zeitplan für die Modellüberwachung für Ihren Echtzeit-Endpunkt- oder Batch-Transformationsauftrag erstellen. Verwenden Sie die Basisressourcen (Beschränkungen und Statistiken) zum Vergleich mit dem Echtzeitverkehr oder den Batch-Auftrag-Eingaben. 

**Example Basiszuweisungen**  
Im folgenden Beispiel wurde der Trainingsdatensatz, der zum Trainieren des Modells verwendet wurde, auf Amazon S3 hochgeladen. Wenn es bereits in Amazon S3 vorhanden ist, können Sie direkt darauf verweisen.  

```
# copy over the training dataset to Amazon S3 (if you already have it in Amazon S3, you could reuse it)
baseline_prefix = prefix + '/baselining'
baseline_data_prefix = baseline_prefix + '/data'
baseline_results_prefix = baseline_prefix + '/results'

baseline_data_uri = 's3://{}/{}'.format(bucket,baseline_data_prefix)
baseline_results_uri = 's3://{}/{}'.format(bucket, baseline_results_prefix)
print('Baseline data uri: {}'.format(baseline_data_uri))
print('Baseline results uri: {}'.format(baseline_results_uri))
```

```
training_data_file = open("test_data/training-dataset-with-header.csv", 'rb')
s3_key = os.path.join(baseline_prefix, 'data', 'training-dataset-with-header.csv')
boto3.Session().resource('s3').Bucket(bucket).Object(s3_key).upload_fileobj(training_data_file)
```

**Example Zeitplan für wiederkehrende Analysen**  
Wenn Sie einen Modellmonitor für einen Echtzeit-Endpunkt planen, verwenden Sie die Baseline-Beschränkungen und -Statistiken zum Vergleich mit dem Echtzeitverkehr. Der folgende Codeausschnitt zeigt das allgemeine Format, das Sie verwenden, um einen Modellmonitor für einen Echtzeit-Endpunkt zu planen. In diesem Beispiel wird der Modellmonitor so geplant, dass er stündlich ausgeführt wird.  

```
from sagemaker.model_monitor import CronExpressionGenerator
from time import gmtime, strftime

mon_schedule_name = 'my-model-monitor-schedule-' + strftime("%Y-%m-%d-%H-%M-%S", gmtime())
my_default_monitor.create_monitoring_schedule(
    monitor_schedule_name=mon_schedule_name,
    endpoint_input=EndpointInput(
        endpoint_name=endpoint_name,
        destination="/opt/ml/processing/input/endpoint"
    ),
    post_analytics_processor_script=s3_code_postprocessor_uri,
    output_s3_uri=s3_report_path,
    statistics=my_default_monitor.baseline_statistics(),
    constraints=my_default_monitor.suggested_constraints(),
    schedule_cron_expression=CronExpressionGenerator.hourly(),
    enable_cloudwatch_metrics=True,
)
```

**Example Zeitplan für eine einmalige Analyse**  
Sie können die Analyse auch so planen, dass sie einmal ohne Wiederholung ausgeführt wird, indem Sie Argumente wie die folgenden an die `create_monitoring_schedule` Methode übergeben:  

```
    schedule_cron_expression=CronExpressionGenerator.now(),
    data_analysis_start_time="-PT1H",
    data_analysis_end_time="-PT0H",
```
In diesen Argumenten plant der `schedule_cron_expression` Parameter, dass die Analyse einmal und sofort mit dem Wert `CronExpressionGenerator.now()` ausgeführt wird. Für jeden Zeitplan mit dieser Einstellung sind `data_analysis_start_time` und `data_analysis_end_time` Parameter erforderlich. Diese Parameter legen die Start- und Endzeit eines Analysefensters fest. Definieren Sie diese Zeiten als Offsets, die sich auf die aktuelle Uhrzeit beziehen, und verwenden Sie das ISO 8601-Dauerformat. In diesem Beispiel werden die Zeiten `-PT1H` und `-PT0H` angegeben, in Fenster zwischen einer Stunde in der Vergangenheit und der aktuellen Uhrzeit definiert. Bei diesem Zeitplan werden bei der Analyse nur die Daten ausgewertet, die während des angegebenen Zeitfensters gesammelt wurden.

**Example Zeitplan für einen Batch-Transformationsauftrag**  
Der folgende Codeausschnitt zeigt das allgemeine Format, das Sie verwenden, um einen Modellmonitor für einen Batch-Transformationsauftrag zu planen.  

```
from sagemaker.model_monitor import (
    CronExpressionGenerator,
    BatchTransformInput, 
    MonitoringDatasetFormat, 
)
from time import gmtime, strftime

mon_schedule_name = 'my-model-monitor-schedule-' + strftime("%Y-%m-%d-%H-%M-%S", gmtime())
my_default_monitor.create_monitoring_schedule(
    monitor_schedule_name=mon_schedule_name,
    batch_transform_input=BatchTransformInput(
        destination="opt/ml/processing/input",
        data_captured_destination_s3_uri=s3_capture_upload_path,
        dataset_format=MonitoringDatasetFormat.csv(header=False),
    ),
    post_analytics_processor_script=s3_code_postprocessor_uri,
    output_s3_uri=s3_report_path,
    statistics=my_default_monitor.baseline_statistics(),
    constraints=my_default_monitor.suggested_constraints(),
    schedule_cron_expression=CronExpressionGenerator.hourly(),
    enable_cloudwatch_metrics=True,
)
```

```
desc_schedule_result = my_default_monitor.describe_schedule()
print('Schedule status: {}'.format(desc_schedule_result['MonitoringScheduleStatus']))
```