2010:Symbolic Music Similarity and Retrieval

From MIREX Wiki
Revision as of 15:46, 26 May 2010 by MertBay (talk | contribs)

Task suggestion: Symbolic Melodic Similarity


Given a query, each system is supposed to return 10 most melodically similar songs from a given collection.


3 different datasets are use for 3 subtasks.

  • RISM (monophonic; 10,000)
  • Karoke (polyphonic; 1,000)
  • Mixed (polyphonic; 15,741).


Task 1: Input: Parameters: - the name of a directory containing about 15,000 MIDI files containing mostly monophonic incipits and - the name of one MIDI file containing a monophonic query.

The program will be called 6 times. Three of the queries are going to be quantized (produced from symbolic notation) and three produced by humming or whistling, thus with slight rhythmic and pitch deviations.

Expected Output: - a list of the names of the 10 most similar matching MIDI files, ordered by melodic similarity. Write the file name in separate lines, without empty lines in between.

Task 2: Input: same interface as for task 1, thus the name of the directory with files to be searched and the name of the query. However, the directory will contain either about 10,000 mostly polyphonic MIDI files or 1000 Karaoke files.

Output: a list of the names of 10 different MIDI file names that contain melodically similar musical material, ordered by similarity, plus for each file the time (offset from the beginning in seconds) where the query matches and where the matching bit ends. If the query matches in more than one position, return the position of the most similar match (or any one of them if there is more than one most similar match). If the algorithm does not align the query with the MIDI file at any particular position, just return 0 as start time and the duration of the MIDI file as end time.

Sample output line:


(means that somefile.mid matches the query, and the matching bit starts at the very beginning of the file and ends 2.3 seconds later). The most similar match should be returned first.

Building the ground truth

Unlike last year, it is now nearly impossible to manually build a proper ground truth in advance.

Because of that, after the algorithms have been submitted, their results are going to be pooled for every query, and every participant is going to be asked to judge the relevance of the matches for some queries. To make that a manageable burden, it is important that the algorithms do not only return the names of the matching MIDI files for task 2, but also where the matching bit starts and ends in the matching MIDI file. We can then automatically extract those matching bits and put them into small new MIDI files whose relevance can then be quickly checked.


Use the same measures as [last year] to compare the search results of the various algorithms.