Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Data Mining Seminar im Sommersemester 2005 Prof. Dr. Thomas Hofmann, Dipl. Inform. Steffen Hartmann TU Darmstadt, Fachbereich Informatik Fachgebiet: Intelligente.

Ähnliche Präsentationen


Präsentation zum Thema: "Data Mining Seminar im Sommersemester 2005 Prof. Dr. Thomas Hofmann, Dipl. Inform. Steffen Hartmann TU Darmstadt, Fachbereich Informatik Fachgebiet: Intelligente."—  Präsentation transkript:

1 Data Mining Seminar im Sommersemester 2005 Prof. Dr. Thomas Hofmann, Dipl. Inform. Steffen Hartmann TU Darmstadt, Fachbereich Informatik Fachgebiet: Intelligente Systeme Stefan Seiermann Collaborative Filtering with Privacy via Factor Analysis

2 Collaborative Filtering with Privacy via Factor Analysis2 Inhalt Einleitung Problemstellungen Das Wahrscheinlichkeitsmodell Aspekte der Vertraulichkeit Verwandte Arbeiten Fazit & Ausblick

3 Collaborative Filtering with Privacy via Factor Analysis3 1 Einleitung Hintergrund: Menschen nutzen oft Empfehlungen von anderen Personen mit ähnlichen Interessen, falls Sie keine weiteren Informationen für eine Handlungsauswahl besitzen. Beispiele: Bücher, CD´s, Restaurants,... Automatisierung durch: Collaborative Filtering Berechnung von Ähnlichkeiten zwischen dem eigenem Verhalten und dem Verhalten von anderen Benutzern durch den Einsatz von Datenbanken. Generiert Aussagen, wie z.B.:Benutzer wie Sie, haben folgende Artikel betrachtet (gekauft, gemocht, …) Unterstützen den Benutzer bei der Auswahl von Produkten (Entscheidungen) Beispiel: "Empfehlungen" eines Web-Buchhändlers

4 Collaborative Filtering with Privacy via Factor Analysis4 1 Einleitung Anwendungsmöglichkeiten: e-Commerce Empfehlungssysteme (recommendation systems) für: Filme, Musik, Restaurants, Nachrichten, Witze, etc. Die Erhebung der Daten für eine Bewertung: a) Explizit Durch die Bewertung eines Artikels auf einer Skala Durch das Erstellen einer Rezension (wie z.B. bei Büchern) b) Implizit Durch den Kauf eines Artikels auf einer Web-Seite, meist mit persönlichen Daten verknüpft (Anschrift, etc.) Durch das Anklicken, Verweilen, Wechseln einer Web-Seite Durch Standortinformationen bei der Auswahl (wie z.B. GSM-, UMTS- oder WLAN-Standorte) Beispiel: Bewertung eines Artikel durch einen Kunden

5 Collaborative Filtering with Privacy via Factor Analysis5 1 Einleitung 1.1 Beispiel: Movielens Beispiel für Bewertungen in einer Filmdatenbank (Movielens, 2003) Bewertung von Spielfilmen durch die Benutzer, anhand der Vergabe von Sternen Erfordert eine Identifizierung des Benutzers durch das System Ziel: Personalisierte Empfehlungen von Filmen durch: Collaborative Filtering

6 Collaborative Filtering with Privacy via Factor Analysis6 2 Problemstellungen a) Lückenhafte Datenbanken ( Kapitel 3) Beispiel: Ein einzelner Kunde eines Web-Buchladens (z.B. Amazon.com) bewertet nur einen Bruchteil des Angebotes an Büchern. Die durchschnittliche Besetzung einer Filmdatenbank (z.B. EachMovie) mit Bewertungen beträgt nur ca. 3%, andere Datenbanken erreichen hingegen nur einen Wert von ca. 0.01%-0.1% der möglichen Bewertungen. Dieses kann zu einer fehlerhaften Interpretation der Daten und somit auch zu fehlerhaften Empfehlungen führen. b) Vertraulichkeit der Benutzerdaten ( Kapitel 4) Die personalisierten Daten der Benutzer können von den Betreibern unkontrolliert weiterverwendet, mit anderen Daten verknüpft oder weitergegeben werden (SPAM). Der Anwender hat keinerlei Kontrolle mehr über diese Vorgänge. (Beispiel: Mögliche Kontrolle des Leseverhaltens in US-Buchläden) Tatsächlich stellen solche Daten aber einen hohen Wert für ein Unternehmen dar.

