Schwarmintelligenz und evolutionäre Algorithmen in Recommendersystemen

Größe: px
Ab Seite anzeigen:

Download "Schwarmintelligenz und evolutionäre Algorithmen in Recommendersystemen"

Transkript

1 Fakultät für Ingenieurwissenschaften und Informatik Institut für Neuroinformatik Diplomarbeit Schwarmintelligenz und evolutionäre Algorithmen in Recommendersystemen Matthias Schneider vorgelegt am 3. Mai 2010 Gutachter Dr. Hans A. Kestler Prof. Dr. Günther Palm

2 Begleitende Webseite: Der Quellcode, die Arbeit als PDF und weitere Materialien sind unter der oben genannten Adresse bereitgestellt. Fassung vom 3. Mai 2010 Umschlagbild von Eric (etgeek), Flickr - Abgerufen am 30. März Some rights reserved. This work is licensed under the Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Germany License. To view a copy of this license, visit licenses/by-nc-nd/3.0/de/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

3 Inhaltsverzeichnis 1 Einleitung Motivation und Zielsetzung Aufbau der Arbeit Recommendersysteme Motivation Basis-Recommendersystem Übersicht existierende Recommendersysteme Einteilung der verschiedenen Verfahren Content-based Filtering Collaborative Filtering Memory-based Ansatz Item-based Ansatz Model-based Ansatz Latent Factor Models Hybrid Filtering Überblick über die bisherige Forschung Schwarmintelligenz und evolutionäre Algorithmen Genetischer Algorithmus Particle Swarm Optimization Invasive Weed Optimization Recommender mit Schwarmintelligenz und evolutionären Algorithmen Idee und Motivation Ziel der vorgestellten Verfahren Forschungsüberblick Recommender mit EA und SI Parallelisierung mit Clojure Particle Swarm Optimization Recommender (PSOREC) Beschreibung des Verfahrens Vorgeschlagene Erweiterungen Genetic Algorithm Recommender (GAREC) Beschreibung des Verfahrens Vorgeschlagene Erweiterungen Variante: Selbstanpassung der Mutationsschritte und Evolution Strategies Invasive Weed Optimization Recommender (IWOREC) Beschreibung des Verfahrens iii

4 Inhaltsverzeichnis Vorgeschlagene Erweiterungen Evaluationsmethoden und Experimente Datensatz Messverfahren und Qualitätsmaße Trainings- und Testdatensatz Vorhersagende Genauigkeitsmaße Klassifizierende Genauigkeitsmaße Statistische Tests Experimente Resultat Abstandsmaße ohne Optimierung Resultat exemplarischer Fitnessverlauf Resultate PSOREC Resultate GAREC Resultate IWOREC Diskussion der Ergebnisse Diskussion Recommendersysteme Content-based filtering Collaborative-based filtering Diskussion IWO und Vergleich zu GA / ES Verwandtschaft zu Evolution Strategies Parallelisierung mit Clojure Diskussion der Evaluationsmethoden Diskussion der experimentellen Resultate Resultat Abstandsmaße ohne Optimierung Resultat exemplarischer Fitnessverlauf Diskussion der PSOREC Resultate Diskussion der GAREC Resultate Diskussion der IWOREC Resultate Zusammenfassung der Experimente Weitere Erkenntnisse Ausblick Zusammenfassung der Hauptergebnisse 103 Literaturverzeichnis 105 iv

5 1 Einleitung In der heutigen Zeit wird man mit einer großen Menge von Angeboten zu Produkten und Dienstleistungen konfrontiert. Man findet sich häufig in der Situation, Entscheidungen ohne ausreichend viele Informationen treffen zu müssen. Im alltäglichen Leben treffen wir diese Entscheidungen auf Basis von Empfehlungen von Freunden, durch Mund zu Mund Propaganda, durch Testberichte in Fachmagazinen oder durch allgemeine Ratgeber zu den jeweiligen Themen. Recommendersysteme unterstützen einen Konsumenten bei dieser Entscheidung, indem die Kaufgewohnheiten des einzelnen Konsumenten sowie die der anderen Konsumenten analysiert werden um persönliche Empfehlungen für den Einzelnen zu erstellen. Dabei wird auf eine Vielzahl an Methoden zurückgegriffen, die gute und verlässliche Empfehlungen generieren sollen. Die Zufriedenheit des Konsumenten ist von großer Bedeutung, da die Toleranz für schlechte oder unpassende Empfehlungen sehr niedrig ist. Das rasante Wachstum des Internets und die steigende Bereitschaft der Nutzer, Inhalte und Informationen zu erstellen, führt zu einer großen Menge an Daten, die einen detaillierten Einblick in die persönlichen Vorlieben, Erfahrungen und Verhaltensweisen der Nutzer gewähren. Die Analyse dieser Daten, das Ableiten und Interpretieren der Verhaltensmuster der Benutzer und die Empfehlung oder Vorhersage von zukünftigen Aktionen sollen in dieser Arbeit untersucht werden. 1.1 Motivation und Zielsetzung Recommendersysteme sind in der aktuellen Forschung ein sehr aktives Gebiet, das in der zweiten Hälfte der 1990er stark angewachsen ist und in den letzten Jahren wiederholt Aufmerksamkeit bekommen hat. Auch Schwarmintelligenz und evolutionäre Algorithmen bleiben ein aktives Forschungsfeld [23]. In dieser Arbeit soll untersucht werden, inwieweit beide Bereiche verbunden werden können um bessere, performantere und persönlichere Empfehlungen zu erzeugen. Recommendersysteme können mit Methoden der Schwarmintelligenz (SI) und evolutionären Algorithmen (EA) erweitert werden, um klassische deterministische Optimierungsverfahren (etwa lokale Suche, simulated annealing oder Gradientenaufstieg) zu ersetzen. Auch die Einbeziehung von erweiterten Daten über die Benutzer, statt sich nur auf die bisherigen Bewertungen zu beziehen, sind mit SI und EA möglich. Diese Verfahren ersetzen dabei nicht die klassischen Verfahren der Recommendersysteme, sondern stellen Erweiterungen und Ergänzungen dar. 1

6 1 Einleitung Das Ziel dieser Arbeit soll die Untersuchung bestehender Recommendersysteme und Recommendersysteme mit SI und EA sein, dabei den möglichen Einsatz von SI- und EA- Erweiterungen zu beschreiben und diese Verfahren entsprechend zu implementieren und zu evaluieren. Eigene Verbesserungen und Erweiterungen der bestehenden Verfahren sollen zusätzlich entwickelt werden. 1.2 Aufbau der Arbeit In Kapitel 2 werden die bisherigen Forschungen zu Recommendersystemen besprochen und eine grobe Einteilung der Verfahren vorgenommen. Es wird ein generisches Recommendersystem als Basis aller folgenden Verfahren vorgestellt, anschließend werden die konkreten Verfahren im Detail formell erläutert. Kapitel 3 gibt eine Übersicht über die Methoden der Schwarmintelligenz und evolutionären Algorithmen sowie eine kurzer Vergleich mit verwandten Methoden und deren Eigenschaften. Kapitel 4 beschreibt drei um Schwarmintelligenz und evolutionäre Algorithmen erweiterte Recommendersysteme, bespricht deren Eigenschaften und die Auswirkungen auf die Empfehlungsqualität. Zusätzlich werden eigene Verbesserungen und Erweiterungen vorgestellt. In Kapitel 5 werden die vorgestellten Verfahren experimentell untersucht und eine Evaluation der Ergebnisse vorgestellt. Es wird parallel auf die Methoden der Evaluation und deren Eignung in Recommendersystemen eingegangen, sowie eine kurze Besprechung der praktischen Implementierung gegeben. Kapitel 6 diskutiert die Ergebnisse dieser Arbeit und gibt einen Ausblick auf weitere Forschungsmöglichkeiten. In Kapitel 7 werden in kompakter Form die Hauptergebnisse dieser Arbeit zusammengefasst. Anmerkung Im Folgenden werden die englischen Begriffe User und Item synonym für Benutzer und Objekt/Gegenstand verwendet. Auch der englische Begriff rating wird an manchen stellen für Bewertungen verwendet. Viele englische Begriffe für Fachgebiete oder Forschungsgegenstände werden nicht übersetzt, sondern hervorgehoben in ihrem englischen Original verwendet. Wo es möglich und sinnvoll ist, werden jedoch deutsche Übersetzungen verwendet. 2

7 2 Recommendersysteme 2.1 Motivation In den letzten zwei Jahrzehnten ist ein Wachstum an Informationsquellen und daraus resultierenden Informationen in Kommunikationssystemen, wie etwa dem Internet, beobachtet worden. Weit über 90% der weltweit verfügbaren Informationen sind digital vorhanden und übersteigen, nach Schätzungen, im Jahr 2010 die Grenze von 1000 Exabytes (1 Billion Gigabyte) [17, 25]. Rund 1,5 Milliarden Menschen haben ständigen Zugriff auf das Internet und geben täglich ca. 10 Milliarden Suchanfragen ab. Dieser stetige Wachstum macht es für den Einzelnen immer schwieriger für ihn relevante Informationen, Produkte und Wissen zu finden. Recommendersyteme sind in den letzten Jahren zu einer Lösung dieses Informationsüberflusses herangewachsen. Sie bieten den Benutzern von Informationssystemen Empfehlungen an, welche Informationen oder Produkte für sie relevant sein könnten und orientieren sich dabei am bisherigen Verhalten dieser Personen. Diese personalisierten Empfehlungen verbessern die Kundenzufriedenheit erheblich [68, 41, 79]. Vor allem e-commerce Dienstleister wie Amazon.com oder Netflix verwenden Empfehlungssysteme als verkaufsförderndes Mittel und nennen diese einen wichtigen Bestandteil ihres Verkaufskonzepts [68]. 2.2 Basis-Recommendersystem Es folgt eine formelle Beschreibung eines generischen Recommendersystems. Ein Recommendersystem erstellt geschätzte Bewertungen für einzelne Items (z.b. Filme, Webseiten oder Bücher), die ein Benutzer bisher noch nicht bewertet hat. Dieser Benutzer wird im Folgenden auch der aktive Benutzer genannt. Die typische Eingabe ist eine User-Item-Matrix, die die jeweiligen Ratings der Benutzer auf die Items enthält oder eine Item-Features-Matrix, die die Items über die Features beschreiben. Siehe dazu Abbildung 2.2 und Abbildung 2.3. Sei U die Menge aller Benutzer und sei I die Menge aller Items und sei r eine Bewertungsfunktion, die die Bedeutung (oder Bewertung) eines Items für den Nutzer bestimmt: r : U I R, wobei R eine vollständig geordnete Menge ist, beispielsweise natürliche oder reelle Zahlen in einem bestimmten Bereich (z.b. eine Bewertung zwischen 1 und 5). Dann soll für jeden Nutzer u U ein Item i I gefunden werden, dass die Bewertungsfunktion maximiert: u U, i u = arg max r(u, i). i I 3

8 2 Recommendersysteme Abbildung 2.1: Ein vereinfachtes kollaboratives und benutzerorientiertes Recommendersystem am Beispiel von Filmen. Der aktive Nutzer bevorzugt die drei Filme auf der linken Seite (dargestellt durch die Linie). Das System bestimmt die ähnlichsten Nutzer für den aktiven Benutzer (Mitte). Das sind die Nutzer, die diese drei Filme auch bevorzugen. Das Recommendersystem bestimmt nun, welche weiteren Filme diese Nutzer bevorzugen, die der aktive Nutzer noch nicht kennt. In diesem Beispiel präferieren alle drei den Film 1 (Blade Runner), weshalb dieser an erster Stelle empfohlen wird. Film 4 wird von keinem Benutzer der Nachbarschaft empfohlen und ergibt daher keine Empfehlung. Film 2 stellt die zweitbeste Empfehlung dar, Film 3 die drittbeste. Die Hauptaufgabe eines Recommendersystems besteht darin, über die Bewertungsfunktion r die Bewertungen für alle noch nicht bewerteten Items eines oder mehrerer User zu schätzen. Daraus können Empfehlungen erstellt werden, in dem man die am besten bewerteten Items 4

9 2.3 Übersicht existierende Recommendersysteme Items 1 i j n 1 Users u m Input: User-Item-Matrix = nicht bewertete Items Recommender Geschätzte Bewertungen i und j für User u rating = 4 rating = 3 Abbildung 2.2: Das grundlegende Modell eines (kollaborativen) Recommendersystems. Die User-Item-Matrix enthält bewertete (leeres Feld) und nicht bewertete ( ) Items der jeweiligen Benutzer. Der Recommender generiert aus diesen Daten die geschätzten Bewertungen der bisher nicht bewerteten Items. Hier am Beispiel des Benutzers u dargestellt. unter allen geschätzten Items auswählt. Es können Empfehlungen entweder nur für einen Benutzer erstellt werden, wenn dieser seine Empfehlungen anfordert (z.b. per Webseite). Oder ein System erstellt direkt, aber offline für alle Benutzer alle Empfehlungen für die jeweils bisher unbekannten Items. Letzteres wird bei Recommendern eingesetzt, die eine sehr große Anzahl an Items und Benutzer haben und eine Echtzeitberechnung ( online ) für eine große Anzahl an gleichzeitig aktiver Benutzer (z.b. ein großer Onlineshop oder Nachrichtenwebseite) nicht machbar ist. Um die vorhergesagte Bewertung eines Items zu bestimmen, werden Heuristiken oder Modelle aufgestellt und untersucht, die die Bewertungsfunktion definieren. Siehe dazu die folgenden Abschnitte. Diese Bewertungsfunktion wird über Qualitätsmaße wie dem mean square error (MSE), root mean square error (RMSE) oder mean absolut error (MAE) optimiert, um eine möglichst genaue Vorhersage über das Rating des Users für ein ihm bisher unbekanntes Item zu treffen. Siehe dazu Abschnitt Die in diesem Abschnitt verwendeten Abkürzungen und Symbole werden im weiteren Verlauf der Arbeit wiederverwendet. Wenn der Kontext der Bewertungsfunktion eindeutig ist, wird statt r(u, i) auch r ui geschrieben. 2.3 Übersicht existierende Recommendersysteme Im nächsten Abschnitt wird eine Übersicht über die verschiedenen Varianten von Recommendersystemen gegeben. Eine ausführliche Übersicht zu Forschungen, die Schwarmintelligenz 5

