Back to top

Big Data revolutioniert die E-Commerce-Suche

In letzter Zeit hatte ich die Gelegenheit, mit einigen bedeutenden Unternehmen an ihren Plattformen für die E-Commerce-Suche zu arbeiten. Die Ergebnisse dieser Zusammenarbeit kommen einer kleinen Revolution gleich.

E-Commerce-Suche:  Das aktuelle System funktioniert nicht

Wenn man sich mal die E-Commerce-Suche ansieht, wie sie heutzutage gehandhabt wird, sieht man schnell so einiges, das besser laufen könnte. 

Kurz zusammengefasst sieht es aktuell so aus:

  1. Man sucht nach Abfragen, die nicht gut laufen
  2. Man optimiert diese manuell, indem man auswählt, was angezeigt wird

Das ist das E-Commerce-Äquivalent davon, im Regen durch das Haus zu laufen und Eimer aufzustellen, wo immer es durch das Dach tropft.

Dieser Ansatz bietet gleich eine ganze Reihe Probleme:

  • Menschen sind voreingenommen, man kann nie sicher wissen, ob die Optimierung funktioniert

Wenn die Abfrage durch einen Menschen manuell optimiert wird, muss dieser dazu die Intentionen des Kunden erraten. Er kann dabei richtig liegen, oder sich komplett verschätzen. Wenn er falsch liegt, erzeugt das neue Probleme, weil:

  • Optimierungen gehen direkt ins Produktionssystem

Das ist schon eine recht unglaubliche Situation. Die Abfrageoptimierungen werden meist wirklich direkt im Produktionssystem eingesetzt. Aber selbst, wenn die Abfrageoptimierung erst in einem Testsystem ausprobiert wird, hilft das nicht viel. Diese „Tests“ können nur erkennen, ob die Optimierung wie gewünscht funktioniert, Aufschluss darüber, Informationen darüber, ob sie auch den gewünschten Effekt in der Umwandlungsrate erzielt, kann ein solcher Test nicht bieten. Daher gibt es zurzeit also nur eine einzige Möglichkeit, die Wirksamkeit einer Optimierung zu überprüfen:

  • Beobachten, wie die Optimierung sich im Produktionssystem auswirkt

Aktuell kann man nur beobachten, wie die Nutzer in der Produktionsumgebung auf die Optimierung reagieren. Aber selbst, wenn die Optimierung in der Praxis funktioniert, kann das morgen schon ganz anders aussehen, weil:

  • Die Welt verändert sich

Neue Produkte erscheinen, Terminologie wird für neue Zwecke umfunktioniert. Die Welt verändert sich ständig, daher muss auch diese enorme Datenbank manueller Anpassungen ständig aktuell gehalten werden. Das ist ein ziemlicher Aufwand, daher wird meist nur den häufigsten Abfragen die Aufmerksamkeit geschenkt, die sie benötigen. Das bringt mich dazu, zu fragen:

  • Was geschieht mit dem Rest?

Die vernachlässigten Restmengen nehmen in den aktuellen Systemen gut 40-60% aller Abfragen ein. Wenn bei manueller Optimierung der Abfragen nur Zeit für die häufigsten Abfragen bleibt, heißt das, dass 40-60% der Abfragen komplett ignoriert werden.

Natürlich kann es vorkommen, dass manuelle Optimierungen wirklich notwendig sind, um auf wirkliche Ausnahmeerscheinungen einzugehen, wie etwa bei Abfragen zu den wichtigsten Marken und neuen Produkten. Aber für alle anderen Fälle wird die Ausnahme zur Regel. Und das ist ein Problem. Administratoren „optimieren“ die E-Commerce-Suche, indem sie versuchen, jede Abfrage für sich zu verbessern. Ganz schön anstrengend. 

 

Genauigkeit offline messen, nicht im Produktionssystem

Eine offensichtliche, aber trotzdem notwendige Bemerkung vorab:

Abfragen kaufen keine Produkte. Menschen kaufen Produkte.

Meist wird viel zu viel Aufmerksamkeit auf die Abfrage selbst gelegt. Mir persönlich ist die Abfrage komplett egal, weil sie nur ein Mittel ist, mit dem eine Absicht ausgedrückt wird (und darüber hinaus meist ein sehr ungenaues Mittel). Mir kommt es auf die Person hinter der Abfrage an – ist der Kunde zufrieden? Findet er die Produkte, die er sucht?

