corso di sisitemi informativi per le decisioni a.a. 2006-2007 prof. ing. marco patella lacorte...
TRANSCRIPT
Corso di
Sisitemi Informativi per le Decisioni
A.A. 2006-2007
Prof. Ing. Marco Patella
Lacorte Francesco
Sirianni Paolo
Alma Mater Studiorum – Università di Bologna
Aumento esponenziale dei contenuti musicali
Sviluppo costante di mezzi per l’accesso di musica online (streaming and purchase)
Nuove esigenze:
creare una nuova tassonomia
necessità di nuovi “search & retrieval tools”
Music Information RetrievalMusic Information Retrieval
L’ 80% delle vendite totali
3% dei titoli in commercio
Basate sui classici metadata (artista, genere, anno…)
Basate su approcci collaborativi, tenendo traccia degli acquisti e degli ascolti sui vari portali di utenti con gusti simili (Last.fm)
content-based retrieval (search sui data) effettuato per similitudine su:
- rappresentazioni simboliche (MIDI)
- rappresentazioni acustiche (wav, mp3)
Modalità di classificazione e Modalità di classificazione e ricercaricerca
<<Can you help me discover more music that I'll like? >>
Attività di raccomandazione di contenuti musicali
Rimanda a siti come iTunes e Amazon per l’eventuale acquisto di titoli musicali
Pandora.comPandora.com
Nel 2000 Tim Westergren, promuove un nuovo progetto (commerciale) di classificazione della musica
Music Genome ProjectMusic Genome ProjectTMTM
“gene”
“cromosoma”
“genoma”
L’analisi di ogni brano richiede circa 15-20 minuti da parte di esperti
Ogni canzone è descritta da un insieme di caratteristiche dette “geni”
I geni sono raggruppati in gruppi logici detti cromosomi
L’insieme dei cromosomi vanno a costituire il genoma
Ogni brano risulta in definitiva rappresentato come un vettore di massimo 400 attributi
Alcuni attributi:
Aggressive Female Vocalist
Boogie Woogie Rhythms
Dirty Electric Guitar Riffs
Electric Guitars
Explicit Lyrics
Great Electric Guitar Solo
Major Key Tonality
…http://en.wikipedia.org/wiki/
List_of_Music_Genome_Project_attributes
Source
Core Engine
Identify focus traits
MGP database
User
Find matching
songs
Choose new seed
Select focus Traits for re-
weight
Schema di funzionamentoSchema di funzionamento
Focus traitsFocus traits
Core Engine
raggiunto valore soglia per un certo
gene?
gene identificato
come Definer?
gruppi di geni soddisfano
criteri specifici?
Focus Focus traittrait
Focus Focus traittrait
Focus Focus traittrait
sono individuati applicando le triggering rules al brano seme
rappresentano gli “aspetti” su cui focalizzare la ricerca
possono cambiare nel tempo in seguito ai feedback dell’utente
Evoluzione dinamica dei criteri di creazione della playlist
Visualizzazione dei focus traitsVisualizzazione dei focus traits
Seed song
S = (s1,s2,s3,…,sn)
Cercare K punti geometricamente vicini: problema K-NN
n
i ii ts1
2Distanza (S,T)=
Matching method (song to Matching method (song to song)song)
privilegia le canzoni che hanno molte piccole differenze rispetto a quella seme piuttosto che poche differenze grandi
I “geni” non sono tutti ugualmente importanti:
l’importanza viene espressa mediante un opportuno vettore di pesi: W = (w1,w2,w3,…,wn)
n
i iii tsw1
2Distanza (S,T)=
Ai vettori S e T viene applicata una funzione f(x) per esprimere la non linearità dei dati
2tfsfw
Distanza (S,T)=
Indicizzazione nel databaseIndicizzazione nel database
elevato numero di record (circa 2 milioni di brani ad oggi)
alta dimensionalità dei dati
La distanza di ogni foglia dalla sua leaf-parent è minore della distanza della stessa foglia da qualsiasi altra leaf-parent
La ricerca dei K-NN funziona con una logica di lista (parte dai più vicini ed espande)
Non bilanciato
root
internalnodes
leafparent
data-point
Multi-Song Matching (1)Multi-Song Matching (1)
Il seme può non essere una singola canzone • Viene scelto come “seme” la
discografia di un artista
• Viene scelto come seme un gruppo di canzoni
viene identificato un “brano virtuale” (virtual song) che rappresenta idealmente il centro del seed set
la virtual song è in grado di esprimere l’ ”ampiezza” del set scelto
ci avviciniamo nel senso più ampio del termine ai gusti reali dell’utente
low deviation axis
hig
h d
evia
tion
axis
Multi-Song Matching (2)Multi-Song Matching (2)
La virtual song è rappresentata con una coppia di vettori:
C=(C=(,,…,…,nn esprime le coordinate del centroide nello
spazio multidimensionale
I suoi elementi rappresentano la media aritmetica dei geni del seed set
D=(D=(,…,,…,nn
indica l’ “ampiezza” del set originario
l’i-esimo elemento rappresenta la deviazione standard dell’i-esimo gene nel seed set
Il vettore peso del multi songIl vettore peso del multi song
I valori del vettore varianza possono essere intuitivamente utilizzati per affinare il vettore dei pesi:
2'
i
i
ww
Una varianza bassa (alta) è associata a un gene con un valore “molto (poco) desiderato”
La formula della distanza della virtual song C rispetto a una target song T è espressa quindi come:
n
i iii
i tsw
1
2
2Distanza (C,T)=
In caso di =0 il peso diverrebbe infinitamente grande, viene quindi introdotto un fattore correttivo per ovviare al problema
n
i iii
i tsw
1
2
2 25,0
25,0
Distanza (C,T)=
MindReader MindReader ((Ishikawa, Subramanya, Faloutsos, 1998)Ishikawa, Subramanya, Faloutsos, 1998)
“Indovinare” le preferenze di un utente in base a un set di esempi “positivi” da lui forniti
L’utente fornisce una serie di esempi
L’utente può eventualmente assegnare uno score agli esempi
Gli esempi forniti godono di correlazione spaziale
come dedurre la query implicitamente richiesta dall’utente?
individuare una distanza opportuna partendo dagli esempi
? Euclidea
? Euclidea pesata
Funzione distanza (1)Funzione distanza (1)
generalized ellipsoid distance:
D(x, q) = (x – q)T M (x – q)
qD(x, q) = j k mjk (xj – qj) (xk – qk)
anche
Formulazione del problema:
Dati
N vettori esempio di dimensione n
una scala di valutazione
Trovare
la matrice M ottima Il punto q ottimo
Minimizzare laD(x, q) = (x – q)T M (x – q)
Sotto il vincolodet(M) = 1
Funzione distanza (2)Funzione distanza (2)
Risolvendo con i Moltiplicatori di Lagrange…
Il query point ottimo è dato da:
Teorema 1.
q = x = [x1, …, xn]T= XT v / vi
La matrice ottima delle distanze sarà:
Teorema 2.
M = (det(C))1/n C–1
C = [cjk] è la matrice di
covarianza
cjk = vi (xik - xk) (xij - xj)
Se si restringe la matrice ottima alla sola diagonale si ha:
Teorema 3.
2
1
jjjm
(ovvero quello usato da Pandora per il re-weight)
Conclusioni…
Pandora.com è una realtà economica:
15 milioni di dollari di fatturato nel 2005
5 milioni di utenti giornalieri
Pandora ha creato un nuovo modello di business che inizia a convincere piccole e grandi etichette musicali
Problema del popolamento del database:
Data preparation lunga (su 20-25 minuti per una traccia di 3-4 minuti)
Soggettività nell’attribuzione dei valoriRidotta trasparenza degli effetti dei feedback
Punti deboli: