• No results found

Perceptuell identifiering av musikgenre

N/A
N/A
Protected

Academic year: 2021

Share "Perceptuell identifiering av musikgenre"

Copied!
24
0
0

Loading.... (view fulltext now)

Full text

(1)

Perceptuell identifiering av musikgenre

Uppsats i kurs DD143X, examensarbete inom datalogi, grundnivå

KTH  Skolan för datavetenskap och kommunikation  Stockholm, april 2014    Henrik Almér <halmer@kth.se>  Handledare: Anders Askenfelt     

(2)

Abstract

This is a study in the field of Music Information Retrieval (MIR) concerning classification of music  genre. The study uses a music listening experiment and machine learning methods to determine  whether or not the drum sounds from different songs contain sufficient information to classify  genre.    MIR methods are used to extract data from the audio signals. The data is used together with the  classification results of the listening experiment to train different machine learning algorithms to  classify the songs in different genres.    The results indicate that using only drum sounds for genre classifications works well, both for  listeners and for machine learning methods. 

Sammanfattning

Detta är en studie inom fältet Music Information Retrieval (MIR) som behandlar klassificering av  musikgenre. Studien använder ett lyssningsexperiment och maskininlärningsmetoder för att  avgöra huruvida trumstämmorna från olika musikstycken innehåller tillräckligt information för att  klassificera genre.    MIR­metoder används för att extrahera data från musikstycken baserade på innehållet i  ljudsignalen. Dessa data används tillsammans med klassificeringsresultat från  lyssningsexperimentet för att träna olika maskininlärningsmetoder till att klassificera  musikstyckena i olika genrer.    Resultaten visar att det fungerar väl att använda enbart trumljud för genreklassificering, både för  lyssnare och för maskininlärningsmetoder.         

(3)

Innehållsförteckning

  Abstract  Sammanfattning  Innehållsförteckning  Inledning  Problemformulering  Avgränsningar  Relevans  Bakgrund  Genrebegreppet  Perceptuella särdrag och datautvinning  Maskininlärningsmetoder  Metod  Val av genrer och musikstycken  Lyssningsexperiment  Datautvinning och maskininlärningsmetoder  Mel­frequency cepstral coefficients  Prediktion med maskininlärningsmetoder  Resultat & analys  Lyssningsexperiment  Datautvinning  Self organizing maps  Klassificering  Support vector machine  K­nearest neighbours  Diskussion  Lyssningsexperiment  Klassificering  Slutsats  Referenser  Appendix A: Valda musikstycken med genreklassificering från karaokeversion.com  Appendix B: Enkätsvar  Medianvärden för trummstämmor  Medianvärden för hela mixar  Appendix C: Perceptuella särdrag     

(4)

Inledning

Studien behandlar frågor inom ämnet Music Information Retrieval (MIR) vilket är ett  tvärvetenskapligt forskningsområde som studerar igenkänning av musik baserat på bland annat  musikens form, innehåll och framförande. MIR kan användas till högnivåbeskrivningar som ett  musikstyckes genre, likhet mellan musikstycken och känslostämningar. MIR kan också  appliceras på mer specifikt formulerade problem som t.ex. melodiigenkänning och  taktestimering. Avancerade metoder för signalbehandling används för att extrahera perceptuella  särdrag från musikstycken. För att kunna beskriva stycket på högre nivå med hjälp av dessa  särdrag används ofta maskinlärningsmetoder eller statistiska metoder.    Studien kommer fokusera på maskininlärningsaspekten av MIR och undersöka metoder för  klassificering och klustring av musikstycken. 

Problemformulering

Studiens mål är att ge ett underlag för att avgöra om ett musikstyckes trumljud innehåller  tillräcklig information för att man med maskininlärningsmetoder ska kunna bedöma styckets  genretillhörighet. 

Avgränsningar

Studien kommer att utgå från ett begränsat antal genrer och ett begränsat antal musikstycken.  Datainsamlingen som görs i form av ett lyssningsexperiment, kommer att omfatta ett relativt litet  antal deltagare. Dessa avgränsningar görs på grund av den begränsade tid som finns tillgänglig  inom ramen för undersökningen. En så pass avgränsad studie som denna kommer inte kunna  ge ett statistiskt säkerställt resultat, utan undersökningsresultatet kommer ha en relativt stor  felmarginal. 

Relevans

Studien bidrar till pågående forskning om perceptuella särdrag inom MIR. Studier kring  genretillhörighet är ofta gjorde på den kommersiellt tillgängliga versionen av ett musikstycke (full  mix), trots att människor kan särskilja de olika stämmorna (källorna) i mixen. I denna studie  undersöks specifikt om trummor som källa är en bra grund för att identifiera genre. 

(5)

Bakgrund

Genrebegreppet

Musikgenre är en populär högnivåbeskrivning av musik och används för att klassificera  musikstycken. Klassificering i olika genrer är ett användbart sätt att beskriva vad ett visst stycke  har gemensamt med andra, likväl på vilka sätt det skiljer sig. Uppkomsten till genre återfinns  alltså i vår naturliga tendens att klassificera (Aucouturier & Pachet, 2003).    Genrer formas av konventioner som ändras över tid då nya genrer uppfinns och andra slutar  användas. Musik passar ofta in i flera olika genrer då många stycken kombinerar olika sådana  konventioner. För att kunna modellera en sådan komplex genretillhörighet använder denna studie  procentuella angivelser av tillhörighet till flera olika genrer för att klassificera musikstycken. 

Perceptuella särdrag och datautvinning

Perceptuella särdrag är värden som beskriver olika aspekter av musiken. Exempelvis antalet  attacker (notstarter) per sekund, ljudnivån i en viss oktav, tempo samt rytmisk komplexitet.  Tempo uppskattas och de två mest sannolika tempona används som perceptuella särdrag.  Rytmisk komlexitet avser oregelbundenhet i avstånd mellan notstarter. Denna studie använder  ett stort antal sådana perceptuella särdrag vilka finns beskrivna i litteraturen (Elowsson, Friberg,  Madison & Paulin, 2013).    Studien använder också Mel­Frequency Cepstral Coefficients (MFCC) för att beskriva musik.  MFCC:er används ofta i MIR­sammanhang som underlag för genreklassificering och bedömning  av likhet mellan olika musikstycken (Müller, 2007). De har sitt ursprung i automatisk  taligenkänning och röstigenkänning där de används som beskrivning av talat ljud (Ganchev,  Fakotakis & Kokkinakis, 2005). MFCC är en kompakt representation av frekvensspektrum,  uppdelat i band enligt melskalan. 

Maskininlärningsmetoder

Maskininlärning är ett fält inom artificiell intelligens som behandlar konstruktion av system vilka  på olika sätt kan lära sig från insamlad data. Begreppet kan beskrivas genom följande definition  av Tom M. Mitchell (Mitchell, 1997).    A computer program is said to learn from experience E with respect to some class of  tasks T and performance measure P, if its performance at tasks in T, as measured by  P, improves with experience E.  ­ Tom M. Mitchell    Maskininlärning är i grunden en applikation av statistiska metoder och används ofta till att lösa  regressions­ och klassificeringsproblem. Det finns två huvudkategorier av maskininlärning,  övervakad och oövervakad inlärning.   

(6)

I fallet med övervakad inlärning för ett klassificeringsproblem används indata som vi redan kan  svaret på för att träna en maskininlärningsalgoritm. Genom att ge algoritmen många olika indata  och ange vilken klassificering de har kan algoritmen lära sig att hitta beslutsgränser mellan de  olika typerna av indata. Efter att algoritmen har tränats på sådan indata kan den sedan användas  till att klassificera indata som vi inte redan kan svaret på.    Oövervakad inlärning är en annan kategori av maskininlärningsmetoder där algoritmen ges  indata som vi inte kan svaret på. I dessa metoder är målet oftast inte att hitta en klassificering  utan att göra en dataanalys och se om det finns några naturliga klustringar i en datamängd.    Denna studie använder sig av tre olika metoder för maskininlärning. Dessa är Self Organizing  Maps, k­Nearest Neighbours och Support Vector Machines. För alla tre metoderna används de  perceptuella särdragen och MFCC­data som indata.    Self Organizing Maps (SOM) är en oövervakad maskininlärningsmetod för dimensionsreduktion.  SOM:en tränas på mångdimensionell indata och producerar ett lågdimensionellt resultat.  Algoritmen bedömer avstånden mellan indatavektorer och låter vektorer som ligger nära  varandra i indatat hamna nära varandra i det lågdimensionella resultatet, och vice versa. Med  hjälp av en SOM går det att hitta och illustrera klustringar i mångdimensionella data. Det är en  metod som ger ett resultat med en tydlig intuitiv tolkning. I denna studie används SOM för att  analysera indata och undersöka vilka klustringar som uppstår för olika sorters indata.    Support Vector Machines (SVM) är en övervakad maskininlärningsmetod som vanligtvis  används för klassificering och regressionsproblem. SVM:er kan konfigureras för att använda  olika inlärningsfunktioner och de fungerar genom att hitta en beslutsgräns mellan olika klasser av  data. SVM har använts för klassificering av genre i flera olika studier och har visat sig ge lyckade  resultat (Scaringella, Zoia, och Mlynek, 2006). I denna studie används SVM till att hitta  beslutsgränser och utföra klassificering av musikstycken i en av fem genrer.    k­Nearest Neighbours (k­NN) är en även det en övervakad maskininlärningsmetod som kan  användas till klassificering och regressionsproblem. k­NN fungerar genom att för varje  inputvektor bedöma avståndet till dess k närmsta grannar och klassificera vektorer baserat på  klustring. Avståndsfunktionen som används i algoritmen är konfigurerbar. k­NN har med  framgång använts för genreklassificering i ett par olika studier (Scaringella, Zoia & Mlynek, 2006).  Denna studie använder k­NN till samma ändamål som SVM. 

(7)

Metod

Studien består av  1. Ett webbaserat lyssningsexperiment, vilket undersöker perceptuell bedömning av genre  och ger ett underlag för prediktion med maskininlärning.  2. Extrahering av perceptuella särdrag och MFCC:er  3. Prediktion av genre med maskininlärningsmetoder tränade på det extraherade datat  4. Jämförelse av resultatet från lyssningsexperimentet och prediktionen 

Val av genrer och musikstycken

För lyssningsexperimentet valdes ett antal genrer och musikstycken. Med utgångspunkt i utbudet  på webbplatsen karaokeversion.com valdes fem genrer och 20 musikstycken. Genrerna valdes  så att det skulle finnas så tydliga skillnader som möjligt mellan trumljuden: pop, rock, reggae,  jazz och klassiskt. Från dessa genrer valdes sedan totalt 20 musikstycken, också de valda för  att det skulle finnas så stora skillnader som möjligt mellan de olika genrernas trumljud (se  Appendix A).    Webbplatsen karaokeversion.com erbjuder nedladdning av musikstycken i sin helhet men även  enbart trumljuden eller andra stämmor. Styckenna sparades i en databas tillsammans med  metainformation om musikstycket. 

