Probabilist modeling of musical chord sequences for music analysis

Similar documents
A PERPLEXITY BASED COVER SONG MATCHING SYSTEM FOR SHORT LENGTH QUERIES

Statistical Modeling and Retrieval of Polyphonic Music

Computational Modelling of Harmony

A System for Automatic Chord Transcription from Audio Using Genre-Specific Hidden Markov Models

A QUERY BY EXAMPLE MUSIC RETRIEVAL ALGORITHM

A probabilistic framework for audio-based tonal key and chord recognition

Chord Classification of an Audio Signal using Artificial Neural Network

Music Segmentation Using Markov Chain Methods

Characteristics of Polyphonic Music Style and Markov Model of Pitch-Class Intervals

CPU Bach: An Automatic Chorale Harmonization System

TOWARD AN INTELLIGENT EDITOR FOR JAZZ MUSIC

EE391 Special Report (Spring 2005) Automatic Chord Recognition Using A Summary Autocorrelation Function

Sparse Representation Classification-Based Automatic Chord Recognition For Noisy Music

Melody Retrieval On The Web

Outline. Why do we classify? Audio Classification

A STATISTICAL VIEW ON THE EXPRESSIVE TIMING OF PIANO ROLLED CHORDS

Detecting Musical Key with Supervised Learning

Automatic Rhythmic Notation from Single Voice Audio Sources

Query By Humming: Finding Songs in a Polyphonic Database

MUSI-6201 Computational Music Analysis

Take a Break, Bach! Let Machine Learning Harmonize That Chorale For You. Chris Lewis Stanford University

Piano Transcription MUMT611 Presentation III 1 March, Hankinson, 1/15

Instrument Recognition in Polyphonic Mixtures Using Spectral Envelopes

Music Composition with RNN

Singer Traits Identification using Deep Neural Network

Week 14 Query-by-Humming and Music Fingerprinting. Roger B. Dannenberg Professor of Computer Science, Art and Music Carnegie Mellon University

CS229 Project Report Polyphonic Piano Transcription

Jazz Melody Generation and Recognition

Hidden Markov Model based dance recognition

ANNOTATING MUSICAL SCORES IN ENP

Composer Identification of Digital Audio Modeling Content Specific Features Through Markov Models

Evaluating Melodic Encodings for Use in Cover Song Identification

GENRE CLASSIFICATION USING HARMONY RULES INDUCED FROM AUTOMATIC CHORD TRANSCRIPTIONS

Introductions to Music Information Retrieval

Week 14 Music Understanding and Classification

Automatic Piano Music Transcription

A Bayesian Network for Real-Time Musical Accompaniment

Topics in Computer Music Instrument Identification. Ioanna Karydi

A DISCRETE MIXTURE MODEL FOR CHORD LABELLING

Music Database Retrieval Based on Spectral Similarity

Multiple instrument tracking based on reconstruction error, pitch continuity and instrument activity

Music Information Retrieval with Temporal Features and Timbre

Singer Recognition and Modeling Singer Error

CSC475 Music Information Retrieval

BayesianBand: Jam Session System based on Mutual Prediction by User and System

Labelling. Friday 18th May. Goldsmiths, University of London. Bayesian Model Selection for Harmonic. Labelling. Christophe Rhodes.

Probabilistic and Logic-Based Modelling of Harmony

Music Genre Classification and Variance Comparison on Number of Genres

CSC475 Music Information Retrieval

A Study of Synchronization of Audio Data with Symbolic Data. Music254 Project Report Spring 2007 SongHui Chon

Melody classification using patterns

Melodic Outline Extraction Method for Non-note-level Melody Editing

Chord Representations for Probabilistic Models

Harmonising Chorales by Probabilistic Inference

Robert Alexandru Dobre, Cristian Negrescu

2 2. Melody description The MPEG-7 standard distinguishes three types of attributes related to melody: the fundamental frequency LLD associated to a t

Automatic Extraction of Popular Music Ringtones Based on Music Structure Analysis

Improvised Duet Interaction: Learning Improvisation Techniques for Automatic Accompaniment

jsymbolic 2: New Developments and Research Opportunities

Musical Creativity. Jukka Toivanen Introduction to Computational Creativity Dept. of Computer Science University of Helsinki

Music Genre Classification

WHAT MAKES FOR A HIT POP SONG? WHAT MAKES FOR A POP SONG?

A probabilistic approach to determining bass voice leading in melodic harmonisation