10 2 Recommendersysteme u Items 1 n 1 Recommender Geschätzte Bewertung von User u für Item j User f Input: User und Item-Features-Matrix j Abbildung 2.3: Das grundlegende Modell eines (inhalts-basierten) Recommendersystems. Die Item-Feature-Matrix enthält Items dargestellt durch ihre Features f. Der Recommender erstellt mit dieser Matrix und dem aktiven Benutzer u die geschätzte Bewertung des bisher nicht vom aktiven Benutzer bewerteten Items j. Star Wars Life of Brian Big Fish Pulp Fiction Alice Toby Charles Dolly Tabelle 2.1: Ein Ausschnitt einer User-Item-Matrix mit Bewertungen für Filme auf einer Skala von 1 bis 5. Die von den Users nicht bewerteten Filme sind mit gekennzeichnet. und evolutionäre Algorithmen in Recommendersystemen behandeln, wird in Kapitel 4 gegeben Einteilung der verschiedenen Verfahren Recommendersysteme können in drei Kategorien eingeteilt werden [1]: Inhalts-basiertes filtern (content-based filtering) Bei diesem Verfahren werden Profile für die Benutzer und/oder die Items angelegt um ihre Eigenschaften zu charakterisieren. Beispielsweise kann ein Film die Eigenschaften Genre, Einspielergebnis oder mitwirkende Schauspieler enthalten. Für die Erstellung solcher Profile sind oft externe Informationen notwendig, die von Experten manuell erstellt werden müssen [58, 57]. Wenn ein Profil eines Items mit einem Profil eines Nutzers, der dieses für sich selbst mit seinen eigenen Vorlieben gefüllt hat, übereinstimmt, wird eine Empfehlung für dieses Item abgegeben. Kollaboratives filtern (collaborative filtering) Für dieses Verfahren werden in der Vergangenheit abgegebene Bewertungen von Benut- 6

11 2.3 Übersicht existierende Recommendersysteme zern für Items als Input des Verfahrens verwendet, siehe Tabelle 2.1. Für einen Benutzer werden andere Benutzer gesucht, welche die gleichen Filme wie dieser Benutzer bewertet haben und in dieser Bewertung auch übereinstimmen. Anhand dieser Nachbarschaft werden für den aktiven Nutzer Bewertungen für Items erstellt, die dieser noch nicht bewertet hat [29, 71, 59]. Hybrides filtern (hybrid filtering) Inhalts-basierte Filtermethoden und kollaborative Filtermethoden werden zu einem Modell kombiniert. Folgende Varianten sind vorgeschlagen worden [1]: 1. Getrennte Implementierung von kollaborativen und inhalts-basierten Methoden mit anschließender Kombination der Ergebnisse. 2. Verwendung von klassischen inhalts-basierten Methoden (Itemprofile) in kollaborative Verfahren. 3. Verwendung von klassischen kollaborativen Methoden (Benutzernachbarschaft) in inhalts-basierten Verfahren. 4. Ein vereinigendes Modell, dass beide Ansätze auf eine neue und nicht in die obigen Kategorien passende Art umsetzt. Der Begriff filtering wird in der Literatur oft synonym zu recommender systems verwendet. Die ersten Forschungen zu Recommendersystemen [26] haben diesen Begriff geprägt. Abbildung 2.4 und die Tabellen 2.2 und Varianten der Recommendersysteme. 2.3 geben eine Übersicht über die verschiedenen Content-based Methode Input Output Heuristische Bestimmung ähnlicher, Items als Vektoren, Bewertung für Methoden bewerteter Items zu Features beschreiben unbekanntes einem unbekannten Item, das Item. Item Schätzung der Bewertung Benutzer per anhand dieser Gruppe. Vektor beschrieben. (z.b. Mittelwert der bewerteten Items) Klassifizierung Bayes scher Items als Vektoren, Einteilung in Klassifikator, Features beschreiben relevante oder Bestimmung der Whkt., das Item. irrelevante Klasse ob ein Item relevant Benutzer per ist oder nicht. Vektor beschrieben. Maschinelles Clustering, Items als Vektoren, Einteilung in Lernen Entscheidungsbäume, Features beschreiben Gruppen. oder künstl. neuronale das Item. Jede Gruppe Netze Benutzer per gibt eine Vektor beschrieben. Bewertungsmöglichkeit an Tabelle 2.2: Übersicht der content-based Verfahren. 7

12 2 Recommendersysteme Latent Factor basierend Kombinierte Bewertungen Item basierend Content in Kollaborativ Collaborative Filtering Recommender Systeme Hybrid Filtering Modell basierend Kollaborativ in Content Memory basierend Vereintes Modell Content Filtering Maschinelles Lernen Heuristiken Bayes scher Klassifikator Abbildung 2.4: Einteilung der verschiedenen Varianten von Recommendersystemen. 2.4 Content-based Filtering In inhalts-basierten Recommendersystemen wird die Bewertung eines Items über die Bewertungen von anderen ähnlichen Items geschätzt, die der User in der Vergangenheit bewertet hat, siehe Abbildung 2.5. Formell ausgedrückt, die Bewertung r ui des Users u für Item i ergibt sich aus den Bewertungen r uik, die der User den Items i k I, die ähnlich zu Item i sind, gegeben hat. Das inhalts-basierte System versucht Gemeinsamkeiten zwischen den Items zu finden, die der User bisher mit hohen Ratings bewertet hat. Eine Möglichkeit um eine Beschreibung der Items zu erstellen, ist die Verarbeitung der wichtigsten Wörter (keywords) dieser Items bzw. Dokumente, um damit die jeweiligen Items zu charakterisieren. Formal kann dies wie folgt ausgedrückt werden: Sei profile(i) das Profil eines Items, d.h. eine Menge von Attributen die es beschreiben. Diese Attribute werden bei textuellen Systemen durch die Analyse der wichtigsten Wörter des Dokuments erzeugt [4, 57, 58]. Die Bedeutung eines keyword wird über das term frequency / inverse document frequency (TF/IDF) Verfahren bestimmt: 8

13 2.4 Content-based Filtering Collaborative Methode Input Output Memory-based Bestimmung ähnlicher User-Item Bewertung für Benutzer zum aktiven Matrix unbekannte Benutzer per k-nearest Items des neighbor. Schätzung aktiven Benutzers der Bewertung anhand dieser Gruppe. (z.b. Mittelwert der Ratings) Item-based Bestimmung ähnlicher, User-Item Bewertung für gemeinsam bewerteter Matrix unbekannte Items und Berechnung Items des der jeweiligen Ab- aktiven Benutzers stände und Bestimmung der Nachbarschaft (k-nearest neighbor) Model-based Clustering in Gruppen, User-Item Items werden in oder per Bayes scher Matrix Bewertungsgruppen Klassifikatoren die eingeteilt (Cluster) Bestimmung der wahr-, scheinlichen Bewertung oder die Bewertung mit der höchsten Whkt. wird ausgegeben (Bayes) Tabelle 2.3: Übersicht der collaborative-based Verfahren. Sei d j ein gegebenes Dokument oder Item und k i ein keyword in d j. Die normalisierte Häufigkeit des Auftretens dieses keywords ist definiert als TF i,j = n i,j k n k,j mit n i,j als die gesamte Anzahl des Auftretens von k i und der Zähler als Summe aller Auftrittshäufigkeiten aller keywords. Jedoch sind keywords, die in vielen Dokumenten auftreten, nicht nützlich für die Unterscheidung von Dokumenten. Daher wird die inverse document frequency (IDF) in Kombination mit TF genutzt. IDF ist definiert als IDF i = log N n i mit N für die gesamte Anzahl aller Dokumente und n i als Anzahl der Dokumente, in der k i auftritt. Das TDF/IDF-Gewicht für keyword k i ist definiert als w i,j = TF i,j IDF i und das Profil eines Items i für ein Dokument d j als pro f ile(i) = (w 1,j,..., w k,j ). Um nun bisher ungesehene Items einem User zu empfehlen, werden diese mit den bisher bewerteten Items verglichen. Dabei wird aus den Profilen der bekannten und bewerteten Items 9

14 2 Recommendersysteme Ähnliche Items? unbewertes Item bewertete Items Recommender:? 3,3 Abbildung 2.5: Vereinfachte Darstellung eines Content-based Recommender. Zu einem bisher nicht bewerteten Item werden die ähnlichsten, bewerteten Items bestimmt und zum Beispiel der Mittelwert dieser Items als Bewertung übernommen. ein User-Profil pro f ile(u) = (w u,1,...w u,k ) erstellt, wobei jedes Gewicht w u,i die Wichtigkeit des keywords k i bestimmt. Dieses Profil gibt die Vorlieben des Benutzers wieder und kann auf verschiedenen Wegen erzeugt werden. Der Rocchio Algorithmus [62] beispielsweise bestimmt das Userprofil als Durchschnitt der Itemprofile, wohingegen auch Bayes sche Klassifikatoren eingesetzt werden können [57]. Eine weitere Möglichkeit ist die Anwendung des Winnow- Algorithmus [56]. Die Bewertungsfunktion r ui ergibt sich nun als r ui = score(pro f ile(u), pro f ile(i)), mit score als beliebige Funktion, die aus den beiden Argumenten eine Bewertung erstellt. Dabei werden die Profile der Benutzer als Gewichtsvektoren dargestellt, wobei die Gewichte für die einzelnen keywords stehen. Es können daher heuristische Bewertungen verwendet werden, um die Ähnlichkeit zwischen den Vektoren zu bestimmen, so zum Beispiel die Kosinus- Ähnlichkeit: r(u, i) = cos( w u, w i ) = w u w i w u 2 w i 2 = mit K als die gesamte Anzahl der keywords im System. K x=1 w x,uw x,i K x=1 w2 x,u K x=1 w2 x,i Weitere Techniken, denen nicht der bisher vorgestellte heuristische Ansatz zugrunde liegt, sind Bayes sche Klassifikatoren und zahlreiche Methoden aus dem Bereich des maschinellen Lernen wie etwa Clustering, Entscheidungsbäume oder künstliche neuronale Netze. Pazzani et al. [57] verwenden beispielsweise ein naiver Bayes scher Klassifikator, um Webseiten zu 10

15 2.5 Collaborative Filtering bewerten. Diese werden in Klassen C i eingeteilt, z.b. relevant und nicht relevant, indem man die Wahrscheinlichkeiten berechnet zu welcher Klasse C i die Webseite p j gehört, gegeben die Keywords k 1j,, k nj dieser Webseite: Pr(C i k 1j & &k nj ) (2.1) Weiter wird angenommen, dass die Schlüsselwörter einer Webseite unabhängig sind und daher die Wahrscheinlichkeiten proportional zu P(C i ) P(k x,j C i ) x sind. Es können P(C i ) und P(k x,j C i ) aus den zugrunde liegenden Daten des Trainingsdatensatzes bestimmt werden. Es wird die Wahrscheinlichkeit in Formel 2.1 für jede Webseite p j und jede Klasse C j berechnet und p j in eben die Klasse C j eingeteilt, die die höchste Wahrscheinlichkeit hat. 2.5 Collaborative Filtering Die grundlegende Idee hinter collaborative filtering ist die Empfehlung oder Vorhersage einer Bewertung eines Items auf Basis der Meinungen anderer Benutzer mit ähnlichem Geschmack, die dieses Item schon bewertet haben. Die Meinung über ein Item kann dabei entweder explizit oder implizit von den Benutzern eingeholt werden. Der Benutzer kann etwa ein explizites Rating auf einer Skala von 1 bis 5 abgeben oder das Rating wird aufgrund der impliziten Beobachtungen seines Kaufverhaltens, der Analyse von Logdateien oder des Klickverhalten auf einer Webseite erstellt. Formal ausgedrückt ergibt sich die geschätzte Bewertung r ui eines Users u für ein Item i aus den Bewertungen r uk i, die dem Item i von anderen Usern u k U gegeben wurde. Eine konkrete Implementierung eines Recommendersystems für Filme würde beispielsweise zuerst die User suchen, die den gleichen Filmgeschmack wie der aktive User haben (d.h. manche Filme ähnlich bewertet), um mit diesen Informationen den Film zu finden, der von dieser Nachbarschaft kollektiv am besten bewertet wurde. Im Folgenden werden die vier Hauptansätze der kollaborativen Filtermethoden vorgestellt. Die ersten drei Methoden, memory-based, item-based und model-based, werden in der Literatur häufig gemeinschaftlich als neighbourhood-methoden bezeichnet. Der vierte Ansatz, latent factor models kann man als model-based Ansatz ansehen, er wird hier aber als eigenständige Methode behandelt Memory-based Ansatz Dieser Ansatz arbeitet auf dem gesamten Datensatz, also der gesamten User-Item Matrix (siehe Tabelle 2.1). Es werden verschiedene Methoden angewandt, um die ähnlichsten Benutzer 11

