2009-09-16 21 views
8

Ich habe mich immer gefragt, wie und was der beste Weg ist, um die "Genius" -Funktion bei iTunes zu implementieren.Wie würde man den Genius-Algorithmus von Apple iTunes implementieren?

Ich könnte es vielleicht brutal erzwingen, aber ich habe mich nur gefragt, ob jemand irgendeinen Einblick hatte.

Danke.

+0

in der Nähe von Duplikat“http://stackoverflow.com/questions/819866/music-analysis-software/819922#819922 –

Antwort

13

Der Genius-Algorithmus ist ein Beispiel für ein Empfehlungssystem, das ein heißes Thema in E-Commerce-Systemen ist. So sehr, dass Netflix einen Preis von einer Million Dollar erhielt, der mehrere Jahre dauerte, um das Empfehlungssystem um nur 10% zu verbessern.

Bei iTunes haben Sie eine Sammlung von Musik. Genius kann Vermutungen machen, dass, wenn Sie diese Musik haben, Sie es mögen müssen. Wenn genug Leute Song B haben, der Song A hat, dann kann Genius sagen, dass wenn Sie Song A haben, Sie wahrscheinlich Song B mögen.

Nur das Lied wäre eine ziemlich schwache Empfehlung. Besser wäre es, wenn der Benutzer diese Musik bewertet hätte, um die Stärke der "Empfehlung" auf dieser Basis zu verbessern.

Ich würde empfehlen, If You Liked This, You’re Sure to Love That als eine gute Grundierung auf Empfehlungssystemen zu lesen.

+0

Excellent Artikel Dank –

+1

diese Bücher zu http: //www.amazon.com/Algorithmen-Intelligent-Web-Haralambos-Marmanis/dp/1933988665/ http://www.amazon.com/Collective-Intelligence-Action-Satnam-Alag/dp/1933988312/ –

0

Wichtiger Punkt: Sie müssen Daten von Lose von Benutzern haben. Sie könnten das nicht selbst mit roher Gewalt tun (es sei denn, Sie wollen es komplett von Hand erstellen).

1

Schritt1 - sammeln Sie die Daten, für alle Klicks/Spiele pro Benutzer. Das wären viele Daten.

Schritt2 - Erstellen Sie ein Ranking/Empfehlung Liste Generation System. Erstelle für jeden Song eine Rangliste mit allen Produkten/Songs, die die Spieler sehen/spielen. Ein einfaches Beispiel besagt, dass keine Leute die gleiche Kombination oder die Spielzeit teilen, für die jeder Song gespielt wird.

Schritt3 - Behalte ein Limit (sagen Top10), um deine Empfehlungen aus der oben gemachten Liste für ein Lied zu zeigen.

Das war nicht so schwierig, der Trick oder das Genie liegt darin, Gewichte zu der Liste hinzuzufügen, die Sie in Schritt 2 machen. Wie funktioniert Ihr Empfehlungssystem mit Gewichten (für den Seitenrang)?

Ich hätte Data-Mining-Ingenieure vielleicht enttäuscht, indem ich eine so naive/einfache Erklärung zu einem extrem komplexen Informatikbereich gegeben hätte. Entschuldige mich. :)

1

Werfen Sie einen Blick auf diese, term frequency–inverse document frequency, es ist eine Methode, die nach dem, was Sie mögen, desto mehr "einzigartig", je mehr ein geliketes Lied auf die Empfehlungen hat.

Grundsätzlich, wenn Sie nur U2 mögen und spielen, wird es für den Algorithmus/das Programm schwer sein, etwas Besonderes zu empfehlen, was Ihnen gefällt.

Auf der anderen Seite, wenn Sie in Ihrer iTunes-Nutzung vielfältiger sind, werden die weniger bekannten Bands, die Sie wirklich mögen, mehr gewichtet, da sie Sie mehr von der Masse isolieren. ..

Verwandte Themen