Zur Übersicht Startseite / Blog / Reinforcement-Learning-Prozess: Wie du mit Real Time Analytics die Kaufwahrscheinlichkeit erhöhst (Teil 2)

Reinforcement-Learning-Prozess: Wie du mit Real Time Analytics die Kaufwahrscheinlichkeit erhöhst (Teil 2)

05. Mar 2018 07:00 | Künstliche Intelligenz

Im zweiten Teil unserer Reihe über unseren Reinforcement-Learning-Prozess gehen wir darauf ein, wie wir Real Time Analytics verwenden, um die Surfhistorie eines Online-Shop-Benutzers so aufzubereiten, dass der Agent damit arbeiten und gute Entscheidungen treffen kann. Hier steht er vor der Herausforderung in kurzer Zeit relevante Informationen aus der Menge aller gesammelten Daten herauszufiltern, um diese für Empfehlungen nutzen zu können.

 

Diese Inhalte erwarten dich in diesem Blogartikel:

Real Time Analytics kurz zusammengefasst

Real Time Analytics für den Einsatz in Online Shops

Datensammlung und -anreicherung
Einfluss bisheriger Anfragen
Einfluss durch den Faktor Zeit
Vergleich mit anderen Kunden
Informationen zum Verhalten auf Seiten ohne Empfehlungen

Muster erkennen in Big Data

Von Big Data zu Smart Data für die Ermöglichung von Real Time Analytics

Smart Data in Real Time zusammenstellen

Unser Fazit zu Real Time Analytics für eine erhöhte Kaufwahrscheinlichkeit

 

Real Time Analytics kurz zusammengefasst

Beim Real Time Analytics werden in einem Computersystem ankommende Daten direkt analysiert und weiterverarbeitet. Meist dient dies dazu, Menschen dabei zu unterstützen, Entscheidungen innerhalb weniger Minuten oder Sekunden zu treffen. Es kann sogar auch genutzt werden, um automatisierte Entscheidungen innerhalb weniger Sekunden oder Millisekunden (z. B. Entscheidung, welcher Content für einen User ausgegeben werden soll, der gerade die Webseite aufruft) zu treffen. Für ein Real Time System ist es besonders wichtig, dass die Analyseergebnisse schnell genug erstellt werden, damit auch die verbundenen Entscheidungen schnell durchgeführt werden können.


Bleibe up to date in Sachen Personalisierung: Melde dich zum epoq Newsletter an. Jetzt anmelden!


 

Real Time Analytics für den Einsatz in Online Shops

Für relevante Empfehlungen in einem Online Shop soll unser Agent in Echtzeit automatisierte Entscheidungen treffen. Wenn ein Online Shopper eine Seite aufruft, auf der ein Empfehlungswidget eingebunden ist, so wird eine Anfrage an unseren Server gesendet. Der Server interpretiert die Anfrage und erstellt einen Zahlenvektor (Abb. 1) mit Informationen zum Aufruf für den Agenten. Anhand des Zahlenvektors entscheidet sich der Agent für eine oder mehrere Aktionen (z. B. Stelle den Preisbereich der E-Commerce-Recommendations auf 40€ bis 60€). Diese Entscheidungen nehmen Einfluss auf die Regelkette, mit der die tatsächlich zu empfehlenden Produkte bestimmt werden. Diese Produkte werden dann an den Browser des Benutzers zurückgegeben. Dort werden dann die Produkte im Widget angezeigt. Dieser gesamte Prozess dauert nur ein paar Millisekunden.

Die Abbildung zeigt einen Zahlenvektor mit Informationen zum Aufruf als Teil von Real Time Analytics.
Abb. 1: Zahlenvektor mit Informationen zum Aufruf

Jetzt stellt sich natürlich die Frage, wie der Server die Anfrage interpretiert und den Zahlenvektor für den Agenten erstellt. Hier stellt sich die Herausforderung, möglichst viele sinnvolle Informationen zu erhalten und gleichzeitig innerhalb der geringen vorgegebenen Zeit diese zu berechnen.

 

Datensammlung und -anreicherung

Wenn der Browser das Empfehlungswidget anfragt, sendet er Parameter für den Aufruf an unseren Server. Diese Parameter beinhalten die Session-ID des Online Shoppers und Informationen über die Seite, die angefragt wird, z. B. die ID eines Produktes auf einer Produktdetailseite. Der Server hält weitere Daten im Arbeitsspeicher durch unsere Wissensbasis bereit, mit denen er die Aufrufdaten anreichern kann. Diese Daten bezieht er aus dem Produktkatalog und kann so zusätzliche Daten zu dem angefragten Produkt hinzufügen. Dies können einfache Einträge wie

  • Preis
  • Marke
  • Kategorie oder auch
  • daraus abgeleitete Angaben (hochpreisiges oder niedrigpreisiges Produkt innerhalb der Kategorie)