Obtaining General Chord Types from Chroma Vectors

The Million Song Dataset

Audio Feature Extraction for Corpus Analysis

Chorale Harmonisation in the Style of J.S. Bach A Machine Learning Approach. Alex Chilvers

Bayesian Model Selection for Harmonic Labelling

The Human Features of Music.

MODELING CHORD AND KEY STRUCTURE WITH MARKOV LOGIC

Improving Frame Based Automatic Laughter Detection

Figured Bass and Tonality Recognition Jerome Barthélemy Ircam 1 Place Igor Stravinsky Paris France

Analysis and Clustering of Musical Compositions using Melody-based Features

Composer Style Attribution

FIRST-ORDER LOGIC CLASSIFICATION MODELS OF MUSICAL GENRES BASED ON HARMONY

Exploring the Rules in Species Counterpoint

APPLICATIONS OF A SEMI-AUTOMATIC MELODY EXTRACTION INTERFACE FOR INDIAN MUSIC

SIMSSA DB: A Database for Computational Musicological Research

Music Similarity and Cover Song Identification: The Case of Jazz

Curriculum Development In the Fairfield Public Schools FAIRFIELD PUBLIC SCHOOLS FAIRFIELD, CONNECTICUT MUSIC THEORY I

Music Recommendation from Song Sets

Can Song Lyrics Predict Genre? Danny Diekroeger Stanford University

arxiv: v1 [cs.sd] 8 Jun 2016

Appendix A Types of Recorded Chords

Content-based music retrieval

Enhancing Music Maps

Proposal for Application of Speech Techniques to Music Analysis

arxiv: v1 [cs.lg] 15 Jun 2016

A System for Acoustic Chord Transcription and Key Extraction from Audio Using Hidden Markov models Trained on Synthesized Audio

ABSOLUTE OR RELATIVE? A NEW APPROACH TO BUILDING FEATURE VECTORS FOR EMOTION TRACKING IN MUSIC

Comparison of Dictionary-Based Approaches to Automatic Repeating Melody Extraction

AUDIO-BASED COVER SONG RETRIEVAL USING APPROXIMATE CHORD SEQUENCES: TESTING SHIFTS, GAPS, SWAPS AND BEATS

Automatic Composition from Non-musical Inspiration Sources

A Pattern Recognition Approach for Melody Track Selection in MIDI Files

Automatic characterization of ornamentation from bassoon recordings for expressive synthesis

A geometrical distance measure for determining the similarity of musical harmony. W. Bas de Haas, Frans Wiering & Remco C.

TREE MODEL OF SYMBOLIC MUSIC FOR TONALITY GUESSING

Student Performance Q&A:

Data-Driven Solo Voice Enhancement for Jazz Music Retrieval

MIR IN ENP RULE-BASED MUSIC INFORMATION RETRIEVAL FROM SYMBOLIC MUSIC NOTATION

Transcription:

Probabilist modeling of musical chord sequences for music analysis Christophe Hauser January 29, 2009 1 INTRODUCTION Computer and network technologies have improved consequently over the last years. Technology brought the ability for everyone to get involved in music, to listen, to compose, to record. With more and more online services, the amount of data to be stored and delivered is getting very large. Managing all these collections of data involves new aspects such as efficient storage methods and advanced information retrieval techniques. Music information retrieval is one example of technologies aimed to identify musical data within large music collections such as itunes. One key element in occidental music is the concept of chord. Identifying chords in a song gives a lot of information about it, and simplifies further analyses, such as determining the melody of a given instrument, or the bass line. The aim of this work is to present a model for representing chord sequences using n-grams, an approach from the language recognition field. Previous works show that there exist various means to represent chords, with more or less accuracy. Underlined limitations in [14] are the modeling of rare chords and the representation of chords using an appropriate alphabet. Recent works in the METISS team [14] proposed different labelling schemes and smoothing methods to overcome these limitations. We are interested in improving these two aspects. One possible application would be the possibility to create a similarity network over a musical corpus. 2 MIR Music information retrieval (MIR) is the interdisciplinary science of retrieving information from music. There are two main research branches in this field : the transcription of audio signal to symbols and the modeling of these symbols. In [7], the authors speak about Acoustic Modeling and Language modeling. 2.1 Music databases and information representation Managing and sorting large collections of music files involves these two aspects, each at a different layer. First, as music databases contain files in various formats, with different levels of representation. Thus we need a common ground in order to compare different files together. For example, MIDI gives information about rhythm and pitch while raw audio only encodes the sound energy level over the time. This is achieved by a low level layer where the audio signal is analyzed and then represented using an alphabet of symbols, thus providing a mid-level representation of the input signal. [5] [6]. Various techniques are proposed, but this is outside the scope of this study. Once a mid-level representation of data is reached, models and algorithms are needed to manage, sort or compare data given different criteria. By contrast with today s databases, where human typed string description of content is used as meta-data, new approaches use information extracted from the music itself. This is done within a high level layer where models are used over a mid-level representation of data using an alphabet of symbols. [14] [5] [4] [11]. A number of existing models have been used in the past and will be presented later in this study. 1