16 2 Recommendersysteme Item Item ? geschätzte Bewertung: 1,33 4 Item Abbildung 2.6: Vereinfachter kollaborativer Recommender. Der aktive User links und seine Nachbarn haben eine ähnliche Meinung (hohe Bewertung) über die gemeinsam gesehenen Items (links). Die Nachbarn bewerten, hier vereinfacht als Mittelwert, das für den aktiven Benutzer unbekannte Item? mit dem Wert 1,33. Dieser Wert wird als Schätzung für die Bewertung des aktiven Benutzers angenommen. für einen gegebenen aktiven Benutzer zu finden. Mit dieser Menge und einer Aggregationsfunktion werden die bisher abgegebenen Bewertungen so kombiniert, dass eine Empfehlung für das unbekannte Item geschätzt werden kann. Es wird dafür eine Aggregation der Ratings der Nachbarn aufgestellt. Die Bewertungen der Nachbarn für das zu bewertende Item des aktiven Benutzers fließen in die folgenden Methoden mit ein und berechnen die Bewertung des unbekannten Items, mit sim als beliebige Abstandsfunktion zwischen zwei Benutzern, die im Folgenden besprochen werden: r ui = 1 Û rûi (2.2) û Û r ui = k sim(u, û) rûi (2.3) û Û r ui = r u + k sim(u, û) (rûi rû) (2.4) û Û mit k als Normalisierungsfaktor, in der Regel definiert als k = û Û 1 sim(u, û) 12

17 2.5 Collaborative Filtering und r c als durchschnittliches Rating des Users u, definiert als r u = 1 I u i I u r ui, mit I u = {i I r ui = }. Der einfachste Fall ist der Mittelwert aller Ratings, Formel 2.2. Jedoch ist die gebräuchlichste Art die Schätzung der Ratings eine gewichtete Summe der Mittelwerte, Formel 2.3. Die dabei verwendete Ähnlichkeit sim zweier User u und û, wird als Gewicht der Ratings verwendet. Je ähnlicher sich zwei User sind, desto mehr fließt das Rating dieses Nachbarn î in das geschätzte Rating ein. Dabei können die verschiedenen Recommender für sim eigene Ähnlichkeitsmaße definieren, so lange sie eine Normalisierung der Werte über den Faktor k durchführen. Jedoch berücksichtigt die gewichtete Summe nicht, dass verschiedene User die Ratingskala durchaus anders verwenden bzw. interpretieren. Zwei verschiedene User könnten ein Item unterschiedlich bewerten, obwohl sie subjektiv genau die gleiche Meinung von ihm haben. Daher bietet sich eine Modifikation der gewichteten Summe an, die diese Abweichungen korrigieren kann. Formel 2.4 tut dies und verwendet statt dem absoluten Betrag der Bewertung die Abweichung vom Mittelwert dieses Users. Für die Berechnung der Ähnlichkeit zweier User in kollaborativen Systemen wurden verschiedene Methoden entwickelt, die meist auf den Bewertungen der Items basieren, die beide User in der Vergangenheit bewertet haben. Zwei mögliche Maße sind der Pearson Korrelationskoeffizient und der Kosinus des Winkel zwischen zwei Vektoren (Benutzer). Seien u und v zwei verschiedene User und I uv = {i I r ui = r vi = } die Menge der Items, für die u und v beide Bewertungen abgegeben haben. Die Pearson Korrelation ist definiert als sim(u, v) = i Iuv (r ui r u )(r vi r v ) i Iuv (r ui r u ) 2 i Iuv (r vi r v ) 2 (2.5) Das kosinus-basierte Ähnlichkeitsmaß, das die beiden User u und v als m-dimensionalen Vektor mit m = I uv beschreibt, wird bestimmt durch sim(u, v) = cos( u, v) = u v u 2 v 2 = i Iuv r ui r vi i Iuv r 2 ui i Iuv r 2 vi mit u v als Skalarprodukt zwischen Vektor u und v. Ein weiterer Korrelationskoeffizient ist der Rangkorrelationskoeffizient von Spearman. Für eine Diskussion, siehe Kapitel 6., Item-based Ansatz Ein Nachteil von memory-basierenden Ansätzen ist der große Aufwand für die Berechnung aller Abstände zwischen den Usern. Dies hat vor allem dann Gewicht, wenn sich die Eigenschaften der User häufig ändern, d.h. wenn die User beispielsweise oft viele Filme bewerten und sich somit ihre persönliche Nachbarschaft verändert. Item-basierende Verfahren [66] umgehen dieses Problem, indem sie die Ähnlichkeit zwischen Items und nicht zwischen Usern 13

18 2 Recommendersysteme berechnen, da sich die Ähnlichkeiten zwischen Items (z.b. Filme, Bücher etc.) nicht bzw. nur sehr selten ändern. Daher muss diese Berechnung nur einmal durchgeführt werden und bleibt dann statisch im System bestehen. Mit geeigneten Datenstrukturen (z.b. Hashtabelle) kann eine Abfrage der Ähnlichkeit performant durchgeführt werden. Die Ähnlichkeitsberechnung der Items geschieht nicht wie bei den inhalts-basierten Methoden über die Profile der Items, sondern über die von anderen Usern abgegebenen Bewertungen über dieses Item. Es werden weiterhin, wie bei allen kollaborativen Verfahren, die anderen User des Systems in die Vorhersage der Bewertungen mit einbezogen. Der Algorithmus berechnet zu einem gegebenen Item i die k ähnlichsten Items I k = {i 1, i k } und deren Abstände zu i, S i = {s i1, s ik }. Das Rating für Item i wird dann als gewichtetes Mittel über all diese ähnlichen Bewertungen bestimmt. Für die Berechnung der Ähnlichkeit zweier Items i und j stellt Sarwar et al. [66] drei Varianten vor: Kosinusähnlichkeit, Pearson Korrelationskoeffizient und eine modifizierte Kosinusähnlichkeit. Es wird für jedes Itempaar die Menge U ij an Usern bestimmt, die beide Items in der Vergangenheit bewertet haben, siehe Abbildung 2.7. Implementieren kann man dies, indem man die Schnittmenge der Mengen U i und U j berechnet. 1 2 Item 1 2 i j n-1 n r r - r User u r r Co-rated Items m-1 m r r r - Abbildung 2.7: Exemplarische Berechnung der Ähnlichkeit zweier Items. Es werden dabei nur die gemeinsam bewerteten Items betrachtet. Die Paare werden dabei aus verschiedenen Benutzern gewählt. Bei der Kosinus-basierten Ähnlichkeit werden die Items als m-dimensionale Vektoren (die Spalten in Grafik 2.7) aufgefasst. Als Ähnlichkeit wird, analog zum memory-based Verfahren, der Kosinuswinkel zwischen diesen beiden Vektoren angewandt. Es wird der komplette Vektor inklusive aller nicht bewerteten Items verwendet. Die fehlenden Bewertungen werden dabei durch den Wert 0 ersetzt. Für die Pearson-Korrelationskoeffizient ist es wichtig, dass mit der die Menge U ij und nicht mit der Menge I uv der Items gerechnet wird, die Formel 2.5 muss angepasst werden. 14

19 2.5 Collaborative Filtering Bei dieser Varianten der Kosinusähnlichkeit wird das Problem berücksichtigt, dass zwei User die Bewertungsskala anders interpretieren können. Es könnte beispielsweise sein, das ein User einen Film, den er durchschnittlich fand, auf einer Skala von 1 bis 5 die Wertung 3 gibt, während ein anderer Benutzer genau die gleiche Meinung hat, aber die Wertung 2.5 vergibt. Diese Abweichung kann man dadurch auffangen, indem von jedem Rating eines Users u U ij der Mittelwert alles Ratings dieses Users, r u, abgezogen wird. Wenn man mit diesen Methoden die Ähnlichkeiten eines bisher unbewerteten Items i zu allen anderen Items bestimmt hat, kann man daraus die k-ähnlichsten Items auswählen. Damit, und den bisherigen Bewertungen des aktiven Users für diese ähnlichen Items, wird nun eine Schätzung für die Bewertung des Items i abgegeben. Es wird die Bewertung eines Users u für ein Item i über eine gewichtete Summe aller Bewertungen dieses Users auf die zu i ähnlichen Items S i = {s i1, s ik } bestimmt: r ui = s ij S i (s ij r uj ) s Si s ij Es wird ausgewertet, wie der User die ähnlichen Items von i bisher bewertet hat und gewichtet diese Wertungen mit der vorab bestimmten Ähnlichkeit. Die Skalierung der Bewertung erfolgt dabei über die Summe aller Abstände Model-based Ansatz Der model-based Ansatz beschreibt viele grundlegend unterschiedliche Ansätze. Es wird hier ein Verfahren mit zwei konkreten Umsetzungen exemplarisch vorgestellt. Für weitere Verfahren siehe die Übersicht in Abschnitt 2.7. Die Bestimmung der Bewertung eines Users u für ein Item i kann bei modell-basierten Verfahren auch als Wahrscheinlichkeit aufgefasst werden, mit der dieser User dieses Item bewerten würde. Diese Schätzung berechnet man aufgrund dessen, was man bisher über diesen User in Erfahrung gebracht hat. Formell kann man dies wie folgt beschreiben, wenn man eine diskrete Bewertungsskala von 0 bis m annimmt: p ui = E(r ui ) = m Pr(r ui = i r uk, k I i ) i (2.6) i=0 mit I i als Menge aller Items, die User i bisher bewertet hat. Es wird also die Wahrscheinlichkeit bestimmt, mit der der User u ein Item i mit einem bestimmten Wert bewertet, unter Berücksichtigung seiner bisherigen Bewertungen. Um nun diese Wahrscheinlichkeit zu bestimmen, können zwei alternative Modelle eingesetzt werden: Ein Modell basierend auf Clustering (und einem naiven Bayes schen Klassifikators) und ein Modell basierend auf Bayes schen Netzen. Ersteres clustert ähnliche User in verschiedene Gruppen. Für jeden User, dessen Gruppe bekannt ist, wird angenommen, dass seine Bewertungen für die Items unabhängig voneinander 15

20 2 Recommendersysteme sind. Dieses Modell ist ein naiver Bayes schen Klassifikator: Pr(C = u, r 1 r n ) = Pr(C = u) n i=1 Pr(r i C = u) Der linke Teil der Formel beschreibt die Wahrscheinlichkeit, dass ein User u einer Klasse C angehört und ein dazugehöriger kompletter Satz von Bewertungen. Die in Formel 2.6 benötigte Wahrscheinlichkeit lässt sich nun aus dieser Formel bestimmen. Die Parameter für den naiven Bayes-Klassifikator, Pr(U = u) und Pr(r i C = u), werden mit einem Trainingsdatensatz geschätzt. Der zweite Modell, basiert auf Bayes schen Netzen. Dabei ist jedes Item ein Knoten in einem Bayes schen Netz und der Zustand jedes Knoten entspricht den möglichen Werten der Bewertungsskala für jedes Item. Es wird auf einem Trainingsdatensatz ein Algorithmus für das Lernen von Bayes schen Netzen angewandt [14]. Im daraus resultierenden Netz hat jedes Item die Knoten als Eltern, die die besten Vorhersagen über die Bewertung dieses Items treffen. Ein Problem bei diesem Verfahren ist, dass ein User nur in genau ein Cluster eingeteilt werden kann [1]. Es ist aber möglich, dass ein User sich für zwei vollkommen andere Themengebiete gleich interessiert und eine solche Einteilung daher problematisch ist Latent Factor Models Latent Factor Models schließen aus dem Bewertungsmuster der Benutzer per Lernverfahren auf mehrere Faktoren (ab ca. 20 bis über 100), die die Items und die User charakterisieren. Jedes Item und jeder User wird über einen Vektor charakterisiert, der diese Faktoren enthält. Jeder Faktor eines Items beschreibt dessen Eigenschaften, für den Fall von Filmen beispielsweise Faktoren wie Menge an Action, Tiefe der Charaktere, Comedy vs. Drama, Eignung für Kinder oder auch Faktoren, die direkt gar nicht vorherzusagen sind. Für den Benutzer misst jeder Faktor den Grad, wie sehr dieser an den entsprechenden Eigenschaften interessiert ist. Eine mögliche Durchführung von Latent Factor Models ist die Matrixfaktorisierung, die jedes Item und jeden Benutzer als Vektor von Faktoren darstellt [41]. Eine hohe Ähnlichkeit der beiden Vektoren führt zu einer Empfehlung. Viele Recommendersysteme arbeiten auf expliziten Bewertungen von anderen Items, beispielsweise wenn die Benutzer konkrete Werte für ein Item auf einer Skala von 1 bis 5 abgeben. Dies führt zu einer sehr spärlich gefüllten User-Item-Matrix, da die meisten Benutzer im Vergleich zur gesamten Anzahl an Items nur sehr wenige bewertet haben. Der Vorteil der Matrixfaktorisierung ist, dass auch implizite Bewertungen bzw. Präferenzen der Benutzer in das Modell mit einfließen können [41]. Dies wären z.b. Dinge wie die Art der besuchten Seiten einer Webseite, Muster bei der Suche, das Kaufverhalten der Benutzer, etc. Die Matrixfaktorisierung bildet Items und Benutzer in einen gemeinsamen latent factor Merkmalsraum ab, so dass man die Gemeinsamkeiten zwischen Items und Benutzern als Skalarprodukt der jeweiligen Vektoren beschreiben kann [39]. Die geschätzte Bewertung ˆr von 16

