Empfehlungssysteme empfehlen Items wie Produkte oder Dienstleistungen für Benutzer. Dies erfolgt meist auf Basis von Bewertungen (kollaborativer Filter) oder von Eigenschaften der Items (inhaltbasierter Filter).
Überblick
Die Grundidee von Empfehlungssystemen (engl. recommender systems) ist, Produkte wie z.B. Bücher, Dienstleistungen oder Orte wie z.B. Sehenswürdigkeiten oder andere sog. Items für einen aktiven Benutzer zu empfehlen. Dazu wird auf Basis von Informationen über den Benutzer, den Items und ggf. weiterer Daten ermittelt, inwieweit ein Item wohl dem Geschmack des Benutzers entspricht. Es wird also eine vorhergesagte Bewertung von Items für den aktiven Benutzer berechnet, aus denen in der Regel eine Liste von empfehlenswerten, für den aktiven Benutzer neuen, Items generiert wird.
Empfehlungssysteme werden erfolgreich in kommerziellen Anwendungen wie z.B. Amazon (http://www.amazon.de) oder Netflix (http://www.netflix.com) eingesetzt. Die führende akademische Konferenzserie in diesem Bereich ist die ACM Conference on Recommender Systems (vgl. http://recsys.acm.org). Ein Überblick über den State-of-the-Art von Empfehlungssystemen ist insbesondere in [Kantor et al. 2010] zu finden.
Grundlegende Typen von Empfehlungssystemen
Grundsätzlich unterscheidet man individuelle und kollaborative Empfehlungssysteme. Individuelle Systeme ermitteln nur auf Basis von Informationen über den aktiven Benutzer empfehlenswerte Items. Oftmals geschieht dies mit Hilfe von Attributen, welche die Items beschreiben – daher werden diese Systeme auch inhaltsbasierte Recommender genannt. Attribute von Items können z.B. Produkteigenschaften oder der Preis sein. Zur Realisierung eines inhaltsbasierten Empfehlungssystems kann z.B. ein Regelsystem eingesetzt werden, welches auf Basis von explizit ausgewählten oder implizit erlernten Benutzerprofilattributen Items empfiehlt. In diese Kategorie fallen auch textbasierte Ansätze, die z.B. das Vorkommen bestimmter Terme in Dokumenten analysieren und mit Benutzerinteressen vergleichen.
Die zweite wichtige Kategorie ist kollaboratives Filtern (engl. collaborative filtering, CF). Dazu werden bei der Empfehlung auch andere Benutzer berücksichtigt. Dies erfolgt mit Hilfe von Bewertungen (engl. rating) der Benutzer für Items, z.B. auf einer Skala von 1 bis 5. Dabei gibt es zwei Varianten: Benutzer- bzw. speicherbasiertes (engl. auch User-based CF genannt) oder Item- bzw. modellbasiertes (engl. auch als Item-based CF bezeichnet) kollaboratives Filtern. Letzteres Verfahren ermittelt als Modell die aus den Bewertungen berechnete Ähnlichkeit zwischen jeweils zwei Items, was Vorteile in Bezug auf die Performance der Empfehlungsgenerierung bietet.
Der Empfehlungsprozess bei speicherbasiertem, kollaborativen Filtern besteht grundsätzlich aus zwei Schritten: 1. Berechnung einer Menge von Benutzern, die in der Vergangenheit ähnlich wie der aktive Benutzer bewertet haben (Nachbarschaft), 2. Auswahl von Items, die der aktive Benutzer noch nicht beurteilt hat, die aber in seiner Nachbarschaft als empfehlenswert bewertet wurden. Zur Nachbarschaftsberechnung im 1. Schritt werden die Bewertungen des aktiven Benutzers mit denen der anderen Benutzer im System verglichen. Dazu werden in der Literatur verschiedene Ähnlichkeitsmaße vorgeschlagen, z.B. Kosinus des Winkels der Bewertungsvektoren, Euklidische Distanz, oder Pearson-Spearman Korrelation.
Ein Grundproblem von CF ist das Kaltstartproblem, d.h. das System kann für neue Benutzer oder Items keine guten Empfehlungen ermitteln, was bei inhaltsbasierten Filtern leichter zu lindern ist. CF kann dagegen auch besser Genre-übergreifende Empfehlungen generieren, während sich bei inhaltsbasierten Filtern ein sog. Portfolio-Aspekt durch Überspezialisierung einstellen kann, d.h. empfohlene Items sind sehr ähnlich zu bereits bekannten.
Weitere Typen und andere Aspekte
Als weitere Typen von Empfehlungssystemen werden oft genannt: Demographische Filter (Empfehlung auf Basis von demographischen Eigenschaften von Benutzern), wissensbasierte Recommender (Ableitung einer Wissensbasis aus den Item-Eigenschaften) oder Case-based Recommender (Abgleich von Benutzeranfragen mit bereits vorhandenen Fällen in einer Item-Datenbank). Darüberhinaus können verschiedene Ansätze zu einem sog. hybriden Empfehlungssystem kombiniert werden. Dazu werden zwei oder mehr Recommender Algorithmen z.B. gewichtet kombiniert oder hintereinander geschaltet ausgeführt. Das Ziel ist es, Nachteile einzelner Ansätze durch die Integration weiterer Verfahren auszugleichen.
Aktuelle Aspekte von Empfehlungssysteme in Forschung und Praxis sind u.a. mobile Recommender Systeme, eine Anpassung von Empfehlungen an den aktuellen Kontext von Benutzern, soziale Recommender Systeme, eine Empfehlung für Gruppen von Personen, Erklärungen von Empfehlungen und Benutzerschnittstellen u.v.m.
Literatur
Kantor, P.; Ricci, F.; Rokach, L.; Shapira, B. (Eds.): Recommender Systems Handbook. Springer, 2010.