Smart Filtering Systems
Modul: | Interagierende Systeme (MINF-IS-IAS) |
Semester: | Wintersemester 2009/2010 |
Art: | PJ (6 SWS / 6 LP) |
LV-Nr.: | 0435 L 745 |
Veranstalter: | Scheel |
Zeit: | Mittwochs 12-14 Uhr, ab 14.10.2009 |
Raum: | TEL 1118/19 |
Zu dieser Lehrveranstaltung anmelden!
Beschreibung
Das Projekt adressiert die Frage, wie man innerhalb der Informationsgewinnung Methoden des Maschinellen Lernens und der Künstlichen Intelligenz einsetzen kann, um Such-Ergebnis-Listen unter den Gesichtspunkten Qualität und Personalisierung optimieren kann.
Wir werden die beliebte Basis-Architektur Lucene (bzw. Solr) um das Feature 'Learning to Rank' erweitern. Lucene ist der bedeutenste java-basierte Indexer, der im Projekt Solr in eine Server-Anwendung gewrappt wurde. Das Gebiet des ‚Learning to Rank' ist ein aktives Forschungsfeld und ist für alle Studierenden informationsverarbeitender Studiengänge mit Interesse/Schwerpunkt in Künstlicher Intelligenz relevant. Es beschäftigt sich damit Benutzer-Präferenzen zu erfassen, zu lernen und vorherzusagen.
Für die Erweiterung werden wir nicht nur Machine-Learning Algorithmen integrieren, sondern auch dafür sorgen, dass die Architektur Feedback aufnehmen kann, welches dann in Präferenzen überführt wird, die dann gelernt werden können.
Um an Feedback zu gelangen ist das Einrichten eines Proxy-Servers notwendig. Ergebnis-Klicks werden über diesen Server zu den gewünschten Seiten weitergeleitet, während geloggt wird, welche Ergebnisse zu welcher Suche von welchem Benutzer geklickt wurden.
Da Learning to Rank zusätzliche Ergebnis-Eigenschaften (wie Alter, Seiten-Größe, Vertrauen) zum Lernen braucht, müssen viele dieser Eigenschaften schon beim Indizierungsprozess extrahiert werden. Hierfür muss ein eigener Analyser geschrieben werden.
Anfrage-abhängige Eigenschaften der Ergebnisse müssen schnell zur Laufzeit ermittelt werden, um auf ihnen Präferenz-Vorhersagen treffen zu können. Die Standard-mäßige tf-idf-basierte Scoringfunktion muss hierfür ersetzt werden.
Es bestehen Vorarbeiten des DAI-Labors zu vielen dieser Bereiche, die genutzt werden können.
Wir legen Maßstäbe an dieses Projekt, wie man sie von Open-Source-Projekten kennt. Dazu gehört eine Qualitätskontrolle in jedem Schritt des Software-Entwicklungsprozesses. Mit ersten Implementierungen ist erst in der Mitte des Semesters zu rechnen, da die Planungs- und die Einarbeitungsphase sehr detailliert verläuft. In wöchentlichen Treffen werden wir Problemlösungen diskutieren und das Einhalten der Meilensteinplanung überwachen. Die Aufgabe wird in einem Team bearbeitet.
Lernziele
Dieses Projekt behandelt aktuelle Themen aus dem Gebiet der Informationsfilterung: Neuronale Netze, Entscheidungsbäume, Indexierungsverfahren, Data Mining, Bayes’sche Inferenz sowie intelligente Kombination der verschiedenen Filterungsverfahren und Merkmalsextraktion. Die Teilnahme am Projekt bietet den Studierenden die Möglichkeit, durch die Umsetzung der Filterungsverfahren innerhalb eines klar umgrenzten Themas die Methodik des wissenschaftlichen Arbeitens kennen zu lernen. Dazu gehören Literaturrecherche, wissenschaftlicher Vortrag, Präsentationserstellung und Umsetzung von Filterungsverfahren. Zu Beginn des Projekts wird eine Einführung in das wissenschaftliche Arbeiten im Rahmen eines Vortrags gegeben.
Voraussetzungen
- Abgeschlossenes Vordiplom in Informatik oder einer verwandten Studienrichtung
- Hilfreich sind Kenntnisse aus den Vorlesungen Grundlagen der Künstlichen Intelligenz und Maschinelles Lernen
- Grundlegendes Verständnis der Objektorientierten Programmierung und Java-Kenntnisse
Prüfungsmodalitäten, Anforderungen
Zum Ende des Semesters wird in einem Abschlussgespräch insbesondere der individuelle Arbeitsbeitrag überprüft. Das Ergebnis des Gesprächs geht direkt in alle Teilnoten ein.
Die Gesamtnote setzt sich folgendermaßen zusammen:
- Projektergebnisse (50%)
- Dokumentation (30%)
- Rücksprache (20%)
Dieses Projekt gehört nicht zum Modul Semantic Search. Das Projekt vom Modul Semantic Search wird im Sommersemester angeboten!
Material
- www.dcs.gla.ac.uk/Keith/Preface.html - Online-Buch über Informationsgewinnung,
- ranger.uta.edu/~alp/cse6331/ - Folien für das Buch [1]
- people.revoledu.com/kardi/tutorial/ - Exzellente Sammlung von Anleitungen über Verfahren des Maschinellen Lernens.
- www.paulperry.net/notes/cf.asp - Die Sammlung von Papieren über Collaborative Filtering.
http://darksleep.com/lucene/ - Anleitung für Lucene, dem von uns eingesetzten Indexer
http://www.cs.waikato.ac.nz/ml/weka/ - Sammlung von Implementationen von Verfahren des Maschinellen Lehrnens
http://math.nist.gov/javanumerics/jama/ - java Bibliothek für SVD
http://en.wikipedia.org/wiki/WordNet - Semantisches Wörterbuch
Ansprechpartner
Copyright TU Berlin 2007