21 2.5 Collaborative Filtering Benutzer u für Item i berechnet sich als ˆr ui = q T i p u (2.7) mit q i als Vektor, der das Item mit den angesprochenen Faktoren beschreibt und p u als Vektor, der die Faktoren des Benutzers beinhaltet. Die Faktoren können dabei positiv wie negativ sein, je nach genauer Charakterisierung dieses Items bzw. Nutzers. Die eigentliche Schwierigkeit dieses Verfahrens ist die Abbildung des Verhaltens der Benutzer auf die Vektoren sowie das Lernen der Itemfaktoren in den Itemvektoren. Diese Beschreibungen der Items und Benutzer sind a priori nicht bekannt und müssen aus der User-Item- Matrix gelernt werden. Dieses Problem, das mit der Singulärwertszerlegung (SVD) verwandt ist, wird gelöst [41, 40, 39], indem die vorliegenden Bewertungen der Benutzer genommen werden, um damit direkt ein Modell des Benutzerverhaltens zu modellieren. Die Vektoren q i und p u werden erlernt, indem der regulierte, quadrierte Fehler in der Menge der bekannten Bewertungen minimiert wird: min (u,i) K (r ui q T i p u) 2 + λ( q i 2 + p u 2 ) (2.8) mit K als Menge aller Item-Nutzer-Paare (u, i), für die eine Bewertung r ui bekannt ist. Das System lernt die bisherigen Bewertungen und soll daraus eine Verallgemeinerung für zukünftige Bewertungen ableiten. Es besteht jedoch die Gefahr der Überanpassung, so dass die Konstante λ den Grad der Regulierung kontrolliert und üblicherweise per Kreuzvalidierung bestimmt wird [41]. Eine Möglichkeit, die Gleichung 2.8 zu minimieren ist ein stochastischer Gradientenabstieg, der von Simon Funk 1 vorgeschlagen und mit großem Erfolg im Netflix Prize eingesetzt wurde (die Lösung der Gewinner setzt dieses Verfahren erfolgreich ein [38]). Für jeden Fall im Trainingsdatensatz schätzt das Verfahren die echte Bewertung r ui und bestimmt den entsprechenden Fehler e: e ui := r ui q T i p u. Danach modifiziert es die Parameter um die Größenordnung γ in die entgegengesetzte Richtung des Gradienten: q i q i + γ (e ui p u λ q i ) (2.9) p u p u + γ (e ui q i λ p u ) (2.10) Dieses Verfahren bietet die Möglichkeit, zusätzliche implizite Informationsquellen mit einzubeziehen. Dafür kann die Gleichung 2.7 erweitert werden. Eine sinnvolle Erweiterung ist die Beachtung des systematischen Fehlers, der sich ergeben kann, wenn beispielsweise zwei Benutzer die Bewertungsskala verschieden interpretieren oder wenn es Items gibt, die allgemein besser als alle anderen Items bewertet werden, auch wenn sie dies objektiv gar nicht

22 2 Recommendersysteme sind. Dieser Bias b lässt sich wie folgt schätzen: b ui = µ + b i + b u mit µ als globaler Mittelwert alles Bewertungen, b i als Abweichung des Items i vom Mittelwert, beispielsweise wenn ein Film immer 0.5 Sterne besser bewertet wird als der Durchschnitt aller Filme, und b u als Abweichung des Benutzers u vom Mittelwert, beispielsweise wenn ein kritische Benutzer immer 0.4 Sterne weniger vergibt als der Durchschnitt. Daraus ergibt sich folgende Modifikation der Formel 2.7: ˆr ui = µ + b i + b u + q T i p u (2.11) Das Modell minimiert nun den Fehler über die angepasste Funktion min (u,i) K (r ui µ b u b i q T i p u) 2 + λ( q i 2 + p u 2 + b 2 u + b 2 i ). 2.6 Hybrid Filtering Stellvertretend für die große Anzahl an verschiedenen hybriden Ansätzen für Recommendersystemen wird im Folgenden das Verfahren von Claypool et al. [15] vorgestellt. Claypool et al. setzen einen klassischen memory-based kollaborativen Filter ein, siehe Abschnitt 2.5.1, sowie einen inhalts-basierten Filter basierend auf keywords, ähnlich dem Abschnitt 2.4 vorgestellten Verfahren. Beide Verfahren schätzen unabhängig voneinander die Bewertungen für ein Item, das der aktive User noch nicht gesehen hat. Anschließend werden beide Bewertungen linear miteinander kombiniert. Die Schwierigkeit liegt darin, die jeweiligen Gewichte w col und w cont zu finden, damit sich die kombinierte Bewertung r ui ergibt als r ui = w col r colui + w cont r contui mit r colui als Bewertung des kollaborativen Filter und r contui als Bewertung des inhalts-basierten Filter. Die Gewichte werden erstellt, indem zu Beginn mit gleichen Gewichten begonnen wird. Immer dann, wenn ein Benutzer ein neues Item bewertet und in den Datensatz einfügt, wird der absolute Fehler zwischen den beiden geschätzten Bewertung des Algorithmus und dieser echten Bewertung des Benutzer bestimmt und die Gewichte so angepasst, das der Fehler dazwischen minimiert wird. Die Gewichte werden per Benutzer erstellt, also jeder Benutzer hat sein eigenes Paar von Gewichten [15]. 2.7 Überblick über die bisherige Forschung Die Wurzeln der Recommendersysteme sind in anderen Forschungsdisziplinen, namentlich in den Bereichen der cognitive science, approximation theory, information retrieval, forecasting theo- 18

23 2.7 Überblick über die bisherige Forschung ries, management science und consumer choice modeling in marketing, zu finden [1]. Das Gebiet hat sich Mitte der 1990er zu einem eigenständigen Forschungsbereich entwickelt, nicht zuletzt aufgrund der kommerziellen Bedeutung und dem von nun an expliziten Fokus auf die Schätzung von Bewertungen. Die erste Veröffentlichung zu Recommendersystems wurden zuerst von Goldberg et al. [26] aufgegriffen und gilt unter dem Namen information tapestry als das erste Recommendersystem [60]. Die erste, im Allgemeinen akzeptierte Formulierung eines Recommendersystems ist in Hill et al. [32, 59, 71] zu finden. Ausgehend von diesem Model sind alle weiteren Verfahren abgeleitet. Die Anfänge der Forschung zu Content-based filtering finden sich in den Gebieten information retrieval [65] und information filtering [7]. In diesen Bereichen haben sich früh Methoden entwickelt, welche mit Textdokumenten arbeiten und bis heute von Bedeutung sind und sich daher auch auf die meisten inhalts-basierten Recommender niedergeschlagen haben. Auch in der Entwicklung von Suchmaschinen sind solche Methoden erfolgreich eingesetzt worden [11]. Eine wichtige Verbesserung der Ansätze der information retrieval und information filtering-forschung ergab sich mit der Einbeziehung von explizit oder implizit erstellen Benutzerprofilen, die Informationen über die Vorlieben und Bedürfnisse der Benutzer enthielten. Ein Beispiel hierfür ist der Recommender Fab [4], welcher Webseiten empfiehlt, indem es die 100 wichtigsten Wörter pro Webseiten bestimmt und daraus ein Profil der Webseite erstellt. Forschung zu Content-based Filtering Das erste Content-based Recommendersystem wurde von Pazzani et al. [57, 58] vorgeschlagen. Balabanovic et al. [4] und Lang [46] setzen den Roccio Algorithmus in einem [62] inhalts-basierten Recommendersystem ein. Littlestone et al. [47] entwickelte einen Algorithmus für Verfahren mit großer Anzahl von Features. Neben diesen klassischen Verfahren aus der information retrieval haben sich auch andere Techniken entwickelt, die aus den zugrunde liegenden Daten ein Modell erstellen, um daraus Empfehlungen zu berechnen. Bayes sche Klassifikatoren setzt Mooney et al. [54] und Pazzani et al. [57] ein. Money et al. [54] empfiehlt bisher nicht bewertete Webseiten, indem es einen naiven Bayes schen Klassifikator einsetzt, der als Input Webseiten, eingeteilt in die Kategorien relevant und nicht relevant, erhält und daraus Empfehlungen generiert. Eine bekannte Implementierung des content-based Ansatzes ist das Music Genome Project, welches vom Internetradio Pandora 2 genutzt wird. Musikexperten trainieren das Verfahren explizit, indem jeder Song mit hunderten von musikalischen Merkmalen charakterisiert wird. Der Benutzer bestimmt über die Weboberfläche seinen Musikgeschmack bzw. einen Künstler, und das System liefert einen persönlichen Radiostream zurück, der den Eingaben möglichst ähnlich ist. Forschung zu Collaborative Filtering Tapestry [26] wird oft als das erste Recommendersystem bezeichnet, wobei hier die ähnlichen User noch manuell bestimmt werden mussten. Erst 2 (Aus lizenzrechtlichen Gründen bisher nicht ausserhalb der USA verwendbar.) 19

24 2 Recommendersysteme die folgenden Systeme, GroupLens [37], Video Recommender [32] und Ringo [71], automatisierten die Vorhersage der Bewertungen und gelten daher als die ersten echten kollaborativen Recommender. Aus heutiger Sicht sind beispielsweise die Systeme von Netflix, Amazon und Last.fm interessant. Netflix, eine Online-DVD-Videothek mit USA-weitem Distributionsnetzwerk, hat mit dem von ihnen ausgeschriebenen Netflix Prize 3 für viel Aufsehen im Forschungsbereich der Recommendersysteme gesorgt. Der mit 1 Million US-Dollar dotierte Preis für den Algorithmus, der den bisherigen Netflix Recommender um 10% verbessert, ging nach ca. 3 Jahren an ein international zusammengesetztes Forscherteam namens BellKor s Pragmatic Chaos. Die Veröffentlichung und genaue Beschreibung ihres Algorithmus, eine Bedingung des Wettbewerbs, ist unter [38] zu finden. Breese et al. [29] teilte die kollaborativen Recommender in zwei Gebiete ein: Memory-based und model-based. Beispiele für reine memory-based Algorithmen und Verfahren sind in Breese et al. [29], Resnick et al. [59] und Shardanand et al. [71] zu finden. Alternativ schlägt Aggarwal et al. [2] einen Graph-basierten Recommender vor, der Vorteile beim Bestimmen der Nachbarschaften hat, da diese systembedingt schon vorliegen. Beispiele für Model-basierte Verfahren [29, 9, 33, 49, 55, 76] sind in der Literatur zahlreich zu finden. Neuronale Netze setzt Billsus et al. [9] ein, induction rule learning Basu et al. [5], lineare Klassifikatoren Zhang et al. [80], Bayes sche Netzwerke und Clustering Breese et al. [29] und Verfahren basierend auf der Hauptkomponentenanalyse Goldberg et al. [27]. Aktuellere Forschung in diesem Bereich beschäftigt sich mehr und mehr mit komplexen probabilistischen Modellen für die Schätzung von Ratings. Beispielsweise betrachtet Shani et al [70] den Recommenderprozess als sequentielles Entscheidungsproblem und schlägt einen Markov-Entscheidungsprozess für die Erstellung der Bewertungen vor. Kumar et al [43] schlägt hingegen ein einfaches probabilistisches Modell vor, das demonstrieren soll, dass auch schon bei sehr wenigen Daten über jeden User sinnvolle Empfehlungen abgegeben werden können. Item-basierte Methoden schlägt Sarwar et al. in [66] vor. Von Desphande et al. [20] wird dieser Ansatz weiter verfolgt und bestätigt dort auch das Ergebnis von [66], dass Item-basierende Methoden unter Umständen qualitativ bessere Ergebnisse als User-basierende Methoden liefern. Forschung zu Hybrid Filtering Kombinierte Verfahren wendet Claypool et al. [15] an, indem Bewertungen verschiedener Recommender linearer kombiniert werden, während Pazzani et al. [56] eine Votierung verwendet. Das DailyLearner System [10] wählt das Rating aus, dass die größte Sicherheit unter allen Ratings bietet. Beispiele für inhalts-basierte Methoden in kollaborative Verfahren sind das Fab System [4] und das schon genannte Verfahren von Pazzani et al. [56]. Good et al. [28] schlägt ein System vor, das mit sogenannten filterbots arbeitet, die die Inhalte des Systems feiner untersuchen um damit die Empfehlungen zu verbessern