2.2 Possible applications Applications of IR models are promising in fields such as musicology analysis, computer assisted composition and browsing large music databases. A number of previous works exist. New approaches for browsing music databases include query by humming and query by example. With query by humming as presented in [5], the user hums in a microphone. Pitch and rhythm information are extracted from the resulting signal, converted into symbolic data and modeled to create meta-data. Query by example as shown in [5] [6] is similar except that it uses sound files extracts as queries. Some other works focused on artist identification with different approaches. In [18], artists are automatically identified from the acoustic signal using acoustic features modeling. This approach is based on the analysis of the spectral characteristics of the audio signal. A different approach is presented in [11], where chords sequences are analysed in order to make chord profiles representative of the composer style. This last approach uses higher level features and thus is closer to our goal. Melody harmonizing [15] is another example of possible applications, where a melody is synthesized given a chord sequence. This can be used for automatic composition, or to verify the consistency of a melody over the chords of a song. 2.3 Monophonic and polyphonic data Transcription of audio signal to symbols can be processed using different models and algorithms [5] [6] [7]. However, the accuracy of the transcription highly depends on the nature of the audio signal (monophonic or polyphonic), especially in the case of polyphonic data, where it remains a challenge. For this reason, and because our study is focused on the modeling of symbols, we won t use any automatic transcription systems but rather use human transcribed corpus of songs as training data. Figure 1: Intervals in music theory 3 MODELING CHORD SE- QUENCES 3.1 About chords Note : the following examples are using the jazz notation, as described in section 3.3. The perceived frequency of a note is called pitch. An interval is the distance in pitch between two notes. As shown on fig.1, intervals of different nature exist. Their nature (called quality) have a crucial role in chords. A chord is a set of at least three different notes played simultaneously (though some theorists claim that it can be called chord from two notes). A chord composed of three notes is called a triad. The first note is called the root and corresponds to the fundamental frequency of the chord (thus it is sometimes called fundamental instead of root). The second note is called the third and the last note is called the fifth reflecting the intervals they form with the root. As shown on fig. 1, a third can be major or minor, and a fifth can be diminished, perfect or augmented. A chord has the same properties, called quality, depending on it s composing notes. Ex: Cm is a chord of C minor and is composed of C, E b and G - C dim is composed of C, E, G b. Other notes can be added on top of triads, such as the 7th, the 9th, the 11th, counted as the distance from the root. For example, A is the sixth of C. Chords are generally played with the root note being the bass note (ie the lowest one in pitch), but sometimes another note is used instead. This is called an inversion. Here are some examples of chords. Am7 = A C G ; A is the root, C is the minor third and G is the 2

