1
 
 
Profil
In deinem persönlichen Profilbereich kannst du den Status deiner Bewerbung einsehen, unvollständige Bewerbungen zwischenspeichern und aktuelle News und Events einsehen
21. April 2021

Teil 1: Einführung in Learning to Rank für die E-Commerce-Suche

Worum geht es in diesem Artikel?

Den Nutzern zu ermöglichen, die Produkte zu finden, die sie suchen, ist die Kernaufgabe des Suchteams von otto.de. Aber nicht nur die relevanten Artikel zu finden, sondern auch die relevantesten Produkte an die Spitze der Liste zu setzen, ist eine der größten Herausforderungen, denen wir uns in unserem Job stellen. In diesem und den folgenden Beiträgen zeigen wir Ihnen, wie wir Learning to Rank implementiert haben, um unser Ranking zu verbessern, wie wir die eCommerce-spezifischen Herausforderungen meistern, die Suchqualität messen und wie wir die technische Umsetzung realisiert haben.

Warum wollen wir maschinelles Lernen im Ranking anwenden?

Da sich OTTO zu einem Marktplatz wandelt, nimmt die Anzahl und Vielfalt der angebotenen Produkte täglich zu. Eine größere Anzahl führt zu einer höheren Komplexität, insbesondere für das Suchsystem. Diese steigende Komplexität und die schiere Menge an Daten auf otto.de (siehe Abb. 1) sind mit traditionellen Ansätzen nicht zu bewältigen. Stattdessen nutzen wir Modelle des maschinellen Lernens (ML) für einen datengetriebenen Ansatz, der den größten Nutzen für unsere Kunden bietet. Für unser Ranking implementieren wir ein Learning-to-Rank-Modell (LTR). LTR hilft uns, den Recall zu erhöhen (angesichts der steigenden Produktzahlen werden wir eine immer größere Anzahl von Produkten pro Suchanfrage mit unterschiedlicher Relevanz für den Kunden zurückgeben), ohne das Risiko einzugehen, die Präzision bei sichtbaren Rängen zu verlieren.

Figure 2:  Implementation of a Learning to Rank model
Figure 2: Implementation of a Learning to Rank model

Welche Art von Ranking-Modell wird verwendet?