sein.

 

Einfluss bisheriger Anfragen

Der Server hat auch die bisherigen Anfragen der Session und die zugehörigen Produkt-IDs im Arbeitsspeicher. Somit kann er Statistiken über alle angeschauten Produkte hinzufügen, z. B.:

  • den durchschnittlichen Preis der angeschauten Produkte und
  • die Anzahl der angeschauten Produkte der aktuellen Kategorie.

Zusätzlich kann mit einbezogen werden, ob sich der Nutzer immer hochpreisige Produkte anschaut oder nur Produkte von einer geringen Anzahl von Marken oder ob mit späterem Aufrufen der Anteil von rabattierten Artikeln steigt.

 

Einfluss durch den Faktor Zeit

Am letzten Beispiel sieht man, hier werden nicht nur Daten zum durchschnittlichen Verhalten des Users gesammelt, sondern auch Änderungen im Verhalten. Dies ist wichtig, weil viele Benutzer weiterhin durch die Webseite surfen, nachdem sie ihr gesuchtes Produkt gefunden haben. Allerdings verhalten sie sich dann anders (Wie? Z. B. von zielgerichtet zu stöbernd). Der Server speichert bei jeder Anfrage neben der Produkt-ID auch noch den genauen Zeitpunkt, zu dem die Anfrage auf dem Server angekommen ist. Daraus leitet er wiederum einige Dinge ab, wie etwa:

  • wie viel Zeit lässt sich der Kunde pro Seite,
  • wird er schneller oder langsamer,
  • mit welchen Produkten hat er sich mehr beschäftigt,
  • bei welchen Produkten hat er sofort gemerkt, dass sie doch nicht sein Ding sind.

 

Vergleich mit anderen Kunden

Diese Beobachtungen vergleicht der Server auch mit anderen Kunden. Dabei konnten folgende Erkenntnisse gewonnen werden:

  • viele Kunden sind abends nach 20 Uhr hektischer als Kunden, die wochentags gegen 15 Uhr shoppen
  • diese Kunden nehmen sich weniger Zeit pro angeschaute Website, weisen aber eine höhere Conversionrate pro Session auf

Deshalb verknüpft der Server auch die Uhrzeit und den Wochentag mit den bisher erstellten Daten.

 

Informationen zum Verhalten auf Seiten ohne Empfehlungen

Wenn jeder Webseitenaufruf eines Benutzers an den Server übermittelt wird, auch wenn sich auf der Webseite kein Empfehlungswidget befindet, wie etwa auf Kategorieübersichtsseiten oder Informationsseiten zum Porto, dann verknüpft der Server auch diese Daten. So beobachtet er, ob der Benutzer häufig auf die vorhergehende Seite zurückgeht und berechnet den Anteil der Zeit, die sich der Benutzer auf Kategorieseiten bzw. Produktdetailseiten befunden hat.

  • Kunden, die zielgerichtet nach einem Produkt suchen, setzen sich länger mit Produktseiten auseinander.
  • Stöbernde Kunden verbringen mehr Zeit auf Suchergebnis-, Kategorieübersichts- oder Promotionsseiten.

Der Server hat auch sehr gute Möglichkeiten die Daten weiter anzureichern, wenn Cookies ordentlich getrackt und wiederkehrende Benutzer so erkannt werden. Dadurch können die gewonnen Daten in ein Verhältnis mit der jeweiligen Historie gesetzt werden. An dieser Stelle könnten wir noch viele weitere mögliche Datenbeobachtungen nennen, jedoch wird die Liste dann deutlich zu lang.

 

Muster erkennen in Big Data

Die Anzahl der Datenpunkte die der Server so sammeln kann, ist enorm. So kommen schnell mal mehrere tausend einzelne Daten für eine einzige Abfrage der Empfehlungen zusammen. Es gibt mehrere Gründe dafür, dass es keine gute Idee ist, dass der Agent alle Daten verarbeitet. Vor allem benötigt der Server dafür mehr Zeit. Unser Ziel ist es allerdings, Empfehlungen in Echtzeit auszuspielen.

