Vorbereiten der Eingabedaten für Batch-Empfehlungen - 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 Batch-Empfehlungen

Ein Batch-Inferenzjob importiert Ihre Batch-Eingabe-JSON-Daten aus einem Amazon S3 S3-Bucket, verwendet Ihre benutzerdefinierte Lösungsversion, um Empfehlungen zu generieren, und exportiert dann die Artikelempfehlungen in einen Amazon S3 S3-Bucket. Bevor Sie Batch-Empfehlungen erhalten 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 Ihrem Eingabe-JSON.

Um Daten vorzubereiten und zu importieren
  1. Formatieren Sie Ihre Batch-Eingabedaten je nach Rezept. Mit dem Trending-Now-Rezept können Sie keine Batch-Empfehlungen erhalten.

    • Für USER_PERSONALIZATION-Rezepte und das Popularity-Count-Rezept sind Ihre Eingabedaten eine JSON-Datei mit einer Liste von Benutzer-IDs

    • Bei RELATED_ITEMS-Rezepten sind Ihre Eingabedaten eine Liste von ItemIDs

    • Für PERSONALIZED_RANKING-Rezepte sind Ihre Eingabedaten eine Liste von UserIDs, die jeweils mit einer Sammlung von ItemIDs gepaart sind

    Trennen Sie jede Zeile durch eine neue Zeile. Beispiele für Eingabedaten finden Sie unterJSON-Beispiele für die Eingabe und Ausgabe von Batch-Inferenzjobs.

  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-Inferenzjobs mit demselben Speicherort für die Eingabedaten ausführen.

  4. Erstellen Sie einen Batch-Inferenzjob. Amazon Personalize gibt die Empfehlungen aus Ihrer Lösungsversion an Ihren Ausgabedatenort aus.

JSON-Beispiele für die Eingabe und Ausgabe von Batch-Inferenzjobs

Wie Sie Ihre Eingabedaten formatieren, das Rezept, das Sie verwenden. 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 Ihrem Eingabe-JSON.

In den folgenden Abschnitten werden korrekt formatierte JSON-Eingabe- und Ausgabebeispiele für Batch-Inferenzjobs aufgeführt. Mit dem Trending-Now-Rezept können Sie keine Batch-Empfehlungen erhalten.

USER_PERSONALIZATION-Rezepte

Im Folgenden werden korrekt formatierte JSON-Eingabe- und Ausgabebeispiele für die USER_PERSONALIZATION-Rezepte gezeigt. Wenn Sie User-Personalization-v2 verwenden, enthält jeder empfohlene Artikel eine Liste mit Gründen, warum der Artikel in Empfehlungen aufgenommen wurde. Diese Liste kann leer sein. Informationen zu möglichen Gründen finden Sie unterGründe für Empfehlungen (Benutzer-Personalisierung-v2).

Input

Trennen Sie jede userId Zeile wie folgt durch eine neue Zeile.

{"userId": "4638"} {"userId": "663"} {"userId": "3384"} ...
Output
{"input":{"userId":"4638"},"output":{"recommendedItems":["63992","115149","110102","148626","148888","31685","102445","69526","92535","143355","62374","7451","56171","122882","66097","91542","142488","139385","40583","71530","39292","111360","34048","47099","135137"],"scores":[0.0152238,0.0069081,0.0068222,0.006394,0.0059746,0.0055851,0.0049357,0.0044644,0.0042968,0.004015,0.0038805,0.0037476,0.0036563,0.0036178,0.00341,0.0033467,0.0033258,0.0032454,0.0032076,0.0031996,0.0029558,0.0029021,0.0029007,0.0028837,0.0028316]},"error":null} {"input":{"userId":"663"},"output":{"recommendedItems":["368","377","25","780","1610","648","1270","6","165","1196","1097","300","1183","608","104","474","736","293","141","2987","1265","2716","223","733","2028"],"scores":[0.0406197,0.0372557,0.0254077,0.0151975,0.014991,0.0127175,0.0124547,0.0116712,0.0091098,0.0085492,0.0079035,0.0078995,0.0075598,0.0074876,0.0072006,0.0071775,0.0068923,0.0066552,0.0066232,0.0062504,0.0062386,0.0061121,0.0060942,0.0060781,0.0059263]},"error":null} {"input":{"userId":"3384"},"output":{"recommendedItems":["597","21","223","2144","208","2424","594","595","920","104","520","367","2081","39","1035","2054","160","1370","48","1092","158","2671","500","474","1907"],"scores":[0.0241061,0.0119394,0.0118012,0.010662,0.0086972,0.0079428,0.0073218,0.0071438,0.0069602,0.0056961,0.0055999,0.005577,0.0054387,0.0051787,0.0051412,0.0050493,0.0047126,0.0045393,0.0042159,0.0042098,0.004205,0.0042029,0.0040778,0.0038897,0.0038809]},"error":null} ...