Figure 2: Baroque figured bass seventh. Bm7b5 = B D F A ; B is the root, D is the minor third, F is the flat fifth and A is the seventh. A tonality, is an ensemble of notes in which relationships are centered on a special note called the tonic. For example, the tonality of C is the ensemble containing all the notes without any sharp or flat (A B C D E F G). Within a tonality, a certain number of chords and scales exist, and some others don t. Thus, given a sequence of chords, it is possible to determine their tonality. 3.2 Chords and MIR Chords are interesting regarding MIR, especially when it comes to analyse polyphonic data. Chords are central to most modern music. They represent musical attributes and contain rich information for music analysis. A Chord progression, also known as harmonic progression is series of chords played from one to another. Perception of music is tightly coupled with it. Chords enforce establishment of tonalities [1], and are the background for melody. According to [11], it can also be incorporated into a tune retrieval system where tunes are indexed with meta-data and chord sequence. 3.3 Chord notation In music, chords can be represented in many different ways. According to Harte [2], three are commonly used. Baroque Figured bass (fig. 2) Using these notations, figures show which notes can be played above the bass line to complete the correct harmony. Classical Harmony Analysis (fig. 3) The chords are noted in the context of a given key (the key defines a tonality, it is equivalent to the tonic). Figure 3: Classical harmony analysis Figure 4: Jazz and popular music Notes are not explicitly described. For example, when a seventh chord is annotated, the seventh can actually be major or minor depending on the context. Inversions are marked as well. Jazz and popular music (fig. 4) In jazz, musicians often play at sight and need an explicit manner of representing chords. The quality of each chord is explicitly marked. This is the most commonly used notation today because it provides more information and it is context independent. Harte s notation is a formalized form of the jazz notation and has been used in many previous works. This is the one we will use as a starting point for our study, along with simplified derived notations in [14]. 3.4 Existing models Sequences of chord labels can be seen as word sequences in the natural language, where grammar rules would be the rules of harmony [7]. Training as in language modeling is then a reasonable solution, and the same models are likely to apply to model chord sequences. Many machine learning models exist. Commonly used models include Hidden Markov Model (HMM), as proposed in [12] is a model where the system being modeled is assumed to be a Markov process with unknown parameters. In a Markov process, the likelihood of a given future state depends only 3

on the present state, and not on any of the past states. Therefore it is said to be memoryless. This is actually a particular case of the n-gram model with n=2. It would only consider the transition probability between two consecutive chords. Markov random field or Markov network [13] is a model of joint probability distribution of a set of random variables having the Markov property. The Markov property defines a stochastic process where the conditional probability distribution of future states of the process depends only on the present state and on a defined set of past states. This model is a generalization of Markov chains to multidimensional spatial processes. Conditonal random fields (CRF) is used in language modeling. It can be seen as a generelization of the Markov random field model. According to [8] it has advantages over HMM, and is related to it in that it include the ability to relax strong independance assumptions. n-grams, as presented in the next section, is a good compromise between simplicity and effectiveness. It is less complex than random fields, and it is adapted to chord sequences modeling as it would consider the transitions from a set of chords to another chord within a sequence, as in [7]. 3.5 N-Gram modelling N-gram models are a type of probabilistic model for predicting the next item in a sequence. n-grams are used in various areas of statistical natural language processing and genetic sequence analysis. An n-gram is a sub-sequence of n items from a given sequence. As in [7] This model is consistent with the idea of chords progression because the likelihood of a chord depends on it s n ancestors. Furthermore, the number of symbol used to represent chords is rather small compared to what is used when processing natural language. This makes the n-gram model an effective approach. The likelihood of a sequence S composed of n chords is noted P(S) = P(C 1,..., C n ) (1) In term of probability, an n-gram is P(x i x i 1,...,x i n 1 ) (2) In order to compare models together, perplexity is often used. Perplexity is used in [14] to compare the likelihood of chord sequences of different lengths. It is defined as P(S) = log 2P(S) S (3) where S is the length of the considered chord sequence. A number of previous works used n-gram modeling for different applications, such as polyphonic music retrieval ([6, 5]) composer style representation [10] and [11], chords recognition from audio [12], and harmonisation [15]. Deterministic approaches such as in [5] offer efficient approach in term of computation cost but cannot model the likelihood of chord sequences as needed in our study. Therefore, probabilistic models as in [14] and [10] will be used in our study. 3.6 Critical Issues Chord notation Harte s notation is aimed to be simple and intuitive to musically trained individuals to write and understand. Using this notation, every possible chords can be described. The total number of possibilities is huge, and has an impact on computation cost when processing, especially with high order models. In our study, n-gram model is used, and the order of the model is n. Increasing n means more computation power needed. According to a previous analysis by the Metiss Team [14], considering different chord dictionaries can sensibly affect the results and the computation cost of the modeling : perplexity is influenced by the number of different symbols as well as their meaningfulness. While most previous studies used a limited set of symbols, only considering M/m and diminished/augmented chords, the Metiss team used a 4

