Sto pensando di avviare un progetto basato sul sistema di raccomandazione. Ho bisogno di migliorare me stesso in quest'area che sembra un tema caldo sul web. Chiedendosi anche quale sia l'algoritmo lastfm, grooveshark, pandora che utilizzano per il loro sistema di raccomandazione. Se conosci qualche libro, sito o risorsa per questo tipo di algoritmi, ti preghiamo di informare.Qual è l'algoritmo dietro i siti di raccomandazione come last.fm, grooveshark, pandora?
risposta
Dai un'occhiata a Collaborative filtering o Recommender systems.
Un semplice algoritmo è Slope One.
Programming Collective Intelligence è un'introduzione piacevole e accessibile a questo campo.
L'algoritmo di Pandora è iniziato con l'abbinamento di generi musicali specifici con la canzone specificata. Poi è lentamente cresciuto quando la gente ha votato se gli piaceva la canzone o non amava la canzone, permettendole di eliminare le brutte canzoni e spingere le buone canzoni in primo piano. Inoltre, sniderà le nuove canzoni che hanno pochi voti in su o in giù nella playlist della canzone in modo che la canzone possa ottenere alcuni voti.
Non sono sicuro degli altri siti elencati.
Manning ha anche due buoni libri su questo argomento. Algorithms of the Intelligent Web e Collective Intelligence in Action
C'è un buon video dimostrativo con spiegazione (e un link alla tesi dell'autore) a Mapping and visualizing music collections. Questo approccio riguarda l'analisi delle caratteristiche della musica stessa. Altri metodi, come NetFlix e Amazon, si basano su raccomandazioni di altri utenti con gusti simili e filtri di categorie di base.
Ottimo documento di Yehuda Koren (nella squadra che ha vinto il premio Netflix): La soluzione BellKor al Gran Premio Netflix (google "GrandPrize2009_BPC_BellKor.pdf").
Coppia siti web:
Una risposta alla moda in ritardo: Pandora e Grooveshark sono molto diversi nell'algoritmo che utilizzano.
Fondamentalmente ci sono due approcci principali ai sistemi di raccomandazione - 1. filtraggio collaborativo, e 2. basato sul contenuto. (e sistemi ibridi)
La maggior parte dei sistemi si basa sul filtro collaborativo. Ciò significa fondamentalmente liste di preferenze di corrispondenza): Se mi sono piaciuti gli articoli A, B, C, D, E ed F, e molti altri utenti hanno apprezzato A, B, C, D, E, F e J - il sistema raccomanderà J a mi basa sul fatto che condivido lo stesso gusto con questi utenti (non è così semplice ma è l'idea). Le caratteristiche principali che vengono analizzate qui sono gli elementi id e gli utenti votano su questi elementi.
Il metodo basato sul contenuto analizza il contenuto degli elementi disponibili e crea il mio profilo in base al contenuto degli elementi che mi piacciono e non in base agli altri utenti.
Detto ciò, Grooveshark si basa sul filtro collaborativo. Pandora è basato sul contenuto (forse con un livello di filtro collaborativo in cima).
La cosa interessante di Pandora è che il contenuto viene analizzato dagli utenti (musicisti) e non automaticamente. Lo chiamano il progetto genoma musicale (http://www.pandora.com/mgp.shtml), in cui gli annotatori taggano ogni canzone con un numero di etichette su pochi assi come struttura, ritmo, tonalità, tecnica di registrazione e altro (lista completa: http://en.wikipedia.org/wiki/List_of_Music_Genome_Project_attributes) Questo è ciò che dà loro l'opzione per spiegare e giustificare la canzone consigliata.
- Last.fm "vicini" è probabilmente filtraggio collaborativo.
- Pandora ha assunto centinaia di musicologi per classificare le canzoni lungo circa 500 dimensioni. http://en.wikipedia.org/wiki/Music_Genome_Project
Questi sono due approcci molto diversi. Google Scholar è tuo amico per quanto riguarda la letteratura.
È un po 'più complicato di così. http://www.pandora.com/corporate/mgp – Brad