Im Folgenden werden korrekt formatierte JSON-Eingabe- und Ausgabebeispiele für das Popularity-Count-Rezept gezeigt. Mit dem Trending-Now-Rezept können Sie keine Batch-Empfehlungen erhalten.

Input

Trennen Sie jedes userId Objekt wie folgt durch eine neue Zeile.

{"userId": "12"} {"userId": "105"} {"userId": "41"} ...
Output
{"input": {"userId": "12"}, "output": {"recommendedItems": ["105", "106", "441"]}} {"input": {"userId": "105"}, "output": {"recommendedItems": ["105", "106", "441"]}} {"input": {"userId": "41"}, "output": {"recommendedItems": ["105", "106", "441"]}} ...

Personalisierte-Rangfolgen-Rezepte

Im Folgenden werden korrekt formatierte JSON-Eingabe- und Ausgabebeispiele für PERSONALIZED_RANKING-Rezepte gezeigt.

Input

Trennen Sie jedes Objekt userId und die Liste der itemIds zu bewertenden Objekte wie folgt durch eine neue Zeile.

{"userId": "891", "itemList": ["27", "886", "101"]} {"userId": "445", "itemList": ["527", "55", "901"]} {"userId": "71", "itemList": ["27", "351", "101"]} ...
Output
{"input":{"userId":"891","itemList":["27","886","101"]},"output":{"recommendedItems":["27","101","886"],"scores":[0.48421,0.28133,0.23446]}} {"input":{"userId":"445","itemList":["527","55","901"]},"output":{"recommendedItems":["901","527","55"],"scores":[0.46972,0.31011,0.22017]}} {"input":{"userId":"71","itemList":["29","351","199"]},"output":{"recommendedItems":["351","29","199"],"scores":[0.68937,0.24829,0.06232]}} ...

Im Folgenden werden korrekt formatierte JSON-Eingabe- und Ausgabebeispiele für RELATED_ITEMS-Rezepte gezeigt.

Input

Trennen Sie jedes wie itemId folgt durch eine neue Zeile.

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

Im Folgenden werden korrekt formatierte JSON-Eingabe- und Ausgabebeispiele für das Similar-Items-Rezept mit Themen gezeigt.

Input

Trennen Sie jedes wie itemId folgt durch eine neue Zeile.

{"itemId": "40"} {"itemId": "43"} ...
Output
{"input":{"itemId":"40"},"output":{"recommendedItems":["36","50","44","22","21","29","3","1","2","39"],"theme":"Movies with a strong female lead","itemsThemeRelevanceScores":[0.19994527,0.183059963,0.17478035,0.1618133,0.1574806,0.15468733,0.1499242,0.14353688,0.13531424,0.10291852]}} {"input":{"itemId":"43"},"output":{"recommendedItems":["50","21","36","3","17","2","39","1","10","5"],"theme":"The best movies of 1995","itemsThemeRelevanceScores":[0.184988,0.1795761,0.11143453,0.0989443,0.08258403,0.07952615,0.07115086,0.0621634,-0.138913,-0.188913]}} ...