Roman Numeral Analysis with Graph Neural Networks

This article discusses a new method for automating Roman Numeral Analysis using Graph Neural Networks. The model, called ChordGNN, leverages note-wise information to make onset-wise predictions of Roman Numerals in a musical score. The article highlights the architecture of the ChordGNN model and provides examples of its predictions, comparing them with human annotations. The ability of ChordGNN to capture nuances and make accurate predictions in Roman Numeral analysis is demonstrated.

 Roman Numeral Analysis with Graph Neural Networks

An Introductory Guide

In this article, I will explain the development of a model for automatic harmonic analysis in simple terms. The goal is to build a system that can automatically analyze musical scores and provide chord notations in Roman numerals. This system is particularly useful for classical tonal music. In this guide, I will introduce the concept of Roman numerals, Graph Neural Networks, and provide details about the model and its results.

Introduction to Roman Numerals

Roman Numeral analysis is a method used to understand and analyze chords in music, especially in Western classical and popular music. It represents chords using Roman numerals instead of traditional musical notation.

Each chord is assigned a Roman numeral based on its position and function within a given key. Uppercase numerals represent major chords, and lowercase numerals represent minor chords. For example, in the key of C major, the C major chord would be represented by the Roman numeral “I” (uppercase “I” denotes a major chord), and the D minor chord would be represented by “ii” (lowercase “ii” denotes a minor chord).

Roman Numerals can convey additional information such as chord quality, inversion, and borrowed chords. They help musicians and music theorists understand chord progressions, analyze patterns, and make comparisons between different compositions.

Automatic Roman Numeral Analysis

To automate Roman Numeral analysis, we use a model called ChordGNN based on Graph Neural Networks. This model takes symbolic music scores as input and predicts the Roman numerals for each unique chord onset. The representation of the score is transformed into a graph structure, where each note represents a vertex and the edges represent relationships between notes.

Graph Neural Networks (GNN) are deep learning models designed to handle graph data. They capture relationships and dependencies between nodes, allowing analysis and prediction tasks. GNNs employ message-passing steps to gather information from neighboring nodes, refining their understanding of the entire graph.

ChordGNN Model Architecture

The ChordGNN model is composed of stacked GraphSAGE Convolutional Blocks, which operate at the note level. The model uses a Graph Convolutional Recurrent Neural Network Architecture to process the graph representation of the score. An Onset-Pooling Layer is then used to contract note representations to the onset level, resulting in a sequence-like representation.

The onset-level representations are further processed by a Sequential model, such as a GRU stack. Finally, Multi-Layer Perceptron Classifiers are added for each attribute that describes a Roman Numeral.

The model predicts the degree, local key, quality, inversion, and root for each chord onset, and combines these predictions into a single Roman Numeral representation.

Examples of ChordGNN Predictions

The ChordGNN model has been tested on musical scores, and its predictions have been compared to human annotations. In some cases, ChordGNN correctly identifies chord inversions and harmonic rhythms that differ from human annotations. The model accommodates different interpretations, treating each chord onset as an individual event.

Conclusion

Automating Roman Numeral Analysis using Graph Neural Networks can greatly enhance music understanding and analysis. ChordGNN is a powerful tool that can accurately predict chord notations in Roman numerals. By leveraging AI solutions like ChordGNN, companies can gain a competitive edge and redefine their approach to music analysis.

If you’re interested in exploring how AI can benefit your company and redefine your sales processes, consider the AI Sales Bot from itinai.com. This AI-powered bot automates customer engagement and manages interactions across all customer journey stages. To learn more about AI solutions and to stay connected with AI insights, reach out to hello@itinai.com or follow @itinaicom on Twitter and join their Telegram group t.me/itinainews.

List of Useful Links:

AI Products for Business or Try Custom Development

AI Sales Bot

Welcome AI Sales Bot, your 24/7 teammate! Engaging customers in natural language across all channels and learning from your materials, it’s a step towards efficient, enriched customer interactions and sales

AI Document Assistant

Unlock insights and drive decisions with our AI Insights Suite. Indexing your documents and data, it provides smart, AI-driven decision support, enhancing your productivity and decision-making.

AI Customer Support

Upgrade your support with our AI Assistant, reducing response times and personalizing interactions by analyzing documents and past engagements. Boost your team and customer satisfaction

AI Scrum Bot

Enhance agile management with our AI Scrum Bot, it helps to organize retrospectives. It answers queries and boosts collaboration and efficiency in your scrum processes.