Also sollten wir zuerst die Person verstehen.

Das Tolle an der Big Data-Revolution ist, dass wir jetzt Techniken und Methoden besitzen, die massiven Datenmengen aus Logdateien zu verarbeiten und die Menschen dahinter wirklich zu verstehen. Wir können jeden Klick nachverfolgen, jede Suche, jeden Kauf und jedes zum Warenkorb hinzugefügte Produkt. Wir haben damit eine Goldmine von Informationen, die wir nutzen können, um unsere Abfragen und Modifikationen an der Suchmaschine zu testen, ehe diese Änderungen ins Produktionssystem übernommen werden.

Damit können wir also die Abfrage testen, indem wir uns die Benutzer genauer ansehen, die diese Abfrage gestellt haben. Was wollten diese finden? Welche Produkte haben sie gekauft? Welche Produkte wurden von anderen, vergleichbaren Benutzern gekauft? Damit können wir eine einfache Aussage treffen: Ehe wir eine Abfrage optimieren, sollten wir zuerst überprüfen, ob die angezeigten Produkte für die Person, welche die Abfrage gestellt hat, auch wirklich interessant sind. Einfach, oder? Warum wird das also nicht so gemacht? Die Daten sind verfügbar, sie müssen nur erfasst und intelligent genutzt werden.

Auf gleiche Art können wir die Suchmaschine testen, indem wir jede Abfrage an die Suchmaschine stellen und prüfen, ob die in den Suchergebnissen angebotenen Produkte mit dem übereinstimmen, was der Benutzer tatsächlich gesucht hat. Es ist wirklich so einfach. Man muss dabei einfach nur jeden Benutzer für sich betrachten. Man muss nur überprüfen, welche Abfrage ein Benutzer gestellt hat und welche Produkte er gekauft (oder angesehen) hat. Wenn die Suchmaschine Produkte liefert, die der Benutzer brauchen kann, sind alle glücklich und die Bewertung geht hoch. Weitere Details zu diesem Prozess finden sich auch in meinem Whitepaper zur Analyse

 

Es ist Zeit, Web Analytics aufzugeben

Ich muss jetzt kurz etwas zu Web Analytics einschieben.

Web Analytics ruiniert wertvolle Daten.

Tut mir leid, ist aber so. Daten zur Benutzeraktivität sind unglaublich wertvoll. Normale Web Analytics-Tools (Adobe Site Catalyst, Google Analytics, tut mir leid) erfassen diese wertvollen Daten und bearbeiten sie so lange, bis das Ergebnis praktisch wertlos ist. Etwa so, wie wenn man das feinste Filet Mignon so lange bearbeitet, bis eigentlich nur noch Hamburger-Hack übrig bleibt. 

Gebt mir rohe Log-Dateien und rohe Ereignisdaten.

Ich brauche keine Analyseergebnisse von SiteCatalyst/Omniture/Google Analytics. Der ganze Kram ist nutzlos für mich (wenn man die Daten überhaupt exportieren kann). Ich brauche nur rohe Log-Daten. Ich will wissen, wonach jeder Benutzer gesucht hat, was er angeklickt hat – einschließlich seiner User-ID und dem Zeitpunkt. Mit diesen Daten kann ich eine Suchmaschine erstellen, die den Benutzern das findet, was sie suchen, und ich kann sie testen – offline, um sicherzustellen, dass alles funktioniert, sobald es auf das Produktionssystem eingespielt wird. 

 

Maschinelle Lernverfahren nutzen, um Abfragen für alle Benutzer zu optimieren

Wenn wir uns Abfragen ansehen, müssen wir dabei an dieses Diagramm denken:

In diesem Diagramm wird angezeigt, wie oft eine Abfrage in einem bestimmten Zeitraum ausgeführt wurde (z.B. die Frequenz der Abfragen im letzten Monat). Alle Abfragen sind nach dieser Menge sortiert. Das Diagramm zeigt, dass eine kleine Zahl Abfragen sehr häufig ausgeführt wurde (die Abfragen ganz links), eine große Zahl Abfragen nur eher selten (die Restmenge).

Bei den heutzutage üblichen Herangehensweisen an E-Commerce werden nur die Abfragen im grünen Bereich beachtet. Das bedeutet, dass niemand, weder Mensch noch Maschine, versucht, die Abfragen in der Restmenge zu optimieren. Diese Abfragen können aber 40-60% der gesamten Abfragemenge ausmachen.