25 2.7 Überblick über die bisherige Forschung Ein Beispiel für kollaborative Methoden in inhalts-basierten Verfahren ist Soboroff et al. [72], die latent semantic indexing verwenden, eine Technik aus der information retrieval um Dimensionalitäten zu reduzieren. Beispiele für Verfahren, die kollaborative und inhalts-basierte Recommender vereinigen sind Basu et al. [5], die einen regelbasierten Klassifikator einsetzen, der die Charakteristiken der Items und User berücksichtigt (z.b. Alter, Geschlecht, Genre von Filmen etc.). Ein Ansatz von Condliff et al. [18] nutzt Bayes sche Regressionsmodelle mit Mischeffekten, um damit Markovketten und Monte-Carlo Methoden für die Einstellung von Parameter anzuwenden. Forschung zu Latent Factor Models Hofmann untersucht in [33] und [34] latent semantic models, mit denen er die Ratings des aktiven User als gemischtes System von Usergruppen modelliert, bei denen die User mit einer gewissen Wahrscheinlichkeit in einer der Gruppen teilnehmen. Koren [39] untersucht einen Vorschlag, der kollaborative Modelle und latent factor models kombiniert und die Empfehlungsqualität durch die Einbeziehung von explizitem und implizitem Benutzerfeedback empirisch verbessern kann. Weiter beschreibt Koren in [40] die Entwicklung eines Verfahrens, dass die zeitliche Verschiebung von Benutzerinteressen bei der Schätzung der Empfehlungen mit einbezieht. Beide von Koren vorgeschlagenen Verfahren wurden mit Erfolg beim Netfliz Prize eingesetzt. Weitere Entwicklungen im Forschungsbereich der Recommendersysteme In den letzten Jahren hat sich die Forschung zu Recommendersystemen und allen angrenzenden Gebieten sehr rasch entwickelt. Dabei sind viele Vorschläge zu Verfahren entstanden, die sich nicht mehr genau in eine der bisher vorgestellten Kategorien einsortieren lassen. Im Folgenden wird versucht, einen kurzen Überblick über diese Arbeiten zu geben. Schweighofer et al. [67] schlagen ein probabilistisches memory-based Verfahren vor, dass weniger auf die reine Verbesserung der Vorhersagequalität zielt, sondern andere Aspekte wie Skalierung, Anpassung auf neue Daten und Verständlichkeit der Empfehlungen ( warum wurde dieses Item empfohlen ) in den Vordergrund stellt. Gassner et al. [24] schlägt ein Verfahren zur Visualisierung von Empfehlungen vor. Eine geografische Visualisierung der Empfehlungen soll zeigen, wie die Empfehlungen zustande kamen und die Nachbarschaften der Items zueinander angeordnet sind. Miller et al. [53] setzt mit ihrem PocketLens-Verfahren auf ein portables System, das nicht auf large-scale Computern eingesetzt werden muss, sondern auf mobilen Geräten funktionieren soll. Das Thema Privacy in Recommendersystemen untersucht Canny et al. [13] und Lam et al. [45, 44]. Mehta et al. [52] verwenden robuste statistische Methoden (M-estimators), mit denen sie absichtliche Verfälschungen oder unabsichtliche Abweichungen der Ratings abzufangen versuchen. Herlocker et al. [31] untersuchen die verschiedenen Möglichkeiten zur Evaluation von Recommendersystemen und gehen auf die dabei wichtigsten zu treffenden Entscheidungen ein. Darunter die Art der Analyse und Auswahl der Datensätze, wie die Qualität von Empfehlungen evaluiert wird, alternative Arten der Qualitätsmessung (Precision und Recall) und die allgemeine Zufriedenheit des Benutzers mit dem System. 21

26 2 Recommendersysteme Zaier et al. [79] beschreibt die Bedeutung von Recommendersystemen in kommerziellen Umgebungen mit exponentiellen Warenverteilungen (long tail). In solchen Systemen wird eine kleine Menge von Produkte sehr häufig gekauft (z.b. der aktuelle Bestseller oder der neueste Kinofilm auf DVD), eine große Menge an Waren aber nur selten. Recommendersysteme helfen dabei, dieses große Potential an versteckten Waren zu nutzen und diese dem passenden Kunden anzubieten. Zaier et al. [79] untersucht bekannte Datensätze (Netflix, MovieLens, Jester, BookCrossing und EachMovie) auf diese Eigenschaften. 22

27 3 Schwarmintelligenz und evolutionäre Algorithmen Schwarmintelligenz [36] und evolutionäre Algorithmen [22] sind nicht-standard Optimierungsverfahren, mit deren Hilfe kombinatorische Probleme näherungsweise gelöst werden können. Beide Verfahren werden durch Vorgänge in der Natur inspiriert; bei Schwarmintelligenz durch das Verhalten von Schwärmen, Kolonien und anderen kollektiven Gruppierungen, bei evolutionären Algorithmen durch den Vorgang der biologischen Evolution. Ziel beider Ansätze ist es, zur Lösung des zugrunde liegenden Problems Methoden aus der Natur zu abstrahieren und damit Lösungen für die gestellten Probleme zu finden. Die Vorgänge in der Natur können dabei aus einer höheren Sicht auf einfache Regeln abgebildet werden, die die jeweiligen Verfahren umsetzen. Die folgenden Abschnitte beschreiben die verschiedenen Varianten von Schwarmintelligenz und evolutionären Algorithmen sowie die bisherigen Forschungen auf diesem Gebiet. Anschließend werden die in dieser Arbeit eingesetzten Verfahren im Detail beschreiben. Evolutionäre Algorithmen Die biologische Evolution besteht vereinfacht aus drei Vorgängen, die sich in jeder Generation wiederholen: Rekombination, Mutation und Selektion [22]. Mit diesen drei Vorgehensweisen ist die Natur in der Lage, das Erbgut der Individuen an die Bedingungen und Lebensumstände in ihrer Umwelt anzupassen. Gut angepasste und damit erfolgreiche Lebewesen haben so eine größere Chance sich fortzupflanzen und damit ihre Gene in die nächste Generation weiter zu reichen. Die natürliche Evolution bevorzugt Individuen, die sich ihrer direkten Umgebung am besten anpassen und im Wettstreit um die vorhanden Ressourcen als Sieger hervorgehen. Evolutionäre Algorithmen greifen dies in vereinfachter Art auf und entwickeln ein Modell, mit dessen Hilfe man komplexe Probleme mit den Methoden der Evolution näherungsweise lösen kann. Ein solches Modell ist vereinfacht eine Umgebung, in welche zufällig generierte Individuen platziert werden. Diese Individuen spiegeln in einem evolutionären Algorithmus die möglichen Lösungen des Problems wieder. Repräsentiert wird jedes Individuum i als mehrdimensionaler Vektor v i, der für jede Dimension eine Komponente der Lösung des Problems der Größe n enthält bzw. die Position in der Fitnesslandschaft darstellt: v i = (k 1,, k n ). Die gesamte Population P besteht aus der Menge aller Individuen v i : P = {v 1,, v P }. 23

28 3 Schwarmintelligenz und evolutionäre Algorithmen Selektiere Eltern Eltern Initialisierung Rekombination Population Mutation Abbruchbedingung erfüllt Selektiere Überlebende Nachkommen Abbildung 3.1: Das allgemeine Schema eines evolutionären Algorithmus mit P als Anzahl aller Individuen in der Population. Die Fitness f (die Güte einer Lösung) wird durch die momentane Position des Individuum in der Landschaft bestimmt und gibt damit wieder, wie gut sich dieses Individuum mit seinen Eigenschaften auf dieser Stelle der Landschaft verhält. Wenn die Fitness hoch ist, d.h. das Individuum gut an die momentane Position angepasst ist, steigt die Chance des Überlebens und der damit verbundenen Weitergabe der eigenen Eigenschaften in die nächste Generation. Wenn dies nicht der Fall ist, wird das Individuum mit hoher Wahrscheinlichkeit dem evolutionären Druck nicht standhalten können und seine (negativen) Merkmale werden aus der Population entfernt. Die zufällig generierten Individuen/Lösungen eines evolutionären Algorithmus durchlaufen Rekombination, Mutation und Selektion in jeder Generation bzw. Iteration des Algorithmus und werden anschließend durch die problemspezifische Fitnessfunktion bewertet. Die Repräsentation einer Lösung wird vom zugrunde liegenden Problem bestimmt. In der Regel formuliert man eine Lösung als reellen oder binären Vektor, der die Problemstellung erfüllt, unabhängig der Qualität dieser Lösung. Der biologischen Begriffe Chromosom und Gen werden häufig synonym für diesen Vektor und die Elemente des Vektors verwendet. In Abbildung 3.1 wird das allgemeine Schema eines evolutionären Algorithmus dargestellt. Ein evolutionärer Algorithmus durchläuft folgende Schritte: Rekombination Bei der Rekombination (auch crossover) werden die Chromosome der beiden Elternpaare zu einem neuen Chromosom kombiniert. Dabei werden Eigenschaften beider Eltern in die Kindgeneration weitergegeben mit dem Ziel, dass sich daraus eine Lösung, die eine mindestens genauso gute Qualität wie ihre Eltern hat. Die Position, an der die 24

29 beiden Chromosome gekreuzt werden, wird problemspezifisch bestimmt. Es existieren verschiedene Ansätze für die Umsetzung der Kreuzung, für eine nähere Untersuchung siehe Eiben et al. [22]. Die Rekombination von Individuen führt zur weitläufigen Erkundung der Fitnesslandschaft, da das Ergebnis einer Kreuzung an einer ganz anderen Stelle der Landschaft als dessen Eltern liegen kann. In der Literatur spricht man hier auch von Exploration. Mutation Die zufällige Mutation eines Chromosoms bzw. eines Gens liefert ein leicht verändertes Individuum zurück, dessen Fitness sich dadurch nicht zwingend verbessert, aber durch die stochastische Komponente der Mutation wird frisches Blut in die Population eingefügt [22]. Mutation verändert das Individuum zwar nur in einem kleinen Rahmen, diese Veränderung kann aber häufig dazu führen, dass die direkte Nachbarschaft der Fitnesslandschaft genauer untersucht wird und dadurch vielleicht das lokale (und eventuell das globale) Optimum gefunden wird. In der Literatur spricht man auch von Exploitation. Selektion Die Selektion kommt in zwei Varianten zu verschiedenen Zeiten im Ablauf des Algorithmus vor. Zum einen werden die Individuen bestimmt, die per Rekombination neue Nachkommen generieren dürfen. Die Wahl dieser Paare ist von der jeweiligen Ausprägung des evolutionären Systems und des zugrunde liegenden Problems abhängig. Es können beispielsweise werden nur die besten 50% einer Generation zur Rekombination verwendet werden. Zum anderen findet nach Rekombination und Mutation eine Auswahl statt, welche Individuen aus der Menge der Eltern und Kinder in die nächste Generation übernommen werden. Verschiedene Modelle sind möglich, es können beispielsweise nur die Nachkommen oder eine Kombination aus Eltern und Nachkommen übernommen werden. Die Fitnessfunktion bestimmt die Güte einer Lösung. Sie stellt eine Vorgabe dar, in welche Richtung sich eine Population entwickeln soll und definiert, was eine Verbesserung der Fitness bedeutet und leitet damit den evolutionären Vorgang. Aus der Sicht der Problemlösung definiert sie das eigentliche Problem und der evolutionäre Algorithmus liefert mögliche Lösungen. Die beste dieser Lösungen wird gesucht. Die Fitnessfunktion und die von ihr definierte Fitnesslandschaft ist für zwei Merkmale (oder Gene) in Abbildung 3.2 dargestellt. Die Höhe dieser Landschaft spiegelt die Fitness wieder: Eine hohe Position bedeutet eine hohe Fitness, tiefer liegende Positionen bedeuten niedrige Fitness (im Falle eines Maximierungsproblems). Eine detaillierte Beschreibung des Genetischen Algorithmus, eine Variante der evolutionären Algorithmen, folgt in Abschnitt 3.1. Dieses Verfahren findet danach in Kapitel 4.6 Einsatz in einem Recommendersystem. Überblick evolutionäre Algorithmen In der Vergangenheit haben sich verschiedene Varianten von evolutionäre Algorithmen entwickelt. In den USA der 1960er haben Fogel, Walsh 25

