SlideShare a Scribd company logo
1 of 19
Download to read offline
Unsupervised learning approach for
identifying sub-genres in music scores
Girija Shingte and Mathieu d'Aquin (@mdaquin)
NUI Galway, Data Science Institute (@DSIatNUIG)
Insight SFI Research Centre for Data Analytics
Photo by Caitlin Bussey - flickr
How to represent the tunes in those collections
so they become comparable?
Symbolic music representation in MIDI
Event based-representation:
note-on <note: 64, velocity: 100, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 66, velocity: 80, time: 1>
note-off <note: 66, velocity: 0, time: 480>
note-on <note: 63, velocity: 100, time: 1>
note-off <note: 63, velocity: 0, time: 240>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 66, velocity: 80, time: 1>
note-off <note: 66, velocity: 0, time: 480>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
Symbolic music representation in MIDI
Event based-representation:
note-on <note: 64, velocity: 100, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 66, velocity: 80, time: 1>
note-off <note: 66, velocity: 0, time: 480>
note-on <note: 63, velocity: 100, time: 1>
note-off <note: 63, velocity: 0, time: 240>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 66, velocity: 80, time: 1>
note-off <note: 66, velocity: 0, time: 480>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
Can be simplified as a
sequence of notes, each
having to main
components:
Pitch: represented by the
number of the note
Time: represented by the
number of ticks since last
event.
Symbolic music representation in MIDI
Event based-representation:
note-on <note: 64, velocity: 100, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 66, velocity: 80, time: 1>
note-off <note: 66, velocity: 0, time: 480>
note-on <note: 63, velocity: 100, time: 1>
note-off <note: 63, velocity: 0, time: 240>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 66, velocity: 80, time: 1>
note-off <note: 66, velocity: 0, time: 480>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
Can be simplified as a
sequence of notes, each
having to main
components:
Pitch: represented by the
number of the note
Time: represented by the
number of ticks since last
event.
Symbolic music representation in MIDI
Event based-representation:
note-on <note: 64, velocity: 100, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 66, velocity: 80, time: 1>
note-off <note: 66, velocity: 0, time: 480>
note-on <note: 63, velocity: 100, time: 1>
note-off <note: 63, velocity: 0, time: 240>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
note-on <note: 66, velocity: 80, time: 1>
note-off <note: 66, velocity: 0, time: 480>
note-on <note: 64, velocity: 80, time: 1>
note-off <note: 64, velocity: 0, time: 240>
Can be simplified as a
sequence of notes, each
having to main
components:
Pitch: represented by the
number of the note
Time: represented by the
number of ticks since last
event.
Representing pitch features
Basic approach: As a vector of note numbers
[64,66,63,64,64,66,64]
But, the same tune transposed would be completely different...
Vector of differences with the first note:
[0,+2,-1,0,0,+2,0]
Vector of differences with the average note:
[-0.43,+1.57,-1.43,-0.43,-0.43,+1.57,-0.43]
Vector of differences with first note:
[0,+2,-3,+1,0,+2,-2]
Representing time features
Basic approach: Vector of durations
[240,480,240,240,240,480,240]
But depends on tick per beats. Vector of durations in beats
[0.5,1,0.5,0.5,0.5,1,0.5]
But depends on specific timing of the tune. Binary vector of note occurrence,
dividing beats in 24 possible locations (here reduced to 4):
[1,0,1,0,0,0,1,0,1,0,1,0,1,0,0,0,1,0]
Also, beat extracted from wav files and other “spectral” features.
Average similarities with jigs from TheSession.org
Average similarities with jigs from TheSession.org
Clustering based on features (K-Means)
Feature representation Silhouette coefficient
Pitch values -0.02
Difference with first pitch -0.02
Difference with average pitch 0.03
Difference with previous note’s pitch -0.02
Note duration -0.07
Binary representation of note beats 0.2
Beats from wav files 0.159
Applied to a sample of 400 tunes from the TheSession.org with k=4
Pre-weighted combined features for clustering
Weight pitch
(avg)
Weight timing 0/1 Weight beats wav Silhouette The
Session
Silhouette ITMA
0.33 0.33 0.34 0.31 0.19
0.2 0.2 0.6 0.22 0.03
0.45 0.45 0.1 0.17 0.25
0.55 0.25 0.2 0.31 0.19
0.1 0.1 0.8 0.33 0.21
Applied to a sample of 32 common tunes from the TheSession.org and ITMA with k=4
Applications
Musing information retrieval
Currently being extended to
search across collections and
to enable customising the
similarity function
Applications
Studying genres
Applications
Studying tunes and their connections
Conclusions
Music tunes are indeed complex objects which analysis
through machine learning and data mining approaches
require careful considerations.
They encapsulate rich knowledge about composition, styles
and culture, which we hope can be extracted.
Further work need on automatically extracting comparable
components of tunes, rather than treating tunes as atomic
artefacts.
Unsupervised learning approach for
identifying sub-genres in music scores
Girija Shingte and Mathieu d'Aquin (@mdaquin)
NUI Galway, Data Science Institute (@DSIatNUIG)
Insight SFI Research Centre for Data Analytics