Lyssningsexperiment

Lyssningsexperimentet syftade till att undersöka hur väl lyssnare kan avgöra genre samt att ge  ett underlag för träning av maskininlärningsalgoritmerna.    Ett webbaserat lyssningsexperimentet  skickades ut till ca 30 lyssnare som fick lyssna på korta 1 avsnitt tagna från de 20 musikstyckena. En längd av 15 s per avsnitt valdes för att inte ge upphov  till ett alltför tidskrävande lyssningsexperiment. Då hörselminnet är väldigt kort, ca 3­4 s  (Radvansky, 2005) bedömdes 15 s vara tillräckligt lång tid för att lyssnarna skulle kunna bilda sig  en uppfattning om stämman.    Från vart och ett av musikstyckena användes totalt tre avsnitt, två korta avsnitt av trumljuden för  varje stycke och ett kort avsnitt av full mix. Anledningen till att använda två separata avsnitt från  varje musikstycke för trumljuden var för att få en mer representativ bedömning av trumstämman  som helhet.    Avsnitten presenterades för lyssnarna i slumpad ordning och denne fick i uppgift att bedöma  avsnittens genretillhörighet. Genreklassificeringen skedde på en glidande skala som täckte fem  olika genrer. Lyssnarens uppgift var alltså att säga att ett musikstycke är t ex 30 % pop, 90 %  rock och 10 % jazz.    1 Webapplikationen skrevs i Python med ramverket Flask och en frontend skapad med JavaScript­biblioteket  angular.js. 

(8)

Avsnitten presenterades för lyssnaren i slumpad ordning, så att inte vissa avsnitt skulle få en  missvisande bedömning på grund av deras placering i listan. För att ett resultat av 

lyssningsexperimentet skulle godtas krävdes att lyssnaren slutförde hela experimentet och gav  en bedömning på samtliga avsnitt. 

Datautvinning och maskininlärningsmetoder

Avsnitten från lyssningsexperimentet kördes igenom olika MIR­algoritmer för att extrahera  perceptuella särdrag. Även MFCC­data utvanns från avsnitten.    Totalt 371 olika perceptuella särdrag extraherades från varje stämma. Detta gjordes genom att  med MIR­metoder särskilja trumljuden från stämmorna och använda de funna trumljuden som  indata i olika utvinningsalgoritmer. De särdrag som utvanns finns beskrivna i en nyligen  publicerad studie (Elowsson, Friberg, Madison & Paulin, 2013) , se appendix C. 2

Mel-frequency cepstral coefficients

Avsnitten användes även för att utvinna MFCC­data . Det utvunna MFCC­datat sammanställdes 3 till en medelvärdesvektor och kovariansmatris för varje avsnitt.    Mel­frequency cepstral coefficients (MFCC) är data som utvinns ur en ljudsignal. Det använder  melskalan, vilket är en perceptuell skala av tonhöjder som lyssnare har bedömt är på lika  avstånd från varandra (Stevens, Volkman & Newman, 1937). MFCC:er har många användningar  inom tal­ och röstigenkänning (Ganchev, Fakotakis & Kokkinakis, 2005). De är även populära  inom MIR för t ex genreklassificering (Müller, 2007).    Ett cepstrum beskriver i princip en periodisk struktur i ljudets spektrum. Spektrum beräknas  genom att ta fouriertransformen av ljudsignalen. Ett cepstrum är den inversa fouriertransformen  av logaritmen av ett sådant spektrum. Ordet cepstrum kommer från det engelska ordet  spectrum, med de fyra första bokstäverna i omvänd ordning.    I MFCC:er används ett effektcepstrum, vilket är definierat som kvadraten av magnituden av den  inversa fouriertransformen av logaritmen av kvadraten av magnituden av fouriertransformen av  en signal (Norton, Karczub, 2003). Formeln visas i figur 1.      F   | | | −1

{

log

(

| {fF (t) |}2

)}

|| | 2   Figur 1. Formel för att beräkna effektcepstrum av en signal f(t)    MFCC:er utvinns vanligtvis med följande metod (Sahidullah, Saha och Goutam, 2012). Ett  diagram över tillvägagångssättet visas i figur 2.  1. Ta fouriertransformen av en liten del av hela ljudsignalen  2 Särdragen extraherades med hjälp av förstaförfattaren från den refererade studien  3 MFCC­datat extraherades med Python och open source­paketet Python Speech Features 

(9)

2. Projicera det funna spektrat på melskalan, med triangulärt överlappande fönster  3. Ta logaritmen av den projicerade amplituden  4. Ta den diskreta cosinustransformen av de funna logaritmvärdena, som om de vore en  signal i tidsdomänen  5. MFCC:erna för den valda delen av ljudsignalen är amplituden på det funna cepstrat        Figur 2. Steg för att beräkna MFCC:er för en del av en ljudsignal.    Antalet amplituder i MFCC som används är konfigurerbart men i många implementationer  resulterar ovanstående process i en vektor av 13 koefficienter per del av ljudsignalen. Många  parametrar, som längden på delarna och fönstrens storlek, kan justeras för att påverka resultatet  av datautvinningen. 

Prediktion med maskininlärningsmetoder

