Neurale Netwerken voor de herkenning van  emoties in muziek

 

Tom Kirsch

 

 

Abstract. In dit artikel wordt een modellen vooorgesteld voor het opstellen van een zogenoemde ‘Emotional Sound Space’ aan de hand van een geluidssignaal. Deze ‘Emotional Sound Space’ is een twee- of driedimensionele sound space die de subjectieve eigenschappen van een geluidsfragment weergeeft. Toepassingen kunnen gevonden worden in het automatisch classificeren van geluidsfragmenten in een database of voor de herkenning van instrumenten aan de hand van een geluidsfragment. Omgekeerd kan er ook gedacht worden het genereren van geluid vertrekkend van een menselijke beschrijving van het gewenste resultaat.

Eerst wordt beschreven hoe het analoge geluidssignaal dient omgezet te worden om de nodige data te leveren voor de input in het neurale netwerk. Vervolgens wordt het model aan de hand van neurale netwerken uitgewerkt. Deze uitwerking is voor een gedeelte gebaseerd op het werk van Kenji Suzuki en zijn experimentele bevindingen.  Tot slot wordt het neurale netwerk model vergeleken met andere modellen en worden nog enkele bedenkingen gemaakt en worden de besluiten geformuleerd.

 

 

 

1.   Inleiding

 

Het online raadplegen van multimediadocumenten wint steeds meer en meer aan belang. Dit kan gebeuren door te navigeren door een database of langs links op het internet. Echte zoekalgoritmes voor multimediabestanden zoals die bestaan voor html-documenten, en recentelijk door de zoekrobot Google ook voor pdf-documenten, komen nog maar zelden voor. Indien deze diensten toch worden aangeboden gaat het meestal om zoekacties op bestandsnaam. Iemand die bijvoorbeeld een foto van een huis zoekt of een filmpje over honden kan soms heel lang bezig zijn. De reden hiervoor is dat de technologie om metagegevens af te leiden uit een multimediabestand nog vrij nieuw is en dus praktisch nog niet toepasbaar is of tenminste nog niet ingeburgerd is.

Een ander voorbeeld van multimediabestanden zijn geluidsbestanden. Hoewel de nood aan metagegevens over geluidsbestanden niet altijd onmiddelijk zichtbaar is, kan men zich op muziekaal-educatief niveau bijvoorbeeld toch heel wat interessante toepassingen indenken. Zo kunnen neurale netwerken bijvoorbeeld hun nut bewijzen om muziek beter te begrijpen. Ook het opzoeken van een stuk muziek zonder dat men de tittel kent is momenteel een onmogelijke taak die waarschijnlijk ooit zal uitgevoerd worden door neurale netwerken.

Anderzijds kan er bij het produceren van nieuwe muziek een omgekeerde weg gevolgd worden. In plaats van geconfronteerd te zijn met letterlijk honderden knopjes, die elk een bepaalde functie hebben en zelden snel een gewenst resultaat geven, zou een muzikant veel beter gediend zijn indien zijn muziek aangepast of opgewekt kon worden aan de hand van een beschrijving. Zelfs ervaren synthesizer-muzikanten zijn meestal nog uren bezig om één bepaalde klank te vinden die ze echter wel zeer nauwkeurig kunnen omschrijven. Het probleem situeert zich in dit geval duidelijk op de mens-machine interface.

Geluid bestaat voornamelijk uit drie factoren : een toonhoogte, een dynamisch vermogen en een timbre. De twee eerste factoren zijn gemakkelijk te herleiden tot fysische eigenschappen zoals de amplitude en de frequentie van het geluidssignaal. De relatie tussen het timbre, of dus de klankkleur, en de fysische eigenschappen is heel wat moeilijker te modelleren omwille van het subjectieve karakter van een timbre.

