Hoorcollege 11 – Music Information Retrieval
1) MIR = multidisciplinary research endeavor that strives to develop innovative content-
based searching schemes, novel interfaces, and evolving networked delivery mechanisms
in an effort to make the world’s vast store of music accessible to all (Stephen Downie,
2004).
2) MIR = concerned with the extraction, analysis and usage of information about any kind of
music entity on any representation level (Marus Schedl, 2008).
MIR is nauwelijks stabiel, veel verschillende perspectieven, levendig onderzoeksveld.
Music as data
- Musical data include
o Metadata and tagging
o Song texts
o Audio
o Music notation images
o Symbolic representations
- Numerous quality and interoperability issues
MIR pipeline and feature extraction
- Logical view bepalen
- Bestaat uit features
o Laag niveau
Directly calculated from data
Audio signaal/geluidsgolf
o Midden niveau
Employs models of human information processing
Sound events – pitch, duration, loudness, timbre
o Hoog niveau
Related to human interpretation and meaning
Beats per minute, melody, chords, genre, emotion.
- Hoog niveau features zijn interessanter maar moeilijker om op te sporen.
Melody search
Relatief simpele representatie (niet makkelijk)
- Melody consists of a sequence of sound events
- Only pitch and sometimes duration is taken into account
- Loudness and timbre, as well as other voices, chords, drums are ignored.
What makes this harder than expected
- Melody perception – the same song can be performed higher and lower, with
different tempo
- Imprecision in performance – pitch glides, swing, lack of expertise, errors.
Therefore usually studies at the symbolic level
Melody search 1 – string search
- Implemented in Themefinder (oldest surviving MIR service, 1999)
- Database of 400000 themes
- Search by: pitch, interval, contour or rhythm.
, - Wildcards
Melody search 2 – geometric search
- Melodies are compared using the Earth Movers Distance (Rubner 1999, Typke 2007).
o You have a pattern of different-sized holes in the ground
o And a number of (different) heaps of earth
o What’s the minimum amount of energy needed to fill those holes with earth?
- Logical view: a melody is a weighted point set
o A point has a weight, corresponding to the duration of the sound.
- EMD connection
o One melody visualized as heaps of earth
o Other melody as holes
o Calculate the minimum amount of energy needed
Melodie wordt vaak herhaald, dan gaat het fout.
Melody search 3 – sequence alignment
- Logical view: a melody is a sequence of symbols
o A symbol may have multiple features
- Calculate the minimum cost of aligning two sequences
o For identical symbols, cost is 0
o Gaps and changes have certain cost
Alignment basics
- Simpelste vorm: bereken de Edit or Levenshtein distance
o Minimaal aantal stappen nodig om van ene naar andere string te gaan.
- Edit operations: insertion/deletion, substitution
(Approximate) substring matching
- Variant op Edit distance
- Determine the minimum cost of matching one sequence with a substring of the other
- Forget about insertions/deletions at beginning and end.
Oud algoritme om dit op te lossen: Dynamic programming
- Determines minimal distance (cost)
- Shows corresponding match
Stap 1 - Maak een matrix
eerste rij en kolom zijn leeg.
zet woord 1 in de kolommen en woord 2 in de rijen. Elke letter in 1 rij/kolom.
rij 1 bevat alleen maar 0’en.
kolom 1 is van boven naar beneden 0, 1, 2, 3, 4 etc.
Stap 2 - Andere cellen vul je als volgt:
- Als de rij en de kolom matchen (letter), neem je de waarde van de cel links-boven.
- Als de rij en de kolom niet matchen, neem je de kleinste waarde van de 3
omringende cellen (boven, links en links-boven) en tel er 1 bij op.
Stap 3 – cost of the match is the lowest value of the bottom row.
- Find the best match(es) by backtracking from the lowest value to the top column.