more realistic set of symbols with the representation proposed by Harte [2]. Furthermore, they tried to simplify the notation to limit the number of symbols to a subset of what Harte s notation permits. These two simplifications are Considering only non enharmonic roots Using tonality independent schemes such as IIm7, VIIm7b5 etc... give information about the nature of the chords in an absolute fashion. Discarding tensions / inversions simplifies notation while keeping the most important part of the needed information. Modeling of rare chords Machine learning algorithms are trained using some set of examples. The aim is to become able to predict the right output with other examples that were not present in the learning set and generalize to any set of data. When the model is trained, it is expected to reach a certain level of generalization, ie to reach a state a state where it will be able to give consitent results for other examples. One common limitation is training in the presence of rare elements in the training set. To overcome this problem, one should always choose a large and representative training set. Furthermore, in order to get a better and more general model, smoothing techniques can be used. Chord sequences are no exception to this rule, and the existence of some rare chords led the metiss team to consider the application of smoothing techniques to the n-gram model. There are many existing smoothing methods, especially from the language modelling world. Smoothing methods generally try to discount probability of seen words and then to assign the extra probability mass to the unseen words according to some models. Several smoothing techniques have been used in previous works. [6] uses a Universal Background Model. But this approach is impractical because according to [14] the UBM may itself suffer from overfitting. Additional smoothing techniques have been proposed in [14, 9] Additive smoothing, or Laplace smoothing consists in adding an arbitrary number δ to the counts of every chords sequences (where D is the considered dictionary of chord symbols and D the number of symbols) = P add (C i C i N+1,, C i 1 ) δ N + c(c i N+1,, C i ) δ N. D + σ Ck c(c k N+1,, C k ) (4) Jelinek Mercer (JM) smoothing involves a linear interpolation of the maximum likelihood model with the collection model, using a coefficient α to control the influence of each model. P JM (C i C i N+1,, C i 1 ) = λ N 1.P ML (C i C i N+1,, C i 1 + (1 λ N 1 ).P JM (C i C i N+2,, C i 1 ) 4 PROPOSED TRACKS (5) 4.1 Symbols for chords representation As previously introduced, the number of possible symbols for representing chords has an impact on the computation cost of our model. Some further simplifications could be considered. Many chords with different names are in fact the same chord considered differently. For example, an Am7/C and C6 are both composed of the following notes : C A E G. The only difference is that the notes are not necessarily in the same order in both chords. Therefore considering only one notation for equivalent chords can be used to reduce the number of labels representing them. As proposed by [11], Inversions can be considered as tensions in the chord, or as the new root of the chord. In musicology [1], chords can be classified by harmonic functions relative to different musical modes, where several chords with the same structure and main notes in common would be considered as equivalent. 5

4.2 Robust learning using smoothing techniques In [3], some smoothing methods from natural language processing are proposed and compared in the context of estimating language models on text documents. Katz smoothing and good Turing estimation are sophisticated smoothing methods where words of different counts are treated separately. However, these methods need extra computer power compared to the others and therefore may not be appropriate in the case of large databases. As proposed in [3], Bayesian smoothing uses Dirichlet priors. A language model is a multinomial distribution, for which the conjugate prior for Bayesian analysis is the Dirichlet distribution. Absolute discounting where the probability of seen words is lowered by subtracting a constant from their counts. It is similar to the JM model except that it has a different way of discounting the seen word probability. According to [3], the retrieval performance of models is generally sensitive to the smoothing parameters, whatever smoothing method is used. Therefore our future study will have to take a number of different possible situations into account. 4.3 Possible Application A similarity network on a musical corpus is one possible application of modeling chord sequences. Musically speaking, similarity between two songs can reflect different elements. The song may have been composed by the same author or may just belong to the same musical style. Furthermore, as stressed in [18], the Album effect would be linked to the fact instruments, musicians and post-production are likely to be the same within the same album. Today, some online musical databases provide a graphical representation of artists sorted by their different musical styles. Links are explicitly represented between artists, and musical styles encompass them. The meta-data used for classification comes from human input (tags...). This information is dependent on the human perception of the different individuals involved in the characterization of the music. This kind of information is not always complete or accurate. With chord sequences modeling, this application could be automated and graphically represent all the elements of a musical corpus given the same criteria in a fair fashion, not depending on human senses. Distance between two songs on the represented graph could reflect the distance of their chord progressions in the model. 5 RESOURCES Some previous works used hand annotated databases of songs, such as [10] using Harte s Beatles Chord Database [2], consisting in all the chords of all 180 songs featured on original Beatles studio albums. Another available collection is a transcription of the chords of 244 jazz standards from the Real Book (well known by the jazzmen). For the implementation of models, modeling tools exist such as SRILM [16] (Stanford Research Institute Language Modeling) an extensible language modeling toolkit. According to it s authors, SRILM is a collection of C++ libraries, executable programs, and helper scripts designed to allow both production of and experimentation with statistical language models for speech recognition and other applications. SRILM is freely available for noncommercial purposes. The toolkit supports creation and evaluation of a variety of language model types based on N-gram statistics, as well as several related tasks, such as statistical tagging and manipulation of N-best lists and word lattices. 6 CONCLUSION The main aspects in term of music information retrieval (MIR) have been presented, notably Acoustic Modeling and Language Modeling. Possible models 6

and approaches permit a wide variety of new applications. N-gram modeling is one of the main used models in the language modeling field, and has been shown to give realistic performances for chord sequences. The main limitations of previous n-gram approaches have been identified as well as some possible improvements. In this extent, our future work will focus on various smoothing methods and chords labelling schemes. As a first step, we will try different smoothing methods and compare them. As the efficiency of smoothing methods depends on the context (model order, training sets), tests will involve different situations. Combining several smoothing methods together is another possible approach. Then, several chords labelling schemes and simplifications will be analyzed and compared together. Although modern music is centered on chords progression, no previous study seem to exist about chords representation based on musical modes or such chords classification from music theory. This approach will be analysed in our study. For testing, existing resources and datasets from previous studies will be used, like the Real Book [17] and the discography of the Beatles. References [1] J. Anger-Weller. Clés pour l harmonie, à l usage de l analyse, l improvisation, la composition. 2ème édition revue et augmentée. HL MUSIC, 1990. [2] S. A. Abdallah C. Harte, M. Sandler and E. Gomez. Symbolic representation of musical chords: A pro- posed syntax for text annotations. Proceedings of the International Conference on Music Information Retrieval (ISMIR), 2005. [3] J. Lafferty C. Zhai. A study of smoothing methods for language modes applied to ad hoc information retrieval. Proceedings of the Special Interest Group on Information Retrieval (SIGIR), 2001. [4] S. Doraisamy and S. Ruger. A comparative and fault-tolerance study of the use of n-grams with polyphonic music.. in Proc. International Conference on Music Information Retrieval, Paris, France, 2002. [5] S. Doraisamy and S. Rger. Robust polyphonic music retrieval with n-grams. Journal of Intelligent Information Systems, 21(1), pp. 53-70, 2003. [6] S.S. Narayanan E. Unal, P.G. Georgiou and E. Chew. Statistical modeling and retrieval of polyphonic music. Proceedings of the IEEE Workshop on Multimedia Signal Processing (MMSP), pp. 405-409, 2007. [7] Y. Lin I. Liao H. Chen H. Cheng, Y. yang. Automatic chord recognition for music classification and retrieval. [8] A. McCallum J. Lafferty and F. Pereira. Conditional random fields : probabilistic models for segmenting and labelling sequence data. [9] R. Kneser and H. Ney. Improved smoothing for m-gram language modeling. in Proceedings of the International Conference on Acoustics, Speech and Signal Processing, Detroit, MI, 1995. [10] C. Harte M. Casey M. Mauch, S. Dixon and B. Fields. Discovering chord idioms through beatles and real book songs. Proceedings of the International Conference on Music Information Retrieval (ISMIR), pp 255-258, 2007. [11] T. Li M. Ogihara. N-gram chord profiles for composer style representation. Proceedings of the International Conference on Music Information Retrieval (ISMIR) 2008 - Session 5d - MIR Methods, 2008. [12] H. Papadopoulos and G. Peeters. Large-scale study of chord estimation algorithms based on chroma representation and hmm. Proceedings of the International Conference on Music Information Retrieval (ISMIR), pp 225-258, 2007. 7

[13] J. Pickens and C. Iliopoulos. Markov random fields and maximum entropy modeling for music information retrieval. 2005. [14] E. Vincent R. Scholz and F. Bimbot. Robust modeling of musical chord sequences using probabilistic n-grams. International Conference on Accoustics, Speech and Signal Processing (ICASSP) + Impress. [15] R. Ramirez and J. Peralta. A constraint-based melody harmonizer. Proceedings of the Workshop on Constraints for Artistic Applications (ECAI98), 1998. [16] A. Stolcke. Srilm an extensible language modeling toolkit, 2002. [17] various. The Real Book. Hal Leonard Corporation, September 2004. [18] D.S. Williamson Y.E. Kim and S. Pilli. Towards quantifying the album effect in artist identification. Proceedings of the International Conference on Music Information Retrieval (ISMIR), Canada, pp 393-394, 2006. 8