Het opstellen van impression space kan een oplossing bieden voor dit probleem. Deze impression space wordt opgesteld aan de hand van de subjectieve verschillen tussen 2 geluidsfragmenten die een luisteraar waarneemt en vervolgens kwantificeert. Eens het inputsignaal juist verwerkt is, blijkt het opstellen van deze impression space vrij eenvoudig te kunnen gebeuren door middel van een neuraal netwerk. Het bewerken van de input komt aan bod in de volgende paragraaf. Paragraaf 3 zal uitgebreid ingaan op de Neurale Netwerk methode om een impression space, en van daar uit een Emotional Sound Space op te stellen. In paragraaf 4 wordt dieper ingegaan op het type netwerk dat gebruikt wordt. Tot slot wordt het model vergeleken met andere bestaande modellen voor het classificeren van geluidsbestanden.

2.   Digitaliseren en quantiseren van de geluidsfragmenten.

 

Het digitaliseren en quantiseren van de geluidsfragmenten gebeurt in verschillende stappen. In een eerste fase dient het analoge geluid gedigitaliseerd te worden. Dit gebeurt best aan minstens 44.1 kHz en in 16 bit waardes om een optimale kwaliteit te garanderen. Vervolgens worden de geluidsfragmenten opgebroken in frames van 46 ms met een overlap van 11.5 ms. Door dan een Fast Fourier Analyse toe te passen bekomt men per frame een spectogram.

Dit spectogram wordt daarna opgedeeld in 8 stukjes langs de tijdsas en in 16 stukjes langs de frequentieas. Op die manier bekomt men per frame 128 waarden voor de verschillende energiewaardes in het frequentie-tijdsdomein. Figuur 1 en figuur 2 geven een voorbeeld van een viool vóór (figuur 1) en na (figuur 2) het quantiseren van een geluidsframe.

 

      

    Figuur 1                                                                                        Figuur 2

 

Tenslotte wordt deze vector nog kleiner gemaakt door Principale Componenten Analyse. De dimensie van de principale componenten dient zo gekozen dat de verdelingsgraad groter dan 95% is.

 

3.   Opstellen van de Emotional Sound Space

Om een goede maatstaf voor het classificeren van geluid te hebben, wordt aan de gebruiker gevraagd om de verschillende geluidsfragmenten paarsgewijs een score te geven voor hun assimilariteit. Dit kan bijvoorbeeld gebeuren op een schaal van 1 tot 7. Geluidsfragmenten die sterk verschillen zullen dus een hogere waarde krijgen dan gelijkaardige geluidsfragmenten. Op die manier bekomt men dan een  matrix met de verschillende waarden voor de gelijkenissen tussen de vele geluidsfragmenten. Deze matrix kan vervolgens gebruikt worden om een neuraal netwerk te trainen.

In ‘Modeling of Emotional Sound Space Using Neural Networks’[1] wordt een  structuur van een network voorgesteld dat gebruik maakt van 2 three-layered perceptrons en een Distance Unit. Het voorgestelde netwerk is een vrij eenvoudig supervised learning model. Op de specifieke karakteristieken van het model wordt later dieper ingegaan.

Eenmaal het model getraind is, kan het netwerk nieuwe data automatisch classificeren in de output space. Dit kan eventueel op een continue manier gebeuren. Figuur 3 illustreert de netwerkstructuur die voorgesteld wordt.

Figuur 3

 

Part A en Part B zijn twee identieke three-layered perceptrons. Als input dienen de fysieke geluidsparameters zoals die onder paragraaf 2 berekend werden. De dimensie van die parameters is P. De output van Part A en Part B zijn de zogenaamde ‘Emotional Sound Space’ parameters en de dimensie van die parameters kan arbitrair gekozen worden.

Het derde deel, Part C, wordt de ‘Distance Unit’ genoemd en deze unit berekent de afstand in de emotional sound space tussen de output van Part A en de output van Part B. Om die afstand te kunnen berekenen is het dus wel degelijk belangrijk dat Part A en Part B identiek zijn zodat ze de zelfde output-dimensie hebben.

Part A en Part B worden respectievelijk met de inputparameters van twee verschillende geluidsfragmenten gevoed. Het trainen van het netwerk gebeurt nu door in Part C de afstand d(A,B) te bereken tussen de output van Part A en de output van Part B en deze afstand te vergelijken met de assimilariteit t(A,B) tussen de twee geluidsfragmenten zoals die subjectief door een persoon werd ingegeven. De connection weights in de netwerken A en B worden dan zodanig aangepast dat het verschil tussen t(A,B) en d(A,B) minimaal wordt.