Bei zu vielen Daten kann es dem Agenten zudem schwer fallen, wichtige Muster in den Daten zu erkennen. Um zu verstehen warum das so ist, gehen wir noch einmal auf das Beispiel von unserem ersten Teil der Blogreihe zurück, bei dem wir unserem Hund Benno das Apportieren eines Balles beibringen.

Man könnte das Training auf einem freien Platz in einer Fußgängerzone ausprobieren. Allerdings wird es hier sehr schwer werden, dem Hund beizubringen, dass er dem geworfenen Ball hinterher rennen soll. Auf den Hund prasseln sehr viele Reize ein. Die vielen Besucher, denen er ausweichen muss, der Duft der Currywurst-Buden, das Jubeln und Schreien der Kinder und nicht zuletzt die reizenden Hündinnen, die viel interessanter sind als ein komischer Ball, der wegfliegt. Der Hund schafft es so nicht, sich auf das Wesentliche zu konzentrieren.

Ähnliches passiert bei unserem Reinforcement-Learning-Agenten. Gibt man ihm zu viele Daten zum Lernen, kann es schwierig werden, die wichtigen Muster von den weniger wichtigen Mustern zu unterscheiden.

Geht man nun mit dem Hund von der Fußgängerzone in den Park, so können hier immer noch viele Reize auftreten, die das Trainieren erschweren. Besonders bei Jagdhunden kann es passieren, dass sie die Freude auf das Hinterherlaufen nicht nur bzgl. des Balls entwickeln, sondern auf alles, was sich schnell von ihnen entfernt, wie Eichhörnchen, Fahrradfahrer oder Hummeln. Sie rennen dann auch diesen hinterher.

Auch beim Trainieren des Agenten können solche Effekte auftreten. So könnten sich Kunden hochpreisige Produkte in der Tierfutterkategorie anschauen und dabei Fußbälle aus dem Preisbereich 30€ – 50€ empfohlen bekommen. Zu diesem Zeitpunkt könnte viel Umsatz generiert werden. Das kann allerdings auch nur zufällig passieren und dieses Mal kein Muster darstellen, welches der Agent lernen soll. In diesem Fall würde der Agent fälschlicherweise lernen, unseren Tierfreunden Fußbälle im mittleren Preissegment zu empfehlen. Je mehr Daten dem Agenten zum Trainieren gegeben werden, desto höher ist die Gefahr, dass solch zufällige Muster darin vorkommen.

 

Von Big Data zu Smart Data für die Ermöglichung von Real Time Analytics

Den negativen Auswirkungen von zu vielen Reizen bzw. zu vielen Daten im Training kann entgegengewirkt werden, indem man die Reize und Daten auf geschickte Weise verringert.

Ein Hund macht mehr Fortschritte, wenn das Training in einem Raum stattfindet, der möglichst reizarm ist. Es laufen keine Eichhörnchen durchs Zimmer, Fernseher und Radio sind ausgeschalten und in der Küche wird gerade kein interessant duftendes Essen zubereitet. Hier kann sich der Hund viel besser auf den Ball und die Gestik des Trainers konzentrieren.

Auch für unseren Reinforcement-Agenten machen wir das Lernen einfacher, indem wir nur die hilfreichen Daten herausfiltern. Nebenbei stellen wir sicher, dass die Abfrage der Empfehlungen in Real Time abgearbeitet werden kann. Mit einfachen statistischen Verfahren bestimmen wir, wie gut die einzelnen Daten Käufe im Shop vorhersagen. Außerdem bestimmen wir, welche Daten zusammengenommen die vielfältigsten Informationen liefern.

Haben wir für einen Benutzer z. B. die vier Daten

  • Zeit auf Kategorieseiten,
  • Zeit auf Produktdetailseiten,
  • relative Zeit Kategorieseiten zu Produktdetailseiten
  • und Preis,

dann sehen wir, dass die ersten drei statistisch miteinander korrelieren. Wenn wir die Anzahl der Daten auf drei verringern wollen, indem wir ein Datum rausfiltern, dann würden wir dafür eines der ersten drei Daten wählen, weil das letzte mehr Vielfalt in die Daten bringt. Wir würden heraussuchen, welches der ersten drei statistisch am wenigsten Aussagekraft für die Vorhersage der Käufe hat. Diese Analyse machen wir bei tausenden von Daten, solange bis nur noch ca. 60 bis 100 übrig bleiben.

So kann z. B. die Information, ob der Benutzer länger oder kürzer als andere Benutzer auf der Hauptseite ist, nicht in jedem Fall für eine Vorhersage genutzt werden.