Särdrags­ och MFCC­vektorerna användes som indata till de tre maskininlärningsmetoderna  (SOM, SVM och k­NN). Resultatet av träningen analyserades och utfallet från maskininlärningen  jämfördes med resultatet från lyssningsexperimentet. Syftet var att avgöra vilken metod som gav  prediktioner som stämde bäst överrens med insamlade data från lyssningsexperimentet.    I ett första steg gjordes en dataanalys med en SOM som reducerade de multidimensionella  särdrags­ och MFCC­vektorerna till två dimensioner. Det 2­dimensionella resultatet plottades  och analyserades för att se om några naturliga klustringar uppstod.    För att hitta en klassificering av datat användes en SVM och en k­NN­implementation som  tränades på särdrags­ och MFCC­vektorerna. I klassificeringsexperimenten delades det  insamlade datat upp i förhållandet 3:1 för träning respektive testning. Det resulterade i 30 avsnitt  för träning och 10 avsnitt för testning. Urvalet var balanserat så att samtliga genrer var  representerade i båda grupperna. 

(10)

Resultat & analys

Lyssningsexperiment

Totalt inkom 23 enkätsvar. Skattningarna på trumstämmor sammanställdes till en vektor med  medianvärden för varje avsnitt och stämma. Ett exempel på svarsdata från ett avsnitt från  trumstämman ur ett teststycke visas i figur 4 (Whams “Wake Me Up Before You Go­Go”). För  fullständig data se Appendix B.    Diagrammet till vänster i figuren visar medelvärdet av de inkomna klassificeringarna. Avsnittet  klassificerades som ca 65 % pop, 22 % rock, 2 % reggae, 3 % jazz och 0 % klassiskt. Till höger  visas ett låddiagram av samma klassificeringar. Svaren har mycket stor spridning vilket var ett  gemensamt kännetecken för alla stycken. En fullständig sammanställning av enkätsvaren  återfinns i Appendix B.    Figur 4. Enkätsvar för ett avsnitt ur trumstämman från Whams “Wake Me Up Before You Go­Go”. Till  vänster visas medelvärden för genretillhörighet (procent) och till höger ett låddiagram. Strecken i mitten av  lådorna representerar medianvärden, de streckade linjerna representerar den undre respektive övre  kvartilen och plustecknen är utliggare. Notera den stora spridningen bland de inkomna svaren.    Spridningen bland de inkomna svaren för trumstämmorna var så stor att den ursprungliga idén  om att kunna hitta en regression från en särdragsvektor till en klassificeringsvektor med fem  värden inte var rimlig. Därför reducerades klassificeringsvektorerna till att innehålla binära 

(11)

värden, där det högsta värdet sattes till 1 och övriga till 0, dvs et stycke kan bara tillhöra en viss  genre. Ett exempel på en sådan klassificeringsvektor är [0,0,1,0,0] för ett reggae­stycke. Efter  reduktionen visade det sig att resultatet från lyssningsexperimentet sammanföll helt med  expertklassificeringen från karaokeversion.com (se Appendix A och B).    Lyssnarna klassificerade två avsnitt ur trumstämman för varje stycke. Resultaten för dessa  klassificeringar är sammanställda i Appendix B. Ett viktigt resultat var att klassificeringarna för de  två olika avsnitten sammanföll för alla stycken.    Vid en jämförelse av resultatet av lyssningsexperimentet för klassificering av trumstämmor  respektive hela mixar visade det sig att hela mixar gav en mindre spridning i svaren än  trumstämmorna. Klassificeringen av hela mixen för Whams stycke “Wake Me Up Before You  Go­Go” är illustrerat i figur 5 (jmf figur 4).    Figur 5. Medelvärden på enkätsvaren för klassificering av hela mixen av Whams “Wake Me Up Before You  Go­Go”. Notera att medelvärdet för pop är nära 100, vilket visar på en mindre spridning bland de inkomna  svaren jämfört med trumstämman för samma musikstycke (jmf figur 3).    Medianvärden för de inkomna svaren för hela mixar återfinns i Appendix B. Gemensamt för alla  musikstycken var att lyssnarnas klassificering sammanföll med den från karaokeversion.com.  För de hela mixarna har klassificeringen skett med större säkerhet och mindre varians i svaren  jämfört med klassificeringen av trumstämmor. Alla musikstycken har fått en lyssnarklassificering  med ett medianvärde av 100 i någon av genrerna och 0 i övriga.    För att analysera svarens trovärdighet gjordes en sammanställning av skattningarna på de hela  mixarna. Den sammanställningen jämfördes sedan mot expertklassificeringen från 

(12)

karaokeversion.com. Sammanställningen gjordes genom gruppera stämmorna per uppskattad  genre och beräkna medelvärdet av de olika stämmornas genreuppskattning för den aktuella  genren. Exempelvis grupperas alla stämmor som klassificerats som pop tillsammans och  medelvärdet tas av skattningarna till pop­genren. Även standardavvikelsen beräknades och visas  i figur 3.    Figur 3. Sammanställning av skattningar på hela mixar, grupperat på genre. Staplarna visar medelvärden  av genreskattningar och de vertikala strecken indikerar det 95 %­iga konfidensintervallet. Skattningarna  sammanfaller med expertklassificeringen från karaokeversion.com.    Resultaten som illustreras i figur 3 visar att lyssnarnas klassificering på de hela mixarna  sammanfaller helt med expertklassificeringen från karaokeversion.com. 

Datautvinning

Av totalt 371 olika särdrag per stämma som utvunnits med MIR­algoritmer valdes 130 ut som  signifikanta särdrag för trumljud. En beskrivning av vad de utvalda särdragen representerar ges i  Appendix C. Urvalet gjordes genom iterativa tester för att avgöra vilken delmängd av särdrag  som gav prediktioner som bäst sammanföll med resultatet från lyssningsexperimentet.    Som komplement till de perceptuella särdragen används MFCC:er för att beskriva musikspåren.  MFCC:er har normalt 13 olika särdrag, men i denna studie har antalet särdrag begränsats till de  5 första då dessa visats ge bäst resultat vid genreklassificering (Tzanetakis & Cook, 2002).  Vidare har MFCC:erna reducerats till en medelvärdesvektor och kovariansmatris som sedan  fogats samman till en vektor. 

