Design and Realisation of an Efficient Content Based Music Playlist Generation System
Total Page:16
File Type:pdf, Size:1020Kb
?? . Balkema. Balkema J.WJ.W ficient Content Based Design and Realisation of an Ef Music Playlist Generation System Design and Realisation of an Efficient Content Based Music Playlist Generation System - J.W. Balkema ISBN: 978-90-365-2886-3 DOI: 10.3990/1.9789036528863 Design and Realisation of an Efficient Content Based Music Playlist Generation System Wietse Balkema De promotiecommissie: voorzitter en secretaris: prof.dr.ir. J. van Amerongen Universiteit Twente promotoren: prof.dr.ir. C.H. Slump Universiteit Twente prof.dr.-ing K. Brandenburg Fraunhofer Institut für Digitale Medientechnik ass.promotor: dr.ir. F. van der Heijden Universiteit Twente referent: dipl.-ing G. Spreitz Bosch, Hildesheim leden: prof.dr.ir. P.L. Regtien Universiteit Twente prof.dr.ing. W.B. Verwey Universiteit Twente dr. A. Hanjalic TU Delft/Universiteit Twente Signals & Systems group P.O. Box 217, 7500 AE Enschede, the Netherlands Print: Wöhrmann Print Service A Typesetting: LTEX2e © 2009 J.W. Balkema, Hildesheim, Germany No part of this publication may be reproduced by print, photocopy or any other means without the permission of the copyright owner. ISBN 978-90-365-2886-3 DOI 10.3990/1.9789036528863 DESIGN AND REALISATION OF AN EFFICIENT CONTENT BASED MUSIC PLAYLIST GENERATION SYSTEM PROEFSCHRIFT ter verkrijging van de graad van doctor aan de Universiteit Twente, op gezag van de rector magnificus, prof. dr. E. Brinksma, volgens besluit van het College voor Promoties in het openbaar te verdedigen op 27 augustus 2009 om 13.15 uur door Jan Wietse Balkema geboren op 9 november 1978 te Arnhem Dit proefschrift is goedgekeurd door de promotoren: Prof.dr.ir. C.H. Slump Prof.dr.-ing K. Brandenburg © 2009 J.W. Balkema, Hildesheim, Germany ISBN 978-90-365-2886-3 There’s a basic rule which runs through all kinds of music, kind of an unwritten rule. I don’t know what it is. But I’ve got it. - Ron Wood, guitarist of the Rolling Stones Abstract This thesis is on the subject of content based music playlist generation systems. The primary aim is to develop algorithms for content based music playlist generation that are faster than the current state of technology while keeping the quality of the playlists at a level that is at least comparable with that of the current state of technology. Not only need the algorithms be fast, they shall also allow flexibility for the end user to be able to tune the algorithms to match his personal requirements. For evaluation of the algorithms, a framework for automatic content based music playlist generation is developed and presented. In order to be able to evaluate the quality of music playlist generation systems, criteria for quality judgment of playlists have to be known. To gain insight in these quality criteria, a questionnaire is developed. The responses on this questionnaire are analysed. It shows that the number of parameters that influence the perceived quality of a personal playlist is huge, and the individual variation of desired values is large. Because of the large variance in preferred values, it is impossible to find one single set of parameters that suits for all people. Using the results of the questionnaire, it is argued that playlist genre consistency is a suitable criterion for assessing playlist quality. Songs within a playlist should have approximately the same genre. The key to good music playlist generation systems therefore is a good music similarity measure, that allows finding ‘similar’ music. To speed up music playlist generation systems, the music similarity measures used by these systems should be fast. This thesis presents two steps towards faster music similarity measures. The first step is early in the process of determining music similarity. The properties of each song are statistically described by a Gaussian mixture model. Similarity between songs is determined by applying the earth mover’s distance on these statistical models of the songs to measure the similarity of the songs. Where the current state of technology uses a constant number of Gaussians for all songs, this thesis presents a method to estimate an optimal number of Gaussians for each individual song. This prevents the Gaussian mixture i models from overfitting the data of one song and allows the average number of Gaussians per song to be reduced without sacrificing quality of the similar- ity measure. The computation time decreases quadratically with the average reduction of the number of Gaussians. The second step towards faster playlist generation algorithms is an algo- rithm that allows Gaussian mixture models to be embedded into self organizing maps. Self organizing maps are neural networks that traditionally allow fea- tures of high dimensionality to be mapped into a low dimensional space. In this research, self organizing maps with embedded Gaussian mixture models have been pioneered. Using Gaussian mixture models as neurons in a self organizing map allows robustness of the song models to be obtained even in the low dimensional space of the map. After training a self organizing map and mapping the song models to the map, song similarity calculations are per- formed in the two-dimensional space of the self organizing map, instead of the high dimensional gaussian mixture models. The two-dimensional space allows using simple distance measures like the euclidean distance, to determine the similarity between two songs. This is orders of magnitude faster than using the earth mover’s distance on the statistical song models directly. It shows that the average number of clusters per song can be reduced by using Gaussian mixture models with an individually estimated optimal number of clusters per song. This allows faster music similarity computation without sacrificing quality of the similarity measure. Projecting the Gaussian mixture models in self organizing maps allows song similarity to be calculated extremely fast. By combining multiple self organizing maps, flexible, high-quality music playlist generation systems can be realised. ii Samenvatting Dit proefschrift bespreekt systemen die automatisch (muziek)playlisten samen- stellen en daarbij uitsluitend gebruik maken van de inhoud van de muziek. Het doel van het onderzoek is het ontwikkelen van algoritmes die sneller zijn dan de algoritmes die in de huidige stand der techniek toegepast worden, zonder daar- bij aan kwaliteit in te boeten. Deze algoritmes moeten niet alleen snel, maar ook flexibel zijn, zodat een gebruiker de algoritmes kan aanpassen aan zijn per- soonlijke wensen. Ter evaluatie van de algoritmes wordt een zelf ontwikkeld framework voor het automatische genereren van playlisten gepresenteerd. Voor het beoordelen van de kwaliteit van automatisch gegenereerde playlis- ten moeten beoordelingscriteria vastgelegd worden. Om vast te stellen wat goede criteria zijn, is een enquete ontwikkeld en uitgevoerd. De resultaten van deze enquete worden besproken. Het blijkt dat het aantal parameters die de kwaliteitswaarneming van playlisten beïnvloeden groot is, en dat de voor- keurswaarden van deze parameters per persoon erg verschillend zijn. Door deze grote verschillen in voorkeur is het niet mogelijk om een eenvoudige parameter- set te vinden die de voorkeuren van alle gebruikers goed beschrijven. Aan de hand van de resultaten van de enquete, wordt afgeleid dat genre-consistentie in een playlist een criterium is dat voor de kwaliteitsbeoordeling van playlisten geschikt is. Muziekstukken in een playlist moeten ongeveer hetzelfde genre hebben. Voor systemen die automatisch playlisten genereren is het dus van es- entieel belang om een goede methode te hebben om te berekenen hoeveel twee muziekstukken op elkaar lijken. Om deze systemen sneller te maken, moeten de algoritmes die twee muziekstukken met elkaar vergelijken snel zijn. In dit proefschrift worden hiervoor twee methoden beschreven. De eerste methode betreft het modelleren van muziekstukken. De eigen- schappen van elk muziekstuk worden statistisch beschreven met een ‘Gaussian Mixture Model’ (GMM). Hoeveel twee muziekstukken op elkaar lijken wordt berekend door de ‘Earth Mover’s Distance’, een algoritme dat de overeen- komsten tussen twee GMMs berekent. In de huidige generatie van systemen iii wordt voor elk lied hetzelfde aantal clusters per GMM gebruikt. In dit proef- schrift wordt een methode gepresenteerd waarmee voor elk muziekstuk indi- vidueel een optimaal aantal clusters kan worden geschat. Het voordeel van een optimaal aantal clusters per muziekstuk is dat elk muziekstuk beschreven wordt door een model dat niet onnodig veel parameters heeft, terwijl toch de kwaliteit van het model goed genoeg is om de inhoud van het muziekstuk te beschrijven. De rekentijd die nodig is om de gelijkheid tussen twee GMMs te berekenen hangt kwadratisch samen met het gemiddelde aantal clusters in de GMMs zodat hierdoor de rekentijd aanzienlijk kan worden verkort. De tweede methode betreft een algoritme waarmee het voor het eerst mo- gelijk wordt, GMMs in zelf-organiserende neurale netwerken (SOMs) op te nemen. SOMs zijn neurale netwerken die veel-dimensionale vectoren in een weinig-dimensionale ruimte kunnen afbeelden. Hierbij blijft de onderlinge af- standsverhouding ongeveer gelijk aan die in de veel-dimensionale ruimte. Door GMMs in SOMs op te nemen, kunnen de voordelen van gedetailleerde statisti- sche beschrijvingen van muziekstukken gecombineerd worden met de voordelen van rekenen in een weinig-dimensionale ruimte in een SOM. Nadat een SOM getraind is, kunnen de veel-dimensionale muziekstukmodellen (de GMMs) in de SOM afgebeeld worden. Het voordeel hiervan is dat verdere berekeningen in de twee-dimensionale ruimte in de SOM plaatsvinden. Hierdoor is het mogelijk om in plaats van het vergelijken van GMMs met de Earth Mover’s Distance, eenvoudigere afstandsberekeningen te gebruiken. In dit proefschrift wordt de simpele Euclidische afstandsberekening gebruikt welke veel sneller is dan de Earth Mover’s Distance. Het blijkt dat door het individuele schatten van een optimaal aantal clus- ters per GMM, het gemiddelde aantal clusters per muziekstuk verlaagd kan worden zonder dat de kwaliteit van het systeem hierdoor vermindert. Door het geringere aantal clusters per lied worden de berekeningen eenvoudiger en dus sneller.