De afstand d(A,B) kan eenvoudigweg met de Euclidische afstand berekend worden :

 

 

 

Unit i in de inputlayer van het neurale netwerk is verbonden met de hidden layer j en krijgt een gewicht wij mee. Zoals eerder beschreven bestaat de doelfunctie uit het minimaliseren van de afstand tussen t(A,B) en d(A,B) :

 

 

n is hier aantal geluidsfragmenten dat gebruikt wordt om het netwerk te trainen.

Om deze functie te minimaliseren moeten de partiële afgeleiden van Ep naar de verschillende wij genomen worden. Dit geeft dan de relatie tussen Ep en wij :

 

 


Aan de hand van deze vergelijking kan een hernieuwingsfunctie worden opgesteld :

 

 

Hierin dienen nog correcte waarden voor α en η gekozen te worden. Ze kunnen arbitrair gekozen worden en zorgen er voor dat de invloed van de tijd t, kleiner wordt naar gelang er langer getraind wordt. Daarom moeten α en η uiteraard wel kleiner dan 1 zijn.

 

Het leerproces tussen de hidden layer en de output layer kan op dezelfde manier gebeuren als tussen de input layer en de hidden layer. Aangezien het netwerk enkel de Euclidische aftstand tussen de output van Part A en die van Part B nodig heeft, kan het aantal output layers vrij gekozen worden, zolang ze beide delen maar een zelfde dimensie hebben. Het is dus belangrijk, zoals eerder opgemerkt, dat Part A en Part B exact dezelfde structuur hebben en ook op dezelfde manier getraind worden.

 

4.   Keuze van het neurale netwerk

 

De in de vorige paragraaf voorgestelde methode laat heel wat keuzes in verband met het netwerk open. De waarden voor de eerder aangehaalde α en η bijvoorbeeld zullen sterk afhangen van het aantal trainingsgegevens dat beschikbaar is. Ook het feit of er na de training van de gegevens door de gebruiker van het systeem nog correcties kunnen uitgevoerd worden zal bepalend zijn voor de keuze van α en η.

Het trainingsalgoritme voor de perceptrons zal meestal een back-propagation algoritme zijn[2]. Een verklaring hiervoor vindt men vooral in het sequentiële karakter van de input en dus de mogelijkheid om een zelfde fragment meerdere malen aan het neurale netwerk aan te bieden. Dit laat ons toe om het netwerk met relatief weinig gegevens te trainen.

Op het niveau van de perceptrons werd reeds een multi-layer netwerk verondersteld gezien de vereiste niet-lineairiteit van het netwerk en de vrij complexe mapping tussen input en output. Als transfertfunctie wordt gebruik gemaakt van een Sigmoid transfertfunctie.

Sigmoid functies hebben enkele voordelen. Ten eerste bieden ze voordelen voor het bereken van de eerste orde afgeleides zoals die in de vergelijkingen in paragraaf 3 dienden berekend te worden. Een ander voordeel van de Sigmoidfunctie is het feit dat ze een oneindig aantal waarden kan aannemen zonder dat er grote schommelingen optreden in de output. Dit laat toe het netwerk steeds te verfijnen door tijdens het gebruik, grove fouten van het netwerk aan te geven en dan deze fout geïnterpreteerde gegevens juist te trainen. Anderzijds heeft een uitzonderlijke input niet al te veel invloed op het netwerk.

Fujinaga[3] bespreekt verschillende andere manieren om timbres te herkennen in muziek. De methodes zullen hier kort worden toegelicht. In de volgende paragraaf komen de resultaten van de neurale netwerken aan bod.

 

·       Exemplar based model : zonder dat er abstractie gemaakt wordt van bepaalde concepten worden de objecten geclassificeerd op basis van hun similariteit met een vooraf ingegegeven object.

·       K-nearest-neighbor classifier : hier wordt gebruik gemaakt van een feature vector om de k-nearest objecten aan een nieuw object toe te wijzen.

·       Feature selection : deze methode bestaat erin te beslissen welke features best gebruikt kunnen worden om de verschillende objecten te onderscheiden.