(13)

  För att lära känna de insamlade datamängderna och för att göra en bedömning av huruvida det  var lämpligt för studien användes olika metoder för att skapa en dimensionsreduktion till två  dimensioner för att kunna se om några naturliga klustringar uppstod i datat. I analysen användes  data från trumstämmorna. Genreklassificering från lyssningsexperimentet användes för att  beskriva grupptillhörighet (färgkodning i figur 6 och 7). 

Self organizing maps

SOM användes för att reducera inputvektorerna till två dimensioner. SOM:en tränades först på  särdragsvektorerna och gav då resultat enligt figur 6. I diagrammet kan man tydligt se att de olika  styckena är klustrade i grupper motsvarande genrer. Den enda missklassificeringen är ett  reggae­stycke som hänförts till popklustret.      Figur 6. Klustring av data i två dimensioner utifrån en dimensionsreduktion av särdragsvektorerna. Varje  punkt i diagrammen representerar ett avsnitt ur trumstämman för ett musikstycke. De olika punkterna har  färgats baserat på genre. Färgfälten representerar ett sammanhållet kluster av avsnitt som tillhör samma  genre.      Att två punkter ligger nära varandra i diagrammen i figur 6 och 7 innebär att SOM:en har bedömt  att de punkterna är lika varandra med avseende på de mångdimensionella inputdatat. Att två  kluster ligger nära varandra innebär på samma sätt att de klustren har likheter med varandra.    Samma experiment gjordes med MFCC­vektorerna och gav resultat enligt diagrammet i figur 7.  Här går det fortfarande att se bevis på viss korrekt klustring, men långt ifrån lika tydligt som när  de perceptuella särdragen användes. Det finns tydliga kluster för reggae och jazz samt ett större  kluster för rock, medan pop och klassiskt hamnar utspritt. 

(14)

 

  Figur 7. Klustring av data i två dimensioner utifrån en dimensionreduktion av MFCC­vektorer. 

Klassificering

Support vector machine

En SVM med stöd för multiklassificering tränades till att klassificera de olika musikspåren som  tillhörandes en av de fem genrerna. SVM:en var konfigurerad till att använda en kärna baserad på  en gaussisk radial basfunktion (RBF) vilken tillåter hantering av icke­linjära  klassificeringsproblem. SVM:en tränades först på särdragsvektorerna, med klassificeringsdata  från lyssningsexperimentet. Datat delades upp i 75 % träningsdata och 25 % testdata. SVM:en  tränades alltså på 30 avsnitt och resultatet av träningen testades på 10 avsnitt i ett stratifierat  urval. Testerna visade att SVM:en uppnått en precision av 100 %.    SVM:en tränades också på MFCC­vektorerna och då uppnåddes en precision av 90 % när datat  delats upp i tränings­ och testdata enligt samma ratio som för de perceptuella särdragen. Ett  musikspår blev felaktigt klassificerat som rock.    För att få ett bra resultat från SVM:en var både MFCC­vektorerna och särdragsvektorerna  skalade så att deras värden låg på intervallet [0,1]. 

K-nearest neighbours

k­NN användes som ett alternativ till SVM för att se om det gav ett bättre eller likvärdigt resultat.  För träning av k­NN­implementationen användes samma uppdelning av tränings­ och testdata  som vid träning av SVM:en.   

(15)

När k­NN­algoritmen tränades med särdragsvektorerna uppnåddes en precision av 100 %.  Algoritmen använde en viktning baserad på det euklidiska avståndet mellan särdragsvektorerna  samt ett k­värde av 9 (antal grannar som användes vid avståndsbedömningen).    Med samma avståndsfunktion och ett k­värde av 7 samt träningsdatat utbytt mot  MFCC­vektorerna uppnåddes en precision av 70 %. Dvs 3 av 10 avsnitt blev felaktigt  klassificerade.      SVM  k­NN  Särdrag  100 %  100 %  MFCC:er  90 %  70 %  Tabell 1. Klassificeringsresultat för de olika algoritmerna med lyssningsexperimentet som referens. 

(16)

Diskussion

Lyssningsexperiment

