einsatz von collaborative filtering zur...

23
Einsatz von Collaborative Filtering zur Datenprognose Fabian Bohnert [email protected] Universität Ulm Fakultät für Mathematik und Wirtschaftswissenschaften Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 1/23

Upload: others

Post on 14-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Einsatz von Collaborative Filteringzur Datenprognose

Fabian [email protected]

Universität UlmFakultät für Mathematik und Wirtschaftswissenschaften

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 1/23

Page 2: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Inhalt1. Einführung

2. Historie

3. (Automated) Collaborative Filtering• Grundidee• Speicherbasierte Algorithmen• Modellbasierte Algorithmen• Gütemaße• Vor- und Nachteile• Anwendungsgebiete

4. Beispiele

5. Datenschutz

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 2/23

Page 3: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Arten von Empfehlungssystemen

Empfehlersysteme(Collaborative Filtering)

Empfehlungsysteme(Recommending Systems)

nicht-individualisierte Systeme individualisierte Systeme

eigenschaftsbasierte Systeme(Feature Based Filtering)

• EmpfehlungssystemeHauptaufgabe: Empfehlungen oder Prognosen für den Benutzer

• individualisierte Empfehlungssystemeindividuelle Empfehlungen oder Prognosen basierend auf den persönlichenPräferenzen des Benutzers

• eigenschaftsbasierte SystemeEmpfehlungen basierend auf Objekteigenschaften

• EmpfehlersystemeEmpfehlungen basierend auf ähnlichen Benutzern (Mentoren) durch CF

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 3/23

Page 4: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Active vs. Automated CF

Model BasedCollaborative Filtering

Collaborative Filtering

Active Collaborative Filtering Automated Collaborative Filtering

Memory BasedCollaborative Filtering

• Active Collaborative Filteringaktive Empfehlungen durch Push-Kommunikation

• Automated Collaborative FilteringPull-Kommunikation,Empfehlungen mit Hilfe eines mathematischen oder regelbasierten Verfahrens

• speicherbasierten Algorithmen (Memory Based)bei jeder Anfrage Berechnungen über die gesamte Datenmatrix

• modellbasierten Algorithmen (Model Based)offline Schätzung von Modellparametern auf Basis der Datenmatrix,online Empfehlungsabgabe auf Basis des Modells

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 4/23

Page 5: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Historie• US-Patente 4.870.579 und 4.999.642

Hey 1987, Hey 1989• Tapestry, E-Mail-Filter-System

Goldberg 1992• GroupLens, Usenet-News-Empfehlersystem

Resnick 1994• Musik-Empfehlersystem Ringo

Shardanand und Maes 1995• Bellcore’s Video Recommender

Hill 1995• Leitartikel einer Ausgabe der Communications of

the ACMResnick und Varian 1997

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 5/23

Page 6: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – Grundidee (1/2)• Ratingmatrix

U = (ui j)M,N =

u11 · · · u1N...

...ui1 · · · uiN...

...uM1 · · · uMN

∈ {0, . . . , t, ·}M×N

• I = {1, . . . ,M} Menge der Benutzer• J = {1, . . . ,N} Menge der bewerteten Objekte• eine Zeile ui der Ratingmatrix U steht für ein

Benutzerprofil

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 6/23

Page 7: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – Grundidee (2/2)

Erhebung von Benutzerdaten

Proximitätsberechnung

Auswahl von Mentoren

Prognose

Grundannahme:Personen mit ähnlichem Profil treffen ähnlicheEntscheidungen

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 7/23

Page 8: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – speicherbasierte Ansätze (1/2)• Prognosewert fa j für den aktiven Benutzer a und

das Objekt j (im Prinzip gewichteter Mittelwert derBewertungen der zugehörigen Objektmentoren):

fa j = ua·+∑i∈Ma j

sai(ui j− ui·)

∑i∈Ma jsai

für Ma j 6= /0 und j ∈ J

• sai Ähnlichkeit der Benutzer a und i

• ua· arithmetisches Mittel aller von Benutzer aabgegebenen Bewertungen (ui· analog)

• Ma Menge der Mentoren• Ma j ⊂Ma Menge der Objektmentoren für Objekt j

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 8/23

Page 9: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – speicherbasierte Ansätze (2/2)• Pearsonscher Korrelationskoeffizient

(Ähnlichkeitsmaß für lineare Abhängigkeit):

qai =∑(ua j− uai)(ui j− uia)

∑(ua j− uai)2 ∑(ui j− uia)2für i ∈Ma

Summation über alle Objekte, für die sowohl ua j alsauch ui j vorliegen

sai =

