

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.

# AWS-Reinräume ML
<a name="machine-learning"></a>

Mit AWS Clean Rooms ML können zwei oder mehr Parteien Modelle für maschinelles Lernen auf ihren Daten ausführen, ohne ihre Daten miteinander teilen zu müssen. Der Service bietet Kontrollen zur Verbesserung des Datenschutzes, mit denen Dateneigentümer ihre Daten und ihre Modell-IP schützen können. Sie können von Hand AWS erstellte Modelle verwenden oder Ihr eigenes benutzerdefiniertes Modell mitbringen.

Eine detailliertere Erklärung, wie das funktioniert, finden Sie unter. [Kontoübergreifende Jobs](ml-behaviors.md#ml-behaviors-cross-account-jobs)

Weitere Informationen zu den Funktionen von Clean Rooms ML-Modellen finden Sie in den folgenden Themen. 

**Topics**
+ [ML-Terminologie von AWS Clean Rooms](#ml-terminology)
+ [So funktioniert AWS Clean Rooms ML mit AWS Modellen](#ml-how-it-works)
+ [So funktioniert AWS Clean Rooms ML mit benutzerdefinierten Modellen](#custML-how-it-works)
+ [AWS Modelle in Reinräumen (ML)](aws-models.md)
+ [Benutzerdefinierte Modelle in Clean Rooms ML](custom-models.md)

## ML-Terminologie von AWS Clean Rooms
<a name="ml-terminology"></a>

Bei der Verwendung von Clean Rooms ML ist es wichtig, die folgende Terminologie zu verstehen:
+ *Anbieter von Trainingsdaten* — Die Partei, die die Trainingsdaten bereitstellt, ein Lookalike-Modell erstellt und konfiguriert und dieses Lookalike-Modell dann einer Zusammenarbeit zuordnet.
+ *Seed-Datenanbieter* — Die Partei, die die Ausgangsdaten bereitstellt, generiert ein Lookalike-Segment und exportiert ihr Lookalike-Segment.
+ *Trainingsdaten* — Die Daten des Trainingsdatenanbieters, die zur Generierung eines Lookalike-Modells verwendet werden. Die Trainingsdaten werden verwendet, um die Ähnlichkeit des Benutzerverhaltens zu messen.

  Die Trainingsdaten müssen eine Benutzer-ID, eine Element-ID und eine Zeitstempelspalte enthalten. Optional können die Trainingsdaten auch andere Interaktionen als numerische oder kategoriale Merkmale enthalten. Beispiele für Interaktionen sind eine Liste von angesehenen Videos, gekauften Artikeln oder gelesenen Artikeln. 
+ *Seed-Daten* — Die Daten des Seed-Datenanbieters, die zur Erstellung eines Lookalike-Segments verwendet werden. Die Ausgangsdaten können direkt bereitgestellt werden oder aus den Ergebnissen einer AWS Clean Rooms Abfrage stammen. Bei der Ausgabe des Lookalike-Segments handelt es sich um eine Gruppe von Benutzern aus den Trainingsdaten, die den Ausgangsbenutzern am ähnlichsten sind.
+ *Lookalike-Modell* — Ein maschinelles Lernmodell der Trainingsdaten, das verwendet wird, um ähnliche Benutzer in anderen Datensätzen zu finden.

  Bei der Verwendung der API wird der Begriff *Zielgruppenmodell* gleichwertig mit dem Lookalike-Modell verwendet. Beispielsweise verwenden Sie die [CreateAudienceModel](https://docs.aws.amazon.com/cleanrooms-ml/latest/APIReference/API_CreateAudienceModel.html)API, um ein Lookalike-Modell zu erstellen.
+ *Lookalike-Segment* — Eine Teilmenge der Trainingsdaten, die den Ausgangsdaten am ähnlichsten ist.

  Wenn Sie die API verwenden, erstellen Sie mit der API ein Lookalike-Segment. [StartAudienceGenerationJob](https://docs.aws.amazon.com/cleanrooms-ml/latest/APIReference/API_StartAudienceGenerationJob.html)

Die Daten des Trainingsdatenanbieters werden niemals mit dem Startdatenanbieter geteilt, und die Daten des Ausgangsdatenanbieters werden niemals mit dem Trainingsdatenanbieter geteilt. Die Ausgabe des Lookalike-Segments wird mit dem Trainingsdatenanbieter geteilt, aber niemals mit dem Seed-Datenanbieter.

## So funktioniert AWS Clean Rooms ML mit AWS Modellen
<a name="ml-how-it-works"></a>

![\[Ein Überblick darüber, wie AWS Clean Rooms ML mit AWS Modellen funktioniert.\]](http://docs.aws.amazon.com/de_de/clean-rooms/latest/userguide/images/howItWorksML.png)


Die Arbeit mit Lookalike-Modellen erfordert, dass zwei Parteien, ein Anbieter von Trainingsdaten und ein Anbieter von Startdaten, nacheinander zusammenarbeiten, AWS Clean Rooms um ihre Daten in eine Zusammenarbeit einzubringen. Dies ist der Workflow, den der Trainingsdatenanbieter zuerst abschließen muss:

1. Die Daten des Trainingsdatenanbieters müssen in einer AWS Glue Datenkatalogtabelle mit Interaktionen zwischen Benutzern und Elementen gespeichert werden. Die Trainingsdaten müssen mindestens eine Benutzer-ID-Spalte, eine Interaktions-ID-Spalte und eine Zeitstempelspalte enthalten.

1. Der Trainingsdatenanbieter registriert die Trainingsdaten bei AWS Clean Rooms.

1. Der Trainingsdatenanbieter erstellt ein Lookalike-Modell, das mit mehreren Startdatenanbietern gemeinsam genutzt werden kann. Das Lookalike-Modell ist ein tiefes neuronales Netzwerk, dessen Training bis zu 24 Stunden dauern kann. Es wird nicht automatisch neu trainiert und wir empfehlen, dass Sie das Modell wöchentlich neu trainieren.

1. Der Anbieter von Trainingsdaten konfiguriert das Lookalike-Modell, einschließlich der Frage, ob Relevanzkennzahlen und der Amazon S3 S3-Speicherort der Ausgabesegmente geteilt werden sollen. Der Anbieter von Trainingsdaten kann mehrere konfigurierte Lookalike-Modelle aus einem einzigen Lookalike-Modell erstellen.

1. Der Anbieter von Trainingsdaten ordnet das konfigurierte Zielgruppenmodell einer Zusammenarbeit zu, die mit einem Startdatenanbieter geteilt wird.

Dies ist der Workflow, den der Seed-Datenanbieter als Nächstes abschließen muss:

1. Die Daten des Seed-Datenanbieters können in einem Amazon S3 S3-Bucket gespeichert werden oder aus den Ergebnissen einer Abfrage stammen.

1. Der Seed-Datenanbieter eröffnet die Zusammenarbeit, die er mit dem Trainingsdatenanbieter teilt.

1. Der Seed-Datenanbieter erstellt auf der Registerkarte Clean Rooms ML der Kollaborationsseite ein ähnliches Segment. 

1. Der Seed-Datenanbieter kann die Relevanzkennzahlen auswerten, sofern sie geteilt wurden, und das Lookalike-Segment zur externen Verwendung exportieren. AWS Clean Rooms

## So funktioniert AWS Clean Rooms ML mit benutzerdefinierten Modellen
<a name="custML-how-it-works"></a>

Mit Clean Rooms ML können Mitglieder einer Kollaboration einen angedockten benutzerdefinierten Modellalgorithmus verwenden, der in Amazon ECR gespeichert ist, um ihre Daten gemeinsam zu analysieren. Dazu muss der *Modellanbieter* ein Bild erstellen und es in Amazon ECR speichern. Folgen Sie den Schritten im [Amazon Elastic Container Registry User Guide](https://docs.aws.amazon.com/AmazonECR/latest/userguide/), um ein privates Repository zu erstellen, das das benutzerdefinierte ML-Modell enthalten wird. 

Jedes Mitglied einer Kollaboration kann der *Modellanbieter* sein, vorausgesetzt, es verfügt über die richtigen Berechtigungen. Alle Mitglieder einer Kollaboration können Trainingsdaten, Inferenzdaten oder beides zum Modell beitragen. Für die Zwecke dieses Leitfadens werden Mitglieder, die Daten beisteuern, als *Datenanbieter* bezeichnet. Das Mitglied, das die Kollaboration erstellt, ist der *Ersteller der Kollaboration*, und dieses Mitglied kann entweder der *Modellanbieter*, einer der *Datenanbieter* oder beides sein.

Auf der höchsten Ebene sind die folgenden Schritte aufgeführt, die ausgeführt werden müssen, um eine benutzerdefinierte ML-Modellierung durchzuführen:

1. Der Kollaborationsersteller erstellt eine Kollaboration und weist jedem Mitglied die richtigen Mitgliederfähigkeiten und Zahlungskonfigurationen zu. Der Kollaborationsersteller muss in diesem Schritt dem jeweiligen Mitglied die Fähigkeit zuweisen, entweder Modellausgaben zu empfangen oder Inferenzergebnisse zu empfangen, da diese Fähigkeit nach der Erstellung der Kollaboration nicht mehr aktualisiert werden kann. Weitere Informationen finden Sie unter [Aufbau und Beitritt zur Zusammenarbeit in AWS Clean Rooms ML](create-custom-ml-collaboration.md).

1. Der Modellanbieter konfiguriert und ordnet sein containerisiertes ML-Modell der Kollaboration zu und stellt sicher, dass Datenschutzbeschränkungen für exportierte Daten festgelegt werden. Weitere Informationen finden Sie unter [Konfiguration eines Modellalgorithmus in AWS Clean Rooms ML](configure-model-algorithm.md).

1. Die Datenanbieter tragen ihre Daten zur Zusammenarbeit bei und stellen sicher, dass ihre Datenschutzanforderungen spezifiziert werden. Datenanbieter müssen dem Modell den Zugriff auf ihre Daten ermöglichen. Weitere Informationen erhalten Sie unter [Bereitstellung von Trainingsdaten in AWS Clean Rooms ML](custom-model-training-data.md) und [Zuordnen des konfigurierten Modellalgorithmus in AWS Clean Rooms ML](associate-model-algorithm.md).

1. Ein Mitglied der Kollaboration erstellt die ML-Konfiguration, die definiert, wohin die Modellartefakte oder Inferenzergebnisse exportiert werden.

1. Ein Kollaborationsmitglied erstellt einen ML-Eingabekanal, der Eingaben für den Trainings- oder Inferenzcontainer bereitstellt. Der ML-Eingabekanal ist eine Abfrage, die die Daten definiert, die im Kontext des Modellalgorithmus verwendet werden sollen.

1. Ein Kollaborationsmitglied ruft das Modelltraining mithilfe des ML-Eingabekanals und des konfigurierten Modellalgorithmus auf. Weitere Informationen finden Sie unter [Erstellen eines trainierten Modells in AWS Clean Rooms ML](create-trained-model.md).

1. (Optional) Der Modeltrainer ruft den Modellexportjob auf und die Modellartefakte werden an den Empfänger der Modellergebnisse gesendet. Nur Mitglieder mit einer gültigen ML-Konfiguration und der Fähigkeit, Modellausgaben zu empfangen, können Modellartefakte empfangen. Weitere Informationen finden Sie unter [Exportieren von Modellartefakten aus AWS Clean Rooms ML](export-model-artifacts.md).

1. (Optional) Ein Kollaborationsmitglied ruft die Modellinferenz mithilfe des ML-Eingangskanals, des trainierten Modell-ARN und des mit Inferenz konfigurierten Modellalgorithmus auf. Die Inferenzergebnisse werden an den Empfänger für die Inferenzausgabe gesendet. Nur Mitglieder mit einer gültigen ML-Konfiguration und der Fähigkeit eines Mitglieds, Inferenzausgaben zu empfangen, können Inferenzergebnisse empfangen.

Hier sind die Schritte, die vom *Modellanbieter* ausgeführt werden müssen:

1. Erstellen Sie ein SageMaker KI-kompatibles Amazon ECR-Docker-Image. Clean Rooms ML unterstützt nur SageMaker KI-kompatible Docker-Images.

1. Nachdem Sie ein SageMaker KI-kompatibles Docker-Image erstellt haben, übertragen Sie das Image an Amazon ECR. Folgen Sie den Anweisungen im [Amazon Elastic Container Registry User Guide](https://docs.aws.amazon.com/AmazonECR/latest/userguide/), um ein Container-Training-Image zu erstellen.

1. Konfigurieren Sie den Modellalgorithmus für die Verwendung in Clean Rooms ML.

   1. Geben Sie den Amazon ECR-Repository-Link und alle Argumente an, die für die Konfiguration des Modellalgorithmus erforderlich sind.

   1. Stellen Sie eine Servicezugriffsrolle bereit, die Clean Rooms ML den Zugriff auf das Amazon ECR-Repository ermöglicht.

   1. Ordnen Sie den konfigurierten Modellalgorithmus der Kollaboration zu. Dazu gehört die Bereitstellung einer Datenschutzrichtlinie, die Kontrollen für Container-Logs, Fehlerprotokolle und CloudWatch Metriken sowie Beschränkungen dafür definiert, wie viele Daten aus den Container-Ergebnissen exportiert werden können.

Die folgenden Schritte müssen vom *Datenanbieter* ausgeführt werden, um mit einem benutzerdefinierten ML-Modell zusammenzuarbeiten:

1. Konfigurieren Sie eine vorhandene AWS Glue Tabelle mit einer benutzerdefinierten Analyseregel. Auf diese Weise können bestimmte vorab genehmigte Abfragen oder vorab genehmigte Konten Ihre Daten verwenden.

1. Ordnen Sie Ihre konfigurierte Tabelle einer Kollaboration zu und stellen Sie eine Dienstzugriffsrolle bereit, die auf Ihre AWS Glue Tabellen zugreifen kann.

1. [Fügen Sie der Tabelle eine Regel zur Kollaborationsanalyse](add-collaboration-analysis-rule.md) hinzu, die es der konfigurierten Modellalgorithmus-Assoziation ermöglicht, auf die konfigurierte Tabelle zuzugreifen.

1. Nachdem das Modell und die Daten in Clean Rooms ML verknüpft und konfiguriert wurden, stellt das Mitglied, das Abfragen ausführen kann, eine SQL-Abfrage bereit und wählt den zu verwendenden Modellalgorithmus aus.

 Nach Abschluss des Modelltrainings initiiert dieses Mitglied den Export von Modelltrainingsartefakten oder Inferenzergebnissen. Diese Artefakte oder Ergebnisse werden an das Mitglied gesendet, das die Ausgabe des trainierten Modells empfangen kann. Der Empfänger der Ergebnisse muss sie konfigurieren, `MachineLearningConfiguration` bevor er die Modellausgabe empfangen kann.

# AWS Modelle in Reinräumen (ML)
<a name="aws-models"></a>

AWS Clean Rooms ML bietet eine Methode zur Wahrung der Privatsphäre, mit der zwei Parteien ähnliche Benutzer in ihren Daten identifizieren können, ohne ihre Daten miteinander teilen zu müssen. Die erste Partei stellt die Trainingsdaten zur Verfügung, AWS Clean Rooms sodass sie ein Lookalike-Modell erstellen und konfigurieren und es mit einer Zusammenarbeit verknüpfen kann. Anschließend werden Ausgangsdaten in die Zusammenarbeit übernommen, um ein ähnliches Segment zu erstellen, das den Trainingsdaten ähnelt.

Eine detailliertere Erklärung, wie das funktioniert, finden Sie unter[Kontoübergreifende Jobs](ml-behaviors.md#ml-behaviors-cross-account-jobs).

Die folgenden Themen enthalten Informationen zum Erstellen und Konfigurieren von AWS Modellen in Clean Rooms ML.

**Topics**
+ [Datenschutz von AWS Clean Rooms ML](ml-privacy.md)
+ [Anforderungen an Schulungsdaten für Clean Rooms ML](ml-training-data-requirements.md)
+ [Anforderungen an Saatgutdaten für Clean Rooms ML](ml-seed-data-requirements.md)
+ [Bewertungsmetriken für das ML-Modell von AWS Clean Rooms](ml-metrics.md)

# Datenschutz von AWS Clean Rooms ML
<a name="ml-privacy"></a>

Clean Rooms ML wurde entwickelt, um das Risiko von *Inferenzangriffen auf Mitglieder* zu verringern, bei denen der Anbieter der Trainingsdaten herausfinden kann, wer in den Startdaten enthalten ist, und der Anbieter der Startdaten kann herausfinden, wer in den Trainingsdaten enthalten ist. Es wurden mehrere Schritte unternommen, um diesen Angriff zu verhindern.

Erstens beobachten Anbieter von Saatgutdaten die Ergebnisse von Clean Rooms ML nicht direkt, und Anbieter von Trainingsdaten können die Saatgutdaten niemals beobachten. Anbieter von Startdaten können sich dafür entscheiden, die Ausgangsdaten in das Output-Segment aufzunehmen.

Als Nächstes wird das Lookalike-Modell aus einer Zufallsstichprobe der Trainingsdaten erstellt. Diese Stichprobe umfasst eine beträchtliche Anzahl von Benutzern, die nicht der Stammzielgruppe entsprechen. Durch diesen Prozess ist es schwieriger festzustellen, ob ein Benutzer nicht in den Daten enthalten war. Dies ist eine weitere Möglichkeit, Rückschlüsse auf die Mitgliedschaft zu ziehen.

Außerdem können mehrere Startkunden für jeden Parameter des samenspezifischen Lookalike-Modell-Trainings verwendet werden. Dadurch wird begrenzt, wie stark das Modell übermäßig angepasst werden kann und wie viel Rückschlüsse auf einen Benutzer gezogen werden können. Daher empfehlen wir, dass die Mindestgröße der Ausgangsdaten 500 Benutzer beträgt. 

Schließlich werden den Anbietern von Trainingsdaten niemals Kennzahlen auf Benutzerebene zur Verfügung gestellt, wodurch eine weitere Möglichkeit für einen Angriff auf Mitgliedschaftsabschlüsse ausgeschlossen wird.

# Anforderungen an Schulungsdaten für Clean Rooms ML
<a name="ml-training-data-requirements"></a>

Um erfolgreich ein Lookalike-Modell zu erstellen, müssen Ihre Trainingsdaten die folgenden Anforderungen erfüllen:
+ Die Trainingsdaten müssen im Parquet-, CSV- oder JSON-Format vorliegen.
**Anmerkung**  
Zstandard (ZSTD) komprimierte Parquet-Daten werden nicht unterstützt.
+ Ihre Trainingsdaten müssen katalogisiert sein. AWS Glue Weitere Informationen finden Sie unter [Erste Schritte mit dem AWS Glue Glue-Datenkatalog](https://docs.aws.amazon.com//glue/latest/dg/start-data-catalog.html) im AWS Glue Entwicklerhandbuch. Wir empfehlen die Verwendung von AWS Glue Crawlern zur Erstellung Ihrer Tabellen, da das Schema automatisch abgeleitet wird.
+ Der Amazon S3 S3-Bucket, der die Trainings- und Startdaten enthält, befindet sich in derselben AWS Region wie Ihre anderen Clean Rooms ML-Ressourcen.
+ Die Trainingsdaten müssen mindestens 100.000 eindeutige Benutzer IDs mit jeweils mindestens zwei Artikelinteraktionen enthalten.
+ Die Trainingsdaten müssen mindestens 1 Million Datensätze enthalten.
+ Das in der [CreateTrainingDataset](https://docs.aws.amazon.com/cleanrooms-ml/latest/APIReference/API_CreateTrainingDataset.html)Aktion angegebene Schema muss mit dem Schema übereinstimmen, das bei der Erstellung der AWS Glue Tabelle definiert wurde.
+ Die erforderlichen Felder, wie sie in der bereitgestellten Tabelle definiert sind, sind in der [CreateTrainingDataset](https://docs.aws.amazon.com/cleanrooms-ml/latest/APIReference/API_CreateTrainingDataset.html)Aktion definiert.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/clean-rooms/latest/userguide/ml-training-data-requirements.html)
+ Optional können Sie insgesamt bis zu 10 kategoriale oder numerische Merkmale angeben.

Hier ist ein Beispiel für einen gültigen Trainingsdatensatz im CSV-Format

```
USER_ID,ITEM_ID,TIMESTAMP,EVENT_TYPE(CATEGORICAL FEATURE),EVENT_VALUE (NUMERICAL FEATURE)
196,242,881250949,click,15
186,302,891717742,click,13
22,377,878887116,click,10
244,51,880606923,click,20
166,346,886397596,click,10
```

# Anforderungen an Saatgutdaten für Clean Rooms ML
<a name="ml-seed-data-requirements"></a>

Die Ausgangsdaten für ein Lookalike-Modell können entweder direkt aus einem Amazon S3 S3-Bucket oder aus den Ergebnissen einer SQL-Abfrage stammen. 

Direkt bereitgestellte Ausgangsdaten müssen die folgenden Anforderungen erfüllen:
+ Die Ausgangsdaten müssen im JSON-Zeilenformat mit einer Benutzerliste vorliegen IDs.
+ Die Ausgangsgröße sollte zwischen 25 und 500.000 einzelnen Benutzern IDs liegen.
+ Die Mindestanzahl von Startbenutzern muss dem Mindestwert für die passende Ausgangsgröße entsprechen, der bei der Erstellung des konfigurierten Zielgruppenmodells angegeben wurde.

Im Folgenden finden Sie ein Beispiel für einen gültigen Trainingsdatensatz im CSV-Format

```
{"user_id": "abc"}
{"user_id": "def"}
{"user_id": "ghijkl"}
{"user_id": "123"}
{"user_id": "456"}
{"user_id": "7890"}
```

# Bewertungsmetriken für das ML-Modell von AWS Clean Rooms
<a name="ml-metrics"></a>

Clean Rooms ML berechnet den *Erinnerungs* - und den *Relevanzwert*, um festzustellen, wie gut Ihr Modell abschneidet. Recall vergleicht die Ähnlichkeit zwischen den Lookalike-Daten und den Trainingsdaten. Der Relevanzwert wird verwendet, um zu entscheiden, wie groß die Zielgruppe sein sollte, und nicht, ob das Modell gut abschneidet.

Der *Recall* ist ein unvoreingenommenes Maß dafür, wie ähnlich das Lookalike-Segment den Trainingsdaten ist. Die Rückrufaktion ist der Prozentsatz der Nutzer, die sich am ähnlichsten sind (standardmäßig die ähnlichsten 20%) aus einer Stichprobe von Trainingsdaten, die in der Startzielgruppe nach dem Job zur Zielgruppengenerierung enthalten sind. Die Werte liegen zwischen 0 und 1, größere Werte deuten auf eine bessere Zielgruppe hin. Ein Erinnerungswert, der in etwa dem maximalen Prozentsatz entspricht, gibt an, dass das Zielgruppenmodell einer zufälligen Auswahl entspricht.

Wir halten dies für eine bessere Bewertungsmetrik als Genauigkeit, Präzision und F1-Werte, da Clean Rooms ML bei der Erstellung seines Modells nicht genau als negativ eingestufte Nutzer eingestuft hat.

Der *Relevanzwert* auf Segmentebene ist ein Maß für die Ähnlichkeit mit Werten im Bereich von -1 (am wenigsten ähnlich) bis 1 (am ähnlichsten). Clean Rooms ML berechnet eine Reihe von Relevanzwerten für verschiedene Segmentgrößen, damit Sie die beste Segmentgröße für Ihre Daten ermitteln können. Die Relevanzwerte nehmen mit zunehmender Segmentgröße monoton ab, sodass sie mit zunehmender Segmentgröße den Ausgangsdaten weniger ähnlich sein können. Wenn der Relevanzwert auf Segmentebene 0 erreicht, prognostiziert das Modell, dass alle Benutzer im Lookalike-Segment aus derselben Verteilung stammen wie die Ausgangsdaten. Durch eine Erhöhung der Ausgabegröße werden wahrscheinlich auch Benutzer im Lookalike-Segment berücksichtigt, die nicht aus derselben Verteilung wie die Ausgangsdaten stammen.

Die Relevanzwerte werden innerhalb einer einzelnen Kampagne normalisiert und sollten nicht für Vergleiche zwischen Kampagnen verwendet werden. Relevanzwerte sollten nicht als Einzelnachweis für Geschäftsergebnisse verwendet werden, da diese neben der Relevanz auch von mehreren komplexen Faktoren beeinflusst werden, wie z. B. Bestandsqualität, Inventarart, Zeitpunkt der Werbung usw.

Relevanzwerte sollten nicht dazu verwendet werden, die Qualität des Saatguts zu beurteilen, sondern eher, ob sie erhöht oder verringert werden kann. Betrachten Sie die folgenden Beispiele:
+ Durchweg positive Werte — Dies deutet darauf hin, dass es mehr Output-Nutzer gibt, die als ähnlich prognostiziert werden, als dass sie im Lookalike-Segment enthalten sind. Dies ist häufig bei Saatgutdaten der Fall, die Teil eines großen Marktes sind, z. B. bei allen, die im letzten Monat Zahnpasta gekauft haben. Wir empfehlen, sich kleinere Samendaten anzusehen, z. B. alle, die im letzten Monat mehr als einmal Zahnpasta gekauft haben.
+ Alle Werte sind negativ oder negativ für Ihre gewünschte Lookalike-Segmentgröße — Dies deutet darauf hin, dass Clean Rooms ML davon ausgeht, dass es in der gewünschten Lookalike-Segmentgröße nicht genügend ähnliche Benutzer gibt. Das kann daran liegen, dass die Startdaten zu spezifisch sind oder der Markt zu klein ist. Wir empfehlen, entweder weniger Filter auf die Saatgutdaten anzuwenden oder den Markt zu erweitern. Wenn es sich bei den ursprünglichen Ausgangsdaten beispielsweise um Kunden handelte, die einen Kinderwagen und einen Kindersitz gekauft haben, könnten Sie den Markt auf Kunden ausdehnen, die mehrere Babyartikel gekauft haben.

Die Anbieter von Schulungsdaten bestimmen, ob die Relevanzwerte veröffentlicht werden und welche Felder für die Berechnung der Relevanzwerte verwendet werden.

# Benutzerdefinierte Modelle in Clean Rooms ML
<a name="custom-models"></a>

Mit Clean Rooms ML können Mitglieder einer Kollaboration einen angedockten benutzerdefinierten Modellalgorithmus verwenden, der in Amazon ECR gespeichert ist, um ihre Daten gemeinsam zu analysieren. Dazu muss der *Modellanbieter* ein Bild erstellen und es in Amazon ECR speichern. Folgen Sie den Schritten im [Amazon Elastic Container Registry User Guide](https://docs.aws.amazon.com/AmazonECR/latest/userguide/), um ein privates Repository zu erstellen, das das benutzerdefinierte ML-Modell enthalten wird. 

Jedes Mitglied einer Kollaboration kann der *Modellanbieter* sein, vorausgesetzt, es verfügt über die richtigen Berechtigungen. Alle Mitglieder einer Kollaboration können Daten zum Modell beitragen. Für die Zwecke dieses Leitfadens werden Mitglieder, die Daten beisteuern, als *Datenanbieter* bezeichnet. Das Mitglied, das die Kollaboration erstellt, ist der *Ersteller der Kollaboration*, und dieses Mitglied kann entweder der *Modellanbieter*, einer der *Datenanbieter* oder beides sein.

In den folgenden Themen werden die Informationen beschrieben, die zum Erstellen eines benutzerdefinierten ML-Modells erforderlich sind

**Topics**
+ [Voraussetzungen für die benutzerdefinierte ML-Modellierung](custom-model-prerequisites.md)
+ [Richtlinien für die Modellerstellung für den Trainingscontainer](custom-model-guidelines.md)
+ [Richtlinien für die Modellerstellung für den Inferenzcontainer](inference-model-guidelines.md)
+ [Empfangen von Modellprotokollen und Metriken](custom-model-logs.md)

# Voraussetzungen für die benutzerdefinierte ML-Modellierung
<a name="custom-model-prerequisites"></a>

Bevor Sie eine benutzerdefinierte ML-Modellierung durchführen können, sollten Sie Folgendes berücksichtigen:
+ Stellen Sie fest, ob im Rahmen der Zusammenarbeit sowohl das Modelltraining als auch die Inferenz am trainierten Modell durchgeführt werden sollen.
+ Legen Sie fest, welche Rolle jedes Kollaborationsmitglied übernehmen soll, und weisen Sie ihm die entsprechenden Fähigkeiten zu.
  + Weisen Sie die `CAN_QUERY` Fähigkeit dem Mitglied zu, das das Modell trainiert und Inferenzen anhand des trainierten Modells durchführt.
  + Weisen Sie `CAN_RECEIVE_RESULTS` die mindestens einem Mitglied der Kollaboration zu.
  + Weisen Sie `CAN_RECEIVE_MODEL_OUTPUT` dem Mitglied, das trainierte Modellexporte bzw. Inferenzergebnisse erhalten soll, `CAN_RECEIVE_INFERENCE_OUTPUT` Fähigkeiten zu. Sie können sich dafür entscheiden, beide Fähigkeiten zu verwenden, wenn sie für Ihren Anwendungsfall erforderlich sind.
+ Bestimmen Sie die maximale Größe der trainierten Modellartefakte oder Inferenzergebnisse, die exportiert werden dürfen.
+ Wir empfehlen, dass alle Benutzer die `CleanroomsMLFullAccess` Richtlinien `CleanrooomsFullAccess` und ihrer Rolle zuordnen. Für die Verwendung benutzerdefinierter ML-Modelle müssen AWS Clean Rooms sowohl das ML als auch AWS Clean Rooms ML verwendet SDKs werden.
+ Beachten Sie die folgenden Informationen zu IAM-Rollen.
  + Alle Datenanbieter müssen über eine Servicezugriffsrolle verfügen, die es AWS Clean Rooms ermöglicht, Daten aus ihren AWS Glue Katalogen und Tabellen sowie den zugrunde liegenden Amazon S3 S3-Standorten zu lesen. Diese Rollen ähneln denen, die für SQL-Abfragen erforderlich sind. Dadurch können Sie die `CreateConfiguredTableAssociation` Aktion verwenden. Weitere Informationen finden Sie unter [Erstellen Sie eine Servicerolle, um eine konfigurierte Tabellenzuordnung zu erstellen](ml-roles.md#ml-roles-custom-configure-table). 
  + Alle Mitglieder, die Metriken erhalten möchten, müssen über eine Dienstzugriffsrolle verfügen, die es ihnen ermöglicht, CloudWatch Metriken und Protokolle zu schreiben. Diese Rolle wird von Clean Rooms ML verwendet, um AWS-Konto während des Modelltrainings und der Inferenz alle Modellmetriken und -protokolle in die Mitglieder zu schreiben. Wir bieten auch Datenschutzkontrollen an, um zu bestimmen, welche Mitglieder Zugriff auf die Metriken und Protokolle haben. Auf diese Weise können Sie die `CreateMLConfiguration` Aktion verwenden. Weitere Informationen finden Sie unter [Erstellen Sie eine Servicerolle für die benutzerdefinierte ML-Modellierung — ML-Konfiguration](ml-roles.md#ml-roles-custom-configure). 

    Das Mitglied, das Ergebnisse erhält, muss eine Servicezugriffsrolle mit Schreibberechtigungen für seinen Amazon S3 S3-Bucket bereitstellen. Diese Rolle ermöglicht es Clean Rooms ML, Ergebnisse (trainierte Modellartefakte oder Inferenzergebnisse) in einen Amazon S3 S3-Bucket zu exportieren. Auf diese Weise können Sie die `CreateMLConfiguration` Aktion verwenden. Weitere Informationen finden Sie unter [Erstellen Sie eine Servicerolle für die benutzerdefinierte ML-Modellierung — ML-Konfiguration](ml-roles.md#ml-roles-custom-configure). 
  + Der Modellanbieter muss eine Servicezugriffsrolle mit Berechtigungen zum Lesen seines Amazon ECR-Repositorys und Images bereitstellen. Auf diese Weise können Sie die `CreateConfigureModelAlgorithm` Aktion verwenden. Weitere Informationen finden Sie unter [Erstellen Sie eine Servicerolle, um ein benutzerdefiniertes ML-Modell bereitzustellen](ml-roles.md#ml-roles-custom-model-provider). 
  + Das Mitglied, das die erstellt, `MLInputChannel` um Datensätze für Training oder Inferenz zu generieren, muss eine Dienstzugriffsrolle bereitstellen, in der Clean Rooms ML eine SQL-Abfrage ausführen kann. AWS Clean Rooms Auf diese Weise können Sie die Aktionen `CreateTrainedModel` und `StartTrainedModelInferenceJob` verwenden. Weitere Informationen finden Sie unter [Erstellen Sie eine Servicerolle, um einen Datensatz abzufragen](ml-roles.md#ml-roles-custom-query-dataset). 
+ Modellautoren sollten sich an die Regeln [Richtlinien für die Modellerstellung für den Trainingscontainer](custom-model-guidelines.md) und halten[Richtlinien für die Modellerstellung für den InferenzcontainerEmpfangen von Modellprotokollen und Metriken](inference-model-guidelines.md), um sicherzustellen, dass die Modelleingaben und -ausgaben wie erwartet von konfiguriert sind AWS Clean Rooms.

# Richtlinien für die Modellerstellung für den Trainingscontainer
<a name="custom-model-guidelines"></a>

In diesem Abschnitt werden die Richtlinien beschrieben, die Modellanbieter bei der Erstellung eines benutzerdefinierten ML-Modellalgorithmus für Clean Rooms ML beachten sollten.
+ Verwenden Sie das entsprechende, von SageMaker KI-Schulungen unterstützte Container-Basis-Image, wie im [SageMaker AI Developer Guide](https://docs.aws.amazon.com/sagemaker/latest/dg-ecr-paths/sagemaker-algo-docker-registry-paths.html) beschrieben. Mit dem folgenden Code können Sie die unterstützten Container-Basis-Images von öffentlichen SageMaker KI-Endpunkten abrufen.

  ```
  ecr_registry_endpoint='763104351884.dkr.ecr.$REGION.amazonaws.com'
  base_image='pytorch-training:2.3.0-cpu-py311-ubuntu20.04-sagemaker'
  aws ecr get-login-password --region $REGION | docker login --username AWS --password-stdin $ecr_registry_endpoint
  docker pull $ecr_registry_endpoint/$base_image
  ```
+ Achten Sie bei der lokalen Erstellung des Modells auf Folgendes, damit Sie Ihr Modell lokal, auf einer Entwicklungsinstanz, auf SageMaker AI Training in Ihrem AWS-Konto und auf Clean Rooms ML testen können.
  + Wir empfehlen, ein Trainingsskript zu schreiben, das über verschiedene Umgebungsvariablen auf nützliche Eigenschaften der Trainingsumgebung zugreift. Clean Rooms ML verwendet die folgenden Argumente, um das Training für Ihren Modellcode aufzurufen:`SM_MODEL_DIR`, `SM_OUTPUT_DIR``SM_CHANNEL_TRAIN`, und. `FILE_FORMAT` Diese Standardwerte werden von Clean Rooms ML verwendet, um Ihr ML-Modell in einer eigenen Ausführungsumgebung mit den Daten aller Parteien zu trainieren.
  + Clean Rooms ML stellt Ihre Trainingseingabekanäle über die `/opt/ml/input/data/channel-name` Verzeichnisse im Docker-Container zur Verfügung. Jeder ML-Eingangskanal wird auf der Grundlage seines in der Anfrage `channel_name` angegebenen entsprechenden Kanals zugeordnet. `CreateTrainedModel`

    ```
    parser = argparse.ArgumentParser()# Data, model, and output directories
    
    parser.add_argument('--model_dir', type=str, default=os.environ.get('SM_MODEL_DIR', "/opt/ml/model"))
    parser.add_argument('--output_dir', type=str, default=os.environ.get('SM_OUTPUT_DIR', "/opt/ml/output/data"))
    parser.add_argument('--train_dir', type=str, default=os.environ.get('SM_CHANNEL_TRAIN', "/opt/ml/input/data/train"))
    parser.add_argument('--train_file_format', type=str, default=os.environ.get('FILE_FORMAT', "csv"))
    ```
  + Stellen Sie sicher, dass Sie in der Lage sind, einen synthetischen Datensatz oder einen Testdatensatz auf der Grundlage des Schemas der Mitarbeiter zu generieren, das in Ihrem Modellcode verwendet wird.
  + Stellen Sie sicher, dass Sie einen SageMaker KI-Trainingsjob selbst ausführen können, AWS-Konto bevor Sie den Modellalgorithmus einer AWS Clean Rooms Kollaboration zuordnen.

    Der folgende Code enthält eine Docker-Beispieldatei, die mit lokalen Tests, Tests der SageMaker KI-Trainingsumgebung und Clean Rooms ML kompatibel ist

    ```
    FROM  763104351884.dkr.ecr.us-west-2.amazonaws.com/pytorch-training:2.3.0-cpu-py311-ubuntu20.04-sagemaker
    MAINTAINER $author_name
    
    ENV PYTHONDONTWRITEBYTECODE=1 \
        PYTHONUNBUFFERED=1 \
        LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib"
    
    ENV PATH="/opt/ml/code:${PATH}"
    
    # this environment variable is used by the SageMaker PyTorch container to determine our user code directory
    ENV SAGEMAKER_SUBMIT_DIRECTORY /opt/ml/code
    
    # copy the training script inside the container
    COPY train.py /opt/ml/code/train.py
    # define train.py as the script entry point
    ENV SAGEMAKER_PROGRAM train.py
    ENTRYPOINT ["python", "/opt/ml/code/train.py"]
    ```
+ Um Container-Fehler bestmöglich überwachen zu können, empfehlen wir, Protokolle zu exportieren und aus Fehlergründen zu debuggen. In einer `GetTrainedModel` Antwort gibt Clean Rooms ML die ersten 1024 Zeichen aus dieser Datei unter `StatusDetails` zurück. 
+ Nachdem Sie alle Modelländerungen vorgenommen haben und bereit sind, es in der SageMaker KI-Umgebung zu testen, führen Sie die folgenden Befehle in der angegebenen Reihenfolge aus.

  ```
  export ACCOUNT_ID=xxx
  export REPO_NAME=xxx
  export REPO_TAG=xxx
  export REGION=xxx
  
  docker build -t $ACCOUNT_ID.dkr.ecr.us-west-2.amazonaws.com/$REPO_NAME:$REPO_TAG
  
  # Sign into AWS $ACCOUNT_ID/ Run aws configure
  # Check the account and make sure it is the correct role/credentials
  aws sts get-caller-identity
  aws ecr create-repository --repository-name $REPO_NAME --region $REGION
  aws ecr describe-repositories --repository-name $REPO_NAME --region $REGION
  
  # Authenticate Doker
  aws ecr get-login-password --region $REGION | docker login --username AWS --password-stdin $ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com
  
  # Push To ECR Images
  docker push  $ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com$REPO_NAME:$REPO_TAG
  
  # Create Sagemaker Training job
  # Configure the training_job.json with
  # 1. TrainingImage
  # 2. Input DataConfig
  # 3. Output DataConfig
  aws sagemaker create-training-job --cli-input-json file://training_job.json --region $REGION
  ```

  Nachdem der SageMaker KI-Job abgeschlossen ist und Sie mit Ihrem Modellalgorithmus zufrieden sind, können Sie das Amazon ECR Registry bei AWS Clean Rooms ML registrieren. Verwenden Sie die `CreateConfiguredModelAlgorithm` Aktion, um den Modellalgorithmus `CreateConfiguredModelAlgorithmAssociation` zu registrieren und ihn anschließend einer Kollaboration zuzuordnen.

# Richtlinien für die Modellerstellung für den Inferenzcontainer
<a name="inference-model-guidelines"></a>

In diesem Abschnitt werden die Richtlinien beschrieben, die Modellanbieter bei der Erstellung eines Inferenzalgorithmus für Clean Rooms ML beachten sollten.
+ Verwenden Sie das entsprechende, von SageMaker KI-Inferenzen unterstützte Container-Basis-Image, wie im [SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg-ecr-paths/sagemaker-algo-docker-registry-paths.html) Developer Guide beschrieben. Mit dem folgenden Code können Sie die unterstützten Container-Basis-Images von öffentlichen SageMaker KI-Endpunkten abrufen.

  ```
  ecr_registry_endpoint='763104351884.dkr.ecr.$REGION.amazonaws.com'
  base_image='pytorch-inference:2.3.0-cpu-py311-ubuntu20.04-sagemaker'
  aws ecr get-login-password --region $REGION | docker login --username AWS --password-stdin $ecr_registry_endpoint
  docker pull $ecr_registry_endpoint/$base_image
  ```
+ Wenn Sie das Modell lokal erstellen, stellen Sie Folgendes sicher, damit Sie Ihr Modell lokal, auf einer Entwicklungsinstanz, auf SageMaker AI Batch Transform in Ihrem AWS-Konto und auf Clean Rooms ML testen können.
  + Clean Rooms ML stellt Ihre Modellartefakte aus der Inferenz über das `/opt/ml/model` Verzeichnis im Docker-Container zur Verwendung durch Ihren Inferenzcode zur Verfügung.
  + Clean Rooms ML teilt die Eingabe zeilenweise auf, verwendet eine `MultiRecord` Batch-Strategie und fügt am Ende jedes transformierten Datensatzes ein Zeilenumbruchzeichen hinzu.
  + Stellen Sie sicher, dass Sie auf der Grundlage des Schemas der Mitarbeiter, die in Ihrem Modellcode verwendet werden, einen synthetischen Datensatz oder einen Test-Inferenzdatensatz generieren können.
  + Stellen Sie sicher, dass Sie einen SageMaker AI-Batch-Transformationsjob selbst ausführen können, AWS-Konto bevor Sie den Modellalgorithmus einer AWS Clean Rooms Kollaboration zuordnen.

    Der folgende Code enthält eine Docker-Beispieldatei, die mit lokalen Tests, Tests von SageMaker KI-Transformationsumgebungen und Clean Rooms ML kompatibel ist

    ```
    FROM 763104351884.dkr.ecr.us-east-1.amazonaws.com/pytorch-inference:1.12.1-cpu-py38-ubuntu20.04-sagemaker
    
    ENV PYTHONUNBUFFERED=1
    
    COPY serve.py /opt/ml/code/serve.py
    COPY inference_handler.py /opt/ml/code/inference_handler.py
    COPY handler_service.py /opt/ml/code/handler_service.py
    COPY model.py /opt/ml/code/model.py
    
    RUN chmod +x /opt/ml/code/serve.py
    
    ENTRYPOINT ["/opt/ml/code/serve.py"]
    ```
+ Nachdem Sie alle Modelländerungen vorgenommen haben und bereit sind, sie in der SageMaker KI-Umgebung zu testen, führen Sie die folgenden Befehle in der angegebenen Reihenfolge aus.

  ```
  export ACCOUNT_ID=xxx
  export REPO_NAME=xxx
  export REPO_TAG=xxx
  export REGION=xxx
  
  docker build -t $ACCOUNT_ID.dkr.ecr.us-west-2.amazonaws.com/$REPO_NAME:$REPO_TAG
  
  # Sign into AWS $ACCOUNT_ID/ Run aws configure
  # Check the account and make sure it is the correct role/credentials
  aws sts get-caller-identity
  aws ecr create-repository --repository-name $REPO_NAME --region $REGION
  aws ecr describe-repositories --repository-name $REPO_NAME --region $REGION
  
  # Authenticate Docker
  aws ecr get-login-password --region $REGION | docker login --username AWS --password-stdin $ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com
  
  # Push To ECR Repository
  docker push $ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com$REPO_NAME:$REPO_TAG
  
  # Create Sagemaker Model
  # Configure the create_model.json with
  # 1. Primary container - 
      # a. ModelDataUrl - S3 Uri of the model.tar from your training job
  aws sagemaker create-model --cli-input-json file://create_model.json --region $REGION
  
  # Create Sagemaker Transform Job
  # Configure the transform_job.json with
  # 1. Model created in the step above 
  # 2. MultiRecord batch strategy
  # 3. Line SplitType for TransformInput
  # 4. AssembleWith Line for TransformOutput
  aws sagemaker create-transform-job --cli-input-json file://transform_job.json --region $REGION
  ```

  Nachdem der SageMaker KI-Job abgeschlossen ist und Sie mit Ihrer Batch-Transformation zufrieden sind, können Sie das Amazon ECR Registry bei AWS Clean Rooms ML registrieren. Verwenden Sie die `CreateConfiguredModelAlgorithm` Aktion, um den Modellalgorithmus `CreateConfiguredModelAlgorithmAssociation` zu registrieren und ihn anschließend einer Kollaboration zuzuordnen.

# Empfangen von Modellprotokollen und Metriken
<a name="custom-model-logs"></a>

Um Protokolle und Metriken aus Schulungen oder Inferenzen mit benutzerdefinierten Modellen zu erhalten, müssen die Mitglieder [eine ML-Konfiguration mit einer gültigen Rolle erstellt](https://docs.aws.amazon.com/clean-rooms/latest/userguide/create-custom-ml-collaboration.html) haben, die die erforderlichen CloudWatch Berechtigungen bereitstellt (siehe [Erstellen einer Servicerolle für benutzerdefinierte ML-Modellierung — ML-Konfiguration](https://docs.aws.amazon.com/clean-rooms/latest/userguide/ml-roles.html#ml-roles-custom-configure)).

**System-Metrik**

Systemmetriken für Training und Inferenz, wie CPU- und Speicherauslastung, werden allen Mitgliedern der Zusammenarbeit mit gültigen ML-Konfigurationen zur Verfügung gestellt. Diese Metriken können im Verlauf des Jobs über CloudWatch Metriken in den jeweiligen `/aws/cleanroomsml/TrainedModelInferenceJobs` Namespaces `/aws/cleanroomsml/TrainedModels` eingesehen werden.

**Modellieren Sie Logs**

Der Zugriff auf die Modellprotokolle erfolgt über die Datenschutzrichtlinien der einzelnen konfigurierten Modellalgorithmen. Der Modellautor legt die Datenschutzrichtlinie fest, wenn er einen konfigurierten Modellalgorithmus (entweder über die Konsole oder die `CreateConfiguredModelAlgorithmAssociation` API) einer Kollaboration zuordnet. Durch die Festlegung der Datenschutzrichtlinie wird gesteuert, welche Mitglieder die Modellprotokolle erhalten können.

Darüber hinaus kann der Modellautor in der Datenschutzrichtlinie ein Filtermuster festlegen, um Protokollereignisse zu filtern. Alle Logs, die ein Modellcontainer an `stdout` oder sendet `stderr` und die dem Filtermuster entsprechen (falls gesetzt), werden an Amazon CloudWatch Logs gesendet. Modellprotokolle sind jeweils in CloudWatch Protokollgruppen `/aws/cleanroomsml/TrainedModels` verfügbar. `/aws/cleanroomsml/TrainedModelInferenceJobs`

**Benutzerdefinierte Metriken**

Wenn Sie einen Modellalgorithmus konfigurieren (entweder über die Konsole oder die `CreateConfiguredModelAlgorithm` API), kann der Modellautor bestimmte Metriknamen und Regex-Anweisungen angeben, nach denen in den Ausgabeprotokollen gesucht werden soll. Diese können im Verlauf des Jobs über CloudWatch Metrics im Namespace eingesehen werden. `/aws/cleanroomsml/TrainedModels` Bei der Zuordnung eines konfigurierten Modellalgorithmus kann der Modellautor in der Datenschutzkonfiguration der Metriken einen optionalen Geräuschpegel festlegen, um die Ausgabe von Rohdaten zu vermeiden und dennoch Einblick in benutzerdefinierte Metriktrends zu erhalten. Wenn ein Geräuschpegel festgelegt ist, werden die Messwerte am Ende des Jobs veröffentlicht und nicht in Echtzeit.