Aber das ist auch nicht das einzige Problem, weil, auch im grünen Bereich gibt es genug Abfragen, die nicht zu dem vom Benutzer gewünschten Ziel führen. Damit meine ich die Fälle, in denen der Benutzer eine Abfrage eingegeben hat, aber danach keins der Suchergebnisse angeklickt und nichts gekauft hat.

 

Bei diesen Abfragen (auch als „aufgegebene Abfragen“ bezeichnet) hat der Benutzer eine Suche durchgeführt, die aber nicht zu dem vom Benutzer gewünschten Ergebnis geführt hat. Daher hat der Benutzer diesen Versuch aufgegeben (und hat vielleicht eine andere Abfrage ausgeführt). Aufgegebene Abfragen können oft bis zu 70% der häufigen Abfragen ausmachen.

Schaut sich jemand diese aufgegebenen Abfragen genauer an? Bei normalen E-Commerce-Anbietern eher nicht. Normalerweise hat man hierfür das Marketing-Team, dass sich die allgemeine Umwandlungsrate ansieht. Wenn diese akzeptabel ist (z.B. 1-2%), geht man zur nächsten Abfrage weiter.

Bei standardmäßigen Vorgehensweisen in einem typischen E-Commerce-Shop bedeutet das, dass 80-90% aller ausgeführten Abfragen ignoriert werden.

 

Jetzt kommen maschinelle Lernverfahren und Big Data

Wie können Big Data und maschinelle Lernverfahren uns helfen?

1.  Big Data hilft dabei, jede Abfrage zu analysieren, die jeder Benutzer eingibt

    • Wir untersuchen alle Abfragen, nicht nur die häufigsten Abfragen
    • Wir untersuchen auch Abfragen, die nicht zu gewünschten Ergebnissen geführt haben (aufgegebene Abfragen)

2.  Andere Aktivitäten des Benutzers können untersucht werden, um zu bestimmen, was ausgegeben werden soll

    • Was hat der Benutzer sonst noch angeklickt? (über die Navigation oder über andere Abfragen)
    • Diese Informationen können wir nutzen, um zu bestimmen, was in der Zukunft gezeigt werden soll

3.  Bei häufigen Abfragen können automatisch die besten Dokumente gezeigt werden

    • Bei häufig vorgenommenen Abfragen können wir die beliebtesten (also am häufigsten angesehenen oder gekauften) Produkte direkt an den Anfang der Ergebnisliste setzen.
    • Alternativ können wir die Produkte nach oben setzen, bei denen die Kaufwahrscheinlichkeit multipliziert mit der Gewinnmarge am höchsten ist.

Anders ausgedrückt können wir die Produkte in den Vordergrund stellen, bei denen wir den größten Gewinn erwirtschaften können.

    • Man muss aber darauf achten, dass hierbei die Produkte aufgeführt werden, die am besten zu den Interessen des Benutzers passen, nicht einfach nur allgemein die besten Produkte.
    • Leider funktioniert dies nur für sehr allgemeine Abfragen (typischerweise jene, welche pro Tag 15 Aufrufe oder mehr aufweisen), da für den Rest nicht genug Daten vorliegen.

4.  Eine optimierte Formel wird erstellt, welche die Wahrscheinlichkeit eines Klicks bestimmt 

(oder die Wahrscheinlichkeit, dass ein Produkt dem Warenkorb hinzugefügt oder gekauft wird)

    • Die Prognose wird über Predictive Analytics mit maschinellen Lernverfahren erstellt.
    • Diese Technik verbessert automatisch alle Abfragen, einschließlich der selten ausgeführten Abfragen im Restbereich. 

Diese Technik bietet damit einige große Vorteile gegenüber den gewohnten Praktiken im E-Commerce:

    • Sie wird automatisch ausgeführt.

Der Anteil manueller Anpassungen der Abfrageergebnisse wird damit substanziell reduziert.

    • Sie funktioniert für alle Sprachen

Dies kann für multinationale Unternehmen von kritischer Bedeutung sein, wenn diese ihr Produktangebot in vier, fünf oder fünfundzwanzig Sprachen optimieren müssen.

    • Sie analysiert alle Abfragen

Auch aufgegebene Abfragen und Abfragen im Restbereich werden mit eingeschlossen.

    • Sie bedenkt die individuellen Anforderungen aller Benutzer