Ranking-Modelle lernen Abstraktionen von Relevanzabhängigkeiten für Produkte bei einer bestimmten Anfrage. Bekannte LTR-Modelle verwenden punktweise, paarweise und listenweise Ansätze zur Optimierung des Rankings (für weitere Details siehe: https: //medium.com/swlh/pointwise-pairwise-and-listwise-learning-to-rank-baf0ad76203e). Wir verwenden LambdaMART, das als eine Kombination aus einem paarweisen und einem listenweisen Ansatz betrachtet werden kann. LambdaMART berechnet die Gradienten auf der Grundlage eines paarweisen Vergleichs der Elemente in der Liste, gefolgt von einer Gewichtung auf der Grundlage der NDCG (einer gängigen Ranking-Metrik) und kombiniert so die Vorteile beider Ansätze. Wie bereits erwähnt, haben diese Modelle ein großes Potenzial für den elektronischen Handel. Allerdings gibt es auch verschiedene sektorspezifische Herausforderungen zu berücksichtigen, von denen wir einige im nächsten Abschnitt behandeln werden.

Wie wird die Zielkennzahl definiert?

Eine Herausforderung, mit der wir aufgrund unserer E-Commerce-Umgebung konfrontiert sind, besteht darin, dass wir keine Relevanzkennzeichnungen über Crowd Sourcing oder ähnliche Ansätze generieren können. Die Einschätzung der Relevanz eines Produkts in einer Crowd-Sourcing-Umgebung unterscheidet sich stark von der Kaufabsicht und der Einschätzung der Relevanz aus dieser Perspektive. Wir müssen daher die Bewertungen automatisch auf der Grundlage von Kundendaten modellieren. Wie das genau gemacht wird, hängt von dem KPI ab, für den wir optimieren wollen.

Ursprünglich wollten wir unser Modell nur für die Maximierung der Klicks optimieren. Wir haben jedoch bald herausgefunden, dass andere KPIs genauso wichtig, wenn nicht sogar wichtiger sind. Die Verfügbarkeit von Produkten zum Beispiel spielt eine große Rolle bei der Kaufentscheidung eines Kunden, genauso wie andere wichtige Faktoren auch. Mit diesem Wissen sind viele verschiedene Definitionen der Zielkennzahl denkbar

  • Die Ereignisse "In den Warenkorb" oder "Auf die Wunschliste" könnten als Zielmetrik dienen, wobei das ultimative Relevanzsignal der Kunde ist, der das Produkt bestellt, so dass dies ebenfalls als Optimierungsziel für das Modell definiert werden könnte. Darüber hinaus sollten verschiedene Kombinationen dieser KPIs als relevant für die Identifizierung einer guten Zielmetrik betrachtet werden.
  • Wir könnten auch andere Kundeninteraktionssignale verwenden, wie z. B. die Zeit, die auf einer Produktdetailseite verbracht wird, die Anzahl der Klicks, die in das Durchlaufen von Suchergebnisseiten investiert werden, usw.
Figure 3: Model Integration Pipeline
Figure 3: Model Integration Pipeline

Welche Schritte sind erforderlich, um ein trainiertes Modell zu erhalten?

Die Modellintegrationspipeline ist in Abbildung 3 dargestellt. Zur Erstellung der Trainingsdaten verwenden wir eine Stichprobe von Abfragen. Für die Abfragen in diesem Satz berechnen wir Beurteilungen (unseren Ranking-Goldstandard) und Merkmale pro Abfrage-Produkt-Paar. Die Features werden im Solr-Feature-Store generiert. Durch die Kombination von Bewertungen und Merkmalen stellen wir die Trainingsdaten zusammen, die zur Erstellung unseres Ranking-Modells verwendet werden. Das Training des LambdaMART-Modells wird mit einem Fork von RankLib namens RankyMcRankface durchgeführt (siehe https://github.com/o19s/RankyMcRankFace). Das Modell wird dann in den Solr-Modellspeicher hochgeladen und in Solr für das Reranking verwendet. Wir können die Leistung des Modells mit einem Testabfrage-Set und unserem Offline Metrics Analyzer validieren. Mit diesem Tool können wir die NDCGs für verschiedene Konfigurationen unseres Suchsystems berechnen. So können wir ein LTR-Ranking mit dem Status Quo vergleichen oder verschiedene Modellleistungen analysieren.

Wenn du Erfahrung mit der Erstellung von Relevanzurteilen hast oder eine andere Meinung zur Erstellung von gelabelten Daten hast, würden wir dieses Thema gerne mit dir diskutieren. Bitte kontaktiere uns daher unter JARVIS@otto.de. In den folgenden Beiträgen werden wir erörtern, welche Daten wir für die Implementierung von LTR verwendet haben, wie wir die Suchqualität in unserer täglichen Arbeit messen und wie wir die Pipeline für die Datensammlung und das Modelltraining gestaltet haben.

Es gibt eine Menge zu tun: Lass uns gemeinsam etwas bewegen: Bewirb dich!

2 Personen gefällt das

0Noch keine Kommentare

Dein Kommentar
Antwort auf:  Direkt auf das Thema antworten

Geschrieben von

Andrea Schütt
Andrea Schütt
Data Scientist

Ähnliche Beiträge

We want to improve out content with your feedback.

How interesting is this blogpost?

We have received your feedback.

Cookies erlauben?

OTTO und drei Partner brauchen deine Einwilligung (Klick auf "OK") bei einzelnen Datennutzungen, um Informationen auf einem Gerät zu speichern und/oder abzurufen (IP-Adresse, Nutzer-ID, Browser-Informationen).
Die Datennutzung erfolgt für personalisierte Anzeigen und Inhalte, Anzeigen- und Inhaltsmessungen sowie um Erkenntnisse über Zielgruppen und Produktentwicklungen zu gewinnen. Mehr Infos zur Einwilligung gibt’s jederzeit hier. Mit Klick auf den Link "Cookies ablehnen" kannst du deine Einwilligung jederzeit ablehnen.

Datennutzungen

OTTO arbeitet mit Partnern zusammen, die von deinem Endgerät abgerufene Daten (Trackingdaten) auch zu eigenen Zwecken (z.B. Profilbildungen) / zu Zwecken Dritter verarbeiten. Vor diesem Hintergrund erfordert nicht nur die Erhebung der Trackingdaten, sondern auch deren Weiterverarbeitung durch diese Anbieter einer Einwilligung. Die Trackingdaten werden erst dann erhoben, wenn du auf den in dem Banner auf otto.de wiedergebenden Button „OK” klickst. Bei den Partnern handelt es sich um die folgenden Unternehmen:
Google Inc., Meta Platforms Ireland Limited, elbwalker GmbH
Weitere Informationen zu den Datenverarbeitungen durch diese Partner findest du in der Datenschutzerklärung auf otto.de/jobs. Die Informationen sind außerdem über einen Link in dem Banner abrufbar.