Bleibe up to date in Sachen Personalisierung: Melde dich zum epoq Newsletter an. Jetzt anmelden!


 

Smart Data in Real Time zusammenstellen

Das Filtern an sich benötigt ebenfalls Zeit. Wenn eine Anfrage an den Server gesendet wird, würde es zu lange dauern, erst alle Daten zu berechnen und danach noch zu bestimmen, welche Daten wieder herausgefiltert werden sollen. Stattdessen sollte einmal am Tag berechnet werden, welche Daten behalten werden sollen. Gelangt nun eine Anfrage an den Server, dann checkt dieser, welche Daten tatsächlich benötigt werden und berechnet nur diese. Damit schafft er es den Input für den Agenten in nur wenigen Millisekunden fertig zu stellen.

 

Unser Fazit zu Real Time Analytics für eine erhöhte Kaufwahrscheinlichkeit

Um relevante Empfehlungen in Echtzeit ausspielen zu können, ist Data-Science-Know-how gefragt! Es müssen zum einen möglichst viele Daten gesammelt, angereichert und anschließend interpretiert werden. Zum anderen muss die Masse an Informationen auf die wirklich aussagekräftigen reduziert werden, sodass eine Ausspielung in Echtzeit möglich ist. Wir finden: Dieser Prozess lohnt sich, um durch die relevanten Empfehlungen Warenkörbe zu füllen und Online Shopper glücklich zu machen.

 

Zum ersten Teil unserer Blogreihe „Reinforcement-Learning-Prozess“: Wie du Reinforcement Learning für deinen Online-Shop gewinnbringend einsetzt (Teil 1)
Und hier gehts zum dritten Teil: Wie du durch selbstlernende Algorithmen deinen Umsatz steigerst (Teil 3)

 

 

Erfahre, wie Internetstores seinen Umsatz durch Empfehlungen steigert:

Jetzt Case Study lesen!

Mehr Infos zu unserer E-Commerce Technologie >>

Hast du Fragen oder Anregungen zu diesem Artikel? Verwende gerne die Kommentarfunktion!

War dieser Beitrag hilfreich?

Beitrag teilen

Eric Mende

Data Scientist

Eric war zum Zeitpunkt der Veröffentlichung als Data Scientist bei epoq tätig und für den Bereich Machine Learning zuständig. Er optimierte täglich unsere Algorithmen, damit sie für unsere Kunden die besten Ergebnisse erzielten.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Blogartikel könnten dich auch interessieren
Blogpost

E-Commerce der Zukunft: Welchen Einfluss KI-gestützte Personalisierung nehmen wird

Immer wieder hört und liest man davon, dass KI unser Leben und auch die Art und Weise, wie wir Produkte und Dienstleistungen konsumieren, revolutionieren wird. Doch sind das alles nur wilde Spekulationen oder was ist wirklich dran an diesen Aussagen und was ist eigentlich Stand heute schon alles möglich? Wir werfen in diesem Blogartikel gemeinsam einen Blick in die Zukunft und zeigen dir anhand verschiedener Entwicklungen und Beispiele, wie der E-Commerce der Zukunft aussehen kann. Dabei gehen wir auch insbesondere darauf ein, welchen Einfluss KI-gestützte Personalisierung in diesem Zusammenhang nehmen wird. Los geht’s!

Sarah Birk: 21. Juli 2023

Mehr erfahren
Blogpost

Data Enrichment für zielsichere Entscheidungen und persönliche Kundenansprache

95 Prozent der Deutschen halten es für wichtig, dass Händler ihre Interessen und Vorlieben kennen.¹ Du solltest deine Kunden daher persönlich und direkt ansprechen. Dafür brauchst du neue und angereicherte Daten, die es dir erlauben, zielgenaue Entscheidungen auf Basis von Fakten und Trends zu treffen, statt dich nur auf dein Bauchgefühl oder Spekulationen zu verlassen. Die Kunst, neue Daten in die eigene Datenbasis zu integrieren, wird dabei als Data Enrichment bezeichnet. Dieser Anreicherungsprozess macht deine Daten nützlicher und aufschlussreicher und ist ein wichtiger Erfolgsfaktor für Unternehmen, die sich in einem modernen datenzentrierten Umfeld bewegen. In diesem Beitrag erfährst du, welche weiteren Vorteile dir Data Enrichment bietet und wofür du es einsetzen kannst.

Sarah Birk: 09. Juni 2023

Mehr erfahren