Alma Mater Studiorum – Università di Bologna
Corso di
Sisitemi Informativi per le Decisioni
A.A. 2006-2007
Prof. Ing. Marco Patella
Lacorte Francesco
Sirianni Paolo
Music Information Retrieval
 Aumento esponenziale dei contenuti musicali
 Sviluppo costante di mezzi per l’accesso di
musica online (streaming and purchase)
L’ 80% delle
vendite totali
3% dei titoli in commercio
Nuove esigenze:
creare una nuova tassonomia
necessità di nuovi “search & retrieval tools”
Modalità di classificazione e ricerca
 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)
Pandora.com
Nel 2000 Tim Westergren, promuove un nuovo
progetto (commerciale) di classificazione della
musica
<<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
Music Genome ProjectTM
“gene”
“cromosoma”
Alcuni attributi:
Aggressive Female Vocalist
Boogie Woogie Rhythms
“genoma”
Dirty Electric Guitar Riffs
Electric Guitars
Explicit Lyrics
Great Electric Guitar Solo
Major Key Tonality
…
 L’analisi di ogni brano richiede circa 15-20 minuti da
parte di esperti
 Ogni canzone è descritta da un insieme di caratteristiche
dette “geni”
http://en.wikipedia.org/wiki/List_of_Music
_Genome_Project_attributes
 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
Schema di funzionamento
Source
Core
Engine
Identify
focus traits
MGP database
Find
matching songs
User
Select focus
Traits for reweight
Choose new
seed
Focus traits
Core
Engine
raggiunto valore
soglia per un
certo gene?
gene identificato
come Definer?
gruppi di geni
soddisfano
criteri specifici?
Focus
trait
Focus
trait
Focus
trait
 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 traits
Matching method (song to song)
Seed song
S = (s1,s2,s3,…,sn)
 Cercare K punti geometricamente vicini: problema K-NN
Distanza (S,T)=
Ai vettori S e T
viene applicata una
funzione f(x) per
esprimere la non
linearità dei dati
Distanza (S,T)=

w   f s   f t 
2


s

t
i 1 i i
n
privilegia le canzoni che hanno molte piccole differenze
rispetto a quella seme piuttosto che poche differenze grandi
 I “geni” non sono tutti ugualmente importanti:

2
l’importanza viene espressa mediante un opportuno
vettore di pesi: W = (w1,w2,w3,…,wn)
i1 wi  si  ti 
n
Distanza (S,T)=
2
Indicizzazione nel database
 elevato numero di record (circa 2 milioni di brani ad
oggi)
 alta dimensionalità dei dati
root
internal
nodes
leaf
parent
data-point
 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
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
high deviation axis
 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
Multi-Song Matching (2)
La virtual song è rappresentata con una coppia di
vettori:
C=(m1,m2,m3,…,mn
 esprime le coordinate del centroide nello spazio
multidimensionale
 I suoi elementi rappresentano la media aritmetica
dei geni del seed set
D=(s1,s2,s3,…,sn
 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 song
I valori del vettore varianza possono essere intuitivamente
utilizzati per affinare il vettore dei pesi:
Una varianza bassa (alta) è associata a un gene
con un valore “molto (poco) desiderato”
wi ' 
wi
s2
La formula della distanza della virtual song C rispetto a
una target song T è espressa quindi come:
Distanza (C,T)=

n
i 1
wi
s i2
 si  ti 
2
In caso di s2=0 il peso diverrebbe infinitamente grande, viene
quindi introdotto un fattore correttivo per ovviare al problema
wi  0,25
2
 si  ti 
Distanza (C,T)= i 1 2
s i  0,25
n
MindReader
(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
q
? Euclidea pesata
q
Funzione distanza (1)
generalized ellipsoid distance:
D(x, q) = (x – q)T M (x – q)
anche
D(x, q) = Sj Sk mjk (xj – qj) (xk – qk)
q
Formulazione del problema:
Dati
Minimizzare la
 N vettori esempio di
dimensione n
 una scala di valutazione
D(x, q) = (x – q)T M (x – q)
Trovare
Sotto il vincolo
 la matrice M ottima
 Il punto q ottimo
det(M) = 1
Funzione distanza (2)
Risolvendo con i Moltiplicatori di Lagrange…
Teorema 1.
Il query point ottimo è dato da:
q = x = [x1, …, xn]T= XT v / S vi
Teorema 2.
La matrice ottima delle distanze sarà:
M = (det(C))1/n C–1
C = [cjk] è la matrice di covarianza
cjk = S vi (xik - xk) (xij - xj)
Teorema 3. Se si restringe la matrice ottima alla sola
diagonale si ha:
m jj 
1
s
2
j
(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
Punti deboli:
Problema del popolamento del database:
 Data preparation lunga (su 20-25 minuti
per una traccia di 3-4 minuti)
 Soggettività nell’attribuzione dei valori
Ridotta trasparenza degli effetti dei feedback