Vorbereiten der Eingabedaten für Benutzersegmente - Amazon Personalize

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.

Vorbereiten der Eingabedaten für Benutzersegmente

Batch-Segmentjobs verwenden eine Lösungsversion, um Benutzersegmente auf der Grundlage von Daten zu erstellen, die Sie in einer JSON-Eingabedatei angeben. Bevor Sie Benutzersegmente abrufen können, müssen Sie Ihre JSON-Datei vorbereiten und in einen Amazon S3 S3-Bucket hochladen. Wir empfehlen Ihnen, einen Ausgabeordner in Ihrem Amazon S3 S3-Bucket zu erstellen oder einen separaten Amazon S3-Ausgabe-Bucket zu verwenden. Anschließend können Sie mehrere Batch-Inferenzjobs unter Verwendung desselben Speicherorts für die Eingabedaten ausführen.

Wenn Sie einen Filter mit Platzhalterparametern verwenden, müssen Sie z. $GENRE B. die Werte für die Parameter in einem filterValues Objekt in Ihrem Eingabe-JSON angeben. Weitere Informationen finden Sie unter Bereitstellung von Filterwerten in Ihrer Eingabe JSON.

Um Daten vorzubereiten und zu importieren
  1. Formatieren Sie Ihre Batch-Eingabedaten je nach dem Rezept, das Ihre Lösung verwendet. Trennen Sie das Eingabedatenelement durch eine neue Zeile. Ihre Eingabedaten sind entweder eine Liste von ArtikelIDs (Item-Affinity) oder Artikelattributen (Item-Attribute-Affinity).

  2. Laden Sie Ihre Eingabe-JSON in einen Eingabeordner in Ihrem Amazon S3 S3-Bucket hoch. Weitere Informationen finden Sie unter Hochladen von Dateien und Ordnern mithilfe von Drag & Drop im Amazon Simple Storage Service-Benutzerhandbuch

  3. Erstellen Sie einen separaten Speicherort für Ihre Ausgabedaten, entweder einen Ordner oder einen anderen Amazon S3 S3-Bucket. Indem Sie einen separaten Speicherort für den Ausgabe-JSON erstellen, können Sie mehrere Batch-Segment-Jobs mit demselben Speicherort für die Eingabedaten ausführen.

Nachdem Sie Ihre Eingabedaten vorbereitet und in einen Amazon S3 S3-Bucket hochgeladen haben, können Sie Benutzersegmente mit einem Batch-Segment-Job generieren. Weitere Informationen finden Sie unter Benutzersegmente mit einem Batch-Segment-Job abrufen.

Angeben von Artikelattributen für das Item-Attribute-Affinity-Rezept

Wenn Sie das Rezept „Artikel-Attribute-Affinität“ verwenden, sind Ihre Eingabedaten eine Liste von Artikelattributen. Sie können verschiedene Metadatenspalten mischen. Beispielsweise kann es sich bei einer Zeile um eine numerische Spalte und bei der nächsten um eine kategoriale Spalte handeln. Sie können keine unstrukturierten Metadaten von Textelementen als Elementattribut verwenden.

Ihre Eingabeelement-Metadaten können logische Ausdrücke mit dem AND Operator enthalten, um ein Benutzersegment für mehrere Attribute abzurufen. Eine Zeile Ihrer Eingabedaten könnte beispielsweise {"itemAttributes": "ITEMS.genres = \"Comedy\" AND ITEMS.genres = \"Action\""} oder lauten{"itemAttributes": "ITEMS.genres = "\Comedy\" AND ITEMS.audience = "\teen\""}.

Wenn Sie zwei Attribute mit dem AND Operator kombinieren, erstellen Sie ein Benutzersegment mit Benutzern, die aufgrund des Interaktionsverlaufs des Benutzers eher mit Elementen interagieren, die beide Attribute aufweisen. Im Gegensatz zu Filterausdrücken (die den IN Operator für die Gleichheit von Zeichenketten verwenden) unterstützen Eingabeausdrücke für Batchsegmente nur das = Symbol für Gleichheit beim Zeichenfolgenabgleich.

JSON-Beispiele für die Eingabe und Ausgabe von Batchsegmentjobs

Für einen Batch-Segmentauftrag müssen Ihre Eingabedaten entweder eine Liste von ItemIDs (Item-Affinity-Rezept) oder Artikelattributen (Item-Attribute-Affinity) sein. Jede Zeile mit Eingabedaten ist eine separate Inferenzabfrage. Jedes Benutzersegment ist in absteigender Reihenfolge sortiert, basierend auf der Wahrscheinlichkeit, dass jeder Benutzer mit Artikeln in Ihrem Inventar interagiert.

Wenn Sie beispielsweise einen Filter mit Platzhalterparametern verwenden$GENRE, müssen Sie die Werte für die Parameter in einem filterValues Objekt in Ihrem Eingabe-JSON angeben. Weitere Informationen finden Sie unter Bereitstellung von Filterwerten in Ihrer Eingabe JSON.

Im Folgenden finden Sie korrekt formatierte JSON-Eingabe- und Ausgabebeispiele für Batch-Segment-Jobs, die nach Rezepten organisiert sind.

Artikel-Affinität

Input

Ihre Eingabedaten können maximal 500 Elemente enthalten. Trennen Sie jedes itemId Objekt wie folgt durch eine neue Zeile.

{"itemId": "105"} {"itemId": "106"} {"itemId": "441"} ...
Output
{"input": {"itemId": "105"}, "output": {"recommendedUsers": ["106", "107", "49"]}} {"input": {"itemId": "106"}, "output": {"recommendedUsers": ["105", "107", "49"]}} {"input": {"itemId": "441"}, "output": {"recommendedUsers": ["2", "442", "435"]}} ...

Artikel-Attribut-Affinität

Input

Ihre Eingabedaten können maximal 10 Abfragen enthalten, wobei jede Abfrage aus einem oder mehreren nicht textuellen Artikelattributen besteht. Trennen Sie jedes Attribut oder jeden Attributausdruck wie folgt durch eine neue Zeile.

{"itemAttributes": "ITEMS.genres = \"Comedy\" AND ITEMS.genres = \"Action\""} {"itemAttributes": "ITEMS.genres = \"Comedy\""} {"itemAttributes": "ITEMS.genres = \"Horror\" AND ITEMS.genres = \"Action\""} ...
Output
{"itemAttributes": "ITEMS.genres = \"Comedy\" AND ITEMS.genres = \"Action\"", "output": {"recommendedUsers": ["25", "78", "108"]}} {"itemAttributes": "ITEMS.genres = \"Adventure\"", "output": {"recommendedUsers": ["87", "31", "129"]}} {"itemAttributes": "ITEMS.genres = \"Horror\" AND ITEMS.genres = \"Action\"", "output": {"recommendedUsers": ["8", "442", "435"]}} ...