Lyssningsexperimentet var framgångsrikt och lyssnarnas klassificeringar av de olika stämmorna  sammanföll med klassificeringarna från karaokeversion.com. Vissa problem uppstod dock i  sammanställningen av resultatet då det visade sig att spridningen bland svaren var väldigt stor.  Svaren visade tydligt att lyssnarna hade större framgångar med att klassificera hela mixar av  stycken än de separerade trumstämmorna, men att de kunde klassificera båda stämmorna så  att resultatet sammanföll med expertklassificeringen från karaokeversion.com.    För att minska variationen i svaren hade det varit bättre att använda likertskalor (Friberg,  Schoonderwaldt & Hedblad, 2011) istället för en kontinuerlig procentuell skala för att ange genre.  En likertskala är en skala där lyssnaren får ange genretillhörighet genom att välja bland ett antal  definierade värden. På frågan om hur pass mycket ett musikstycke tillhör genren pop skulle  alternativen kunna vara “inte alls”, “litet”, “mellan”, “mycket” och “fullständigt”. Den procentuella  skalan missuppfattades av vissa lyssnare och det uppstod också förvirring kring hur den skulle  tolkas. Vissa lyssnare tolkade det så att summan av alla genre­angivelser skulle summera till  100% vilket inte var intentionen. En likertskala skulle kunna skapa mindre sådan förvirring  samtidigt som den kan generera likvärdig data för statistik analys.    Vissa problem uppstod under lyssningsexperimentet. En del lyssnare hade dålig datorvana och  gjorde många misstag. Andra lyssnare tröttnade efter ett tag och började slarva. Slarv och  misstag var förvisso förutsett och motverkades genom att presentera stämmorna i slumpad  ordning, men på grund av undersökningens begränsade omfattning hade de enskilda misstagen  ändå stor effekt på resultatet. Antalet lyssnare var för litet för statistisk signifikans och de fel som  uppstod i datainsamlingen syntes tydligt i sammanställningen i form av stor spridning bland  svaren, många extrema värden (utliggare) i förhållande till antalet svar och ett stort  kvartilavstånd. För att få pålitlig data och kunna hitta en regression från särdragsvektorerna till de  5­dimensionella genreklassificeringarna hade det krävts en expertklassificering eller en mycket  omfattande lyssnarundersökning.    På grund av detta reducerades svarsvektorerna till en binär genreklassificering som med  framgång kunde användas i maskininlärningsmetoderna. Den klassificering som hittades i de  reducerade svarsvektorerna stämde också överrens med det experklassificerade datat från  karaokeversion.com. Lyssnarna lyckades alltså med uppgiften att klassificera genre, enbart  baserat på trumljud. 

Klassificering

För att hålla nere omfattningen av lyssningsexperimentet begränsades antalet musikstycken till  20. Från dessa 20 musikstycken togs 40 avsnitt med trumljud och användes som indata till  maskininlärningsalgoritmerna. Fyrtio datapunkter är lite i maskininlärningssammanhang och med  en sådan begränsad datamängd är det svårt att kontrollera “overfitting” i resultatet. Overfitting 

(17)

innebär att en maskininlärningsalgoritm tränats på ett sätt så att den korrekt kan klassificera data  i träningsmängden men inte kan generalisera till att klassificera ytterligare data.  Beslutsgränserna som algoritmen hittar blir för starkt anpassade till träningsdatat.    Ett vanligt sätt att motverka overfitting i maskininlärningsproblem med begränsad datamängd är  att använda korsvalidering. Korsvalidering innebär att träningsdatat delas upp i delmängder och  att träningen sker i iterationer där olika delmängder av träningsdatat används för träning  respektive validering av träningsresultatet. I denna studie fanns inte tid till att implementera  korsvalidering, vilket kan ha påverkat träningsresultatet på så vis att de funna beslutsgränserna  inte skulle ge ett likadant prediktionsresultat om de applicerades på andra indata. Med en större  datamängd, eller med korsvalidering, hade ett mer generellt träningsresultat kunnat uppnås vilket  hade givit en större säkerhet i slutsatserna.    Särdragsvektorerna gav genomgående ett bättre resultat än MFCC:er. Detta kan antas bero på  att särdragsvektorerna är skräddarsydda för att beskriva trumljuden, medan MFCC:erna är en  mer generell beskrivning av en ljudsignal. MFCC:erna innehöll också många fler parametrar än  särdragsvektorerna och i k­NN­algoritmen är det svårare att uppnå ett bra träningsresultat med  högdimensionella indata. 

(18)

Slutsats

Resultaten visar att trumljuden innehåller tillräcklig information för att avgöra genre, både för  lyssnare och för maskininlärningsmetoder. Det finns vissa osäkerheter kring resultatens  trovärdighet på grund av studiens begränsade omfattning men de funna resultaten visar entydigt  att genreklassificering baserat på trumljud är möjligt.     Särdragsvektorer baserade på trumspecifika attribut är bättre lämpade för att beskriva trumljud  än de mer generella MFCC­attributen. Båda beskrivningarna innehåller dock tillräcklig information  för att med framgång kunna träna en maskininlärningsalgoritm att klassificera genre. 

(19)

Referenser

Aucouturier J. & Pachet F (2003). “Representing Musical Genre: A State of the Art”. Journal of  New Music Research, 32:1, 83­93.    Mitchell, T (1997). Machine Learning. McGraw Hill. p2.    Müller, M (2007). Information Retrieval for Music and Motion. Springer. p. 65    Stevens, Volkman & Newman (1937). "A scale for the measurement of the psychological  magnitude pitch". Journal of the Acoustical Society of America 8 (3): 185–190.    Radvansky, G (2005). Human Memory. Boston: Allyn and Bacon. pp. 65–75.    Ganchev T., Fakotakis N., & Kokkinakis G. (2005), "Comparative evaluation of various MFCC  implementations on the speaker verification task,". 10th International Conference on Speech and  Computer (SPECOM 2005), Vol. 1, pp. 191–194.    Sahidullah, Md., Saha, Goutam (2012). "Design, analysis and experimental evaluation of block  based transformation in MFCC computation for speaker recognition". Speech Communication  54 (4): 543–565.    Elowsson, A., Friberg, A., Madison, G. & Paulin, J. (2013). “Modelling the Speed of Music Using  Features from Harmonic/Percussive Separated Audio”. Proceedings of the 14th International  Society for Music Information Retrieval Conference (ISMIR 2013); Curitiba, Brazil, 4­8 November,  2013 (pp. 481­486).    Norton, Karczub (2003). Fundamentals of Noise and Vibration Analysis for Engineers.  Cambridge University Press.    Friberg A., Schoonderwaldt E., Hedblad A (2011). “Perceptual ratings of musical parameters.” In  von Loesch, H., & Weinzierl, S. (Eds.), Gemessene Interpretation ­ Computergestützte  Aufführungsanalyse im Kreuzverhör der Disziplinen (pp. 237­253). Mainz: Schott 2011, (Klang  und Begriff 4).    Scaringella N., Zoia G & Mlynek D (2006). "Automatic genre classification of music content: a  survey." IEEE Signal Processing Magazine  Vol. 23(2),  133­141.    Tzanetakis G., Cook P (2002). "Musical genre classification of audio signals." IEEE transactions  on Speech and Audio Processing, Vol. 10(5), 293­302.         