30 3 Schwarmintelligenz und evolutionäre Algorithmen Abbildung 3.2: Beispiel für eine aus einer Fitnessfunktion mit zwei Merkmalen ergebenden Fitnesslandschaft. Für ein Maximierungsproblem spiegeln die hohen Positionen eine hohe Fitness wieder, niedrige Positionen eine schlechtere Fitness. Es können mehrere lokale Optima auftreten (multimodale Landschaft). und Owens Evolutionary Programming (EP) vorgeschlagen, während Holland seine Variante Genetic Algorithm (GA) genannt hat. In Deutschland haben Rechenberg und Schwefel unter den Namen Evolutionary Strategies (ES) erste Forschungen auf diesem Gebiet betrieben. In den 1990er hat Koza mit Genetic Programming (GP) eine weitere Variante vorgeschlagen. Allen Varianten liegt die gleiche evolutionäre Idee zugrunde, während sie sich in den Details und Einsatzgebieten sehr voneinander unterscheiden. Dabei ist es vom eigentlichen Problem und dessen Ausprägung abhängig, welche Variante sich am besten zur Lösung anbietet. Die Tabellen 3.1 und 3.2 geben eine Übersicht über die vier großen Varianten der evolutionären Algorithmen und deren typische Anwendungsfälle. Schwarmintelligenz Die Bildung von Gruppen und Teams in der Tierwelt ist ein häufig beobachtetes Verhalten [3], z.b. in Vogel-, Fisch- und Bienenschwärmen oder Ameisenkolonien. Interessant sind vor allem solche Gruppen, die von keinem Führer (Alphatier) geleitet werden, sondern ein emergentes Verhalten zeigen. Die einzelnen Individuen in solchen Gruppen haben kein direktes Wissen über ihre Umgebung und das globale Verhalten der eigenen Gruppe, können sich aber trotzdem gegenseitig finden und zusammen fortbewegen. Dieses Verhalten basiert auf der lokalen Kommunikation eines Individuum mit seinen direkten Nachbarn im Schwarm. Auf diese Weise entwickelt der Schwarm Verhaltensweisen wie die Erkundung der Umgebung, Rückkehr an einen bestimmten Ort oder hütendes Verhalten. 26

31 GA ES Typisches Kombinatorische Kontinuierliche Problem Optimierung Optimierung Typische Zeichenketten in einem Vektoren Repräsentation endlichen Alphabet mit reellen Zahlen Rolle der Primärer Variations- Wichtig, aber Rekombination operator zweitrangig Rolle der Sekundärer Variations- Wichtig, manchmal Mutation operator der einzige Operator Selektion Zufällig, beeinflusst Zufällig, uniform der Eltern durch die Fitness Selektion Generational: nicht alle Deterministisch, der neuen Individuen werden ersetzt Beeinflusst durch Fitness Generation Steady-state: deterministisch Beeinflusst durch Fitness Tabelle 3.1: Übersicht über die GA und ES Dialekte in evolutionären Algorithmen. Diverse Simulationen zu diesem Verhalten haben zu einem besseren Verständnis der Schwärme geführt. Reynolds [61] hat mit den vom ihm entwickelten Boids grundlegende Erkenntnisse für das Verhaltensweisen in Schwärmen erforscht. Er führt drei Regeln auf, die jedes Individuum einhalten muss, damit der Schwarm ein emergentes Verhalten zeigt: Vermeidung von Kollisionen Jedes Individuum versucht nicht mit seinen direkten Nachbarn zu kollidieren, basierend auf der physikalischen Koordinaten jedes Individuum. Angleichung der Geschwindigkeit Jedes Individuum passt sich der Richtung und Geschwindigkeit der umliegenden Individuen an. Zentrierung des Schwarms Jedes Individuum versucht in der Nähe des Zentrums des Schwarms zu bleiben. Abbildung 3.3: Boids: Vermeidung von Kollisionen innerhalb der direkten Nachbarschaft (Kreis), Angleichung an die umliegenden Nachbarn und Zentrierung in der Nachbarschaft, exemplarisch für einen Teilnehmer (mitte, schwarz). 27

32 3 Schwarmintelligenz und evolutionäre Algorithmen EP GP Typisches Optimierung Modellierung Problem Typische Problemspezifisch Bäume Repräsentation Rolle der Nicht angewandt Primär / einziger Rekombination Variationsoperator Rolle der Der einzige Variations- Sekundär, manchmal Mutation operator gar nicht eingesetzt Selektion Jedes Individuum Zufällig, beeinflusst durch der Eltern erstellt ein Kind Fitness Selektion Zufällig, beeinflusst durch Zufällig, beeinflusst durch der neuen Fitness Fitness Generation Tabelle 3.2: Übersicht über die EP und GP Dialekte in evolutionären Algorithmen. Ein ähnliches Modell wurde von Heppner und Grenander [30] vorgeschlagen. Sie erweiterten das Modell von Reynolds um einen sogenannten Rooster, der den anderen Teilnehmer des Schwarms als Anziehungspunkt dient. Eine ganze Reihe weiterer Modelle wurde in den nachfolgenden Jahren vorgeschlagen. Das Verhalten von Fischschwärmen wird Stephens et al. [73] untersucht. Eine Modell für das Verhalten von Menschenmassen bespricht Saiwak et al. [64]. Das Modell von Crepinsek et al. [19] modelliert das Verhalten der Teilnehmer bei der Wahl der Nachbarn und der Richtungsangleichung. Das Modell, das in den späteren Kapiteln eingesetzt wird, ist der Particle Swarm Optimization-Algorithmus (PSO), vorgeschlagen von Kennedy und Eberhart [21, 36]. Dieses Modell optimiert beliebige Funktionen. Andere Einsatzgebiete außerhalb der Optimierung, für die teilweise die obigen Modelle verwendet werden (wie Computerspiele oder Filmanimationen), sind im PSO Modell nicht vorgesehen. Particle Swarm Optimization basiert auf dem sozial-psychologischen Modell der sozialen Einflussnahme und dem sozialen Lernen. Alle Partikel in einem Schwarm verfolgen ein Hauptziel: Die Nachahmung des Verhaltens der direkten Nachbarn im Schwarm. Wenn alle Partikel dieses Verhalten befolgen, konvergiert der Schwarm in Richtung des globalen Optimums der Umgebung. Das PSO Modell durchlief einige Iterationen, in denen jeweils die Ergebnisse aus anderen Arbeiten einflossen sowie eigene Verbesserungen und Erweiterungen vorgenommen wurden. So wurde nach einem anfänglichen Modell, welches nur die Bestimmung der nächsten Nachbarn und die Angleichung der Richtung implementiert hatte, dass Konzept der Rooster von Heppner und Grenander [30] übernommen, um den ganzen Schwarm auf die lokalen und globalen Optima der Nachbarn und des Schwarms selbst zu leiten. Der bis dahin verwendete 28

33 Ansatz leitete den Schwarm ohne diese Erweiterung zu schnell in eine feste Richtung, die nicht mehr verlassen wurde [23]. Invasive Weed Optimization Ein weiteres der Schwarmintelligenz zugeteiltes Optimierungsverfahren wird durch das Verbreitungsverhalten von Unkraut motiviert: Invasive Weed Optimization [51]. Unkraut werden dabei all die Pflanzen in einer Agrikultur genannt, die dort nicht gewollt sind bzw. die ein angreifendes und schädlichen Verhalten gegenüber ihrer Umwelt zeigen. Das vorliegende numerische Optimierungsverfahren ist einfach aufgebaut, konvergiert aber sehr effektiv auf das globale Optimum. In einer ausführlichen Evaluation vergleicht Mehrabian et. al. [51] IWO auf verschiedenen Testfunktionen (die aus der Forschung zu evolutionären Algorithmen bekannten Funktionen Sphere, Griewank und Rastrigin) mit genetischen Algorithmen (GA), memetischen Algorithmen (MA), Particle Swarm Algorithmen (PSO) und Shuffled frog leap Algorithmen (SFL). Zusätzlich wird IWO mit diversen Simulated Annealing-Varianten verglichen. Abbildung 3.4: IWO: Verlauf der Pflanzenausbreitung in einer zweidimensionalen Landschaft. Grafik aus [51]. IWO wurde in nachfolgenden Forschungsarbeiten hauptsächlich für die Optimierung von Funktionen verwendet. Eine Veröffentlichung von Rad et al. [69], die in den späteren Kapiteln aufgegriffen wird, ist ein Recommendersystem, dass den von Ujjin et al. [74] vorgeschlagenen evolutionären Recommender als Grundlage verwendet, dabei aber die Optimierungsfunktion durch das Invasive Weed Optimization-Verfahren (IWO) ersetzt. Dieses Verfahren wird in Kapitel 4.7 besprochen. Zhang et al. [81] erweitern den IWO Algorithmus zu einer populations-basierten Optimierungsmethode, shuffled IWO genannt, indem sie IWO mit einem shuffled complex evolution- Ansatz kombinieren. Das dynamische Verhalten von Energiemärkten wird von Sahraei et al. [63] mit Hilfe des IWO untersucht. Die Optimierung von Antennen mithilfe des IWO untersucht Karimkashi et al. [35]. Überblick Schwarmintelligenz Die Varianten der Schwarmintelligenz werden von zwei Methoden dominiert, die in den letzten Jahren in der Forschung die meiste Aufmerksam- 29

Recommender Systeme mit Collaborative Filtering

Recommender Systeme mit Collaborative Filtering Fakultät für Informatik Technische Universität München Email: rene.romen@tum.de 6. Juni 2017 Recommender Systeme Definition Ziel eines Recommender Systems ist es Benutzern Items vorzuschlagen die diesem

Mehr

Item-based Collaborative Filtering

Item-based Collaborative Filtering Item-based Collaborative Filtering Paper presentation Martin Krüger, Sebastian Kölle 28.04.2011 Seminar Collaborative Filtering KDD Cup 2011: Aufgabenbeschreibung Track 1 Item-based Collaborative Filtering

Mehr

Seminar Datenbanksysteme

Seminar Datenbanksysteme Seminar Datenbanksysteme Recommender System mit Text Analysis für verbesserte Geo Discovery Eine Präsentation von Fabian Senn Inhaltsverzeichnis Geodaten Geometadaten Geo Discovery Recommendation System

Mehr

9 Eigenschaften von Funktionen. Lineare Funktionen, Potenzen und Wurzeln

9 Eigenschaften von Funktionen. Lineare Funktionen, Potenzen und Wurzeln 9 Eigenschaften von Funktionen. Lineare Funktionen, Potenzen und Wurzeln Jörn Loviscach Versionsstand: 21. September 2013, 16:00 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen

Mehr

Eigenschaften von Funktionen. Lineare Funktionen, Potenzen und Wurzeln

Eigenschaften von Funktionen. Lineare Funktionen, Potenzen und Wurzeln Eigenschaften von Funktionen. Lineare Funktionen, Potenzen und Wurzeln Jörn Loviscach Versionsstand: 22. Oktober 2010, 21:37 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung.

Mehr

29 Schätzung von Erwartungswert und Varianz

29 Schätzung von Erwartungswert und Varianz 29 Schätzung von Erwartungswert und Varianz Jörn Loviscach Versionsstand: 21. September 2013, 15:55 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html

Mehr

Reinforcement Learning

Reinforcement Learning Reinforcement Learning 1. Allgemein Reinforcement Learning 2. Neuronales Netz als Bewertungsfunktion 3. Neuronales Netz als Reinforcement Learning Nils-Olaf Bösch 1 Allgemein Reinforcement Learning Unterschied

Mehr

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität Datenstrukturen und Algorithmen Christian Sohler FG Algorithmen & Komplexität 1 Clustering: Partitioniere Objektmenge in Gruppen(Cluster), so dass sich Objekte in einer Gruppe ähnlich sind und Objekte

Mehr

22 Lineare Näherung. Anwendungen

22 Lineare Näherung. Anwendungen 22 Lineare Näherung. Anwendungen Jörn Loviscach Versionsstand: 21. September 2013, 15:57 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html

Mehr

Boole sches Retrieval als frühes, aber immer noch verbreitetes IR-Modell mit zahlreichen Erweiterungen

Boole sches Retrieval als frühes, aber immer noch verbreitetes IR-Modell mit zahlreichen Erweiterungen Rückblick Boole sches Retrieval als frühes, aber immer noch verbreitetes IR-Modell mit zahlreichen Erweiterungen Vektorraummodell stellt Anfrage und Dokumente als Vektoren in gemeinsamen Vektorraum dar

Mehr

Data Mining 8-1. Kapitel 8: Recommendation Systems. Johannes Zschache Wintersemester 2018/19

Data Mining 8-1. Kapitel 8: Recommendation Systems. Johannes Zschache Wintersemester 2018/19 Data Mining Kapitel 8: Recommendation Systems Johannes Zschache Wintersemester 08/9 Abteilung Datenbanken, Universität Leipzig http://dbs.uni-leipzig.de Data Mining 8- 8- Data Mining Übersicht Hochdimension.

Mehr

Information Retrieval, Vektorraummodell

Information Retrieval, Vektorraummodell Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Information Retrieval, Vektorraummodell Tobias Scheffer Paul Prasse Michael Großhans Uwe Dick Information Retrieval Konstruktion

Mehr

10.5 Maximum-Likelihood Klassifikation (I)

10.5 Maximum-Likelihood Klassifikation (I) Klassifikation (I) Idee Für die Klassifikation sind wir interessiert an den bedingten Wahrscheinlichkeiten p(c i (x,y) D(x,y)). y Wenn man diese bedingten Wahrscheinlichkeiten kennt, dann ordnet man einem

Mehr

1 Äquivalenzumformungen, Lösungsmenge

1 Äquivalenzumformungen, Lösungsmenge 5 Ungleichungen Jörn Loviscach Versionsstand: 21. September 2013, 15:55 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work is

Mehr

Rückblick. Aufteilung in Dokumente anwendungsabhängig. Tokenisierung und Normalisierung sprachabhängig

Rückblick. Aufteilung in Dokumente anwendungsabhängig. Tokenisierung und Normalisierung sprachabhängig 3. IR-Modelle Rückblick Aufteilung in Dokumente anwendungsabhängig Tokenisierung und Normalisierung sprachabhängig Gesetz von Zipf sagt aus, dass einige Wörter sehr häufig vorkommen; Stoppwörter können

