Im Seminar E-Commerce habe ich im aktuellen Semester das Thema „Machine Learning im Vergleich zu Business Rules im Kontext der Webshop-Personalisierung“ bearbeitet. Ziel war es, die beiden Technologien Business Rules sowie Machine Learning miteinander zu vergleichen und dabei insbesondere die Umsetzbarkeit der immer wichtiger werdenden Personalisierung auf Webseiten zu betrachten.
Warum Personalisierung?
Mit Personalisierung im Webkontext wird die individuelle Anpassung einer Webseite auf die Bedürfnisse des Besuchers bezeichnet, der diese gerade betrachtet. Sie ist also auf den Betrachter persönlich angepasst und wird damit als personalisiert bezeichnet.
Das Shopsystem hilft dem Besucher dadurch in zweierlei Hinsicht. Zum einen wird die im Internet ohnehin vorliegende Informationsflut eingedämmt, indem vom System vorab eine Auswahl getroffen wird. Und zwar genau so, dass die Informationen für den aktuell betrachteten Besucher interessant sind. [1] Diese Personalisierung betrifft die Inhaltsebene, da konkret über Informationsinhalte, wie zum Beispiel Texte, Produktvorschläge oder Werbebanner, entschieden wird. Andererseits wird dem User geholfen, wenn die Webseite genau seinen Ansprüchen im Hinblick auf die Struktur und gestalterische Elemente entspricht. Betroffen ist bei dieser Art der Personalisierung die Präsentationsebene. Beispiele hierfür sind die Farben der Webseite, die grafische Aufbereitung des Menüs oder aber auch die Struktur der Gesamtseite (z.B. drei- oder vierspaltige Produktübersichtsseiten). [2]
Die Frage ist nun, wie entschieden wird, welcher Inhalt bzw. welche grafische Aufbereitung für den aktuellen Betrachter zu wählen ist? Die Antwort kann auf drei verschiedene Arten gegeben werden [2, 3]:
- Der Besucher selbst entscheidet über die individualisierten Elemente, indem er z.B. Konfigurationen in seinem Benutzerprofil vornimmt.
- Der Betreiber der Webseite trifft die Auswahl durch Konfiguration des Personalisierungssystems.
- Das Personalisierungssystem selbst berechnet die optimalste Entscheidung.
Im Folgenden wird die betreiberseitige Personalisierung mittels Business Rules sowie die automatisierte Personalisierung mittels Machine Learning betrachtet.
Technische Umsetzung eines Empfehlungssystems mit Business Rules
Business Rules bzw. Geschäftsregeln sind Konditionalsätze der Form Wenn.., dann .., die direkten Einfluss auf das Verhalten bestimmter unternehmerischer Abläufe haben [4]. Eine Business Rule ist zum Beispiel:
Wenn ein Besucher aus Bayern kommt, dann empfehle Wanderschuhe.
Syntaktisch wird die linke Seite der Regel (Wenn-Teil) als Prämisse bezeichnet und der rechte Teil (Dann-Teil) als Konklusion oder Konsequenz. Die Prämisse kann dabei aus mehreren Teilprämissen zusammengesetzt sein, die dann mit booleschen Operatoren verknüpft werden [5].
Wenn Betreiber eines Webshops ein Personalisierungssystem mit der Business Rules Technik umsetzen, wird eine Vielzahl von Regeln definiert, die in ihrer Gesamtheit die Entscheidung treffen, was einem Besucher mit seinen spezifischen Eigenschaften im Shop angezeigt werden soll. Es ist besonders wichtig, dass der Shopmanager den Auswertungsalgorithmus der Business Rules Engine beherrscht, damit das Zusammenspiel der verschiedenen Regeln funktioniert und die Ergebnisse für den Shopbetreiber nachvollziehbar sind. Beispielsweise können Reihenfolgeabhängigkeiten zwischen Regeln bestehen, so dass bei verschiedener Auswertungsreihenfolge andere Ergebnisse durch die Inferenzmaschine berechnet werden.
Folgende Grafik zeigt das Zusammenspiel von Regel-Verwaltungssystem sowie dem Webshop:
Auf der linken Seite ist das Business Rules Management System abgebildet, in dem alle Business Rules hinterlegt sind. Zudem wird dort häufig eine Benutzerverwaltung, Versionsverwaltung sowie Strukturierung der Regeln angeboten. Der Webshop nimmt die aktuell geltenden Regeln in einem Cache auf (können auch dynamisch in den Quellcode selbst einkompiliert werden) und benutzt diese dann für die Auswertung. Diese findet in der Inferenzmaschine statt, die Regeln mit aktuell geltenden Fakten zusammenbringt. Fakten sind die Parameter, die benötigt werden, um eine Regelprämisse zu wahr oder falsch auszuwerten. Beispielsweise ist das Bundesland des Besuchers ein Fakt, der für die obige Beispielregel benötigt wird. [5, 6, 7, 8]
Technische Umsetzung eines Empfehlungssystems mit Machine Learning
Anstatt die Entscheidungen der personalisierten Elemente durch den Shopmanager mittels Business Rules zu treffen, gibt es die Möglichkeit der automatisierten Ergebniserzeugung durch sogenannte Machine Learning Algorithmen. Es wird innerhalb von bestehenden Datenbeständen nach Mustern gesucht, die sich für die Erstellung eines Modelles eignen. Dieses wird dann für die Entscheidungsfindung genutzt, indem die spezifischen Eigenschaften von z.B. Besuchern auf das generalisierte Modell angewendet werden. Dadurch sind zum Beispiel Prognosen über zukünftige Verhaltensweisen der Besucher möglich. Ein weiteres Beispiel der Nutzung von kollektiver Intelligenz wäre die Analyse, welche Produkte im September in Bayern bei einem bestimmten Wetter in den jeweiligen Kategorien am meisten gekauft werden (z.B. Lederhosen und Dirndl wegen des Oktoberfestes). [9]
Um nun ein Machine Learning System zu erstellen, muss der zu nutzende Algorithmus bestimmt werden, der den umzusetzenden Anwendungsfall am besten realisieren kann. Die drei am häufigsten eingesetzten Algorithmen sollen folgend kurz erläutert werden [9,10]:
- Recommending bezeichnet die Erzeugung individueller Vorschläge (z.B. Produktempfehlungen) für jeden einzelnen Besucher des Webshops.
- Clustering-Algorithmen bilden anhand der Eigenschaften der Objekte aus einer heterogenen Grundgesamtheit homogene Gruppen. Im Webshop-Kontext werden z.B. Besucher geclustert, um dann je nach Cluster verschiedene Marketing-Kampagnen auszusteuern.
- Classification bezeichnet die Zuordnung von neuen Objekten (z.B. Besuchern) zu bestehenden Gruppen. Clustering und Classification können somit sehr gut in Kombination benutzt werden, indem in gewissen Zeitabständen Cluster gebildet werden und neue Objekte bis zur nächsten Gruppenbildung mittels Classification direkt einer bestehenden zugeordnet werden. Dadurch ist eine sofortige Nutzung der Personalisierung auf Clusterebene auch für bis dahin noch nicht zugeordnete Besucher möglich.
Das Zusammenspiel von Webshop und Machine Learning System zeigt folgende Grafik:
Das Machine Learning System ist vom Webshop entkoppelt aufgebaut und kann für die Analyse sehr heterogene Datenquellen benutzen (externe und interne). Der Webshop kommuniziert über wohldefinierte Schnittstellen mit dem automatisierten Machine Learning System, um an Personalisierungsergebnisse für bestimmte User zu gelangen.
Vergleich von Business Rules und Machine Learning im Webkontext
Zunächst stellt sich die Frage, welche Webshop-Elemente (Inhalts- und Präsentationsebene) sich mit welcher Technik besser individualisieren lassen. Grundsätzlich sind beide Techniken für alle Elemente einsetzbar. Jedoch ist je nach Anwendungsfall die ein oder andere vorteilhafter. Sollen nur kleine, eher statische Elemente (z.B. Teaser auf der Homepage) personalisiert werden und es gibt z.B. nur ein Element für Frauen und eins für Männer, dann lohnt sich die Anschaffung eines Machine Learning Systems in den seltensten Fällen. Für sehr dynamische Elemente, bei denen es viele verschiedene Konfigurationen gibt, sollte jedoch auf ein Machine Learning System zurückgegriffen werden, da die Erstellung einer Regelbasis für z.B. Produktvorschläge sehr umfangreich ist und viel Zeit in Anspruch nehmen kann.
Die Architektur der beiden Systeme unterscheidet sich aufgrund der unterschiedlichen Dynamik innerhalb der Komponenten. Business Rules Systeme stellen die Verwaltung der Regeln sinnvollerweise zwar außerhalb des Webshops zur Verfügung, halten die aktuell geltenden jedoch unmittelbar im Shopsystem, um die Performance nicht zu verschlechtern. Regeln ändern sich somit nur im Rules Management System und werden dem Shop dann zu bestimmten Zeitpunkten (z.B. jeden Morgen) bereitgestellt. Machine Learning Systeme hingegen optimieren sich fortlaufend und sind somit sehr dynamisch, da jederzeit neue Daten eintreffen können, welche die Modellannahmen verändern könnten. Der Shop sollte mit dieser hohen Dynamik nicht belastet werden und ist deshalb lose an das Machine Learning System angebunden (über eine definierte API).
Bei der Erstellung von Anwendungsfällen sind zwei verschiedene Herangehensweisen nötig. Business Rules Systeme nutzen zum Finden von Entscheidungen eine vollständige Regelbasis. Shopbetreiber müssen in der Regelbasis somit jede Situation berücksichtigen, die auftreten kann. Dadurch entsteht häufig ein zeitlich hoher Aufwand und die Gefahr, dass Regeln vergessen oder keine Default-Rules zum Behandeln unvorhersehbarer Zustände erstellt werden. Je größer die Regelbasen werden, desto schwieriger ist es, den Überblick über die tatsächliche Logik des Webshops in Form von Regeln zu behalten. Verändern sich Produkteigenschaften, werden Produkte hinzugefügt oder ähnliche Änderungen an der Datengrundlage vorgenommen, muss die Regelbasis zeitgleich angepasst werden, um diese aktuell zu halten. Bei Machine Learning Systemen werden keine Regeln definiert, die die exakte Logik definieren, sondern der Algorithmus (z.B. eine spezifische Implementierung des Clusterings), mit dem gearbeitet werden soll. Neben dem Algorithmus als Basis-Vorgehensweise müssen die Input- und Output-Parameter definiert werden:
Beim Machine Learning System werden im Gegensatz zum Business Rules System Input- und Output-Parameter ohne konkrete Ausprägung festgelegt und somit sehr allgemein gehalten. Sie definieren lediglich den zu optimierenden Sachverhalt. Folgendes Beispiel soll die verschiedenen Denkmuster verdeutlichen:
Es sollen die Top-Produkte einer Kategorie passend zum aktuellen Wetter empfohlen werden. Beim Business Rules System wird die Regelbasis aufgebaut, indem jedes eventuell auftretende Wetter als Prämisse eingegeben und die vorzuschlagende Kategorie in der Konklusion ausgegeben wird. Es entsteht dadurch für jede Ausprägung des Eingabeparametertyps Wetter eine Regel, die der Kategorie in der Rolle des Ausgabetyps einen konkreten Wert zuordnet. Beim Machine Learning System hingegen wird neben dem zu verwendenden Algorithmus nur festgelegt, dass der Eingabeparameter vom Typ Wetter und der Ausgabeparameter vom Typ Kategorie ist. Es wird sich somit nicht auf konkrete Ausprägungen der Parametertypen festgelegt. Diese bestimmt das System automatisiert, indem es vorhandene Daten betrachtet und analysiert, welche Produkte bei welchem Wetter am liebsten gekauft werden. Ein Vorteil ist, dass die tatsächlichen Käufe berücksichtigt werden und nicht die persönliche Meinung des Shopmanagers in die Regeln einfließt (vorausgesetzt der Shopmanager nutzt keine historischen Verkaufszahlen). Beispielsweise muss, wie eventuell vom Shopmanager angenommen, bei Sonne nicht zwangsläufig die Kategorie Sonnenbrillen die am meisten gekauften Produkte enthalten.
Fehlende Daten können bei Personalisierungssystemen dazu führen, dass diese keine Ergebnisse erzeugen können (sogenannte Kaltstartproblematik) [11]. Business Rules Engines haben das Problem im Gegensatz zum Machine Learning nicht, da diese auf konkreten Fakten arbeiten, die zur Berechnungszeit durch den aktuellen Kontext bereitgestellt werden. Machine Learning Systeme hingegen tätigen großflächige Analysen über eine Vielzahl von Daten, die natürlich vorerst benötigt werden.
Der Wunsch der Webshop-Betreiber ist, dass eine für den aktuell betrachteten User optimale Lösung gefunden wird. Diese bietet sowohl für den Shopbetreiber als auch -besucher den größten Mehrwert. Folgende Grafik visualisiert den Sachverhalt [12]:
Zum Startzeitpunkt liegt keine optimale Konfiguration vor. Diese wird in der Regel erst durch eine iterative Verbesserung erreicht. Bei der Verwendung von Business Rules muss jede Iteration manuell durchgeführt werden und beruht auf der Entscheidung des Shopmanagers. Machine Learning Systeme hingegen suchen die optimale Lösung automatisiert und erreichen diese deshalb häufig schneller als durch manuelle Anpassung der Konfiguration. [12]
Des Weiteren sind semantische Einflussfaktoren zu betrachten, die nicht direkt aus Datenbanken ausgelesen werden können. Dabei handelt es sich beispielsweise um kulturelle Gegebenheiten in bestimmten Regionen oder aber auch die politische Situation in einem Land. In Business Rules fließen diese Informationen implizit mit ein. Einem Machine Learning System hingegen muss zunächst beigebracht werden, wie es die Semantik zu interpretieren hat. [9]
Zuletzt dürfen auch psychologische Faktoren bei dem Vergleich beider Systeme nicht vernachlässigt werden. Einem Business Rules System kann der Shopmanager (vorausgesetzt die Technik funktioniert und der Shopmanager versteht das Verfahren der Regelauswertung) vertrauen, da es genau die Logik ausführt, die er selbst bestimmt hat. Bei einem Machine Learning System hingegen kann häufig nicht gänzlich nachvollzogen werden (z.B. bei neuronalen Netzen), wie es zu dem Ergebnis gekommen ist. Der Technik muss somit blind vertraut werden. Zudem könnten Shopmanager um ihren Arbeitsplatz fürchten, wenn das Machine Learning System nun viele Prozesse automatisiert, die vorher durch Menschen erledigt wurden. Dies ist jedoch unbegründet, da nun vielmehr die durch das Machine Learning erst möglich werdenden Anwendungsfälle weiterentwickelt werden können.
Fazit
Abschließend lässt sich sagen, dass beide Systeme aufgrund der Personalisierungswünsche seitens der Shopanbieter sowie -besucher sehr gute Hilfsmittel zur Umsetzung dieser sind. Da beide Techniken Vor- und Nachteile bieten, stellt sich ein hybrider Ansatz häufig als lohnenswert heraus.
Die Präsentation zum Seminar kann hier heruntergeladen werden, die tiefer in das Thema einsteigende Ausarbeitung hier.
[1] vgl. Brudermann, Thomas. [Webseiten-Personalisierung] für anonyme Besucher. Norderstedt: GRIN Verlag, 2007.
[2] vgl. Cylogy, Inc. [Personalization Overview]. San Francisco (US): http://www.cylogy.com/library/personalization_overview-kb.pdf.
[3] vgl. Jochims, Dr. Heike. Customer Relationship Management und neue Ansatze. Wedel: Vorlesung an der Fachhochschule Wedel: [Customer Relationship Management und neue Ansatze], Gehört im Sommersemester 2012.
[4] vgl. Schacher, Markus und Patrick Grässle. [Agile Unternehmen] durch Business Rules – Der Business Rules Ansatz. Berlin, Heidelberg: Springer-Verlag, 2006.
[5]vgl. Kern-Isberner, Gabriele und Christoph Beierle. [Methoden Wissensbasierter Systeme] – Grundlagen, Algorithmen, Anwendungen. 4. Au . Wiesbaden: Vieweg + Teubner, 2008.
[6] vgl. JBoss, Inc. (Red Hat). [Drools Expert Dokumentation]. Atlanta (US): http://docs.jboss.org/drools/release/6.0.0.Beta3/drools-expert-docs/html_single/index.html.
[7] vgl. JBoss, Inc. (Red Hat). [Drools Guvnor Dokumentation]. Atlanta (US): http://docs.jboss.org/drools/release/6.0.0.Beta2/drools-guvnor-docs/html_single/index.html.
[8] vgl. Kurbel, Karl. Entwicklung und Einsatz von [Expertensysteme]n – Eine anwendungsorientierte Einführung in wissensbasierte Systeme. 2. Berlin, Heidelberg: Springer-Verlag, 1989, 1992.
[9] vgl. Segaran, Toby. [Programming Collective Intelligence]. Sebastopol (US): O’Reilly Media, Inc., 2007.
[10] vgl. Owen, Sean u. a. [Mahout in Action]. New York (US): Manning Publications Co., 2012.
[11] vgl. Schneider, Prof. Dr. Holger. E-Commerce Systeme. Wedel: Vorlesung an der Fachhochschule Wedel: [E-Commerce Systeme], Gehalten im Sommersemester 2013, Kapitel 5.3.
[12] vgl. WibiData. Big Data Workshop. San Francisco (US): WibiData [Big Data Workshop], 2012.