(20)

Appendix A: Valda musikstycken med genreklassificering från

karaokeversion.com

 

Artist  Namn  Genre 

Katy Perry  Roar  Pop 

Britney Spears  ...Baby One More Time  Pop 

ABBA  Super Trouper  Pop 

Madonna  Papa Don’t Preach  Pop 

Wham  Wake Me Up Before You Go­Go  Pop 

Iron Maiden  The Trooper  Rock 

Judas Priest  Breaking The Law  Rock 

Led Zeppelin  Immigrant Song  Rock 

Motörhead  Ace Of Spades  Rock 

Black Sabbath  Paranoid  Rock 

Bob Marley  No Woman, No Cry  Reggae 

Bob Marley  Is This Love  Reggae 

Peter Tosh  Legalize It  Reggae 

Billie Holiday  Easy Living  Jazz 

Louis Armstrong  A Kiss To Build A Dream On  Jazz 

Ella Fitzgerald  Summertime  Jazz 

Andrew Sisters  Sing Sing Sing  Jazz 

Andrea Bocelli  Nessun Dorma  Klassiskt 

Nikolai Rimsky­Korsakov  Flight Of The Bumblebee  Klassiskt 

Gioachino Rossini  William Tell Overture  Klassiskt 

 

(21)

Appendix B: Enkätsvar

Medianvärden för trummstämmor

Musikspår  Pop  Rock  Reggae  Jazz  Klassiskt  Klassificering 

abba­drums­1  54  5  0  0  0  Pop  abba­drums­2  75  0  0  0  0  Pop  andrew­sisters­drums­1  0  0  0  100  0  Jazz  andrew­sisters­drums­2  0  0  0  100  0  Jazz  billie­holiday­drums­1  0  0  0  100  0  Jazz  billie­holiday­drums­2  0  0  0  100  0  Jazz  black­sabbath­drums­1  0  100  0  0  0  Rock  black­sabbath­drums­2  0  100  0  0  0  Rock  bob­marley­is­this­love­drums­1  0  0  100  0  0  Reggae  bob­marley­is­this­love­drums­2  0  0  100  0  0  Reggae  bob­marley­no­woman­no­cry­1  0  0  100  0  0  Reggae  bob­marley­no­woman­no­cry­2  0  0  100  0  0  Reggae  britney­spears­drums­1  50  0  0  0  0  Pop  britney­spears­drums­2  50  0  0  0  0  Pop  ella­fitzgerald­drums­1  0  0  0  99  0  Jazz  ella­fitzgerald­drums­2  0  0  0  100  0  Jazz  flight­of­the­bumblebee­drums­1  0  0  0  0  100  Klassiskt  flight­of­the­bumblebee­drums­2  0  0  0  0  100  Klassiskt  iron­maiden­drums­1  0  100  0  0  0  Rock  iron­maiden­drums­2  0  100  0  0  0  Rock  judas­priest­drums­1  0  100  0  0  0  Rock  judas­priest­drums­2  0  80  0  0  0  Rock  katy­perry­drums­1  51  0  0  0  0  Pop  katy­perry­drums­2  64  0  0  0  0  Pop  led­zeppelin­drums­1  0  69  0  0  0  Rock  led­zeppelin­drums­2  0  100  0  0  0  Rock  louis­armstrong­drums­1  0  0  0  100  0  Jazz  louis­armstrong­drums­2  0  0  0  90  0  Jazz  madonna­drums­1  71  0  0  0  0  Pop  madonna­drums­2  77  0  0  0  0  Pop  motorhead­drums­1  0  100  0  0  0  Rock 

(22)

motorhead­drums­2  0  100  0  0  0  Rock  nessun­dorma­drums­1  0  0  0  0  100  Klassiskt  nessun­dorma­drums­2  0  0  0  0  100  Klassiskt  peter­tosh­drums­1  0  0  100  0  0  Reggae  peter­tosh­drums­2  0  0  90  0  0  Reggae  wham­drums­1  40  33  0  0  0  Pop  wham­drums­2  86  0  0  0  0  Pop  william­tell­drums­1  0  0  0  0  90  Klassiskt  william­tell­drums­2  0  0  0  0  77  Klassiskt 

Medianvärden för hela mixar

Musikspår  Pop  Rock  Reggae  Jazz  Klassiskt  Klassificering 

abba­mix  100  0  0  0  0  Pop  andrew­sisters­mix  0  0  0  100  0  Jazz  billie­holiday­mix  0  0  0  100  0  Jazz  black­sabbath­mix  0  100  0  0  0  Rock  bob­marley­is­this­love­mix  0  0  100  0  0  Reggae  bob­marley­no­woman­no­cry­mix  0  0  100  0  0  Reggae  britney­spears­mix  100  0  0  0  0  Pop  ella­fitzgerald­mix  0  0  0  100  0  Jazz  flight­of­the­bumblebee­mix  0  0  0  0  100  Klassiskt  iron­maiden­mix  0  100  0  0  0  Rock  judas­priest­mix  0  100  0  0  0  Rock  katy­perry­mix  100  0  0  0  0  Pop  led­zeppelin­mix  0  100  0  0  0  Rock  louis­armstrong­mix  0  0  0  100  0  Jazz  madonna­mix  100  0  0  0  0  Pop  motorhead­mix  0  100  0  0  0  Rock  nessun­dorma­mix  0  0  0  0  100  Klassiskt  peter­tosh­mix  0  0  100  0  0  Reggae  wham­mix  100  0  0  0  0  Pop  william­tell­mix  0  0  0  0  100  Klassiskt         