Jeder Benutzer, der eine Abfrage vornimmt, wird bedacht.

 

Wie können maschinelle Lernverfahren das erreichen?

Maschinelle Lernverfahren sind im Kern eine Methode der Strukturerkennung in massivem Umfang. Sie erkennen Strukturen in riesigen Datenmengen und erstellen automatisch optimierte Formeln für die Prognose, ob ein Produkt angeklickt oder gekauft werden wird.

Die Optimierung der E-Commerce-Suche über maschinelle Lernverfahren funktioniert wie folgt:

1. Massive Datenmengen sammeln.

    • Produkte, Abfragen, Benutzer und Vergleiche werden in den Spalten der Tabelle als Zahlen oder Kategorie-Codes eingetragen.
    • Jede Zeile stellt ein Dokument dar, dass einem Benutzer in einer bestimmten Abfrage angezeigt wurde (d.h. wir sammeln jedes Dokument, von jeder Abfrage, von jedem Benutzer, in einem bestimmten Zeitraum).

2. Spalten für „angeklickt“ und „gekauft“ hinzufügen.

    • In jeder Zeile wird eine Spalte hinzugefügt, die den Wert „1“ hat, wenn der Benutzer das Dokument angeklickt hat.
    • Dazu eine weitere Spalte mit dem Wert „1“, wenn der Benutzer das Produkt gekauft hat.

3. Sicherstellen, dass die Daten in der Tabelle so akkurat und vollständig wie möglich sind.

    • Dieser Schritt nimmt normalerweise 80% der Zeit ein.

4. Algorithmen der maschinellen Lernverfahren für die Tabelle ausführen.

    • Unterschiedliche Algorithmen sind unterschiedlich gut für verschiedene Datentypen geeignet. Daher muss man in der Regel etwas experimentieren, um den besten Algorithmus zu finden.
    • Zu den typischen Algorithmen gehören Entscheidungsbäume, Support-Vektor-Maschinen und logistische Regression.
    • Komplexere Algorithmen (sogenannte Meta-Algorithmen) sind unter anderem Random Forests und AdaBoost.
    • Man muss sorgfältig den passenden Algorithmus wählen, der dann auch tatsächlich in der Suchmaschine implementiert werden kann (das ist ja schließlich das Endziel).

5. Algorithmus testen.

    • Hierzu trennt man die Daten per Zufallsprinzip in einen „Trainingssatz“ (normalerweise 75% der Daten) und einen „Testsatz“ (normalerweise 25% der Daten).
    • Für jeden Algorithmus, der durch Predictive Analytics berechnet wurde, wird geprüft, wie gut er gegen den Trainingssatz funktioniert.
    • Hierbei muss man experimentieren, bis man den besten Algorithmus findet, der korrekt bestimmt, ob der Benutzer das Dokument anklickt. 

Im Folgenden ein Beispiel dafür, wie eine solche Tabelle aussehen kann:

 

 

NB: Eine Zeile pro ausgegebenem Dokument für jede Abfrage von jedem Benutzer.

 

Im oben stehenden Diagramm werden die Daten in der Tabelle als „Signale“ bezeichnet, weil sie im Idealfall signalisieren, ob ein Benutzer ein Produkt anklickt oder kauft. Der Begriff „Signal“ sollte aber nicht verwirren (es ist ein Fachbegriff aus der Datenwissenschaft), Signale sind nicht mehr als Zahlen oder Codes, die das Produkt, die Abfrage, den Benutzer oder den Grad, wie gut die Abfrage auf das Produkt passt, beschreiben.

Signale für maschinelle Lernverfahren im E-Commerce fallen in eine von vier Kategorien:

1. Produktsignale

Kann umfassen:  Gesamter Umsatz für das Produkt, gesamte Popularität, Produktkategorie, Erscheinungsdatum des Produktes, Preis, Gewicht, Versandkosten, Dokument-Content-Vektoren usw.

Diese Signale werden zusammen mit dem Produkt im Index der Suchmaschine indexiert.

2. Abfragesignale

Kann umfassen:  Abfragegröße, Popularität der Abfrage, Popularität der Begriffe in der Abfrage (gegenüber allen Abfragen und allen Dokumenten), Abfrageart (d.h. Absicht der Abfrage) usw.

Diese Signale werden für jede Abfrage berechnet und zusammen mit der Abfrage bereitgestellt.

3. Vergleichssignale

Kann umfassen:  Die organische Bewertung der Suchmaschine, Vektorvergleiche (zwischen der Abfrage des Benutzers und dem Dokument), Prozentsatz der Abfrage, der im Dokument auftritt, minimale Distanz zwischen den Abfragebegriffen im Dokument usw.

Es ist auch nützlich, die Position des Dokuments in den Suchergebnissen als Spalte in der Tabelle anzuführen (nur verfügbar für Suchergebnisse, die der Benutzer angeklickt hat). Hierdurch wird die normale Tendenz des Benutzers ausgeglichen, einfach das erste Ergebnis der Abfrage anzuklicken.

Diese Signale werden für jedes Dokument berechnet, das die Suchmaschine auffindet.

4. Benutzersignale

Kann umfassen:  Verweildauer des Benutzers auf der Seite, geografischer Standort des Benutzers, Cluster, denen der Benutzer angehört, Vektoren der früheren Benutzeraktivität, die weiterleitende Seite (oder Abfrage, oder Werbung), über welche der Benutzer auf die Seite gekommen ist, sowie alle weiteren Informationen über den Benutzer (Alter, Geschlecht usw.), die für die Analyse zur Verfügung stehen.

Für maschinelle Lernverfahren werden diese Signale aus der Analyse der Log-Dateien und anderer Benutzerdaten gesammelt.

In einem Produktionssystem würden diese Signale in Echtzeit berechnet, während der Benutzer im System aktiv ist, und zusammen mit der Abfrage an die Suchmaschine weitergeleitet, sobald der Benutzer eine Suche vornimmt.

Nicht alle Signale sind erforderlich. Normalerweise fängt man mit den Signalen an, die man am einfachsten einfangen kann. Dann schaut man, wie gut diese funktionieren, und fügt weitere Signale hinzu, sobald man entsprechende Daten vorliegen hat und ein tieferes Verständnis des Benutzerverhaltens gewinnt, um die Suchmaschine weiter feiner abzustimmen.

Der Prozess des maschinellen Lernverfahrens wird auch selbst bestimmen, welche Signale am nützlichsten sind. Signale, die nicht nützlich sind, werden auch nicht in den resultierenden Algorithmus einbezogen. Sie können entfernt werden, um Zeit und Aufwand zu sparen. 

 

Was genau bringt das maschinelle Lernverfahren also?

Das Ziel des maschinellen Lernverfahrens ist es, eine Formel zu erstellen. Diese Formel kombiniert alle Datensignale und kann damit die Wahrscheinlichkeit bestimmen, dass ein Benutzer ein Dokument anklickt, wenn er eine bestimmte Suche vornimmt.

Diese Formel kann wahnsinnig kompliziert sein, mit allen möglichen Entscheidungszweigen, Logarithmen und dergleichen mehr, aber, wenn korrekt implementiert stellt sie die optimale Formel dar, die die besten Dokumente an die Spitze der Ergebnisse jeder Abfrage stellt.

Was fangen wir mit dieser Formel an?

Diese Formel wird in die Suchmaschine eingebaut und ersetzt dort die Standard-Relevanzformel (dafür wird meist ein benutzerdefiniertes Plug-In für die Relevanzbewertung erforderlich sein).

Die Standard-Relevanzformel in Suchmaschinen (TF-IDF) wurde in den 70er Jahren entwickelt und ist seitdem weitgehend gleich geblieben. Die Standardformel ist eine Ad-Hoc-Formel, die nicht durch statistisch präzise Auswertung entstanden ist.

Mit Big Data ausgestattet können wir heutzutage über die oben genannten Schritte eine optimale Relevanzformel berechnen, die auf unsere Benutzer und unsere Daten zugeschnitten ist. Sobald wir diese Formel haben, geben wir die neue Relevanzformel direkt in die Suchmaschine ein. Damit wird die Suchmaschine die bestmöglichen Ergebnisse liefern (abhängig von den verfügbaren Daten).

Man sollte dabei bedenken, dass die Suchmaschine die Formel für alle Dokumente berechnen muss, die auf die Abfrage passen (das können Zehntausende oder gar Millionen Treffer sein). Daher muss sie sehr effizient gestaltet sein. Hierdurch ergeben sich oft Einschränkungen hinsichtlich der Art der Formel, die verwendet werden kann. 

 

NULL-Abfragen handhaben / Sprache überbrücken

