此页面由 Cloud Translation API 翻译。
Switch to English

Empfehlung

Personalisierte Empfehlungen werden häufig für eine Vielzahl von Anwendungsfällen auf Mobilgeräten verwendet, z. B. zum Abrufen von Medieninhalten, zum Einkaufen von Produktvorschlägen und zur nächsten App-Empfehlung. Wenn Sie personalisierte Empfehlungen in Ihrer Anwendung unter Wahrung der Privatsphäre der Benutzer bereitstellen möchten, empfehlen wir Ihnen, das folgende Beispiel und Toolkit zu untersuchen.

Loslegen

Wir bieten eine TensorFlow Lite-Beispielanwendung, die zeigt, wie relevante Elemente Benutzern auf Android empfohlen werden können.

Android Beispiel

Wenn Sie eine andere Plattform als Android verwenden oder bereits mit den TensorFlow Lite-APIs vertraut sind, können Sie unser Starterempfehlungsmodell herunterladen.

Startermodell herunterladen

Wir bieten auch ein Schulungsskript in Github an, um Ihr eigenes Modell zu trainieren.

Trainingscode

Verstehen Sie die Modellarchitektur

Wir nutzen eine Modellarchitektur mit zwei Codierern, mit Kontext-Codierer zum Codieren des sequentiellen Benutzerverlaufs und Label-Codierer zum Codieren des vorhergesagten Empfehlungskandidaten. Die Ähnlichkeit zwischen Kontext- und Beschriftungscodierungen wird verwendet, um die Wahrscheinlichkeit darzustellen, dass der vorhergesagte Kandidat die Anforderungen des Benutzers erfüllt.

Mit dieser Codebasis werden drei verschiedene Codierungstechniken für die sequentielle Benutzerhistorie bereitgestellt:

  • Bag-of-Words-Encoder (BOW): Mittelung der Einbettungen von Benutzeraktivitäten ohne Berücksichtigung der Kontextreihenfolge.
  • Convolutional Neural Network Encoder (CNN): Anwenden mehrerer Schichten von Convolutional Neural Networks zur Erzeugung einer Kontextcodierung.
  • Recurrent Neural Network Encoder (RNN): Anwenden eines Recurrent Neural Network zur Codierung der Kontextsequenz.

Beispiele

Eingabe-IDs:

  • Matrix (ID: 260)
  • Private Ryan speichern (ID: 2028)
  • (und mehr)

Ausgabe-IDs:

  • Star Wars: Episode VI - Rückkehr der Jedi (ID: 1210)
  • (und mehr)

Leistungsbenchmarks

Leistungsbenchmarkzahlen werden mit dem hier beschriebenen Tool generiert.

Modellname Modellgröße Gerät Zentralprozessor
Empfehlung 0,52 Mb Pixel 3 0,09 ms *
Pixel 4 0,05 ms *

* 4 Threads verwendet.

Verwenden Sie Ihre Trainingsdaten

Zusätzlich zum trainierten Modell bieten wir in GitHub ein Open-Source- Toolkit zum Trainieren von Modellen mit Ihren eigenen Daten. In diesem Tutorial erfahren Sie, wie Sie das Toolkit verwenden und geschulte Modelle in Ihren eigenen mobilen Anwendungen bereitstellen.

Befolgen Sie dieses Tutorial , um dieselbe Technik anzuwenden, die hier zum Trainieren eines Empfehlungsmodells unter Verwendung Ihrer eigenen Datensätze verwendet wird.

Tipps zur Modellanpassung mit Ihren Daten

Das in diese Demoanwendung integrierte vorab trainierte Modell wird mit dem MovieLens- Dataset trainiert. Möglicherweise möchten Sie die Modellkonfiguration basierend auf Ihren eigenen Daten ändern, z. B. der Vokabulargröße, dem Einbetten von Dims und der Länge des Eingabekontexts. Hier einige Tipps:

  • Länge des Eingabekontexts: Die beste Länge des Eingabekontexts variiert je nach Datensatz. Wir empfehlen, die Länge des Eingabekontexts basierend darauf auszuwählen, wie stark Label-Ereignisse mit langfristigen Interessen im Vergleich zum kurzfristigen Kontext korrelieren.

  • Auswahl des Encodertyps: Wir empfehlen die Auswahl des Encodertyps basierend auf der Länge des Eingabekontexts. Der Bag-of-Word-Encoder eignet sich gut für kurze Eingangskontextlängen (z. B. <10). CNN- und RNN-Encoder bieten mehr Zusammenfassungsmöglichkeiten für lange Eingangskontextlängen.