More Related Content

More from Mathieu d'Aquin

More from Mathieu d'Aquin (20)

Learning Analytics: understand learning and support the learner
Learning Analytics: understand learning and support the learnerLearning Analytics: understand learning and support the learner
Learning Analytics: understand learning and support the learner
 
The AFEL Project
The AFEL ProjectThe AFEL Project
The AFEL Project
 
Assessing the Readability of Policy Documents: The Case of Terms of Use of On...
Assessing the Readability of Policy Documents: The Case of Terms of Use of On...Assessing the Readability of Policy Documents: The Case of Terms of Use of On...
Assessing the Readability of Policy Documents: The Case of Terms of Use of On...
 
Data ethics
Data ethicsData ethics
Data ethics
 
Data for Learning and Learning with Data
Data for Learning and Learning with DataData for Learning and Learning with Data
Data for Learning and Learning with Data
 
Towards an “Ethics in Design” methodology for AI research projects
Towards an “Ethics in Design” methodology  for AI research projects Towards an “Ethics in Design” methodology  for AI research projects
Towards an “Ethics in Design” methodology for AI research projects
 
AFEL: Towards Measuring Online Activities Contributions to Self-Directed Lear...
AFEL: Towards Measuring Online Activities Contributions to Self-Directed Lear...AFEL: Towards Measuring Online Activities Contributions to Self-Directed Lear...
AFEL: Towards Measuring Online Activities Contributions to Self-Directed Lear...
 
Profiling information sources and services for discovery
Profiling information sources and services for discoveryProfiling information sources and services for discovery
Profiling information sources and services for discovery
 
Analyse de données et de réseaux sociaux pour l’aide à l’apprentissage infor...
Analyse de données et de réseaux sociaux pour  l’aide à l’apprentissage infor...Analyse de données et de réseaux sociaux pour  l’aide à l’apprentissage infor...
Analyse de données et de réseaux sociaux pour l’aide à l’apprentissage infor...
 
From Knowledge Bases to Knowledge Infrastructures for Intelligent Systems
From Knowledge Bases to Knowledge Infrastructures for Intelligent SystemsFrom Knowledge Bases to Knowledge Infrastructures for Intelligent Systems
From Knowledge Bases to Knowledge Infrastructures for Intelligent Systems
 
Data analytics beyond data processing and how it affects Industry 4.0
Data analytics beyond data processing and how it affects Industry 4.0Data analytics beyond data processing and how it affects Industry 4.0
Data analytics beyond data processing and how it affects Industry 4.0
 
Données ouvertes et traces numériques
Données ouvertes et traces numériquesDonnées ouvertes et traces numériques
Données ouvertes et traces numériques
 
Shared data infrastructures from smart cities to education
Shared data infrastructures from smart cities to educationShared data infrastructures from smart cities to education
Shared data infrastructures from smart cities to education
 
Architectures ouvertes, distribuées et intelligentes de partage d’information...
Architectures ouvertes, distribuées et intelligentes de partage d’information...Architectures ouvertes, distribuées et intelligentes de partage d’information...
Architectures ouvertes, distribuées et intelligentes de partage d’information...
 
Architectures ouvertes, distribuées et intelligentes de partage d’information...
Architectures ouvertes, distribuées et intelligentes de partage d’information...Architectures ouvertes, distribuées et intelligentes de partage d’information...
Architectures ouvertes, distribuées et intelligentes de partage d’information...
 
Supporting the use of data: From data repositories to service discovery
Supporting the use of data: From data repositories to service discoverySupporting the use of data: From data repositories to service discovery
Supporting the use of data: From data repositories to service discovery
 
Finding learning resources through Web Data
Finding learning resources  through Web DataFinding learning resources  through Web Data
Finding learning resources through Web Data
 
Data4Ed - How data sharing, curation and analytics support innovation in educ...
Data4Ed - How data sharing, curation and analytics support innovation in educ...Data4Ed - How data sharing, curation and analytics support innovation in educ...
Data4Ed - How data sharing, curation and analytics support innovation in educ...
 
Sharing knowledge is what we do: The Education and/or The Semantic Web
Sharing knowledge is what we do: The Education and/or The Semantic WebSharing knowledge is what we do: The Education and/or The Semantic Web
Sharing knowledge is what we do: The Education and/or The Semantic Web
 