7 Collaborative Filtering with Privacy via Factor Analysis7 3 Das Wahrscheinlichkeitsmodell 3.1 Grundlagen Ziel:Entwicklung eines Wahrscheinlichkeitsmodells zur Vorhersage des Benutzerverhaltens durch Beobachtung. Extrapolieren von beobachteten Bewertungen zur Erstellung von Empfehlungen, durch die Verwendung der linearen Faktor-Analyse. Verwendete Größen: mDie Anzahl der Benutzer einer Empfehlungsdatenbank n Die Anzahl der zu bewertenden Artikel, wie z.B. Filme in einer Filmdatenbank k Anzahl der Benutzerprofile (preference space) Diese kann z.B. eine Vorliebe eines Benutzers für bestimmte Filmtypen enthalten. (k liegt zwischen 4 und 20, k<

8 Collaborative Filtering with Privacy via Factor Analysis8 3 Das Wahrscheinlichkeitsmodell 3.1 Grundlagen (Forts.) Verwendete Matrizen: Y: Bewertungen Dimension: Artikel x Benutzer (n x m) Enthält die beobachteten Bewertungen der Benutzer für die zu bewertenden Artikel. Beispiel: y i,j =5 entspricht einer Bewertung des Benutzers j für den Film i von 5 Punkten, auf einer Werteskala (z.B. von 0 bis 10 Punkte). X: Benutzerprofile Dimension: Benutzerprofile x Benutzer (k x m) Enthält die Vorlieben eines Benutzers für eine bestimmte Artikelgruppen, z.B. Vorlieben für bestimmte Filmtypen. Diese Matrix wird im Laufe des Algorithmus automatisch generiert.

9 Collaborative Filtering with Privacy via Factor Analysis9 3 Das Wahrscheinlichkeitsmodell 3.1 Grundlagen (Forts.) A: "Zielmatrix" Dimension: Artikel x Benutzergruppen (n x k) Matrix, die durch den Algorithmus berechnet werden soll. N: Rauschen (Noise) Dimension: Artikel x Benutzer (n x m) Enthält das typische Rauschen bei der Bewertung eines Artikels durch einen Benutzer. Varianz über die Bewertung der Artikel: VAR (N i ) = Initialisierung mit Gausscher Verteilung Annahme: Alle VAR(N i ) sind identisch i Varianz VAR(N i ) =

10 Collaborative Filtering with Privacy via Factor Analysis10 3 Das Wahrscheinlichkeitsmodell 3.2 Lineare Regression Lineares Modell für eine Bewertungsdatenbank: a) Falls X und Y zur gleichen Zeit bekannt sein sollten, handelt es sich um ein Problem, welches sich mit linearen Regression lösen lässt. b)Falls X nicht bekannt sein sollte, handelt es sich um ein Problem, welches sich mit Hilfe der Faktor-Analyse lösen lässt. Ziele: Berechnung von A, wobei X mit Zufallswerten nach einer Gaußschen Verteilung initialisiert wird (lineare Regression). "schnelles" Verfahren "Lücken" in Y werden mit Mittelwerten (über alle Benutzer & Artikel) gefüllt, aber nur in diesem Berechnungs-Schritt. Die somit erhaltenen Werte für A können dann für eine Faktor-Analyse verwendet werden. (1)

11 Collaborative Filtering with Privacy via Factor Analysis11 3 Das Wahrscheinlichkeitsmodell 3.2 Lineare Regression (Forts.) Vorgehen: Initialisierung von X mit Zufallswerten nach Gausscher Verteilung Durchführung der folgenden Berechnungen (ca. 10 Iterationen): (2) Hinweise: A (p) = Wert von A nach der p. Iteration A = Wert von A vor der p. Iteration Alle zu invertierenden Matrizen besitzen die Dimension k x k (Zeitfaktor!) k ist unabhängig von der Anzahl der Benutzer oder Artikel (4 <= k <=20) A = (A T A) -1 A T : sog. "Pseudoinverse". Vorteil: quadratisch, Nachteil: A A = (A T A) -1 (A T A) = I, aber AA = " nicht immer" I. A