·       Genetische algoritmes : elke feature wordt hier voorgesteld door één bit. Elk zo bekomen geen heeft dan een andere volgorde van bits, die de verschillende features beschrijven.

 

De resultaten waren het meest overtuigend voor het exemplar based model. Dit model haalde herkenningen die zeker kunnen concurreren met de menselijke herkenning van instrumenten. Het voordeel van dit model is verder dat het, in vergelijking met de andere modellen, zeer weinig features nodig heeft. Een nadeel is echter dat deze modellen tijdens de training expliciet verschillende toonhoogtes nodig hebben en dus van relatief veel trainingsgegevens afhankelijk zijn.

 

 

5.   Resultaten van het neurale netwerk

 

In een experiment van Suzuki werden 10 geluidsfragmenten gebruikt om een neuraal netwerk te trainen. Over de verschillen in toonhoogtes die mogelijk zijn binnen een zelfde timbre, wordt in de paper niets vermeld. Dit is een toch niet te onderschatten invloed. Het is algemeen bekend dat sommige timbres heel anders kunnen klinken, louter en alleen afhankelijk van de toonhoogte waarin ze gespeeld worden.

Tabel 1 geeft een overzicht van de gebruikte instrumenten. Instrumenten aangeduid met een sterretje werden gebruikt voor de training.

 

Fluit *

Klarinet

Fagot

Tenor Saxofoon

Harmonica*

Hobo*

Euphonium

Trompet*

Tuba

Trombone*

Hoorn

Electrische Gitaar

Klassieke Gitaar*

Harp

Contrabass

Altviool*

Viool

Cello*

Piano*

Cembalo*

Orgel

Accordeon

Tabel 1

 

De eerste stap is het opstellen van de feature parameters van de geluidsfragmenten. Vervolgens dienen subjectieve gegevens verzameld te worden over de vergelijking tussen de geluidsfragmenten onderling. Hierbij kan opgemerkt worden dat er voor het herkennen van emoties net als bij spraakherkenning een gebruikersafhankelijk profiel kan opgemaakt worden. Sommige klanken of instrumenten klinken voor de ene persoon opgewekt en open terwijl ze voor iemand anders juist treurig en gesloten kunnen klinken. Op die manier kan men een netwerk dan later per gebruiker gaan trainen. In het experiment hadden de gebruikers geen specifieke muzikale achtergrond.

Het trainen van het netwerk duurde ongeveer 30 tot 60 seconden op een SUN PARK Station 20. Na de training werd het systeem getest door het netwerk de 12 resterende instrumenten in de ‘Emotional Sound Space’ te laten plaatsen. De resultaten waren gelijkaardig aan de resultaten bekomen in het Exemplar based modelen dus vrij goed. Firguur 3 en 4 geven de resultaten weer.

 

 

                          Figuur 4                                                                                      Figuur 5

 

 

In Figuur 4 wordt de lineaire transformatie van de 10 trainingsgegevens weergegeven. Hier is voor de eenvoud een 2 dimensionele ruimte gebruik. Deze twee dimensionele weergave is de voorstelling van de geluidfragmenten na de Principale Componenten Analyse, maar voor ze in het neurale netwerk werden gestoken. De verdeling van de principale componenten was zo dat de eerste as reeds 61.5 % verklaarde en de twee 25.9. Er waren uiteindelijk 4 principale componenten nodig om de vereiste 95 % te berieken.

Figuur 5 is de ‘Emotional Sound Space’ van de geluidsfragmenten zoals die door een persoon geëvalueerd werden. Dit is dus de output van het neurale netwerk Part B. De lijnen in die figuur komen overeen met de lijnen in figuur 4. Deze figuren geven dus voor een twee dimensionele ruimte weer welke mapping het neurale netwerk uitvoert.

 

 

6.   Besluit

 

In de geraadpleegde papers was er wel af en toe sprake van ‘emoties’ in muziek herkennen, maar dit kwam meestal neer op het herkennen van instrumenten uit een eindige set van. Ondanks het feit dat deze herkenning de menselijk herkenning zeker benadert, is er volgens mij nog een groot onderscheid tussen het herkennen van een instrument en emoties uit muziek halen. De snelheid en de relatieve eenvoud van de neurale netwerkenmethode zijn zeker een argument voor het opstellen van gebruikersafhankelijke profielen, om zo duidelijk een onderscheid te kunnen maken tussen objectieve classificatie van instrumenten en het subjectief toewijzen van gevoelens aan bepaalde klanken.

