90 likes | 204 Vues
This project explores the application of machine learning techniques, specifically neural networks, for classifying music genres based on chord structures. The approach includes analyzing note patterns and intervals in chord identification, focusing on major and minor chords. A simple neural network is trained with known outputs to predict the genre by processing the types and frequencies of chords in various pieces. The back-propagation learning algorithm optimizes the network's weights to enhance accuracy, allowing for genre categorization based on learned data patterns.
E N D
Music Genre Classification Alex Stabile
Example File http://www.ccarh.org/courses/253/files/midifiles-20080227-2up.pdf
Organization/Parsing file • Beat class • Notes on beat Notes off beat • Beat number • (8)
Chord Identification • Notes: C, E, G • What kind of chord? Look at intervals… • E: m3, m6 -no matches • G: P4, M6 -no matches • C: M3, P5 -These intervals form a major chord, root position
Chord Identification Issue • Non-chord tones: should be ignored in harmonic analysis • Notes in first measure: C, E, G, D • Considers each • possible combination: • CEG • CDE • CDG
Analyzing Data—Machine Learning Approach • Neural Networks: • Each node has a value and an associated weight • In the top layer, inputs become the nodes’ values • Values are propagated through the network, creating values for the other nodes A simple neural network
Learning Algorithm • The network is given a set of training data whose outputs are known Inputs are “fed” through the network: Calculated output is compared with desired output to obtain error http://galaxy.agh.edu.pl/~vlsi/AI/backp_t_en/backprop.html
Learning Algorithm • Back-propagation: the error is propagated backward though the network, and a respective error is calculated for each node • The weights and node values are adjusted based on the errors so that a more desirable output will be obtained http://galaxy.agh.edu.pl/~vlsi/AI/backp_t_en/backprop.html
Learning Algorithm • For my project, the inputs to the network are the types and frequency of chords in a piece of music • A threshold will be set for the output, based on the results of training: different ranges represent different genres