Antje Marx | Friday, der 28. September 2018
Der folgende Text ist Teil einer Serie von Tech-Blog Artikeln, die die Entwicklung eines Empfehlungssystems (Recommender Systems) beschreiben, das im Rahmen der Zusammenarbeit zwischen der EYZ Media GmbH (realeyz) und dem DAI-Labor (TU-Berlin) realisiert wurde.
Ein in der Praxis erprobter Ansatz für die Berechnung von Empfehlungen ist das Kollaborative Filtern (CF). Auf CF-basierende Empfehlungsalgorithmen analysieren bestehende User-Item-Interaktionen (z. B. abgegebene Bewertungen) und berechnen Vorhersagen für fehlende Präferenzen. Dabei werden Informationen über die Ähnlichkeiten zwischen Nutzern und Items sowie Daten über die Benutzerpräferenzen genutzt. CF-basierte Empfehlungsalgorithmen werden in der Regel auf der Basis von User-Item-Matrizen implementiert. Der Algorithmus ermittelt Empfehlungen, indem er mit Hilfe der KNN Methode (K-Nearest Neighbors) Benutzer mit ähnlichen Präferenzen ermitteln und dann die Items bestimmt, die diese Nutzer gut bewertet haben.
Die realeyz VOD-Plattform verwendet verschiedene Methoden zur Berechnung von Empfehlungen. Dazu gehört auch das Collaborative Filtering. Das System analysiert anhand der Log-Daten das Interesse der Nutzer an Videos, Filmbeschreibungen und Trailern. Die Daten bilden die Grundlage für die Berechnung von Empfehlungen. Die Herausforderung für die Empfehlungskomponente besteht darin, geeignete Modelle sowie Parameter-Konfigurationen für die Algorithmen zu finden. Die von uns implementierte Lösung löst dieses Problem, indem sie Modelle mit verschiedenen Konfigurationen erstellt und mit einem Kreuzvalidierungsverfahren auf der Basis von Logdaten die leistungsstärkste Konfiguration ermittelt.
Abbildung 1 zeigt das Vorgehen zur Ermittlung des am besten geeigneten Algorithmus sowie zur Optimierung der Hyperparameter. Auf Basis von Trainingsdatensätzen werden verschiedene Modelle für den Recommender gelernt und anhand der gewählten Metrik evaluiert. Das Modell, das die besten Ergebnisse liefert, wird für den Live-Betrieb ausgewählt. Um eine kurze Antwortzeit auch bei Lastspitzen sicherzustellen, werden Empfehlungen vorberechnet und in einer Datenbank zwischengespeichert. Die Empfehlungen werden bei Änderungen im Nutzerprofil sowie beim Vorliegen neuer Nutzer-Item-Interaktionen aktualisiert.
Abbildung 1: Ablauf Modell- und Parameterauswahl für die der CF-basieren Empfehlungskomponente.
In VOD-Plattformen folgt die Verteilung der Interaktionen zwischen Elementen (Filmen, Trailern, Texten) und Benutzern oft den Potenzgesetzen („power laws“). Das bedeutet, dass der Hauptteil der Interaktionen mit einem sehr kleinen Teil der Nutzer bzw. Items erfolgt. Bei der Anwendung von Collaborative Filtering Recommender-Ansätzen haben populäre Elemente einen starken Einfluss auf das Ergebnis der Auswahl (Modell-Bias). Die Empfehlung beliebter Artikel führt in der Regel zu guten Bewertungsergebnissen, reduziert aber die Vielfalt der Empfehlungen. Bewertungsmetriken sollten daher berücksichtigen, dass ein Empfehlungssystem auch für den Benutzer noch unbekannte Items vorschlägt.
,
Abbildung 2: Die Abbildung zeigt die Verteilung der Artikel-Benutzer-Interaktionen.
Den diskutierten Effekt findet man auch bei der genauerer Analyse der realeyz Logdaten. Dazu werden die existierenden Relationen zwischen Benutzern und Items untersucht. Abbildung 2 zeigt, dass 20% der Benutzer für 66% der Interaktionen verantwortlich sind. Zudem sind die populärsten 20% der Items Teil von 70% der Interaktionen. Der starke Einfluss der sehr aktiven Nutzer und der populären Items führt oft zu einer Reduzierung der Diversität der Empfehlungen und zu einer Fokussierung auf populäre Items. Darüber hinaus kann dieser „Bias“ zusätzliche Aspekte (z.B. kontextuelle Faktoren) überdecken, die bei der Berechnung von Empfehlungen wichtig sind.
Um dieses Problem zu lösen, werden Empfehlungs-Modelle auf der Basis von unterschiedlichen Trainingsmengen gelernt, die in Bezug auf relevante Kontextfaktoren (z. B. Zeit, Ort) definiert wurden. Der Einsatz verschiedener Empfehlungsmodelle verbessert die Vielfalt der Empfehlungen.
Abbildung 3. Schematische Darstellung der Evaluation der Algorithmen unter Berücksichtigung verschiedener Metriken und Trainingsdatenmengen.
Im realeyz-Empfehlungssystem wird die Zeit als Kontextfaktor durch die Empfehlungskomponente genutzt. Es wird ein „Sliding Window“-Ansatz zum Definieren von Teil-Datensätzen eingesetzt. Für jedes Zeitfenster wird eine Kreuzvalidierung durchgeführt, d.h. die Modelle werden unabhängig voneinander gelernt und evaluiert. Abbildung 3 visualisiert schematisch diesen Modellierungsansatz. Verschiedene Metriken und Datensatzgrößen („window sizes“) werden analysiert, um das beste Modell zu berechnen.
Die experimentellen Evaluationsergebnisse der Modelle, die auf Basis von Logdaten für neun Zeitfenster erstellt wurden, sind in Tabelle 1 aufgelistet. Es werden jeweils drei Metriken betrachtet: RMSE (Root Mean Squared Error), MAE (Mean Average Error) und FCP (Fraction of Concordant Pairs). Als Algorithmen werden ein SVD-basiertes Modell, ein Benutzer-basiertes KNN-Modell sowie ein Item-basiertes KNN analysiert. Die experimentellen Ergebnisse zeigen, dass die Bewertungsmetrik FCP zur höchsten Varianz hinsichtlich des am besten abschneidenden Algorithmus führt.
Tabelle 1. Die Tabelle listet für neun betrachtete Zeitfenster in Abhängigkeit von der Evaluationsmetrik den Algorithmus auf, der die besten Ergebnisse liefert.
Die durchgeführte Analyse zeigt, dass der implementierte Ansatz zum Lernen von Empfehlungsmodellen (kontextspezifisch optimiert) präzise Empfehlungsergebnisse sicherstellt. Die Berücksichtigung unterschiedlicher Zeitfenster bei der Optimierung der Modelle ermöglicht eine hohe Empfehlungsgüte und verbessert gleichzeitig die Vielfalt der Vorschläge. Der Einfluss populärer Items und sehr aktiver Nutzer wird berücksichtigt, um auch weniger bekannte Items in die Menge der Empfehlungen einzubeziehen.
Über die Autoren:
Andreas Lommatzsch arbeitet als Senior Researcher am Distributed Artificial Intelligence Lab (DAI-Labor) der TU Berlin. Seine Forschungsschwerpunkte sind verteiltes Wissensmanagement und maschinelle Lernalgorithmen. Seine Hauptinteressen liegen in den Bereichen Empfehlungen auf Basis von Datenströmen und kontextabhängigen Meta-Empfehlungsalgorithmen.
Jing Yuan ist Doktorandin am Distributed Artificial Intelligence Lab (DAI-Labor) der TU Berlin. Ihr Forschungsinteresse umfasst Empfehlungssysteme, Information Retrieval Systeme sowie Algorithmen des maschinellen Lernens.
Phani Saripalli arbeitet als Dateningenieur bei der EYZ Media GmbH (Betreiber von realeyz.de) und koordiniert das Projekt vor Ort. Er ist spezialisiert auf den Aufbau von Data Pipelines und Data Wrangling. Er arbeitet mit Redis, AWS, Airflow, Flask, Python und Postgres, um sicherzustellen, dass Daten von der Rohform in aufschlussreiche Inhalte umgewandelt werden.
Khalit Hartmann (Bachelor of Computer Science) arbeitet am Distributed Artificial Intelligence Lab (DAI-Labor) der TU Berlin. Zu seinen aktuellen Forschungsgebieten gehören Empfehlungssysteme, die die Analyse natürlich-sprachlicher Texte und Algorithmen des maschinellen Lernens kombinieren.