tree structured representation of music for polyphonic music information retrieval david rizo...
Post on 20-Dec-2015
217 views
TRANSCRIPT
Tree structured representation of Tree structured representation of music for polyphonic music music for polyphonic music
information retrievalinformation retrieval
David Rizo
Departament of Software and Computing Systems
University of Alicante
Funciona muy bien
Muchas gracias por vuestra antención
Tree construction process Tree construction process (Rizo et al. ’03)(Rizo et al. ’03)
Based on the logarithmic nature of music notation Each tree level is a subdivision of the upper level
whole 4 beats
half 2+2
quarter 4×1
8×½eighth
Leaf labels can be any pitch magnitude Rests are coded the same way as notes Duration is implicitly coded in the tree structure
. . . . . . . . . . . . . . . . . . . . . . . . .
F
C
E G
1 4/4 bar
Initial time
Duration
Tree representation for monodiesTree representation for monodies
The complete melody is a forest Bars can be grouped sequentially or hierarchically
F
C
E G
Inner nodes need to be labelled
Rules for label propagation and for pruning less relevant branches
Tree construction processTree construction process
A B
C G
Sequential grouping:
C E G F A B C G
Tree representation for monodiesTree representation for monodies
The distance is computed as the cost of the operations to transform one tree into the other.
TREE EDIT DISTANCETREE EDIT DISTANCE (Zhang & Shasha, 1989)
C
G
C
A
A
C
C
C
G
C A
C
C
A
A
t1 t2d(t1,t2)
Weighted operations of
insertiondeletion
replacement
Melodic similarity metricsMelodic similarity metrics
Tree edit distance O( |T1| |T2| h(T1) h(T2) )
Previous prunning process helps to overcome this complexity
(Zhang & Shasha, “Simple fast algorithms for the editing distance between trees...”. SIAM J Comput., 8(6): 1245-1262. 1989)
Tree representation for monodiesTree representation for monodies
Tree representationTree representation
Use key information of the melody in the labels: interval from tonic
Propagation of keys based on melodic rules (P.Roman et al.
ICMC’07)
Development of algorithms to learn the tree edit distances costs
European network of excelence (Pascal) project:
“Pump Priming. Learning Stochastic Edit Distances from
Structured Data: Application in Music Retrieval”
Current workCurrent work
Part IIPart II
Tree model of symbolic music for tonality guessing
Para ver esta película, debedisponer de QuickTime™ y deun descompresor TIFF (LZW).
Polyphonic tree representationPolyphonic tree representationRecall tree representation.
Process repeated for each voice
{C,G}
{C} {F}
C F CG
G E
{G} {C,G,E}{C,F,G}
{C,E,F,G}
Para ver esta película, debedisponer de QuickTime™ y deun descompresor TIFF (LZW).
Polyphonic tree representationPolyphonic tree representationBetter tree summarization:Use harmonic profiles + rhythmic weights Multiset
E.g. Applying rhythmic weight= 1/level
{C=0.5,E=0.5,G=0.5}
{C=0.25} {F=0.25}
{C=0.25,F=0.25,G=0.5}
{C=0.75,E=0.5,F=0.25,G=1}
Krumhansl-Schmuckler profiles multiply the rhythmic weight: worse results
Polyphonic tree representationPolyphonic tree representation Whole song representation for comparison
– Ordered forest with a tree for each bar
0.5| 1|0 …. 0.3|0|0.3… 1|10|0|0.5|…0|1….0|0|1|0.3|… 1|0|0.2|…
. . . . .
Bar 1 Bar 2 Bar 3 Bar 4 Bar N
Layers distance: -Let be a tree level ot tree T, compose a sequence S(T) with all nodes at that level in the forest
-Distance between 2 songs A and B at a level d(A,B, a, b)= stringDistance(Sa(A), Sb(B))
-Global distance d(A,B) = min0i, 0j d(A,B,i,j)
Complexity: O(|barsA| * |barsB| * 2)
Also other measures:LCS
Shasha tree edit distanceSelkow tree edit distance
Drawback:- metered music required- use Melisma to get bars from unmetered music
Sa
Label substitution costLabel substitution cost
Para ver esta película, debedisponer de QuickTime™ y de
un descompresor .
Graphical representationsGraphical representations
P1, P2, P3 algorithms from Ukkonen, Lemström, Makinen ‘03
P2v5, P2v6: indexed versions of P2– Not published
yet
Para ver esta película, debedisponer de QuickTime™ y deun descompresor TIFF (LZW).
Classifier combinationClassifier combination
Para ver esta película, debedisponer de QuickTime™ y de
un descompresor .
Para ver esta película, debedisponer de QuickTime™ y de
un descompresor .
ExperimentsExperiments Different corpora:
– Helsinki: 7 different polyphonic tunes Covers made up of polyphonic piano files + “Band in a box” variations 68 files
– Theme_variations_classical Bach Goldberg variations Bach english suites variations Some Tchaikowsky variations 78 files, all polyphonic
– Corpus1000_with_queries MIDI files downloaded from internet 80 files, almost all polyphonic, some monophonic
Leave one out– Avoid very good / bad queries
ResultsResults
Corpus ICPSCorpus ICPS
Para ver esta película, debedisponer de QuickTime™ y de
un descompresor .
Corpus HelsinkiCorpus Helsinki
ResultsResults
Para ver esta película, debedisponer de QuickTime™ y de
un descompresor .
ResultsResults
Corpus Theme Variations ClassicalCorpus Theme Variations Classical
Para ver esta película, debedisponer de QuickTime™ y de
un descompresor .
ResultsResults
Corpus Theme Variations ClassicalCorpus Theme Variations Classical
Para ver esta película, debedisponer de QuickTime™ y de
un descompresor .
Conclusions and future (current) workConclusions and future (current) work
Tree methods are 24 times faster when the tonality is known: they are also more accurate
Very hard task when MIDI files are real ones– Preprocess songs:
Use automatic tonal analysis + trees to remove non-important notes in songs
Improve results by combining different classifiers Tune the tree comparison measures
– Current learnt similarity measures Add LCS fast implementation from Hyyrö ‘04 Add confidence values to LCS Add the G.Valiente bottom-up tree edit distance
Query
MIDI