{

qai für qai > 0,

0 für qai ≤ 0

• Alternative: Berechnung der sai über Distanzmaß• Erweiterungen: z.B. Default Voting, um Rating-

dichte zu erhöhen

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 9/23

Page 10: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – modellbasierte Ansätze (1/3)• Prognosewert fa j für den aktiven Benutzer a und

das Objekt j (vor probabilistischem Hintergrund alsErwartungswert):

fa j = E(Ua j) =t

∑i=0

i ·P(Ua j = i | uak, k ∈ Ja)

Ja ⊂ J Menge der Objekte, für die Benutzer a eineBewertung abgegeben hat.

• P(Ua j = i | uak, k ∈ Ja) Wahrscheinlichkeit, dass deraktive Benutzer a die Bewertung i abgibt, beigegebenen Bewertungen für die Objekte aus Ja

• Vorgehen: offline Schätzung dieserWahrscheinlichkeiten, damit die eigentlichePrognose online schnell erfolgen kann

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 10/23

Page 11: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – modellbasierte Ansätze (2/3)Cluster-Modelle• Idee: bestimmte Gruppen oder Typen von Benutzern

(Cluster) geben nahezu gleiche Bewertungen ab• Annahme: Wahrscheinlichkeiten der Bewertungen

bei gegebener Klassenzugehörigkeit sind unabh.P(Ca = c,ua1, . . . ,uan) = P(Ca = c)∏n

i=1 P(uai | Ca = c)

• P(Ua j = i | uak, k ∈ Ja) =

∑c P(Ua j = i | Ca = c) ·P(Ca = c | uak, k ∈ Ja)

• Offline: Schätzung von P(Ca = c) und P(uai | Ca = c)

• Online: Schätzung von P(Ca = c | uak, k ∈ Ja) undBestimmung des Erwartungswertes fa j

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 11/23

Page 12: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – modellbasierte Ansätze (3/3)• Klassenzugehörigkeiten werden nicht explizit

ermittelt → z.B. K-Means-Clustering, da dieKlassenzugehörigkeiten hier versteckte Parametersind

Andere Ansätze• Bayessche Netze• Hauptkomponentenanalyse• Neuronale Netze

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 12/23

Page 13: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – Gütemaße• Prognosegüte

mittlere Differenz zwischen vorhergesagten undtatsächlichen Bewertungen:

MAE = 1|P| ∑(i, j)∈P | fi j−ui j|

MSE = 1|P| ∑(i, j)∈P( fi j−ui j)

2

P⊂ I× J Menge der Indexpaare (i, j), für die sowohleine Prognose fi j berechenbar ist als auch einetatsächliche Bewertung ui j existiert

• Coveragegibt an, für welchen Anteil der Objekte überhauptPrognosen durch den Algorithmus erstellt werdenkönnen

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 13/23

Page 14: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – Vorteile• Aufdeckung von Beziehungen zwischen Benutzern

und Objekten, die nicht mit objektiven Eigenschaftenbeschreibbar sind

• Erfahrungsaustausch zwischen einer hohen Anzahlvon Benutzern, die sich nicht zwingend kennenmüssen (Virtual Community )

• aufwendige Ermittlung (wenn überhaupt möglich)von Objekteigenschaften und das Führen einerzugehörigen Datenbank entfällt

• Empfehlung von Objekten, auch wenn nicht nachihnen gesucht wurde

• Empfehlung von Objekten, die sich von bisherigenPräferenzen unterscheiden (ständige Neubildungder Mentorenmenge)

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 14/23

Page 15: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – Nachteile• gewisse Mindestanzahl von Benutzerprofilen ist

notwendig(Kaltstart- oder Bootstrapping-Problematik )

• Objekteigenschaften auch wenn verfügbar nicht indie Prognose mit einbezogen

• Risiko schlechter Empfehlungen durch zufälligeZusammenhänge

• Prognosen haben Black Box-Charakter

Ausweg: Kombination mit Feature Based Filtering(Feature Guided Collaborative Filtering)

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 15/23

Page 16: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

ACF – AnwendungsgebieteVoraussetzungen•• große Benutzer- und Objektzahl• Objekte nicht anhand objektiver Eigenschaften oder

besser über subjektive Präferenzen beschreibbar

Empfehlung von• Literatur• Musik• Videos• Filmen• Webseiten• Restaurants

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 16/23

Page 17: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Beispiel – MovieLens

• webbasiertes Empfehlersystem für Kinofilme• Teil des GroupLens-Forschungsprojektes der University of Minnesota• Filmempfehlungen für ganze Benutzergruppen möglich• http://movielens.umn.edu

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 17/23

Page 18: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Weitere BeispieleAmazon.de• personalisierte Buchempfehlungen• eingesetzte CF-Techniken von Net Perceptions

bereitgestellt• basiert auf Technologie des GroupLens-Projektes

Jester 2.0• Witze-Empfehlersystem• modellbasierte CF-Verfahren basierend auf

Hauptkomponentenanalyse und Clustering• stetige Ratingskala

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 18/23

Page 19: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Datenschutz• gesetzliche Vorschriften

Bundesdatenschutzgesetz (BDSG),Informations- und Kommunikationsdienste-Gesetz(IuKDG), hier insb. Teledienstdatenschutzgesetz(TDDSG)

• Platform for Privacy Preferences (P3P)vom WWW-Konsortium (W3C) entwickelterVorschlag, um dem Benutzer von Webseiten mehrKontrolle über die Nutzung seiner persönlichenInformationen zu geben

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 19/23

Page 20: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Vielen Dank für Ihre Aufmerksamkeit.

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 20/23

Page 21: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Literatur (1/3)• Detlev Brechtel und Jochen Mai, Gläserner König. In Wirtschaftswoche Nr. 07,

S. 103, 2000• Jack Breese, David Heckerman und Carl Kadie, Empirical Analysis Of

Predictive Algorithms For Collaborative Filtering. In Proceedings of the 14thConference on Uncertainty in Artificial Intelligence, 1998

• Craig Boutilier und Richard S. Zemel, Online Queries For CollaborativeFiltering. In Proceedings of the 9th International Workshop on ArtificialIntelligence and Statistics, 2003

• David Chickering, David Heckerman und Christopher Meek, A BayesianApproach To Learning Bayesian Networks With Local Structure. InProceedings of the 13th Conference on Uncertainty in Artificial Intelligence,1997

• Danyel Fisher et al., SWAMI: A Framework For Collaborative FilteringAlgorithm Development And Evaluation, 1999

• David Goldberg et al., Using Collaborative Filtering To Weave An InformationTapestry. In Communications of the ACM, Vol. 35, No. 12, S. 61-70, 1992

• Ken Goldberg et al., Eigentaste: A Constant Time Collaborative FilteringAlgorithm, 2000

• Dhruv Gupta et al., Jester 2.0: Evaluation Of A New Linear Time CollaborativeFiltering Algorithm. In Proceedings of the SIGIR, ACM, 1999

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 21/23

Page 22: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Literatur (2/3)• Will Hill et al., Recommending And Evaluating Choices In A Virtual Community

Of Use. In Proceedings of the SIGCHI Conference on Human Factors inComputing Systems, S. 194-201, 1995

• Patrick Joseph, On-Line Advertising Goes One-On-One. In Scientific American- Cyber View, 1997

• Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden. Inabsatzwirtschaft Nr. 03, S.98, 2002

• Joseph Konstan, John Riedi und J. Ben Schafer, Recommender Systems InE-Commerce. In Proceedings of the 1st ACM Conference on ElectronicCommerce, S. 158-166, 1999

• David Maltz und Kate Ehrlich, Pointing The Way: Active Collaborative Filtering.In Proceedings of the SIGCHI Conference on Human Factors in ComputingSystems, S. 202-209, 1995

• Klaus Manhart, Wege aus der Anonymität. In Market Nr. 08, S. 58, 2001• Stefanie Maute, Konzeption und Realisierung eines Data Mining-Verfahrens für

das Qualitätsmanagement in der Diabetologie, Diplomarbeit an der UniversitätUlm, 2002

• David Nichols, Implicit Rating And Filtering. In Proceedings of the 5th DELOSWorkshop on Filtering and Collaborative Filtering, S. 31-36, 1997

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 22/23

Page 23: Einsatz von Collaborative Filtering zur Datenprognoseusers.monash.edu/~fabianb/publications/Bohnert-CF2004-slides.pdf† Sven Kauffelt, Personalisierung im Web - Schlüssel zum Stammkunden

Literatur (3/3)• David Pescovitz, Accounting For Taste. In Scientific American - Cyber View,

2000• Paul Resnick et al., GroupLens: An Open Architecture For Collaborative

Filtering Of Netnews. In Proceedings of the 1994 Computer SupportedCollaborative Work Conference, S. 175-186, 1994

• Paul Resnick und H. R. Varian, Recommender Systems. In Communications ofthe ACM, Vol. 40, No. 3, S. 56-58, 1997

• Matthias Runte, Personalisierung im Internet - Individualisierte Angebote mitCollaborative Filtering, Deutscher Universitätsverlag, 2000

• Upendra Shardanand und Pattie Maes, Social Information Filtering: AlgorithmsFor Automating “Word Of Mouth”. In Proceedings of the SIGCHI Conferenceon Human Factors in Computing Systems, S. 210-217, 1995

• Lyle H. Ungar und Dean P. Foster, Clustering Methods For CollaborativeFiltering, AAAI Workshop on Recommendation Systems, 1998

• Übersicht über wichtige Papers zu Collaborative Filteringhttp://www.theether.org/collab/papers.html

• Collaborative Filtering - Eine Übersichthttp://www.sims.berkeley.edu/resources/collab/

Fabian Bohnert, Einsatz von Collaborative Filtering zur Datenprognose – S. 23/23