Mehr

9 Lineare Differentialgleichungen erster und zweiter Ordnung mit konstanten Koeffizienten

9 Lineare Differentialgleichungen erster und zweiter Ordnung mit konstanten Koeffizienten 9 Lineare Differentialgleichungen erster und zweiter Ordnung mit konstanten Koeffizienten Jörn Loviscach Versionsstand: 28. März 2015, 21:40 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen

Mehr

Rückblick. Aufteilung in Dokumente anwendungsabhängig. Tokenisierung und Normalisierung sprachabhängig

Rückblick. Aufteilung in Dokumente anwendungsabhängig. Tokenisierung und Normalisierung sprachabhängig 3. IR-Modelle Rückblick Aufteilung in Dokumente anwendungsabhängig Tokenisierung und Normalisierung sprachabhängig Gesetz von Zipf sagt aus, dass einige Wörter sehr häufig vorkommen; Stoppwörter können

Mehr

27 Zufallsvariablen. Erwartungswert. Median. Perzentilen

27 Zufallsvariablen. Erwartungswert. Median. Perzentilen 27 Zufallsvariablen. Erwartungswert. Median. Perzentilen Jörn Loviscach Versionsstand: 21. September 2013, 15:56 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html

Mehr

Bayesianische Netzwerke - Lernen und Inferenz

Bayesianische Netzwerke - Lernen und Inferenz Bayesianische Netzwerke - Lernen und Inferenz Manuela Hummel 9. Mai 2003 Gliederung 1. Allgemeines 2. Bayesianische Netzwerke zur Auswertung von Genexpressionsdaten 3. Automatische Modellselektion 4. Beispiel

Mehr

22 Fehlerfortpflanzung und Extrema bei Funktionen mehrerer Veränderlicher

22 Fehlerfortpflanzung und Extrema bei Funktionen mehrerer Veränderlicher 22 Fehlerfortpflanzung und Extrema bei Funktionen mehrerer Veränderlicher Jörn Loviscach Versionsstand: 21. März 2014, 21:11 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der

Mehr

27 Zufallsvariablen. Erwartungswert. Median. Perzentilen

27 Zufallsvariablen. Erwartungswert. Median. Perzentilen 27 Zufallsvariablen. Erwartungswert. Median. Perzentilen Jörn Loviscach Versionsstand: 7. Januar 2011, 21:03 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu:

Mehr

Einführung in das Maschinelle Lernen I

Einführung in das Maschinelle Lernen I Einführung in das Maschinelle Lernen I Vorlesung Computerlinguistische Techniken Alexander Koller 26. Januar 2015 Maschinelles Lernen Maschinelles Lernen (Machine Learning): äußerst aktiver und für CL

Mehr

14 Partialbruchzerlegung

14 Partialbruchzerlegung 14 Partialbruchzerlegung Jörn Loviscach Versionsstand: 21. September 2013, 15:59 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This

Mehr

Die nummerierten Felder bitte mithilfe der Videos ausfüllen:

Die nummerierten Felder bitte mithilfe der Videos ausfüllen: 5 Optimale Regelung Zoltán Zomotor Versionsstand: 6. März 5, 9:8 Die nummerierten Felder bitte mithilfe der Videos ausfüllen: http://www.z5z6.de This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Mehr

Mustererkennung. Übersicht. Unüberwachtes Lernen. (Un-) Überwachtes Lernen Clustering im Allgemeinen k-means-verfahren Gaussian-Mixture Modelle

Mustererkennung. Übersicht. Unüberwachtes Lernen. (Un-) Überwachtes Lernen Clustering im Allgemeinen k-means-verfahren Gaussian-Mixture Modelle Mustererkennung Unüberwachtes Lernen R. Neubecker, WS 01 / 01 Übersicht (Un-) Überwachtes Lernen Clustering im Allgemeinen k-means-verfahren 1 Lernen Überwachtes Lernen Zum Training des Klassifikators

Mehr

20 Ableitung. 1 Ableitung

20 Ableitung. 1 Ableitung 20 Ableitung Jörn Loviscach Versionsstand: 29. September 2012, 19:45 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work is licensed

Mehr

Multiple Alignments. Vorlesung Einführung in die Angewandte Bioinformatik Prof. Dr. Sven Rahmann. Webseite zur Vorlesung

Multiple Alignments. Vorlesung Einführung in die Angewandte Bioinformatik Prof. Dr. Sven Rahmann. Webseite zur Vorlesung Multiple Alignments Vorlesung Einführung in die Angewandte Bioinformatik Prof. Dr. Sven Rahmann Webseite zur Vorlesung http://bioinfo.wikidot.com/ Sprechstunde Mo 16-17 in OH14, R214 Sven.Rahmann -at-

Mehr

(Bamberg)

(Bamberg) Konzeption eines Frameworks für die Evaluation von Tag-Suggestion-Algorithmen Martin Garbe Steffen Oldenburg Lukas Zielinski Prof. Dr. Clemens Cap (Universität Rostock) 08.05.2008 (Bamberg) Übersicht Tags

Mehr

Wissensentdeckung in Datenbanken

Wissensentdeckung in Datenbanken Wissensentdeckung in Datenbanken Deep Learning (II) Nico Piatkowski und Uwe Ligges Informatik Künstliche Intelligenz 25.07.2017 1 von 14 Überblick Faltungsnetze Dropout Autoencoder Generative Adversarial

Mehr

19 Folgen. Grenzwerte. Stetigkeit

19 Folgen. Grenzwerte. Stetigkeit 19 Folgen. Grenzwerte. Stetigkeit Jörn Loviscach Versionsstand: 27. Dezember 2014, 16:35 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html

Mehr

9 Fourier-Transformation

9 Fourier-Transformation 9 Fourier-Transformation Zoltán Zomotor Versionsstand: 5. September 2015, 18:26 Die nummerierten Felder bitte mithilfe der Videos ausfüllen: http://www.z5z6.de This work is based on the works of Jörn Loviscach

Mehr

Gibbs sampling. Sebastian Pado. October 30, Seien X die Trainingdaten, y ein Testdatenpunkt, π die Parameter des Modells

Gibbs sampling. Sebastian Pado. October 30, Seien X die Trainingdaten, y ein Testdatenpunkt, π die Parameter des Modells Gibbs sampling Sebastian Pado October 30, 2012 1 Bayessche Vorhersage Seien X die Trainingdaten, y ein Testdatenpunkt, π die Parameter des Modells Uns interessiert P (y X), wobei wir über das Modell marginalisieren

Mehr

Bildverarbeitung Herbstsemester. Mustererkennung

Bildverarbeitung Herbstsemester. Mustererkennung Bildverarbeitung Herbstsemester Herbstsemester 2009 2012 Mustererkennung 1 Inhalt Einführung Mustererkennung in Grauwertbildern Ähnlichkeitsmasse Normalisierte Korrelation Korrelationskoeffizient Mustererkennung

Mehr

2 Verteilungen. Zoltán Zomotor. Versionsstand: 1. April 2015, 10:29. Die nummerierten Felder bitte während der Vorlesung ausfüllen. Inhaltsverzeichnis

2 Verteilungen. Zoltán Zomotor. Versionsstand: 1. April 2015, 10:29. Die nummerierten Felder bitte während der Vorlesung ausfüllen. Inhaltsverzeichnis 2 Verteilungen Zoltán Zomotor Versionsstand: 1. April 2015, 10:29 Die nummerierten Felder bitte während der Vorlesung ausfüllen. This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Mehr

8 Relationen, Umkehrung

8 Relationen, Umkehrung 8 Relationen, Umkehrung Jörn Loviscach Versionsstand: 29. September 2012, 19:37 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This

Mehr

Bayes-Netze (2) Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg

Bayes-Netze (2) Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg Bayes-Netze (2) Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg (Lehrstuhl KI) Bayes-Netze (2) 1 / 23 Gliederung 1 Zusammenhang zwischen Graphenstruktur

Mehr

Kapitel 2. Mittelwerte

Kapitel 2. Mittelwerte Kapitel 2. Mittelwerte Im Zusammenhang mit dem Begriff der Verteilung, der im ersten Kapitel eingeführt wurde, taucht häufig die Frage auf, wie man die vorliegenden Daten durch eine geeignete Größe repräsentieren

Mehr

Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen. Clusteranalyse. Tobias Scheffer Thomas Vanck

Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen. Clusteranalyse. Tobias Scheffer Thomas Vanck Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Clusteranalyse Tobias Scheffer Thomas Vanck Überblick Problemstellung/Motivation Deterministischer Ansatz: K-Means Probabilistischer

Mehr

Grundlagen zu neuronalen Netzen. Kristina Tesch

Grundlagen zu neuronalen Netzen. Kristina Tesch Grundlagen zu neuronalen Netzen Kristina Tesch 03.05.2018 Gliederung 1. Funktionsprinzip von neuronalen Netzen 2. Das XOR-Beispiel 3. Training des neuronalen Netzes 4. Weitere Aspekte Kristina Tesch Grundlagen

Mehr

Monte-Carlo Tests. Diplomarbeit. Wiebke Werft. Mathematisches Institut der Heinrich-Heine-Universität Düsseldorf

Monte-Carlo Tests. Diplomarbeit. Wiebke Werft. Mathematisches Institut der Heinrich-Heine-Universität Düsseldorf Monte-Carlo Tests Diplomarbeit Wiebke Werft Mathematisches Institut der Heinrich-Heine-Universität Düsseldorf Düsseldorf im Dezember 2003 Betreuung: Prof. Dr. Arnold Janssen Inhaltsverzeichnis Einleitung

Mehr

1 Wahrscheinlichkeitsrechnung und Zufallsvariablen

1 Wahrscheinlichkeitsrechnung und Zufallsvariablen 1 Wahrscheinlichkeitsrechnung und Zufallsvariablen Zoltán Zomotor Versionsstand: 18. Mai 2015, 09:29 Die nummerierten Felder bitte während der Vorlesung ausfüllen. This work is licensed under the Creative

Mehr

Folien zu Data Mining von I. H. Witten und E. Frank. übersetzt von N. Fuhr

Folien zu Data Mining von I. H. Witten und E. Frank. übersetzt von N. Fuhr Folien zu Data Mining von I. H. Witten und E. Frank übersetzt von N. Fuhr Von Naivem Bayes zu Bayes'schen Netzwerken Naiver Bayes Annahme: Attribute bedingt unabhängig bei gegebener Klasse Stimmt in der

Mehr

16 Fourier-Reihe mit komplexer Exponentialfunktion

16 Fourier-Reihe mit komplexer Exponentialfunktion 16 Fourier-Reihe mit komplexer Exponentialfunktion Jörn Loviscach Versionsstand: 21. März 2014, 21:45 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html

Mehr

(Thema) Optimierung von künstlichen neuronalen Netzen zur Ausfallvorhersage mit Sensordaten. Masterarbeit

(Thema) Optimierung von künstlichen neuronalen Netzen zur Ausfallvorhersage mit Sensordaten. Masterarbeit (Thema) Optimierung von künstlichen neuronalen Netzen zur Ausfallvorhersage mit Sensordaten Masterarbeit zur Erlangung des akademischen Grades Master of Science (M.Sc.) im Studiengang Wirtschaftsingenieur

Mehr

TD-Gammon. Michael Zilske

TD-Gammon. Michael Zilske TD-Gammon Michael Zilske zilske@inf.fu-berlin.de TD-Gammon Ein Backgammon-Spieler von Gerald Tesauro (Erste Version: 1991) TD-Gammon Ein Neuronales Netz, das immer wieder gegen sich selbst spielt und dadurch

Mehr

Exponentialfunktionen, Eulersche Zahl, Logarithmen

Exponentialfunktionen, Eulersche Zahl, Logarithmen Exponentialfunktionen, Eulersche Zahl, Logarithmen Jörn Loviscach Versionsstand: 22. Oktober 2010, 23:29 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach

Mehr

Einführung in die linearen Funktionen. Autor: Benedikt Menne

Einführung in die linearen Funktionen. Autor: Benedikt Menne Einführung in die linearen Funktionen Autor: Benedikt Menne Inhaltsverzeichnis Vorwort... 3 Allgemeine Definition... 3 3 Bestimmung der Steigung einer linearen Funktion... 4 3. Bestimmung der Steigung

Mehr

Nutzung maschinellen Lernens zur Extraktion von Paragraphen aus PDF-Dokumenten

Nutzung maschinellen Lernens zur Extraktion von Paragraphen aus PDF-Dokumenten Nutzung maschinellen Lernens zur Extraktion von Paragraphen aus PDF-Dokumenten Albert-Ludwigs-Universität zu Freiburg 13.09.2016 Maximilian Dippel max.dippel@tf.uni-freiburg.de Überblick I Einführung Problemstellung

Mehr

13 Rationale Funktionen

13 Rationale Funktionen 3 Rationale Funktionen Jörn Loviscach Versionsstand: 2. September 203, 5:59 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work

Mehr

6 Vektoranalysis Kurven