Het principe van het paarsgewijs vergelijken van geluiden in plaats van ze één per één onmiddelijk toe te wijzen verdient ook aanbeveling. Het is duidelijk dat het gemakkelijker is om twee klanken een maat voor hun similariteit te geven dan een klank appart te evalueren op zijn maat van opgewektheid.

Een nadeel van het neurale netwerken experiment is dat er helemaal geen sprake is de toonhoogtes van de verschillende instrumenten. Ook het mappen van de fysieke sound space naar de ‘Emotional Sound Space’ kan qua interpretatie te wensen over laten. Bij de neurale netwerken werd er eigenlijk enkel een spectraalvoorstelling van de geluidsfragmenten opgesteld. Dit in tegenstelling tot bijvoorbeeld het Exemplar-based model, waar er uit de geluidsfragmenten veel meer interpreteerbare features worden afgeleid zoals de verschillende momenten van het signaal (bijv. Centroid) , kurtosis, de standaard afwijking, de harmoischen van het signaal,... Uit de experimenten bleek echter dat vooral de centroid van een signaal bepalend was voor het timbre.

De snel uitbreidende wetenschap van de neurale netwerken biedt een nieuwe kijk op multimedia computertoepassingen. Momenteel moeten praktische resultaten van zulke multimediatoepassingen van neurale netwerken nog in de experimentele fase gezocht worden. Vooral aan de input zijde (het interpreteren van bestaande muziek) is er nog veel werk te doen. Het feit dat er aan de output zijde (het generen van nieuwe muziek door middel van een neuraal netwerk) stilaan bruikbare toepassingen verschijnen is hoop gevend en impliceert volgens dat bruikbare toepassingen aan de input zijde slechts een kwestie van enkele jaren is.


Referenties

 

1.     ‘Modeling of Emotional Sound Space Using Neural Networks’, Kenji Suzuki & Shuji Hashimoto,

2.     ‘A neural net model for pitch perception’, Sano H. and B.K. Jenkins

3.     Machine recognition of timbre using steady-state tone of acoustic musical instruments’, Ichiro Fujinaga

 

 

 

Papers

 

1.     ‘Neural network music composition by prediction: Exploring the benefits of psychoacoustic constraints and multiscale processing’, Michael C. Mozer

2.     ‘Adaptive Classification of Environmental Sounds’, Nitin Sawhney

3.     ‘Neural Networks for Applications in the Arts’, Peter M Todd

 

 

 

Geraadpleegde Websites

 

1.     Incremental multidimensional scaling method for database visualization http://www.cl.cam.ac.uk/~wb204/SPIE3643-18/3643-18.html

2.     Instituut voor Psychoacustica en Elektronische Muziek http://www.ipem.rug.ac.be/

3.     Kenji Suzuki Homepage http://www.phys.waseda.ac.jp/shalab/~kenji/

4.     Modified Back-Propagation http://www.miat.ee.isu.edu.tw/89-2/neural/ch5/

5.     Music Cognition at the Ohio State University http://www.music-cog.ohio-state.edu/

6.     Neural Networks http://hugsvr.kaist.ac.kr/~kywch0/Storage/aim/neural/neural4.htm

7.     Sumeet's Neural Network Page http://www.geocities.com/CapeCanaveral/Lab/3765/neural.html

 

 

 

 



[1] ‘Modeling of Emotional Sound Space Using Neural Networks’, Kenji Suzuki & Shuji Hashimoto, http://www.phys.waseda.ac.jp/shalab/~kenji/pdf/AIMI.pdf

[2] ‘A neural net model for pitch perception’, Sano H. and B.K. Jenkins

[3] Machine recognition of timbre using steady-state tone of acoustic musical instruments’, Ichiro Fujinaga

http://gigue.peabody.jhu.edu/~ich/research/icmc98/icmc98.timbre.pdf