

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.

# Wie benutzt man den SageMaker AI Object Detection — Algorithmus TensorFlow
<a name="object-detection-tensorflow-how-to-use"></a>

Sie können die Objekterkennung TensorFlow als integrierten Amazon SageMaker AI-Algorithmus verwenden. Im folgenden Abschnitt wird beschrieben, wie Sie die Objekterkennung verwenden — TensorFlow mit dem SageMaker AI Python SDK. Informationen zur Verwendung der Objekterkennung — TensorFlow von der Amazon SageMaker Studio Classic-Benutzeroberfläche aus — finden Sie unter[SageMaker JumpStart vortrainierte Modelle](studio-jumpstart.md).

Der TensorFlow Objekterkennungsalgorithmus unterstützt Transferlernen mit jedem der kompatiblen, vortrainierten TensorFlow Modelle. Eine Liste aller verfügbaren vortrainierten Modelle finden Sie unter [TensorFlow Modelle](object-detection-tensorflow-Models.md). Jedes vortrainierte Modell hat ein Unikat `model_id`. Im folgenden Beispiel wird ResNet 50 (`model_id`:`tensorflow-od1-ssd-resnet50-v1-fpn-640x640-coco17-tpu-8`) zur Feinabstimmung eines benutzerdefinierten Datensatzes verwendet. Die vortrainierten Modelle werden alle vorab vom TensorFlow Hub heruntergeladen und in Amazon S3-Buckets gespeichert, sodass Trainingsjobs netzwerkisoliert ausgeführt werden können. Verwenden Sie diese vorgenerierten Modelltraining-Artefakte, um eine KI zu konstruieren. SageMaker ModelTrainer

Rufen Sie zunächst den Docker-Image-URI, den Trainingsskript-URI und den vortrainierten Modell-URI ab. Ändern Sie dann die Hyperparameter nach Bedarf. Sie können ein Python-Wörterbuch mit allen verfügbaren Hyperparametern und ihren Standardwerten mit `hyperparameters.retrieve_default` sehen. Weitere Informationen finden Sie unter [Objekterkennung — TensorFlow Hyperparameter](object-detection-tensorflow-Hyperparameter.md). Verwenden Sie diese Werte, um eine SageMaker KI ModelTrainer zu konstruieren.

**Anmerkung**  
Die Standard-Hyperparameterwerte sind für verschiedene Modelle unterschiedlich. Bei größeren Modellen ist die Standardanzahl von Epochen beispielsweise kleiner. 

In diesem Beispiel wird der [`PennFudanPed`](https://www.cis.upenn.edu/~jshi/ped_html/#pub1) Datensatz verwendet, der Bilder von Fußgängern auf der Straße enthält. Wir haben den Datensatz vorab heruntergeladen und mit Amazon S3 verfügbar gemacht. Rufen Sie zur Feinabstimmung Ihres Modells an, `.train()` indem Sie den Amazon S3-Speicherort Ihres Trainingsdatensatzes verwenden.

```
from sagemaker.core import image_uris
from sagemaker.core import model_uris, script_uris, hyperparameters
from sagemaker.train import ModelTrainer
from sagemaker.train.configs import InputData
from sagemaker.train.configs import SourceCode, Compute, StoppingCondition, OutputDataConfig

model_id, model_version = "tensorflow-od1-ssd-resnet50-v1-fpn-640x640-coco17-tpu-8", "*"
training_instance_type = "ml.p3.2xlarge"

# Retrieve the Docker image
train_image_uri = image_uris.retrieve(model_id=model_id,model_version=model_version,image_scope="training",instance_type=training_instance_type,region=None,framework=None)

# Retrieve the training script
train_source_uri = script_uris.retrieve(model_id=model_id, model_version=model_version, script_scope="training")

# Retrieve the pretrained model tarball for transfer learning
train_model_uri = model_uris.retrieve(model_id=model_id, model_version=model_version, model_scope="training")

# Retrieve the default hyperparameters for fine-tuning the model
hyperparameters = hyperparameters.retrieve_default(model_id=model_id, model_version=model_version)

# [Optional] Override default hyperparameters with custom values
hyperparameters["epochs"] = "5"

# Sample training data is available in this bucket
training_data_bucket = f"jumpstart-cache-prod-{aws_region}"
training_data_prefix = "training-datasets/PennFudanPed_COCO_format/"

training_dataset_s3_path = f"s3://{training_data_bucket}/{training_data_prefix}"

output_bucket = sess.default_bucket()
output_prefix = "jumpstart-example-od-training"
s3_output_location = f"s3://{output_bucket}/{output_prefix}/output"

# Create a ModelTrainer instance
tf_od_model_trainer = ModelTrainer(
    role=aws_role,
    training_image=train_image_uri,
    source_code=SourceCode(source_dir=train_source_uri, entry_script="transfer_learning.py"),
    # In V3, pre-trained model artifacts are passed via input_data_config
    compute=Compute(instance_type=training_instance_type, instance_count=1),
    stopping_condition=StoppingCondition(max_runtime_in_seconds=360000),
    hyperparameters=hyperparameters,
    output_data_config=OutputDataConfig(s3_output_path=s3_output_location),
)

# Launch a training job
tf_od_model_trainer.train(
    input_data_config=[
        InputData(channel_name="training", data_source=training_dataset_s3_path),
        InputData(channel_name="model", data_source=train_model_uri),
    ]
)
```

Weitere Informationen zur Verwendung des SageMaker TensorFlow KI-Algorithmus zur Objekterkennung für Transfer Learning an einem benutzerdefinierten Datensatz finden Sie im [ Notizbuch ](https://github.com/aws/amazon-sagemaker-examples/blob/main/introduction_to_amazon_algorithms/object_detection_tensorflow/Amazon_Tensorflow_Object_Detection.ipynb) Einführung in SageMaker TensorFlow — Objekterkennung.