6 Vektoranalysis Kurven 6 Vektoranalysis Kurven Zoltán Zomotor Versionsstand: 31. Juli 2014, 13:51 Die nummerierten Felder bitte mithilfe der Videos ausfüllen: http://www.z5z6.de This work is based on the works of Jörn Loviscach

Mehr

Pairwise Naive Bayes Classifier

Pairwise Naive Bayes Classifier Pairwise Naive Bayes Classifier Jan-Nikolas Sulzmann 1 1 nik.sulzmann@gmx.de Fachbereich Knowledge Engineering Technische Universität Darmstadt Gliederung 1 Ziel dieser Arbeit 2 Naive Bayes Klassifizierer

Mehr

15 Restabschätzung nach Taylor. Potenzreihen

15 Restabschätzung nach Taylor. Potenzreihen 15 Restabschätzung nach Taylor. Potenzreihen Jörn Loviscach Versionsstand: 21. März 2014, 21:09 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html

Mehr

11 Polynome. 1 Begriffe, Verlauf. Ein Ausdruck der Art

11 Polynome. 1 Begriffe, Verlauf. Ein Ausdruck der Art 11 Polnome Jörn Loviscach Versionsstand: 21. September 2013, 15:59 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work is licensed

Mehr

Wintersemester 2015/2016 Personalisierte Empfehlungssysteme

Wintersemester 2015/2016 Personalisierte Empfehlungssysteme Wintersemester 2015/2016 Freie Universität Berlin Department of Computer Science Web Based Information Systems Workgroup mailto: harasic@inf.fu-berlin.de Empfehlungssysteme Empfehlen Elemente basierend

Mehr

Kontextabhängige Integration von Diensten in intelligente Umgebungen

Kontextabhängige Integration von Diensten in intelligente Umgebungen Kontextabhängige Integration von Diensten in intelligente Umgebungen Philipp Lehsten, M.Sc. 22.11.2017 2009 UNIVERSITÄT ROSTOCK Fakultät für Informatik und Elektrotechnik Agenda Motivation Dienstevielfalt

Mehr

General Video Game AI Competition 2016

General Video Game AI Competition 2016 General Video Game AI Competition 2016 BFS, MCTS und GA - Einführung Miriam Moneke, Nils Schröder, Tobias Joppen Christan Wirth, Prof. J. Fürnkranz 27.04.2016 Fachbereich Informatik Knowledge Engineering

Mehr

Recommender Systems. Stefan Beckers Praxisprojekt ASDL SS 2006 Universität Duisburg-Essen April 2006

Recommender Systems. Stefan Beckers Praxisprojekt ASDL SS 2006 Universität Duisburg-Essen April 2006 Recommender Systems Stefan Beckers Praxisprojekt ASDL SS 2006 Universität Duisburg-Essen April 2006 Inhalt 1 - Einführung 2 Arten von Recommender-Systemen 3 Beispiele für RCs 4 - Recommender-Systeme und

Mehr

Bivariate explorative Datenanalyse in R

Bivariate explorative Datenanalyse in R Bivariate explorative Datenanalyse in R Achim Zeileis, Regina Tüchler 2006-10-09 In der LV Statistik 1 haben wir auch den Zusammenhang von 2 Variablen untersucht. Hier werden die dazugehörenden R-Befehle

Mehr

LDA-based Document Model for Adhoc-Retrieval

LDA-based Document Model for Adhoc-Retrieval Martin Luther Universität Halle-Wittenberg 30. März 2007 Inhaltsverzeichnis 1 2 plsi Clusterbasiertes Retrieval 3 Latent Dirichlet Allocation LDA-basiertes Retrieval Komplexität 4 Feineinstellung Parameter

Mehr

Lineares Gleichungssystem - Vertiefung

Lineares Gleichungssystem - Vertiefung Lineares Gleichungssystem - Vertiefung Die Lösung Linearer Gleichungssysteme ist das "Gauß'sche Eliminationsverfahren" gut geeignet - schon erklärt unter Z02. Alternativ kann mit einem Matrixformalismus

Mehr

Item-based Collaborative Filtering

Item-based Collaborative Filtering Item-based Collaborative Filtering Initial implementation Martin Krüger, Sebastian Kölle 12.05.2011 Seminar Collaborative Filtering Projektplan Implementierung Ideen Wdh.: Item-based Collaborative Filtering

Mehr

Mustererkennung: Neuronale Netze. D. Schlesinger ()Mustererkennung: Neuronale Netze 1 / 12

Mustererkennung: Neuronale Netze. D. Schlesinger ()Mustererkennung: Neuronale Netze 1 / 12 Mustererkennung: Neuronale Netze D. Schlesinger ()Mustererkennung: Neuronale Netze 1 / 12 Feed-Forward Netze y 1 y 2 y m...... x 1 x 2 x n Output Schicht i max... Zwischenschicht i... Zwischenschicht 1

Mehr

OPT Optimierende Clusteranalyse

OPT Optimierende Clusteranalyse Universität Augsburg Fakultät für angewandte Informatik Lehrstuhl für Physische Geographie und Quantitative Methoden Übung zum Projektseminar: Wetterlagen und Feinstaub Leitung: Dr. Christoph Beck Referentin:

Mehr

Projekt-INF Folie 1

Projekt-INF Folie 1 Folie 1 Projekt-INF Entwicklung eines Testbed für den empirischen Vergleich verschiedener Methoden des maschinellen Lernens im Bezug auf die Erlernung von Produktentwicklungswissen Folie 2 Inhalt Ziel

Mehr

3. Das Reinforcement Lernproblem

3. Das Reinforcement Lernproblem 3. Das Reinforcement Lernproblem 1. Agierender Agent in der Umgebung 2. Discounted Rewards 3. Markov Eigenschaft des Zustandssignals 4. Markov sche Entscheidung 5. Werte-Funktionen und Bellman sche Optimalität

Mehr

Bayessche Lineare Regression

Bayessche Lineare Regression Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Baessche Lineare Regression Niels Landwehr Überblick Baessche Lernproblemstellung. Einführendes Beispiel: Münzwurfexperimente.

Mehr

Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester 2018

Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester 2018 Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester 2018 S. Constantin (stefan.constantin@kit.edu) S. Nguyen (thai.nguyen@kit.edu) Übungsblatt 4 Maschinelles Lernen und Spracherkennung Abgabe

Mehr

2 Geradengleichungen in Parameterform. Länge und Skalarprodukt

2 Geradengleichungen in Parameterform. Länge und Skalarprodukt 2 Geradengleichungen in Parameterform. Länge und Skalarprodukt Jörn Loviscach Versionsstand: 19. März 2011, 15:33 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu:

Mehr

18 Kontinuierliche Fourier-Transformation. Laplace-Transformation

18 Kontinuierliche Fourier-Transformation. Laplace-Transformation 18 Kontinuierliche Fourier-Transformation. Laplace-Transformation Jörn Loviscach Versionsstand: 28. März 2015, 21:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos:

Mehr

Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester Lösungsblatt 4 Maschinelles Lernen und Spracherkennung

Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester Lösungsblatt 4 Maschinelles Lernen und Spracherkennung Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester 216 M. Sperber (matthias.sperber@kit.edu) S. Nguyen (thai.nguyen@kit.edu) Lösungsblatt 4 Maschinelles Lernen und Spracherkennung Aufgabe

Mehr

Betriebliche Optimierung

Betriebliche Optimierung Betriebliche Optimierung Joachim Schauer Joachim Schauer Betriebliche Optimierung 1 / 31 1 Metaheuristische Verfahren 2 Joachim Schauer Betriebliche Optimierung 2 / 31 Einleitendes Metaheuristische Verfahren

Mehr

Angewandte Stochastik

Angewandte Stochastik Angewandte Stochastik Dr. C.J. Luchsinger 13 Allgemeine Theorie zu Markov-Prozessen (stetige Zeit, diskreter Zustandsraum) Literatur Kapitel 13 * Grimmett & Stirzaker: Kapitel 6.9 Wie am Schluss von Kapitel

Mehr

Implementierung eines Vektormodells

Implementierung eines Vektormodells Implementierung eines Vektormodells Hauptseminar Information Retrieval WS 2013/14 Dr. Karin Haenelt Amol Phadke, Mirjam Eppinger Institut für Computerlinguistik Ruprecht-Karls-Universität Heidelberg 03.02.2014

Mehr

Data Mining und Maschinelles Lernen Wintersemester 2015/2016 Lösungsvorschlag für das 12. Übungsblatt

Data Mining und Maschinelles Lernen Wintersemester 2015/2016 Lösungsvorschlag für das 12. Übungsblatt Data Mining und Maschinelles Lernen Wintersemester 2015/2016 Lösungsvorschlag für das 12. Übungsblatt 9. Februar 2016 1 Aufgabe 1: RelieF (1) Gegeben sind folgende 12 Beispiele der Wetter-Daten: ID outlook

Mehr

Softwareprojektpraktikum Maschinelle Übersetzung

Softwareprojektpraktikum Maschinelle Übersetzung Softwareprojektpraktikum Maschinelle Übersetzung Jan-Thorsten Peter, Andreas Guta, Jan Rosendahl max.bleu@i6.informatik.rwth-aachen.de Vorbesprechung 5. Aufgabe 22. Juni 2017 Human Language Technology

Mehr

Potenzen und Wurzeln komplexer Zahlen. Eulersche Identität. Polardarstellung. Additionstheoreme. Vollständige Faktorisierung von Polynomen

Potenzen und Wurzeln komplexer Zahlen. Eulersche Identität. Polardarstellung. Additionstheoreme. Vollständige Faktorisierung von Polynomen Potenzen und Wurzeln komplexer Zahlen. Eulersche Identität. Polardarstellung. Additionstheoreme. Vollständige Faktorisierung von Polynomen Jörn Loviscach Versionsstand: 3. Dezember 200, 20:42 Die nummerierten

Mehr

Dynamisches Routing in der Logistik

Dynamisches Routing in der Logistik Informatik, Angewandte Informatik, Technische Informationssysteme Dynamisches Routing in der Logistik Tobias Dimmel Dresden, 24.05.2012 Agenda 1. Begriffe 2. Traveling Salesman Problem 3. Ameisenalgorithmus

Mehr

Überblick. Einführung in die automatische Mustererkennung Grundlagen der Wahrscheinlichkeitsrechnung

Überblick. Einführung in die automatische Mustererkennung Grundlagen der Wahrscheinlichkeitsrechnung Grundlagen Überblick Einführung in die automatische Mustererkennung Grundlagen der Wahrscheinlichkeitsrechnung Klassifikation bei bekannter Wahrscheinlichkeitsverteilung Entscheidungstheorie Bayes-Klassifikator

Mehr

GP-Music: An Interactive Genetic Programming System for Music Generation with Automated Fitness

GP-Music: An Interactive Genetic Programming System for Music Generation with Automated Fitness GP-Music: An Interactive Genetic Programming System for Music Generation with Automated Fitness Raters Brad Johanson, Riccardo Poli Seminarvortrag von Thomas Arnold G ˇ ˇ ˇ ˇ WS 2012/13 TU Darmstadt Seminar

Mehr

Very simple methods for all pairs network flow analysis

Very simple methods for all pairs network flow analysis Very simple methods for all pairs network flow analysis obias Ludes 0.0.0. Einführung Um den maximalen Flusswert zwischen allen Knoten eines ungerichteten Graphen zu berechnen sind nach Gomory und Hu nur

Mehr

Polynomiale Regression lässt sich mittels einer Transformation der Merkmale auf multiple lineare Regression zurückführen

Polynomiale Regression lässt sich mittels einer Transformation der Merkmale auf multiple lineare Regression zurückführen Rückblick Polynomiale Regression lässt sich mittels einer Transformation der Merkmale auf multiple lineare Regression zurückführen Ridge Regression vermeidet Überanpassung, indem einfachere Modelle mit

Mehr

Deskription, Statistische Testverfahren und Regression. Seminar: Planung und Auswertung klinischer und experimenteller Studien

Deskription, Statistische Testverfahren und Regression. Seminar: Planung und Auswertung klinischer und experimenteller Studien Deskription, Statistische Testverfahren und Regression Seminar: Planung und Auswertung klinischer und experimenteller Studien Deskriptive Statistik Deskriptive Statistik: beschreibende Statistik, empirische

Mehr

Der χ2-test Der χ2-test

Der χ2-test Der χ2-test Der χ 2 -Test Überblick Beim χ 2 -Test handelt es sich um eine Familie ähnlicher Tests, die bei nominal- oder ordinalskalierten Merkmalen mit zwei oder mehr Ausprägungen angewendet werden können. Wir behandeln

Mehr

Der χ 2 -Test. Überblick. Beispiel 1 (χ 2 -Anpassungstest)

Der χ 2 -Test. Überblick. Beispiel 1 (χ 2 -Anpassungstest) Der χ 2 -Test Überblick Beim χ 2 -Test handelt es sich um eine Familie ähnlicher Tests, die bei nominal- oder ordinalskalierten Merkmalen mit zwei oder mehr Ausprägungen angewendet werden können. Wir behandeln

Mehr

Statistisches Testen

Statistisches Testen Statistisches Testen Grundlegendes Prinzip Erwartungswert Bekannte Varianz Unbekannte Varianz Differenzen Anteilswert Chi-Quadrat Tests Gleichheit von Varianzen Prinzip des Statistischen Tests Konfidenzintervall

Mehr