Why should semantic technologies pay more attention to privacy... and vice-ve...
Why should semantic technologies pay more attention to privacy... and vice-ve...Why should semantic technologies pay more attention to privacy... and vice-ve...
Why should semantic technologies pay more attention to privacy... and vice-ve...
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Unsupervised learning approach for identifying sub-genres in music scores

  • 1. Unsupervised learning approach for identifying sub-genres in music scores Girija Shingte and Mathieu d'Aquin (@mdaquin) NUI Galway, Data Science Institute (@DSIatNUIG) Insight SFI Research Centre for Data Analytics
  • 2. Photo by Caitlin Bussey - flickr
  • 3.
  • 4. How to represent the tunes in those collections so they become comparable?
  • 5. Symbolic music representation in MIDI Event based-representation: note-on <note: 64, velocity: 100, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 66, velocity: 80, time: 1> note-off <note: 66, velocity: 0, time: 480> note-on <note: 63, velocity: 100, time: 1> note-off <note: 63, velocity: 0, time: 240> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 66, velocity: 80, time: 1> note-off <note: 66, velocity: 0, time: 480> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240>
  • 6. Symbolic music representation in MIDI Event based-representation: note-on <note: 64, velocity: 100, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 66, velocity: 80, time: 1> note-off <note: 66, velocity: 0, time: 480> note-on <note: 63, velocity: 100, time: 1> note-off <note: 63, velocity: 0, time: 240> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 66, velocity: 80, time: 1> note-off <note: 66, velocity: 0, time: 480> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> Can be simplified as a sequence of notes, each having to main components: Pitch: represented by the number of the note Time: represented by the number of ticks since last event.
  • 7. Symbolic music representation in MIDI Event based-representation: note-on <note: 64, velocity: 100, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 66, velocity: 80, time: 1> note-off <note: 66, velocity: 0, time: 480> note-on <note: 63, velocity: 100, time: 1> note-off <note: 63, velocity: 0, time: 240> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 66, velocity: 80, time: 1> note-off <note: 66, velocity: 0, time: 480> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> Can be simplified as a sequence of notes, each having to main components: Pitch: represented by the number of the note Time: represented by the number of ticks since last event.
  • 8. Symbolic music representation in MIDI Event based-representation: note-on <note: 64, velocity: 100, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 66, velocity: 80, time: 1> note-off <note: 66, velocity: 0, time: 480> note-on <note: 63, velocity: 100, time: 1> note-off <note: 63, velocity: 0, time: 240> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> note-on <note: 66, velocity: 80, time: 1> note-off <note: 66, velocity: 0, time: 480> note-on <note: 64, velocity: 80, time: 1> note-off <note: 64, velocity: 0, time: 240> Can be simplified as a sequence of notes, each having to main components: Pitch: represented by the number of the note Time: represented by the number of ticks since last event.
  • 9. Representing pitch features Basic approach: As a vector of note numbers [64,66,63,64,64,66,64] But, the same tune transposed would be completely different... Vector of differences with the first note: [0,+2,-1,0,0,+2,0] Vector of differences with the average note: [-0.43,+1.57,-1.43,-0.43,-0.43,+1.57,-0.43] Vector of differences with first note: [0,+2,-3,+1,0,+2,-2]
  • 10. Representing time features Basic approach: Vector of durations [240,480,240,240,240,480,240] But depends on tick per beats. Vector of durations in beats [0.5,1,0.5,0.5,0.5,1,0.5] But depends on specific timing of the tune. Binary vector of note occurrence, dividing beats in 24 possible locations (here reduced to 4): [1,0,1,0,0,0,1,0,1,0,1,0,1,0,0,0,1,0] Also, beat extracted from wav files and other “spectral” features.
  • 11. Average similarities with jigs from TheSession.org
  • 12. Average similarities with jigs from TheSession.org
  • 13. Clustering based on features (K-Means) Feature representation Silhouette coefficient Pitch values -0.02 Difference with first pitch -0.02 Difference with average pitch 0.03 Difference with previous note’s pitch -0.02 Note duration -0.07 Binary representation of note beats 0.2 Beats from wav files 0.159 Applied to a sample of 400 tunes from the TheSession.org with k=4
  • 14. Pre-weighted combined features for clustering Weight pitch (avg) Weight timing 0/1 Weight beats wav Silhouette The Session Silhouette ITMA 0.33 0.33 0.34 0.31 0.19 0.2 0.2 0.6 0.22 0.03 0.45 0.45 0.1 0.17 0.25 0.55 0.25 0.2 0.31 0.19 0.1 0.1 0.8 0.33 0.21 Applied to a sample of 32 common tunes from the TheSession.org and ITMA with k=4
  • 15. Applications Musing information retrieval Currently being extended to search across collections and to enable customising the similarity function
  • 17. Applications Studying tunes and their connections
  • 18. Conclusions Music tunes are indeed complex objects which analysis through machine learning and data mining approaches require careful considerations. They encapsulate rich knowledge about composition, styles and culture, which we hope can be extracted. Further work need on automatically extracting comparable components of tunes, rather than treating tunes as atomic artefacts.
  • 19. Unsupervised learning approach for identifying sub-genres in music scores Girija Shingte and Mathieu d'Aquin (@mdaquin) NUI Galway, Data Science Institute (@DSIatNUIG) Insight SFI Research Centre for Data Analytics