"Moment mal", wird der aufmerksame Leser jetzt wohl sagen. "Bisher haben wir nur darüber geredet, wie man die Bewertung von Dokumenten optimiert, die von der Suchmaschine ausgegeben werden. Aber was ist mit fehlenden Ergebnissen? Was ist mit NULL-Abfragen, also, Abfragen, die keine Ergebnisse liefern? Wie können wir diese optimieren?"

Eine berechtigte Frage. NULL-Abfragen und fehlende Ergebnisse sind typischerweise Symptome für etwas, das ich als "Sprachlücke" bezeichne.

Wenn  {Sprache des Benutzers} nicht gleich {Sprache der Produktbeschreibung}  =>  {Sprachlücke}

Zum Glück gibt es mehrere Möglichkeiten, über die Big Data helfen kann, diese Sprachlücke zu schließen. 

 

1. Produktleistung bewerten

Ein einfacher erster Schritt, die Sprachlücke zu verkleinern, ist es, bessere Beschreibungen zu verfassen und Produktbeschreibungen mit Stichwörtern für die Suche zu versehen. Aber für welche Produkte?

Wir müssen zuerst auf irgendeine Art die Leistung des Produktes einstufen. Zum Glück kann der Prozess für die Analyse der Suchgenauigkeit (siehe mein Whitepaper zur Analyse) genutzt werden, um Produkte aufzuspüren, die schlechte Leistung erbringen:

  • Produkte, die nie (oder selten) in Suchergebnissen erscheinen
  • Produkte, die nie (oder selten) angeklickt werden
  • Produkte, die häufiger in Ergebnislisten erscheinen als im Durchschnitt, die aber seltener angeklickt werden als im Durchschnitt (diese bezeichnen wir als "Spoiler", weil sie mehr Platz in den Suchergebnissen einnehmen, als sie eigentlich wert sind).

Wenn der eigentliche Content der Produktbeschreibungen in der Big Data-Maschine zusammen mit den Benutzerlogs vorliegt, kann man einige nützliche Kennzahlen zu Content --> Abfrage generieren:

  • Wörter in Produktbeschreibungen, die nie (oder selten) in Abfragen vorkommen
  • Produktbeschreibungen, die einen großen Prozentsatz selten gesuchter Wörter enthalten
  • Produktbeschreibungen, die zu viele häufig gesuchte Wörter (Spoiler) enthalten

Und schließlich kann man auch zusätzliche Kennzahlen für die Produktleistung entwickeln, wenn man Daten von externen Quellen vorliegen hat (z.B. von externen Finanzsystemen für Ladenverkäufe, oder Vertriebszahlen von anderen E-Commerce-Sites):

  • Produkte, die in Suchergebnissen viel seltener angegeben werden als bei externem Verkauf
  • Produkte, die in Suchergebnissen viel häufiger angegeben werden als bei externem Verkauf (Spoiler)

Dabei muss man beachten, dass diese Techniken für alle Sprachen funktionieren, eine kritische Bedingung, aber nur so lange, wie die Algorithmen für Umwandlung von Text in Token und Textverarbeitung nicht fest in der Suchmaschine verankert sind (hier helfen Open-Source-Suchmaschinen). 

2. Abfrageketten verwenden

Auch die Benutzer selbst helfen uns, die Sprachlücke zu schließen, durch die Abfragen, die sie ausführen. Dies geschieht unter anderem über Abfrageketten.

Einfach ausgedrückt, wenn eine Liste der Abfragen ausgewertet wird, die ein Benutzer über mehrere Suchsitzungen ausgeführt hat (also die Abfragekette), findet man Ketten, die häufiger auftreten. Diese helfen, den Abfrageprozess „kurzzuschließen“ und die Lücke zu füllen.

Als Beispiel, ein Benutzer könnte die folgende Abfragekette vornehmen:  

„Eintracht Stürmer“ [keine Ergebnisse] -->

„Frankfurt Stürmer“ [keine Ergebnisse] -->

„Valdez“ [Ergebnis gefunden, angeklickt]

(Nelson Valdez ist Stürmer bei Eintracht Frankfurt.)

Wenn die oben stehende Sequenz (oder Sub-Sequenz) häufiger auftritt, kann man eine Verbindung zwischen „Frankfurt Stürmer“ und „Valdez“ sehen. Wenn also ein Benutzer nach dem Ersten sucht, können wir automatisch die Ergebnisse für das Zweite hinzufügen.

