Table of Contents
Fetching ...

Computational music analysis from first principles

Dmitri Tymoczko, Mark Newman

TL;DR

The paper addresses the long-standing ambiguity in Western harmonic analysis by demonstrating an unsupervised, two-stage hidden Markov framework that annotates a large Bach chorales corpus with chords and keys from Note sequences alone. By inferring chords from notes and then keys from chords, and by using random initializations with multiple restarts, the approach achieves chord- and key-level agreements with human analyses that are comparable to prior supervised methods. The resulting datasets reveal both familiar harmonic patterns and principled, data-driven insights into chord transitions, key modulations, and doubling practices, while also offering a neutral ground for testing theoretical claims about harmonic syntax. This work bridges traditional theory and data-driven analysis, delivering objective resources and suggesting directions for extending such methods to broader repertoires and styles while clarifying methodological assumptions.

Abstract

We use coupled hidden Markov models to automatically annotate the 371 Bach chorales in the Riemenschneider edition, a corpus containing approximately 100,000 notes and 20,000 chords. We give three separate analyses that achieve progressively greater accuracy at the cost of making increasingly strong assumptions about musical syntax. Although our method makes almost no use of human input, we are able to identify both chords and keys with an accuracy of 85% or greater when compared to an expert human analysis, resulting in annotations accurate enough to be used for a range of music-theoretical purposes, while also being free of subjective human judgments. Our work bears on longstanding debates about the objective reality of the structures postulated by standard Western harmonic theory, as well as on specific questions about the nature of Western harmonic syntax.

Computational music analysis from first principles

TL;DR

The paper addresses the long-standing ambiguity in Western harmonic analysis by demonstrating an unsupervised, two-stage hidden Markov framework that annotates a large Bach chorales corpus with chords and keys from Note sequences alone. By inferring chords from notes and then keys from chords, and by using random initializations with multiple restarts, the approach achieves chord- and key-level agreements with human analyses that are comparable to prior supervised methods. The resulting datasets reveal both familiar harmonic patterns and principled, data-driven insights into chord transitions, key modulations, and doubling practices, while also offering a neutral ground for testing theoretical claims about harmonic syntax. This work bridges traditional theory and data-driven analysis, delivering objective resources and suggesting directions for extending such methods to broader repertoires and styles while clarifying methodological assumptions.

Abstract

We use coupled hidden Markov models to automatically annotate the 371 Bach chorales in the Riemenschneider edition, a corpus containing approximately 100,000 notes and 20,000 chords. We give three separate analyses that achieve progressively greater accuracy at the cost of making increasingly strong assumptions about musical syntax. Although our method makes almost no use of human input, we are able to identify both chords and keys with an accuracy of 85% or greater when compared to an expert human analysis, resulting in annotations accurate enough to be used for a range of music-theoretical purposes, while also being free of subjective human judgments. Our work bears on longstanding debates about the objective reality of the structures postulated by standard Western harmonic theory, as well as on specific questions about the nature of Western harmonic syntax.
Paper Structure (16 sections, 41 equations, 12 figures, 5 tables)

This paper contains 16 sections, 41 equations, 12 figures, 5 tables.

Figures (12)

  • Figure 1: Three sources of ambiguity in harmonic analysis. (A) These chords can be heard in C major or F major. (B) We can consider the note C as a nonharmonic passing tone, or as forming an F major chord. (C) We can consider the first chord to be an incomplete G7 chord missing its root.
  • Figure 2: Three possible analyses of a single passage. David Huron's analyses assign a single chord to the third quarter note. For reasons discussed in Section \ref{['sec:improvements']} we prefer an analysis with separate chords on each eighth note.
  • Figure 3: Note probabilities for the three chord types that best capture the combinations commonly occurring in the corpus. For each chord type we show the probability of occurrence of each of the 12 tones, relative to the anchor level, defined as the most likely note. Notes relative to a C anchor are shown at the top for reference. The three chord types closely match conventional major triads (top), minor triads (middle), and diminished triads/dominant sevenths (bottom).
  • Figure 4: Riemenschneider No. 88, Helft mir Gottes güte preisen, with the chords and keys inferred by our calculation along with chords and keys as assigned by a human analyst. Points of disagreement are highlighted with gray boxes.
  • Figure 5: Chord probabilities that best capture common patterns in the corpus, for each of the two key types. Each panel shows the probability of occurrence of each of the three chord types in each of the 12 possible positions relative to the anchor pitch. The key types closely match traditional major and minor keys. Vertical gray bars are included merely as a guide to the eye.
  • ...and 7 more figures