12 Collaborative Filtering with Privacy via Factor Analysis12 3 Das Wahrscheinlichkeitsmodell 3.3 Faktor-Analyse Statistisches Verfahren Gegeben ist eine Vielzahl von möglicherweise voneinander abhängigen Variablen (z.B. Beobachtungen von Personen). Gesucht ist eine geringe Anzahl von untereinander unabhängigen Einfluss- Faktoren. Diese Faktoren sind nicht beobachtbar, sie verbergen sich in den Variablen. Faktoren können aber aus den Variablen isoliert werden. Ziel: Generierung der Faktoren, mit welchen sich die Merkmale der Variablen (Beobachtungen) besonders gut erklären lassen. Anwendungen: Beobachtungen in der Chemie, Psychologie, Wirtschaft (z.B. Kundenverhalten), … Beispiel: Automatische, angeborene Faktor-Analyse von menschlichen Gesichtern. Umkehrung: Visualisierung von Zusammenhängen durch sog. Chernoff- Gesichter, für bis zu 19 Dimensionen (Wandmacher, 1993).

13 Collaborative Filtering with Privacy via Factor Analysis13 3 Das Wahrscheinlichkeitsmodell 3.3 Faktor-Analyse (Forts.) Zusätzliche Matrix (für jeden Benutzer j): I j : "Trimming-Matrix" Dimension: Artikel x Artikel (n x n) Enthält auf der Hauptdiagonalen eine "1", falls der Benutzer j den Artikel i bewertet hat, sonst "0". Einschränkung der weiteren Berechnung auf Artikel, die der Benutzer schon bewertet hat. = I: Einheitsmatrix Dimension: Benutzerprofile x Benutzerprofile (k x k) i i

14 Collaborative Filtering with Privacy via Factor Analysis14 3 Das Wahrscheinlichkeitsmodell 3.3 Faktor-Analyse (Forts.) Algorithmus: EM-Faktoranalyse Expectation Maximization (Newcomb, 1887 Dempster, Laird & Robin, 1977) Motivation: Einfacher rekursiver Algorithmus (2 Schritte, E- & M-Schritt) Sicherer Umgang mit dünn besetzten Matrizen (keine "Default-Annahmen") Lässt sich für den vertraulichen Umgang mit Benutzerdaten adaptieren Vorgehen ("distributed EM-Faktor-Analyse") Initialisierung A, mit Werten aus der linearen Regression Schritt 1: Anwender (Clients) berechnen A', B, C aus A und Server Schritt 2: "Totalizer" (Server) berechnet neues A und aus allen A', B, C Clients weiter mir Schritt 1, bis Konvergenz (ca Iterationen), oder bei Änderungen Client: berechnet A',B,C Server: berechnet A, A, A',B,C

15 Collaborative Filtering with Privacy via Factor Analysis15 3 Das Wahrscheinlichkeitsmodell 3.3 Faktor-Analyse (Forts.) (3) (4) = Kronecker-Produkt ( Anhang B) Schritt 1: Berechnungen der Benutzer (Clients): (nur für die eigenen Bewertungen) Berechnung nur für Artikel, die auch vom Client bewertet wurden Berücksichtigung der Varianz aus (2) Berechnung von A', B, C Formeln zur Berechnung ergeben sich aus dem Maximize-Schritt (M-Schritt) des EM-Algorithmus

16 Collaborative Filtering with Privacy via Factor Analysis16 3 Das Wahrscheinlichkeitsmodell 3.3 Faktor-Analyse (Forts.) (5) Schritt 2: Berechnung der Summen (über alle Benutzer m): Iterative Berechnung von A und (L(A) Anhang B) Formeln zur Berechnung ergeben sich aus dem EM-Algorithmus Ergebnis (Modell: A, ): Dieses Modell wurde aus allen Bewertungen von allen Benutzern berechnet. Ein Benutzer kann jetzt mit Hilfe dieses Modells (A, ) sich eigene Empfehlungen, auf der Basis seiner Bewertungen, berechnen lassen. Aufwand: O(n m k 2 ) je Iteration, günstig bei großen Datenbanken