(23)

Appendix C: Perceptuella särdrag

Attributnamn  Beskrivning  rms_diff, rms_diffLOG, rms_diffABSLOG  Skillnad i ljudstyrka mellan harmonisk och perkussiv  del av audion  perc_sal, perc_sal2, perc_sal3, perc_sal4,  percussion  Hur "perkussiv" låten är  orgCtrd1  Centroiden av spektrum  orgSp3, orgSp3db, orgSp4, orgSp4db  Spektrum i band  orgSpBinOct1, orgSpBandOct1, orgSpBinOct2,  orgSpBandOct2, orgSpBinOct3, orgSpBandOct3,  orgSpBinOct4, orgSpBandOct4, orgSpBinOct5,  orgSpBandOct5, orgSpBinOct6, orgSpBandOct6,  orgSpBinOct7, orgSpBandOct7, orgSp3b, orgSp3dbb,  orgSp4b, orgSp4dbb  Ljudnivå i oktaver  h_on_han1, h_on_han1s, h_on_han2, h_on_han2s,  h_on_80, h_on_80SC, h_on_80SCm, h_on_80SCl,  h_on_80FX, h_on_100, h_on_100SC, h_on_100SCm,  h_on_100SCl, h_on_100FX, h_on_p10, h_on_p10SC,  h_on_p10SCm, h_on_p10SCl, h_on_p10FX,  h_on_p20, h_on_p20SC, h_on_p20SCm,  h_on_p20SCl, h_on_p20FX  "Harmoniska" onsets olika mått  harm_flux, harm_fluxT, harmonic  Spectral flux på harmoniska delen  on_sec, on_sec_flux, sec_on  Onsets per sekund  perc_on_sec, perc_on_sec_flux, perc_sec_on,  harm_on_sec, harm_on_sec_flux, harm_sec_on  Perkussiva onsets per sekund  rms_org, rms_org10, rms_orgLOG, rms_org10LOG,  rms_perc, rms_perc10, rms_percLOG,  rms_perc10LOG, rms_harm, rms_harm10,  rms_harmLOG, rms_harm10LOG, rms_percCQT,  rms_percCQT10, rms_percCQTLOG,  rms_percCQT10LOG, rms_harmCQT,  rms_harmCQT10, rms_harmCQTLOG,  rms_harmCQT10LOG, rms_diff10,  rms_org_vs_harm, rms_orgLOGtime,  rms_percLOGtime, rms_harmLOGtime,  rms_percCQTLOGtime, rms_harmCQTLOGtime  Jämförelser mellan harmoniska och perkussiva delar  i db ljud nivå ("10" står för att man fokuserat på  starkaste tio sekunderna)  rel_w, rel_w_ctrd, rel_w_compare, rel_w_compare12,  rel_w_compare15, rel_w_compare2,  rel_w_compare10, rel_wperc, rel_w_ctrdperc,  rel_w_compareperc, rel_w_compare12perc,  rel_w_compare15perc, rel_w_compare2perc,  rel_w_compare10perc  Viktning för onsets som tar hänsyn till avstånd mellan  dem. Onsets inom "perceptuella nuet" jämförs  r_comp1, r_comp2, r_comp3, r_comp4, sec_on_str2,  rel_time, pos05, pos06, pos07, pos08, posW  Rytmisk komplexitet 

(24)

cep_period  Cepstrum av nästa fälts histogram  ioi_p  Längden av den mest signifikanta perioden i  trummorna  prob24, prob44, prob34, prob68, prob1, firstpeak100,  firstpeak90, firstpeak80  Sannolikhet för olika taktartsindelningar  raise3  Sannolikhet för tretakt  t1, t2  De två tempon som jag funnit "Det som testades i  mirex"   

References

Related documents

Ur materialism, mekanism, associationspsykologi och utvecklingspsykologi utvecklades under 1900-talet behaviorismen (John B. Skinner) som hos Leahey ges stort

Om man inte reglerar denna fråga uttryckligen och uttömmande kan det få allvarliga konsekvenser för varumärkets goodwill eftersom licenstagaren i sådana fall kan hävda att han

Målet var att via iscensättningar av olika identiteter synligöra kropp, kön, identitet, sexualitet och rörelse som processer, inte statiska tillstånd (Hellqvist- Sellén

Skriven av Johanna Österling-

Flickor uppger i högre grad att de mått sämre av att de inte kunnat ha samma sociala kontakt med sina vänner och av de som uppger att deras hälsa försämrats

miljökvalitetsmålet uppfylls då åtgärder finns för att minska påverkan på vatten till exempel genom mål och åtgärder för en ökad insamling av farligt avfall, läkemedel,

Likaledes uppskattar vi att marknaden för tunga fordon kommer att växa från ungefär 7,5 miljoner motorekvivalenter under 2007 till ungefär 10,5 miljoner motorekvivalenter år

bildkompositionen blir således att åskådaren bereds närhet till och identifikation med både Stéphane och romerna, men något mer till/med de sistnämnda, vilket medför att