2009-10-20 7 views
7

Ich würde gerne mit dem Aufbau eines Empfehlungssystems experimentieren, und damit meine ich einen Algorithmus, der Präferenzen und/oder Bewertungen eines Benutzers betrachtet und dann Empfehlungen für sie gibt, ähnlich wie bei Netflix oder Amazon.Wo kann ich über Empfehlungssysteme erfahren?

Was sind einige gute Quellen für das Lernen, wie man so etwas schreibt? Wo soll ich anfangen?

Antwort

5

Schauen Sie sich die Wikipedia-Seite auf Netflix Prize und seine discussion forum. Auch die etwas verwandte 2009 GitHub Contest ist eine gute Quelle für den vollständigen Quellcode auf einer Reihe von verschiedenen Empfehlungs-Engines. Und natürlich gibt es auch die Wikipedia page on the topic itself, die einige ordentliche Links hat.

Wenn Sie mit dem Schreiben Ihrer eigenen beginnen, sollten Sie ein Korpus verwenden. Ich würde empfehlen, die Netflix Prize's data set zu verwenden. Schnitzen Sie den Datensatz in zwei Teile. Trainiere auf dem ersten Teil und erziele deinen Algorithmus auf dem zweiten Teil.

Addenda: Eine etwas verwandte und beängstigend Anwendung dieser Art der Sache ist predicting demographic information: das Geschlecht des Benutzers, Alter, Haushaltseinkommen, IQ, die sexuelle Orientierung, etc. Sie wahrscheinlich mit dem Netflix-Preis der meisten dieser Attribute tun könnten Datensatz mit einem ziemlich hohen Grad an Genauigkeit. Glücklicherweise everyone in that dataset is just a number.

+0

Was ist daran unheimlich? Vermarkter versuchen, Sie basierend auf Ihrem Browser, Ihrer IP und anderen Informationen aus dem HTTP-Header ständig zu prognostizieren. Es sind keine wirklichen Informationen, nur "informierte Stereotypen" (bedingte Bayes). – isomorphismes

+1

Weil die Daten als "anonym" dargestellt wurden, aber eigentlich nicht? Dies ist besonders schlimm, wenn der Benutzer sich nie dafür entschieden hat, dass seine Daten geteilt werden. –

+0

Ich verstehe vielleicht nicht genau, was du meinst. Würden Sie sagen, dass die Anonymität verletzt wurde, weil ich die demografischen Merkmale des Nutzers 2871875 genau erraten kann? – isomorphismes

3

Werfen Sie einen Blick auf pysuggest eine Python-Bibliothek, die eine Vielzahl von Empfehlungen Algorithmen für collaborative filtering implementiert (die von Amazon.com verwendet wird).