17 Collaborative Filtering with Privacy via Factor Analysis17 3 Das Wahrscheinlichkeitsmodell 3.3 Faktor-Analyse (Forts.) Vorhersage einer Bewertung für Benutzer j: y j = Bewertungen des Benutzers j Benutzer j kennt A, Berechnung von x j aus (3) Fehlende Bewertungen (=Empfehlungen) durch die Berechnung von y=A x j "Persönliche Empfehlungen" für Benutzer j: Korrektur der Mittelwerte: Annahme der Faktoranalyse ist, dass die Bewertungen der Benutzer den Mittelwert: 0 haben. Vor der Berechnung des Modells (A, ) werden die Bewertungen durch einen Schätzwert korrigiert (subtrahiert). Bei der Verwendung einer Empfehlung (s.O.) muss dieser Schätzwert wieder auf die Empfehlungen addiert werden. Ermittlung des Schätzwertes: Mittelwert aller Bewertungen eines Artikels (z.B. falls #Benutzer >> #Artikel) Mittelwert aller Bewertungen eines Benutzers

18 Collaborative Filtering with Privacy via Factor Analysis18 4 Aspekte der Vertraulichkeit Die verteilte Faktor-Analyse kann durch iterative Vektoradditionen der Benutzer- Daten (A', B, C) auf einem Server durchgeführt werden (5). Wie kann hierbei die Vertraulichkeit der Benutzerdaten sichergestellt werden? Verschlüsselung mit einem asymmetrischen Schlüssel p: ( nächste Seite) Jeder Client sendet nur seine verschlüsselten Daten E(M j ) = E(A', B, C) Nutzung des "Homomorphismus" von Verschlüsselungs-Methoden (z.B. RSA): Der Server kann die Additionen der Benutzerdaten (A', B, C) durch Multiplikationen der verschlüsselten Nachrichten E(M j ) der Benutzer durchführen. (6) Client 1: berechnet A',B,C Client n: berechnet A',B,C A',B,C 4.1 Verschlüsselung Server

19 Collaborative Filtering with Privacy via Factor Analysis19 4 Aspekte der Vertraulichkeit 4.2 Key Sharing Erzeugung eines verteilten El-Gamal-Schlüsselpaares (Nach der Methode von Pendersen) n = # User, a = # "trusted Users", wähle t, so dass t > (1-a)n Beispiel: Benutzer online = 60% -> t > 0.4n Public Key p, dieser ist jedem Benutzer bekannt Private Key s, wobei jeder Benutzer nur einen "Teil" des Schlüssels (s i ) kennt s kann aber wieder aus t+1 "Teilschlüsseln" s i konstruiert werden A, Server berechnet A, aus den verschlüsselten Werten der Clients Client 1 Client n

20 Collaborative Filtering with Privacy via Factor Analysis20 4 Aspekte der Vertraulichkeit 4.2 Key Sharing (Forts.) Um das verschlüsselte Ergebnis des Servers (A, ) zu entschlüsseln, müssen die Benutzer dieses jeweils mit Ihrem Teilschlüssel s i entschlüsseln. Durch das Zusammensetzten der entschlüsselten (Teil-)Ergebnisse kann nun (A, ) berechnet und nach Kapitel 3.3 eine persönliche Empfehlung generiert werden. Bei diesem Protokoll werden zu keiner Zeit unverschlüsselte Bewertungsdaten der Benutzer übertragen Sicherung der Vertraulichkeit der Benutzerdaten. Nachteile: User können ungültige Werte (z.B. außerhalb der Bewertungsskala) übertragen Server können Ergebnisse der User unterschlagen oder duplizieren Einsatz eines ZKP-Protokolls ("zero-knowledge proofs"), sind (A', B, C) gültig? Dieses ist wirksam bis zu einem Anteil von ca. 20% "Betrügern" (Beispiel für den Einsatz von ZKP: Authentifizierungsprotokolle)

21 Collaborative Filtering with Privacy via Factor Analysis21 5 Verwandte Arbeiten Vergleich des NMAE ("Normalized Mean Absolut Error", nach Goldberg) mit anderen Methoden: "Pearson correlation" ( Anhang C) "Personality diagnosis" 1. Witz-Datenbank ("Jester") 100 Artikel x Benutzer Bewertungen: ca. 50 % Performance:+ 14 % (Standard) + 5 % (Pearson) 2. Film-Datenbank ("EachMovie") Artikel x Benutzer Bewertungen: ca. 3 % Performance:+18 % (Standard) + 9 % (Pearson) Performance-Zugewinn, speziell bei besonders "dünn besetzten" Datenbanken Performance-Vergleiche (Canny, 2002) "besser" Standard: Durchschnittliche Bewertung eines Artikel über alle Benutzer (>0,07%)

22 Collaborative Filtering with Privacy via Factor Analysis22 6 Fazit und Ausblick Mit der Faktor-Analyse, aufbauend auf einem linearen Modell, können effizient Empfehlungen für Produkte, basierend auf den Bewertungen (keine "binäre" Daten) anderer Benutzer, berechnet werden ("Recommending System"). Dieses ist besonders für lückenhafte, "dünn besetzte" Datenbanken geeignet, wie sie bei Empfehlungssystemen häufig auftreten. Durch den Einsatz eines verteilten Systems (Server, Clients) und der Verwendung von verteilten Schlüsseln ist die Vertraulichkeit der Benutzerdaten gewährleistet. Durch eine Erweiterung der Methode mit sog. "Meta-Daten" (Attribute) kann eine weitere Performance-Steigerung erreicht werden. Beispiele: Kategorien, Beschreibungen, Texte,... Dieses ist besonders wichtig bei "neuen" Produkten, die bisher noch keinerlei Bewertungen der Benutzer aufweisen. Der Einsatz von Metadaten (Canny, 2002)

23 Collaborative Filtering with Privacy via Factor Analysis23 Literaturverzeichnis Canny, J. (2002). Collaborative Filtering with Privacy via Factor Analysis, Annual ACM Conference on Research and Development in Information Retrieval. Proceedings of the 25th annual international ACM SIGIR conference on Research and development. Retrieved , from Canny, J. (2002). Some techniques for privacy in ubicomp and context-aware applications. In UBICOMP-2002, Goteborg, Sweden, Sept Retrieved , from Kamps, T. & Frommholz, I. (2004). Industrielle Wissensanwendungen. Skript zur Vorlesung im SS Fraunhofer Institut für integrierte Publikations- und Informationssysteme. TU-Darmstadt. Retrieved , from Movielens (2003). Movielens - Project Homepage. Group Lens Research. University of Minnesota. Department of Computer Science and Engineering. Retrieved , from Pedersen, T. (2001). A Gentle Introduction to the EM-Algorithm. Department of Computer Science. University of Minnesota Duluth. Retrieved , from Wandmacher, J. (1993). Mensch-Computer-Kommunikation – Grundwissen 2: Software-Ergonomie. Berlin: Walter de Gruyter. Wikipedia (2005). Online-Enzyklopädie. Div. Artikel über die lineare Algebra, wie z.B. das Kronecker-Produkt. Wikimedia Foundation. Florida, USA. Retrieved , from

24 Collaborative Filtering with Privacy via Factor Analysis24 Vielen Dank für Ihre Aufmerksamkeit

25 Collaborative Filtering with Privacy via Factor Analysis25 Anhang A Münzwurf als MLE-Beispiel (Pedersen, 2001) Maximum Likelihood Estimates (am Beispiel von Münzwürfen):

26 Collaborative Filtering with Privacy via Factor Analysis26 Anhang B Das Kronecker-Produkt: Beispiel für die Berechnung des Kronecker-Produkts (Wikipedia, 2005) L(A) - "Stacking" von A - Beispiel:

27 Collaborative Filtering with Privacy via Factor Analysis27 Anhang C Pearson User to User Korrelation Berechnung der Pearson-Korrelation (aus: Kamps & Frommholz, 2004) 1. Schritt: Berechnung der Korrelation zwischen den Benutzern a und u:

28 Collaborative Filtering with Privacy via Factor Analysis28 Anhang C Pearson User to User Korrelation (Forts.) 2. Schritt: Berechnung der Empfehlungen Vorhersage für den Artikel i (aus: Kamps & Frommholz, 2004) Um für User a Empfehlungen zu generieren, werden die n User mit höchster Pearson-Korrelation ausgewählt (50


Herunterladen ppt "Data Mining Seminar im Sommersemester 2005 Prof. Dr. Thomas Hofmann, Dipl. Inform. Steffen Hartmann TU Darmstadt, Fachbereich Informatik Fachgebiet: Intelligente."

Ähnliche Präsentationen


Google-Anzeigen