3. Fuzzy-Matches bei Schreibweise ermöglichen

Häufig kommen Probleme zwischen Benutzersprache und Produktsprache auch durch unterschiedliche Schreibweisen. Die Suchmaschine wird dies schon zu einem gewissen Grad beheben, allerdings sind Suchmaschinen hierbei nicht sehr präzise. Big Data kann hier besser aushelfen:

  1. Abfragen, die in Folge ausgeführt wurden und ähnliche Schreibweisen enthalten
  2. Abfrageworte, die ähnlich geschrieben sind wie Worte im Content
  3. Contentworte, die ähnlich geschrieben sind wie Worte in der Abfrage

Hierbei ist entscheidend, dass diese Art der Analyse in einer großen Batch-Berechnung im Big Data-Framework vorgenommen wird und damit viel bessere Ergebnisse liefern kann als die Rechtschreibprüfung, die eine Suchmaschine in Echtzeit vornimmt. In Big Data ausgeführt können wir einen genaueren, längerfristigen Algorithmus implementieren.

Auch gut für das Auffinden ähnlich geschriebener Elemente ist eine N-Gramm-Analyse (nach ähnlichem 2-Gramm, 3-Gramm, Präfix-2-Gramm usw.). Die Ergebnisse der Analyse werden in Wörterbuch-Dateien eingetragen, die automatisch die Abfragen um alternative Schreibweisen erweitern. 

4. Kennzahlen für semantische Nähe verwenden

Um ähnliche Produkte zu bestimmen, kann man einen Content-Vektor erstellen (eine Liste gewichteter Begriffe) und diese Produkt-Vektoren miteinander vergleichen, um ähnliche Produkte zu finden. Dies funktioniert, wenn die Beschreibungen einen angemessenen Umfang aufweisen (also mindestens einen oder zwei Absätze, nicht nur einen einzelnen Satz).

Sobald wir wissen, welche Produkte vom Content her ähnlich sind, können wir einem Benutzer, der nach Produkt X1 sucht, in den Suchergebnissen auch das ähnliche Produkt X2 anzeigen (und umgekehrt). Um Verwirrung zu vermeiden könnten diese alternativen Ergebnisse in den Suchergebnissen optisch abgehoben sein (z.B. durch kleine Vorschaubilder unter der Überschrift "andere ähnliche Produkte").

Auf der anderen Seite (als Hilfe gegen Spoiler) kann man ähnliche Produkte auch in ein einzelnes Ergebnis zusammenlegen, wieder mit kleinen Vorschaubildern für "ähnliche Produkte". 

5. Verbindungen mit externem Content bieten

Und schließlich können wir externen Content mit einbringen, um die Sprachlücke zu schließen. Anders ausgedrückt, wir können das Internet durchsuchen und finden, wo Benutzer über die Produkte reden, diesen Content dann aufnehmen und mit den Produkten verbinden.

Potenzielle Quellen für externen Content können umfassen:

  • Tweets über die Produkte oder Produktbeschreibungen
  • Blogs über die Produkte oder Produktbeschreibungen
  • Wikipedia-Einträge über die Produkte oder Produktbeschreibungen
  • Suchergebnisse von öffentlichen Websites zu den Produkten

Sobald diese Informationen in das System eingebunden wurden, kann dieser Content auch genutzt werden. Wenn man z.B. öffentliche Seiten findet, die zu einer schlechte Ergebnisse liefernden Abfrage passen, kann man bestimmen, über welches Produkt auf dieser öffentlichen Seite geredet wird, und darüber eine Verbindung erstellen. 

 

Die Architektur von E-Commerce in der Zukunft

Wenn man all das zusammen nimmt, wird die um Big Data zentrierte Architektur für E-Commerce recht einfach:

 

Dies zeigt die Magie der Big Data-Analyse für E-Commerce, genau genommen die Möglichkeit, verschiedene Arten Content zu verbinden und Analysen daran vorzunehmen:  Produkte, Benutzerereignisse, Suchen, externe Blogs, Finanzberichte usw., all die Daten fließen in das Big Data-Framework ein und können genutzt werden, um Einblicke zu Produkten und Benutzern zu gewinnen. Diese Einblicke fließen dann wieder in die Suchmaschine ein, um die bestmöglichen Ergebnisse zu liefern.

Ich hatte erwähnt, dass das mit allen Sprachen funktioniert?

-- Paul

0