• No se han encontrado resultados

Multi-label music genre classification. Métodos y técnicas de investigación

N/A
N/A
Protected

Academic year: 2020

Share "Multi-label music genre classification. Métodos y técnicas de investigación"

Copied!
41
0
0

Texto completo

(1)Máster en Ciencias y Tecnologı́as de la Computación Escuela Técnica Superior de Ingenierı́a de Sistemas Informáticos. Universidad Politécnica de Madrid. Multi-label Music Genre Classification Álvaro Sánchez Hidalgo Métodos y Técnicas de Investigación Enero 2019. Dirigido por: Antonio Hernando Esteban.

(2)

(3) Índice 1 Introducción 1.1 ¿Para qué sirven los géneros musicales? . . . . . . . . . . . . . . . . . . . . 1.2 Resumen del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Estructura del documento . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1 1 3 3. 2 Estado del Arte 2.1 Información del timbre 2.2 Información del ritmo . 2.3 Información de melodı́a 2.4 Clasificadores . . . . .. . . . .. 5 5 7 8 9. . . . . . .. 11 11 13 13 15 18 20. . . . . . . . . . . . . y armonı́a . . . . . .. . . . .. . . . .. 3 Entrada 3.1 Conjunto de datos de entrenamiento 3.2 Extracción de la información . . . . . 3.2.1 Información del timbre . . . . 3.2.2 Información local de la señal . 3.2.3 Información rı́tmica . . . . . . 3.2.4 Información tonal . . . . . . . 4 Arquitectura 4.1 Stacked generalization. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. . . . .. . . . . . .. 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23. 5 Experimentos y resultados 5.1 ¿Qué información contribuye más a la predicción? . . . 5.2 ¿Qué información es más efectiva para cada género? . . 5.3 ¿Qué géneros se confunden más entre sı́? . . . . . . . . 5.4 ¿Cómo de bueno es el algoritmo comparado con otros? i. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. 25 25 27 27 28.

(4) ii. ÍNDICE. 6 Conclusiones y trabajos futuros 29 6.1 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 6.2 Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Bibliografı́a. 31. Lista de Figuras. 33. Lista de Tablas. 35.

(5) Apartado 1 Introducción 1.1. ¿Para qué sirven los géneros musicales?. De entre todas las formas en las que la música puede ser clasificada y catalogada, la idea de géneros musicales es, por lo general, la más ubicua. Esto puede deberse a diversos factores: las etiquetas de género poseen una gran concisión, pudiendo delimitar un área muy concreta de obras musicales relacionadas con dos o tres palabras. Además existe una jerarquización, una estructura de géneros y subgéneros derivados de uno o más de ellos: proyectos como Musicmap1 , proponen una compleja taxonomı́a de estilos en la que interviene también la dimensión temporal. Este último dato es interesante, puesto que implica que el número de géneros existente está en constante crecimiento; no obstante, otro proyecto llamado Every Noise at Once2 , de Spotify, ha obtenido algorı́tmicamente datos que distinguen entre más de 2000 géneros, y esta cantidad va en aumento. Por último, y lo más importante, los géneros musicales son de uso común. Hay emisoras de radio dedicadas a géneros concretos, listas de reproducción en servicios de streaming con millones de suscriptores, y términos como pop, rock, heavy metal, techno o reggaeton son utilizados ampliamente por cualquier oyente que quiera describir su gusto musical. Es por estos motivos que un sistema de clasificación de obras musicales basadas en su género puede ser de mucha utilidad, ya pueda ser a un nivel más comercial (sistemas de recomendación para servicios de música bajo demanda, generación automática de playlists) o más académico (establecer una genealogı́a de géneros, por ejemplo). Sin embargo, el mayor problema de esta categorización es que la definición de género es, cuanto menos, vaga: ¿qué caracterı́sticas debe tener un género para serlo? ¿Qué clase de información pretendemos comprimir al utilizar este tipo de etiquetas para referirnos a un conjunto de canciones? 1 2. https://www.musicmap.info http://everynoise.com/engenremap.htm. 1.

(6) 2. Introducción. La primera pregunta se puede responder de una manera utilitaria: si es conveniente agrupar unas obras con ciertos aspectos comunes, entonces la etiqueta de género tiene sentido. Sin embargo, es obvio que esto no ofrece una solución sólida. Buena parte de los miles de géneros detectados por Every Noise at Once son el resultado de añadir una serie de descriptores a géneros más amplios con el fin de estrechar sus lı́mites: (sirva como ejemplo la cadena: metal → death metal → melodic death metal → deep3 melodic death metal ). Esta acumulación de adjetivos nos lleva a la segunda pregunta: dentro de una etiqueta de género se pueden concentrar múltiples tipos de información. • Geográfica: p. ej. britpop, para referirse a una corriente de bandas bastante heterogéneas surgidas en Reino Unido en la década de los 90. • Armónica: p. ej. jazz modal, que usa escalas modales en lugar de acordes convencionales. • Social: p. ej. indie, un descriptor que pasó de usarse con música proveniente de sellos discográficos pequeños, a aplicarse a cualquier artista relativamente desconocido. • Instrumental: p. ej. piano blues. • Rı́tmica: p. ej. chachachá, nombre que proviene del sonido que hacen los pies al bailar canciones de este género. • De producción: p. ej. lo-fi, de low fidelity: música con una baja calidad de sonido. Este hecho es importante, porque hay muchos de estos géneros que resultarı́a imposible clasificar únicamente utilizando audio. Esto ya presenta cierta limitación para este proyecto, puesto que implica que existen géneros que será imposible distinguir. Si a esto le añadimos el hecho de que la definición de la inmensa mayorı́a de los géneros es muy difusa, y que a menudo la pertenencia de un artista o una canción a un género concreto es un asunto que provoca agitadas discusiones, podemos pensar que es construir un sistema que sea capaz de asignar géneros a piezas musicales es una tarea prácticamente imposible. La realidad es que solo unos pocos géneros son los que se emplean de una manera generalizada, y los que por lo tanto tienen alguna utilidad. A partir de esos géneros, que son habitualmente de los cuales los que se derivan los demás, podemos ir bajando por la jerarquı́a y encontrar subgéneros y sub-subgéneros más concretos, quizá incluso haciendo uso también de metainformación para determinar aquella información que no se puede extraer solamente del audio. 3. El adjetivo deep en Every Noise at Once indica canciones prácticamente desconocidas dentro de ese género, por lo que tampoco está definiendo en realidad algo nuevo..

(7) 1.2. Resumen del proyecto. 3. Decidir qué géneros son los relevantes para llevar a cabo esa clasificación no es un asunto trivial, ya que de ello dependen la obtención del conjunto de datos de entrenamiento y la arquitectura del sistema. Este y otros problemas como los relativos a la subjetividad inherente a muchos de los géneros musicales se desarrollarán en la sección Entrada. Se ha expuesto ya que la detección de géneros musicales es un problema complicado que tiene bastantes aplicaciones en campos como la recuperación de información, el análisis musical o los sistemas de recomendación. A continuación se describe, de manera resumida, la solución propuesta a este problema.. 1.2. Resumen del proyecto. En este proyecto se propone un sistema de aprendizaje automático basado en support vector machines (SVM) para la clasificación de géneros musicales a partir de información tı́mbrica, rı́tmica y armónica proveniente de ficheros de audio. Como particularidad que no ha sido explorada muy detenidamente en la literatura, este sistema permite una clasificación multi-etiqueta, de tal manera que un mismo fragmento de audio puede pertenecer a más de un género musical. Los distintos tipos de información de entrada se utilizan para entrenar distintos bloques de SVM, cuyas salidas posteriormente se combinan mediante el método de stacked generalization.. 1.3. Estructura del documento. Este trabajo consiste de las siguientes partes: • Tras esta breve introducción, en el apartado 2 se hará un repaso al estado del arte en el área de la clasificación de géneros musicales, en particular a los trabajos más relevantes para este proyecto. • En el apartado 3, se detallará la arquitectura del sistema, describiendo sus bloques y componentes. • El apartado 4 se acercará a los datos de entrada, incluyendo el conjunto de datos de entrenamiento que se ha utilizado y la extracción previa de los datos que alimentan a los SVMs. • La técnica de stacked generalization se explica en el apartado 5, con referencias al trabajo donde se publicó originalmente y detallando su aplicación en este proyecto. • El apartado 6 contiene información sobre el desarrollo de este proyecto, el orden de las tareas que se llevaron a cabo y su tiempo estimado de realización, ası́ como los hitos que se fueron alcanzando..

(8) 4. Introducción • Los resultados de la clasificación se presentan en el apartado 7, con medidas de la precisión y eficiencia del sistema. • Por último, en el apartado 8 se encuentran las conclusiones finales, ası́ como el posible trabajo futuro que podrı́a servir para completar esta investigación..

(9) Apartado 2 Estado del Arte El artı́culo que inaugura, por ası́ decirlo, la disciplina de la clasificación de señales de audio por su género es Tzanetakis & Cook (2002). Hasta entonces, todo el trabajo de etiquetado de audio se realizaba de forma manual, por lo que se pensó que un método automático podı́a acelerar el proceso en una época en la que los servicios de descarga de archivos musicales en masa estaban en auge. Investigaciones previas se habı́an centrado en otros tipos de clasificación de audio, como distinguir entre grabaciones de música, voz y ambientes; o entre distintos instrumentos. Estos trabajos se centraban en información sobre el timbre del audio, que es fundamental pero insuficiente para caracterizar piezas musicales, donde atributos como el ritmo o la armonı́a juegan un papel crucial.. 2.1. Información del timbre. La información que extraen Tzanetakis y Cook de la música consiste en caracterı́sticas timbrales —entre ellas los MFCCs (Mel-frequency cepstral coefficients) y otras medidas del espectro que se usan también en este proyecto, y que se explicarán más detenidamente en el apartado Entrada—, rı́tmicas y de altura (pitch). Las primeras se calculan en pequeñas ventanas (analysis windows) que son luego promediadas para texture windows más amplias, mientras que las dos últimas se obtienen para todo el archivo. Todas estas propiedades se combinan en un vector de caracterı́sticas que sirve como entrada del sistema de clasificación. Las técnicas de clasificación que se utilizan en este trabajo son Modelos gaussianos de Markov (GMMs) y K vecinos (KNN), que ofrecen un rendimiento similar. Tzanetakis y Cook también construyeron un conjunto de datos, conocido como GTZAN, que posteriormente sirvió como estándar para futuros trabajos en el campo. En ese dataset, con 1000 ejemplos de 10 géneros diferentes, el algoritmo utilizado obtuvo una precisión del 61%, lo que lo sitúa en un nivel parecido al humano. En cierto sentido, las 5.

(10) 6. Estado del Arte. bases sentadas por el trabajo de Tzanetakis y Cook se han mantenido a lo largo de los años, y los nuevos trabajos en su mayorı́a añaden caracterı́sticas extraı́das a la entrada o utilizan algoritmos de clasificación más potentes. Una de las variaciones introducidas concierne a la longitud de la texture window. Aunque Tzanetakis y Cook establecieron una longitud fija (de 1 segundo), trabajos posteriores postularon la idea de ventanas de longitud variable. Shao et al. (2004) utiliza la longitud de los intervalos entre dos pulsos (beats) consecutivos: en un género como la música clásica, el ritmo es mucho más inconstante y para una misma pieza las ventanas pueden tener longitudes distintas; mientras que en el rock habrá más uniformidad. Este trabajo sin embargo no utiliza la información del ritmo en sı́ como entrada del sistema. Otro trabajo, West & Cox (2005), estudia distintos tipos de algoritmos para encontrar los tiempos de inicio de los pulsos, encontrando que el mejor resultado de clasificación era el ofrecido por una segmentación de ventanas utilizando desviaciones de fase y diferencias de energı́a en la escala Mel. Scaringella & Zoia (2005), por su parte, usa el rastreador de pulsos descrito en Klapuri et al. (2006). De la misma manera que los MFCCs se calculan haciendo una transformación de la frecuencia a una escala perceptual como son los Mels, se podrı́an utilizar otras escalas como la Bark, descrita en Zwicker (1961). Esta escala mapea los hercios a 24 valores que se corresponden con las bandas crı́ticas de frecuencia del oı́do humano. Sin embargo, Zheng et al. (2001) indica que, al menos para el experimento de reconocimiento del habla propuesto, MFCC da un mejor resultado que los coeficientes Bark (BFCC). Otros trabajos describen coeficientes que introducen una modificación sobre los MFCCs. Es el caso de Petruncio & Hasegawa-Johnson (2002), que sostiene que sus MFSCs mejoran el rendimiento de los MFCCs omitiendo simplemente un paso del proceso habitual. Por su parte, Gonzalez (2013) extrae tres tipos nuevos de coeficientes que generalmente dan mejores resultados que los MFCCs1 . Makhoul (1975) define una alternativa a los coeficientes Mel y sus derivados: los coeficientes de predicción lineal (LPC). Su interpretación en términos de frecuencia es que representan la envolvente del espectro. Los LPCs se basan en realizar un modelado de la señal, de tal manera que su valor en un punto es una combinación lineal de su valor en puntos anteriores, más un cierto error. De manera similar a una regresión, se calculan los coeficientes de dicha combinación (los LPC) por mı́nimos cuadrados. La eficacia de este modelo, y de todos los anteriores, podrı́a compararse con la de los más extendidos MFCCs para determinar definitivamente cuál es la mejor medida de la forma espectral global para la clasificación de géneros musicales.. 1. Desafortunadamente, el dataset para el cual MFCC es mejor que el resto de los propuestos es de reconocimiento de instrumentos musicales, por lo que se puede inferir que para el problema de la clasificación de géneros MFCC seguirá siendo mejor, ya que la información instrumental es elemental..

(11) 2.2. Información del ritmo. 7. Los MFCCs y coeficientes similares no son la única forma de representar la forma espectral de una señal. En Peeters (2004) se describen algunas de ellas, que se pueden usar en combinación para describir audio en el dominio de la frecuencia, y que son explicadas más en profundidad en el apartado Entrada.. 2.2. Información del ritmo. La información sobre el ritmo de un fragmento musical también puede ser muy importante para la detección de género. Como se ha comentado, algunos trabajos la incluyen de manera implı́cita dentro de la información de timbre, haciendo que las texture window coincidan con eventos de ritmo (como pulsos o compases). No obstante, en la mayorı́a de los casos se incluyen de alguna manera caracterı́sticas propias del ritmo como si fueran un vector de caracterı́sticas más. Tzanetakis y Cook optan por calcular un histograma de pulsos. Mediante un procesado de la señal en frecuencia se obtienen, ventana a ventana, los picos de periodicidad en pulsos por minuto. Los cinco picos de cada ventana (se pueden entender como los cinco valores de tempo más probables de esa ventana) se añaden a un histograma, que acaba representando a la señal completa. Esto tiene sentido, ya que mientras que la información de timbre puede ser capturada de manera más local, el ritmo es algo que habitualmente permanece y es propio de la totalidad de la canción, o al menos de ventanas más grandes de ella. En el trabajo original de Tzanetakis y Cook forman parte de la entrada del clasificador parámetros como la periodicidad del primer pico del histograma, la amplitud relativa del mayor pico, o el ratio entre el mayor pico y el segundo mayor. Estos valores son interesantes pero otros trabajos aportan soluciones más sofisticadas. Gouyon et al. (2004) estudia una amplia variedad de descriptores de ritmo, incluidos diversos valores para el tempo calculados utilizando diferentes algoritmos. También emplea representaciones similares al histograma de pulsos de Tzanetakis y Cook, en este caso denominados “histograma de periodicidades” e “histograma de intervalos entre inicios de notas” (inter-onset intervals histogram o IOIH). De éstas se calculan distintos parámetros, entre ellos medias, energı́as en distintas bandas de frecuencia, y algunas de las medidas que se describen en el apartado Entrada sobre información del espectro de la señal, pero aquı́ aplicadas a los histogramas en lugar de a la señal en sı́ misma. De estas últimas destaca el cálculo de unos MFCCs del histograma IOIH, que son los que más exactitud confieren a la clasificación (junto con el tempo real correcto, no calculado algorı́timicamente, de la señal, que no siempre está disponible2 ). Gouyon llega a la conclusión de que estos MFCCs, en particular los coeficientes más altos, contienen información métrica y rı́tmica de la pieza. 2. De hecho, los mejores resultados obtenidos en este estudio provienen de la combinación de estos MFCCs con el tempo correcto..

(12) 8. Estado del Arte. Dixon et al. (2004) mejora el resultado anterior a un 96% de aciertos en la clasificación añadiendo la detección automática de patrones rı́tmicos. Este método encuentra primero los compases de la pieza, y a continuación busca el patrón rı́tmico más frecuente mediante clustering. Este patrón se pasa a una representación numérica y se convierte a un vector de 72 valores, que se añade a las features ya calculadas en Gouyon et al. (2004). Los resultados son extraordinarios, pero es importante notar que los géneros que aparecen en el dataset utilizado se distinguen fundamentalmente por el ritmo, ası́ que es de esperar que un sistema de reconocimiento basado en el ritmo obtenga una precisión considerablemente más alta. Otro trabajo (Lidy & Rauber, 2005) está enfocado a descubrir qué pasos de la obtención de las caracterı́sticas rı́tmicas son los que realmente aportan valor, en particular las transformaciones psicoacústicas, como el mapeo a la escala Mel o Bark, por ejemplo. Este expermiento demuestra que estas transformaciones suman precisión a la detección, y que añadir información estadı́stica (media, varianza, asimetrı́a...) de los patrones rı́tmicos ası́ como del histograma mejora también el resultado.. 2.3. Información de melodı́a y armonı́a. Capturar información sobre la disposición horizontal (melodı́a) y vertical (armonı́a) en el tiempo de los tonos es un problema más complejo que los anteriores, y más aún cuando se trata de música polifónica, como es el caso. De hecho, Tzanetakis y Cook no introducen esta caracterı́stica musical en su trabajo original de clasificación por géneros. Uno de los trabajos que incorpora detección melódica para resolver este problema es Salamon et al. (2012). Utilizando su propio algoritmo de extracción de melodı́a, descrito en Salamon & Gomez (2012), emplea features melódicas como la duración de los tonos, su rango global, la presencia de vibrato o la aparición de distintos tipos de contornos melódicos. Sus resultados al clasificar son mejores que los obtenidos utilizando solamente MFCCs, y aún superiores si se combinan ambos métodos. Dado que la extracción de melodı́as es un problema aparte, también se han realizado avances usando, en lugar de una señal de audio, archivos MIDI como entrada. La estructura de un archivo MIDI contiene información sobre cada nota, incluyendo su duración, su velocidad, su altura, su tiempo de inicio y el instrumento con el que se toca. Basili et al. (2004) utiliza esto para calcular frecuencias de intervalos y utilizarlas en la entrada del clasificador, entre otros atributos melódicos. Los resultados para las caracterı́sticas de melodı́a escogidas en este trabajo son bastante deficientes aunque, como era de esperar, la información de instrumentación sı́ que resulta muy efectiva para distinguir entre géneros. El uso de la armonı́a para resolver el problema de la clasificación por géneros musicales está más extendido que el de la melodı́a. Pérez-Sancho et al. (2010) extrae información de los acordes a partir del llamado “pitch chroma” del audio. El pitch chroma representa la intensidad de los doce semitonos de la escala cromática, ası́ que traducirlo a uno de los 24.

(13) 2.4. Clasificadores. 9. acordes mayores o menores es algo relativamente simple. Una vez hecho esto, se utilizan cadenas de 2, 3 o 4 acordes consecutivos (progresiones) como entrada del sistema. Anglade et al. (2009) mejora lo anterior, introduciendo más categorı́as de acordes (de séptima, por ejemplo) y de su grado (su nota fundamental en relación a la tonalidad de la pieza). Para clasificar utiliza el método bastante inusual del árbol de decisión, en que las hojas son predicados de una gramática de cláusulas definidas (DCG). Este sistema descubre, por lo tanto, reglas sobre los cambios de acorde caracterı́sticos de géneros concretos, permitiendo ası́ diferenciarlos. Por último, Arabi & Lu (2009) hace algo muy parecido a Pérez-Sancho et al. (2010), incorporando la información de progresiones de acordes al clasificador. La diferencia principal radica en que lo que se utiliza como entrada es la probabilidad de que una canción pertenezca a un género calculada a partir de la probabilidad de que los patrones de acordes presentes en esa canción estén también presentes en el género. La conclusión a la que se llega es que estos atributos de alto nivel, por si solos, son menos determinantes a la hora de clasificar, pero sı́ que aportan información útil cuando se combinan con otros de bajo nivel, como pueden ser los MFCCs.. 2.4. Clasificadores. Se han probado múltiples tipos de clasificación en la literatura, ya sea supervisada o no supervisada. Haggblade et al. (2011) hace un trabajo decente en recopilar los resultados de varios de ellos para descubrir cuál ofrece un mejor rendimiento, concretamente k-means, k-vecinos, redes neuronales y SVMs, siendo los dos últimos los más precisos. Sin embargo, existe el problema de que solamente utiliza MFCCs como datos de entrada, y existe la posibilidad de que distintos datos funcionen mejor con unos clasificadores que con otros. Aparte de la interesante solución ya mencionada de Anglade et al. (2009), que usa árboles de decisión y gramáticas, una original propuesta es la de Rauber et al. (2002), que utiliza mapas autoorganizados. Al ser esta una clasificación no supervisada, el algoritmo aquı́ explicado más bien detecta nuevos géneros automáticamente, encontrando caracterı́sticas comunes entre piezas de audio. Es cierto, sin embargo, que en diversos casos las regiones y subregiones definidas por el clasificador se corresponden, en cierta medida, con uno o más géneros similares entre sı́. Se recogen aquı́ dos trabajos más por su importancia para el presente proyecto. El primero de ellos es Wang et al. (2009), uno de los pocos que intenta afrontar el problema de la clasificación multi-etiqueta. Hace uso del concepto matemático de hipergrafo, un grafo donde una arista puede conectar más de dos vértices entre sı́, y de una variación del SVM que selecciona las k mejores etiquetas para un ejemplo dado. El método es interesante pero los resultados del experimento son confusos, y no está claro cual es la etiqueta que están asignando a cada ejemplo. En cualquier caso es una de los primeros intentos de resolver el problema de la clasificación musical multi-etiqueta..

(14) 10. Estado del Arte. Por último, Ariyaratne & Zhang (2012) propone una idea muy original, un método hı́brido entre supervisado y no supervisado. Primero genera una jerarquı́a en forma de árbol de decisión, generado de manera no supervisada por un algoritmo de clustering, cuyas hojas se corresponden con los géneros a clasificar. En los nodos intermedios se llevarı́a a cabo la clasificación, de tal manera que se desciende de la raı́z a las hojas dependiendo de la salida del clasificador de cada nodo. Esta solución es muy versátil porque permite elegir la mejor clasificación (ya sea el mejor método, o las mejores features) en cada nodo, lo que mejora la precisión con respecto a una clasificación llana, aunque muy ligeramente según los resultados. De poder extenderse este algoritmo a una clasificación multi-etiqueta, serı́a una vı́a futura muy prometedora para la investigación en el campo..

(15) Apartado 3 Entrada 3.1. Conjunto de datos de entrenamiento. La obtención de un conjunto de datos de entrenamiento, si bien siempre es una parte clave de cualquier proyecto de aprendizaje automático, para este problema en concreto es quizá lo más importante. y también lo más complicado. La dificultad de esta tarea reside, en primer lugar, en que como se ha comentado anteriormente los géneros musicales siguen siendo etiquetas bastante vagas y subjetivas, y encontrar unos datos de entrada que hayan sido correctamente clasificados para entrenar al sistema resulta una labor ardua. Esto nos presenta un dilema a la hora de afrontar este asunto: ¿crear un conjunto de datos especı́fico para el proyecto, o utilizar alguno de los que aparecen en la literatura? La primera opción requerirı́a un enorme esfuerzo: primero, para determinar los géneros que más nos interesan; segundo, para recopilar los ficheros de audio necesarios; y tercero, para etiquetarlos. Esto último, para asegurar la mejor calidad posible, probablemente involucrarı́a la opinión de expertos que pudieran asignar el género correcto, lo que significarı́a seguramente extender el alcance del proyecto más de lo necesario. Es por esto que se consideró excesivo llevar esta opción a cabo. Por tanto, queda la alternativa de usar un conjunto de datos ya diseñado. Con ese objetivo partió el reto de “The Million Song Dataset” (Bertin-Mahieux et al., 2011), que pretende establecer unos datos comunes para cualquier proyecto de recuperación de la información para el análisis musical. Es un conjunto muy exhaustivo, lo cual permite también medir la escalabilidad y eficiencia de los algoritmos que se han desarrollado en este área. Los datos han sido obtenidos combinando una variedad de datasets, entre los que se encuentra la plataforma de datos musicales The Echo Nest1 , la base de datos de. 1. http://the.echonest.com/. 11.

(16) 12. Entrada. letras de canciones Musixmatch2 o la enciclopedia wiki sobre música MusicBrainz3 . Entre la información que proporciona este conjunto de datos de un millón de canciones (del cual existe una versión de 10000 más reducida y manejable), se encuentran etiquetas (tags) asignadas y votadas por la comunidad de usuarios de MusicBrainz, y también tags extraı́das por The Echo Nest. Existen, sin embargo, dos problemas con esta información: en primer lugar, las etiquetas corresponden a artistas, y dada la variedad de géneros que algunos músicos exploran a lo largo de sus carreras, esto no tendrı́a por qué ajustarse a los géneros de una canción dada de ese artista. Este inconveniente se subsana rápidamente porque, como complemento a The Million Song Dataset, se ofrecen tags especı́ficos de canciones obtenidos del consenso de los usuarios de Last.fm4 , una red social de música. El segundo problema, no obstante, es más grave. La calidad de los datos, por el mero hecho de que cualquier usuario de esos servicios puede aportar la etiqueta que considere oportuna, deja mucho que desear. Los tags de Last.fm contienen también un peso, que indica el número de veces que el ı́tem ha sido asignado una etiqueta. Esto nos da una medida de lo adecuada que deberı́a ser dicha etiqueta, y aunque ayuda a determinar cuáles son las más relevantes, muchas veces éstas no son descriptores de género. Además, cuando lo son, a menudo hay problemas de polisemia (prog, progressive, prog rock, progressive rock como etiquetas distintas; diferentes deletreos de hip hop siendo la tag más votada en canciones distintas, etc). Esto puede ser remediado, pero se escapa al alcance de este proyecto. Descartando utilizar The Million Song Dataset, queda la opción de utilizar el conjunto de datos GTZAN, más pequeño, de Tzanetakis & Cook (2002), uno de los primeros trabajos en el campo de la clasificación por géneros de señales de audio. Este dataset contiene 1000 fragmentos de canciones de 30 segundos, pertenecientes a 10 géneros diferentes ya asignados. Es el estándar para toda la literatura en esta área de investigación, lo que permite comparar la efectividad de la clasificación con respecto a otros métodos existentes. Este hecho supone un gran punto a favor de utilizar GTZAN para entrenar nuestro sistema. Un reciente estudio (Sturm, 2012), sin embargo, muestra que GTZAN presenta algunas carencias notables: repeticiones de los fragmentos, ejemplos mal categorizados, y audio distorsionado. Asumimos estos problemas que creemos son compensados por lo ampliamente extendido que está el dataset en la literatura. Su otra desventaja radica en que GTZAN es un conjunto de datos mono-etiqueta: los fragmentos de audio solamente pertenecen a un género. Dado que la arquitectura del sistema de clasificación multi-etiqueta que se presenta en este trabajo permite también una clasificación mono-etiqueta convencional, utilizaremos GTZAN como conjunto de datos de entrada. Tal y como está diseñado el sistema, no deberı́a haber ningún problema 2. https://www.musixmatch.com/ https://musicbrainz.org/ 4 https://www.last.fm 3.

(17) 3.2. Extracción de la información. 13. Figure 3.1: Gráfica de equivalencia entre Hz y Mels. extendiéndolo a una entrada multi-etiqueta, aunque quedará como trabajo futuro a la espera del diseño de un dataset apropiado.. 3.2 3.2.1. Extracción de la información Información del timbre. El timbre se define como la cualidad que caracteriza un sonido concreto, lo que nos permite distinguir dos señales con igual frecuencia fundamental e intensidad. Hay varios parámetros que contribuyen a estas diferencias entre timbre, entre los cuales el más importante tal vez sea la distribución de energı́a de sus armónicos (los múltiplos de la frecuencia fundamental). En la práctica, la información referente al timbre nos posibilita distinguir entre piezas musicales con distinta instrumentación. Como se ha explicado en la introducción, la instrumentación es una de las cualidades, quizá la más relevante, que determinan un género. Es por esto que encontrar una forma de convertir la información del timbre en valores numéricos que puedan servir como entrada a un sistema de aprendizaje automático es fundamental para el problema que nos ocupa. La representación más utilizada son los llamados MFCC (Mel-frequency cepstral coefficients). Estos coeficientes se diseñaron originalmente pensando en el reconocimiento del habla humana, pero su uso en el problema de la clasificación de géneros musicales está ampliamente extendido. Logan (2000) es el primer trabajo en aplicarlos a la música, y saca la conclusión de que son al menos igual de buenos que los coeficientes basados en una escala lineal de frecuencia. Los MFCC (Fayek, 2016) se basan en el concepto de la escala Mel, una transformación no lineal de la unidad de medida de la frecuencia, los hercios, a los Mels (3.1). Es una.

(18) 14. Entrada. Figure 3.2: Conjunto de filtros triangulares en la escala Mel.. escala perceptual, porque se basa en cómo capta el oı́do humano las diferencias de altura entre dos tonos (a diferencia del valor estándar en hercios, de repeticiones por segundo). Al trasladar la frecuencia a una escala que imita la percepción humana, el sonido es representado de una manera más acorde a lo que nosotros escuchamos. Una vez convertida la señal al dominio de los Mels (con una Transformada de Fourier como paso intermedio), se hace pasar el resultado por una serie de filtros paso banda triangulares superpuestos (3.2). El número de filtros es igual al número de posibles coeficientes, aunque por lo general los coeficientes más altos no representan información útil5 . A continuación se pasa la amplitud a escala logarı́timica (dBs, por ejemplo) y, para evitar una alta correlación en los coeficientes, se puede aplicar a éstos una Transformada Discreta del Coseno (DCT). La figura 3.3 muestra un esquema en bloques del proceso. Los coeficientes no se calculan para la señal entera, si no para pequeñas ventanas de unos pocos cientos de muestras de ella. Para representar fragmentos de audio más largos, se puede tomar el promedio de los coeficientes en ventanas más grandes (las llamadas texture windows en Tzanetakis & Cook (2002)). En este trabajo, las texture windows son de 10 segundos. El primero de los vectores de entrada al sistema contiene el promedio, varianza, asimetrı́a, máximo y mı́nimo (longitud 70) de los coeficientes en una texture window.. 5. Por ejemplo, Tzanetakis & Cook (2002) solo emplea los cinco primeros coeficientes, Logan (2000) obtiene 13 tras el suavizado de la decorrelación, y Aucouturier & Sandler (2001) encuentra un valor óptimo de 10 coeficientes..

(19) 3.2. Extracción de la información. 15. Figure 3.3: Esquema del proceso de obtención de los MFCC.. 3.2.2. Información local de la señal. Aparte de los MFCCs, se puede extraer información sobre la energı́a o la forma espectral de las ventanas de la señal utilizando diversas medidas. A continuación se citan algunas de ellas:. Información en el dominio de la frecuencia • Centroide espectral: el “centro de gravedad”, por ası́ decirlo, de la señal: el promedio de la frecuencia logarı́tmica normalizada.. Z Centroide =. Amp(f ) df f·P Amp(f ).

(20) 16. Entrada • Spread espectral: la desviación media de la frecuencia de la señal en torno al centroide.. sZ Spread =. (f − Centroide)2 · Amp(f ) P df Amp(f ). • Asimetrı́a espectral (skewness): asimetrı́a de la señal con respecto al centroide.. qR Skewness =. 3 ·Amp(f ) (f −Centroide) P df Amp(f ). Spread3. • Curtosis espectral: mide lo llana que es la señal con respecto al centroide.. qR Curtosis =. 4 ·Amp(f ) (f −Centroide) P df Amp(f ). Spread4. • Pendiente espectral: representa cuanto crece o disminuye la amplitud del espectro, y se calcular haciendo una regresión lineal con un solo parámetro (la pendiente).. N 1 P endiente = P Amp(f ). P P P (f · Amp(f )) − ( f ) · ( Amp(f )) P P N f 2 (−( f )2. • Roll-off espectral: la frecuencia bajo la cual queda el 95% de la energı́a de la señal en una ventana dada.. Fmuestreo /2. Roll−of f. X 0. Amp2 (f ) = 0.95. X 0. Amp2 (f ).

(21) 3.2. Extracción de la información. 17. • Planitud espectral: es una medida de cómo de ruidosa (valores altos) o de tonal (valores bajos) es una señal. Se calcula dividiendo la media geométrica del espectro de potencia por su media aritmética. p Q N P ot(f ) P lanitud = 1 P P ot(f ) N • Factor de cresta espectral: mide el ratio entre los picos de la señal y la señal en sı́.. F actorCresta =. max(Amp(f )) P 1 P ot(f ) N. • Flujo espectral: la variación del espectro a lo largo del tiempo, calculado habitualmente como la correlación cruzada entre los espectros de amplitud ventanas de tiempo consecutivas. P F lujo(t) = 1 − pP. Ampt−1 (f ) · Ampt (f )) pP Amp2t−1 (f ) Amp2t (f ). • Frecuencia fundamental: se puede definir de distintas maneras, pero en muchos casos es el pico de amplitud de menor frecuencia en la señal. Información en el dominio del tiempo • RMS (root mean square): una medida tı́pica de la potencia media de la señal. r RM S =. 1 X Amp2 (t) N. • Zero-crossings rate (ratio de pasos por cero): mide cuántas veces cruza una señal el cero. Una señal ruidosa tendrá un valor alto, ası́ que esto puede dar una buena representación numérica del ruido de la señal. • Envolvente temporal: la envolvente de la señal (una curva que pasa por los picos de la señal) en el dominio del tiempo. De todas estas medidas, se utilizan como entrada el promedio, la varianza, el máximo y el mı́nimo de centroide, spread, asimetrı́a, roll-off, planitud, factor de cresta, flujo, frecuencia fundamental, RMS en el tiempo, ratio de pasos por cero y envolvente temporal (vector de longitud 44)..

(22) 18. Entrada. 3.2.3. Información rı́tmica. El ritmo musical tiene que ver con la repetición de ciertos patrones en el tiempo, y su representación consta habitualmente de dos partes interconectadas: métrica y tempo. La primera es más complicada de definir, aunque una noción básica puede ser la de que mide la aparición de ciertos elementos en intervalos regulares. Se representa con dos números: la cantidad de notas por compás, y la duración de estas. Por ejemplo, un compás de 3 por 4 consta de tres notas que duran una cuarta parte de una redonda (es decir, una negra). No es sencillo encontrar un algoritmo que pueda calcular la métrica de una pieza, más aún cuando ésta puede variar a lo largo de la canción6 . En este trabajo solo se ha utilizado la segunda parte, el tempo, que es algo más simple. El tempo se mide en pulsos por minuto (bpm), y se puede calcular de forma sencilla utilizando la periodicidad de ciertos picos de la señal y normalizándola para obtener un número en el intervalo entre 40 y 200 bpm en el que se encuentran la inmensa mayorı́a de las piezas musicales. Sin embargo, resumir la información del ritmo en un solo número no parece que nos vaya a dar un gran resultado a la hora de distinguir entre varios géneros. El histograma de pulsos da una idea un poco más general del ritmo: es básicamente la función de probabilidad de los pulsos por minuto, y a menudo su cálculo precede inmediatamente a la obtención de los bpm de una pieza en la mayorı́a de algoritmos. Esta ha sido la representación elegida para servir como entrada al clasificador, aunque con una ligera modificación que se comentará al final. El algoritmo para calcular el histograma de pulsos en este trabajo, descrito en Tzanetakis (2005) es el siguiente: 1. Se calcula la DWT (discrete wavelet transform, o transformada de ondı́cula discreta) de la señal en seis subbandas. Esto equivale a un filtrado de la señal en esas subbandas, que tienen de longitud una octava. Las subbandas se definen a partir de dos filtros Butterworth, uno paso bajo y otro paso alto. Las subbandas escogidas fueron definidas en Scheirer (1998). 2. Se obtiene la envolvente de cada subbanda. 3. Se reduce el número de puntos de cada envolvente a aproximadamente 2500 para mejorar el rendimiento. 4. Se suman las envolventes. Esto no es exactamente el histograma de pulsos, ya que el algoritmo de Tzanetakis a continuación realiza una autocorrelación y una normalización para obtener valores más propios de bpm. Sin embargo, se parece al IOIH (inter-onset interval histogram) que 6. El hecho de que varı́e puede ser una información relevante también para la detección de género: es un hecho que sucede a menudo en el jazz o algunos subgéneros del rock, y casi nunca en el pop, por ejemplo..

(23) 3.2. Extracción de la información. Figure 3.4: Primera subbanda después de la DWT.. Figure 3.5: Envolvente de la primera subbanda.. Figure 3.6: Suma de las seis envolventes. 19.

(24) 20. Entrada. emplea Gouyon et al. (2004), aunque sin calcular las diferencias y el suavizado. Como sugiere Gouyon, se han calculado los MFCC de esta señal, cuyo promedio, varianza, máximo y mı́nimo dentro de la ventana componen el vector de entrada (de longitud 70) al clasificador.. 3.2.4. Información tonal. Igual que el ritmo consta de dos parámetros como son la métrica y el tempo, se puede decir que la información relativa a la altura de las notas también se interpreta en dos dimensiones: información armónica e información melódica. La armonı́a se refiere a la aparición de notas musicales de distintas frecuencias simultáneamente, en los llamados acordes. La progresión de los acordes en el tiempo a menudo sirve para distinguir géneros: por ejemplo, en el blues, es muy habitual una estructura de doce compases con acordes mayores en un determinado orden. La melodı́a, por el contrario, tiene que ver con los intervalos tonales entre notas consecutivas, separadas en el tiempo. Ambas partes están relacionadas, ası́ que parece buena idea tener ambas en cuenta. Sin embargo, la obtención de acordes y, especialmente, de melodı́a en música polifónica deja aún bastante que desear, a lo que se añadirı́a el problema de convertirlo a un formato que pueda servir como entrada de un clasificador. Como solución intermedia, con cierta información de ambos mundos, en este trabajo se opta por la utilización del pitch chroma, que representa la densidad de cada uno de las doce notas de la escala cromática en una ventana de tiempo. Como entrada al sistema incluimos este vector de tamaño 12, con las densidades promediadas en la texture window, y traspuesto a la clave de cada canción7 . A priori, esto permitirá discriminar entre géneros con distinta variedad armónica y melódica (jazz versus hip hop, por ejemplo).. 7. Por ejemplo, si el tema está en Do mayor, no se realiza trasposición; si está en Fa mayor, se rota el vector cinco semitonos, la distancia entre Do y Fa, a la izquierda, etc..

(25) Apartado 4 Arquitectura En este apartado se describe cuál va a ser la estructura del sistema final que se pretende construir. En la figura 4.1 se muestran los diversos bloques y cómo están conectados, y a continuación se explica cómo funciona el proceso desde un inicio. En primer lugar, la señal de audio de la que se parte será dividida en texture windows de 10 segundos. Dado que el audio del dataset GTZAN utilizado para el entrenamiento tiene solo un canal, no hará falta hacer ningún tipo de procesado (para audio estéreo se puede hacer el promedio de ambos canales y usarlo como entrada al sistema). A continuación se llevará a cabo la extracción de features, que dará como resultado, para cada fragmento de 10 segundos, cuatro vectores de caracterı́sticas: el de MFCCs, el de medidas locales en el tiempo y el espectro, el del ritmo, y el de la información tonal. • Los MFCCs se obtienen a partir de la función MFCC preexistente en un toolbox de Matlab, la herramienta con la que se programará todo el sistema. • Las medidas locales de la señal en el tiempo y el espectro se calculan utilizando la librerı́a Audio Content Analysis 1 , que se puede descargar libremente por Internet. • El histograma de pulsos resulta de una leve modificación en el código de Matlab de Beat-Track 2 , al que luego se le aplica la función MFCC ya mencionada. • El pitch chroma también puede ser obtenido con Audio Content Analysis, al cual se añade el resto de procesado comentado en el apartado Entrada. Cada vector resultante pasará por un algoritmo de selección de features, en este caso NCA (neighbourhood component analysis), también presente en Matlab. NCA escogerá aquellas features que maximicen la exactitud de la clasificación, al mismo tiempo que 1 2. http://www.audiocontentanalysis.org https://github.com/ederwander/Beat-Track/. 21.

(26) 22. Arquitectura. Figure 4.1: Esquema de bloques del sistema completo. reducen la dimensionalidad y las posibles redundancias, para cada género: es decir, podemos coger distintas caracterı́sticas según el género que pretenda discriminar el clasificador. Esto tiene sentido porque información que pueda ser importante para un género (p.ej: tempos altos en una canción de metal) puede ser irrelevante para otro (en el jazz el tempo varı́a muchı́simo). Por lo tanto, los cuatro vectores que representan a la ventana se convertirán en 4k vectores más pequeños, donde k es el número de géneros a clasificar, 10 en el caso del conjunto de datos GTZAN. Estos vectores serán los que entrarán al SVM. Existen cuatro bloques de SVM independientes, uno para cada tipo de información. Estos bloques deben ser entrenados por separado con la información extraı́da en el paso anterior. Cada bloque contiene dentro un clasificador SVM por cada género que pretendemos clasificar, 10 para GTZAN. SVM es, de por sı́, un clasificador mono-etiqueta, ası́ que necesitamos tantos SVMs como géneros hay: cada uno de ellos decide si el fragmento de audio (definido por las caracterı́sticas extraı́das) pertenece o no al género. Por lo tanto, estamos consiguiendo una clasificación multi-etiqueta a partir de múltiples clasificadores binarios independientes. Puesto que cada SVM clasifica un género, los datos de entrada no están uniformemente distribuidos a este nivel: tendremos un 10% de ejemplos positivos y un 90% de ejemplos negativos. Esto significarı́a que un clasificador que calificara todo como negativo tuviera realmente un error muy bajo. Por este motivo debemos escoger un subconjunto de los datos de entrada que tenga los ejemplos positivos y negativos en aproximadamente la misma proporción. La solución por la que se ha optado es utilizar como datos de entrenamiento el 90% de datos positivos y un conjunto aleatorio del mismo tamaño de datos negativos. Otra posibilidad serı́a usar todos los datos negativos e introducir los positivos repetidamente (en este caso, 9 veces)..

(27) 4.1. Stacked generalization. 23. Matlab ofrece una función muy interesante que permite convertir la salida del clasificador SVM (por lo general un valor lógico: sı́ o no) en un valor de probabilidad a posteriori. Para ello obtiene la distancia d entre el vector que pretendemos clasificar y el hiperplano que divide el espacio en las dos regiones de clasificación, y a continuación encuentra los valores de A y B que hacen que la función sigmoidal. p(d) =. 1 1 + eAd+B. dé el mejor resultado de clasificación posible (si p(d) > 0.5, se clasificarı́a como un 1). Esta función por lo tanto nos devuelve una buena estimación de la probabilidad de que un dato pertenezca a esa clase, tal y como se describe en Platt (1999). Esto nos ofrece dos ventajas: primero, tenemos una salida numérica de los clasificadores que podemos combinar para que sirva como entrada de la capa final de SVMs; y segundo, nos permite definir unos thresholds o probabilidades lı́mite distintas a 0.5 que tal vez mejoren alguna de las medidas de precisión de la clasificación.. 4.1. Stacked generalization. El método utilizado para la combinación de estos vectores de probabilidades (de longitud 40: uno por cada tipo de dato de entrada y género, aunque también les podemos aplicar NCA) es el introducido en Fu et al. (2010), llamado stacked generalization. Es una técnica muy simple, que consiste en concatenar los resultados de varios clasificadores en un solo vector, que sirva como entrada de un nuevo clasificador. En nuestro caso, los resultados serán esas probabilidades posteriores ya mencionadas. En ese artı́culo se presentan otras opciones para combinar las features: a nivel de decisión (como la propia técnica de stacked generalization o la idea de escoger la clase que más clasificadores hayan elegido3 ) o a nivel de caracterı́stica (la concatenación de features previa a la clasificación, por ejemplo). Los mejores resultados son los producidos con stacked generalization, por lo que se optó por su utilización en este proyecto. Finalmente, la salida de este último bloque clasificador es la predicción definitiva, un vector de longitud 10 que para cada género dice si el fragmento de audio pertenece o no a él. Para piezas de audio más largas (como canciones completas), se puede obtener la probabilidad media de cada género en cada ventana de análisis de 30 segundos, o simplemente el género que se ha predecido positivamente en más ventanas, y utilizar esto como predicción para toda la pieza. 3. Esto último no serı́a directamente aplicable a un problema multi-etiqueta, aunque tal vez se podrı́an escoger las dos o tres más votadas..

(28)

(29) Apartado 5 Experimentos y resultados Como se ha explicado, se ha utilizado el dataset GTZAN para evaluar el algoritmo. Este conjunto de datos contiene 1000 fragmentos de música en uniformemente distribuidos en 10 géneros. A continuación se plantea una serie de preguntas que se han intentado responder por medio de distintos experimentos.. 5.1. ¿Qué información predicción?. contribuye. más. a. la. Para responder a esta pregunta, se han obtenido medidas de la calidad de la clasificación utilizando todas las combinaciones de datos de entrada posible. Las medidas utilizadas han sido precisión (cuántos de los fragmentos que han sido asignados a un género pertenecen realmente a ese género), recall (cuántos de los fragmentos que pertenecen a un género han sido asignados ese género por el clasificador), accuracy (fragmentos clasificados correctamente como pertenecientes o no al género) y f-score (media armónica de precisión y recall. Los resultados se muestran en la tabla 5.1. Como podemos observar, los MFCC del timbre son claramente los más efectivos a la hora de clasificar, cosa que concuerda con lo que cabrı́amos esperar: la instrumentación define en muchos casos el género. Los MFCC del ritmo también son útiles, mientras que la información de medidas locales y el tono parece no contribuir tanto. Es interesante de hecho que la información de tono en particular parece afectar negativamente a la clasificación, puesto que el conjunto de datos de entrada que omite el pitch chroma da ligeramente mejores resultados que el que incluye todas las caracterı́sticas. Otro dato a tener en cuenta es que la precisión obtenida es relativamente baja, pero el recall es bastante alto: esto se debe a que el clasificador está generando muchos falsos positivos, clasificando fragmentos que no pertenecen a un género dado como pertenecientes a él. Se puede intentar obtener mejores valores para la precisión cambiando el threshold a la salida del clasificador, manteniendo el equilibrio con el recall. 25.

(30) 26. Experimentos y resultados Feature MFCC MFCC ritmo Local Pitch MFCC + MFCC ritmo MFCC + Local MFCC + Pitch MFCC ritmo + Local MFCC ritmo + Pitch Local + Pitch MFCC + MFCC ritmo + Local MFCC + MFCC ritmo + Pitch MFCC ritmo + Local + Pitch Todas. Precisión 0.3727 0.2279 0.1729 0.1448 0.4243 0.4047 0.3987 0.3019 0.2568 0.2621 0.4470 0.4266 0.3047 0.4413. Recall 0.8749 0.7009 0.6971 0.6379 0.8749 0.8722 0.8558 0.8170 0.7492 0.7840 0.8863 0.8809 0.8030 0.8976. Accuracy 0.8168 0.7090 0.6025 0.5727 0.8540 0.8416 0.8398 0.7716 0.7362 0.7339 0.8656 0.8546 0.7781 0.8626. F-Score 0.5119 0.3399 0.2701 0.2355 0.5633 0.5441 0.5362 0.4352 0.3784 0.3878 0.5866 0.5666 0.4364 0.5840. Table 5.1: Resultados de predicción para las caracterı́sticas individuales y para distintas combinaciones de ellas, usando todo el conjunto de datos. Género Blues Clásica Country Disco Hip Hop Jazz Metal Pop Reggae Rock. MFCC 0.7692 0.9642 0.7318 0.7030 0.8558 0.8542 0.9030 0.8612 0.7930 0.7405. MFCC ritmo 0.5916 0.8749 0.7150 0.7338 0.7157 0.7117 0.7859 0.7552 0.6201 0.5863. Local 0.5816 0.7809 0.6863 0.4666 0.7001 0.8997 0.7853 0.7699 0.1003 0.2542. Pitch 0.5552 0.6809 0.6652 0.5214 0.6622 0.5344 0.6134 0.5177 0.5231 0.4535. Todas 0.8388 0.9666 0.8174 0.8251 0.8632 0.9050 0.9187 0.8926 0.8261 0.7726. Table 5.2: Accuracy de cada información de entrada para cada género del dataset..

(31) 5.2. ¿Qué información es más efectiva para cada género?. 5.2. 27. ¿Qué información es más efectiva para cada género?. Otra cuestión interesante es si podemos identificar qué tipo de información puede ayudar más a distinguir algún género en concreto: por ejemplo, la instrumentación de la música clásica (una orquesta, por lo general) es prácticamente única para este dataset, mientras que en un género como el reggae, los ritmos sincopados lo apartan del resto. Para intentar responder, se ha medido la accuracy para distintos tipos de información de entrada en los 10 géneros de GTZAN, quedando reflejados los resultados en la tabla 5.2. También se muestra el resultado de la información en conjunto: como se puede ver tenemos mejor rendimiento utilizando todos los datos, demostrando que stacked generalization de hecho mejora la capacidad de predicción. En cuanto a lo que queremos comprobar, los resultados no aclaran demasiado, aunque es obvio ver que los MFCC superan al resto en casi todos los casos, salvo el de la música disco (muy rı́tmica, por lo que puede tener sentido que el rendimiento de la información del ritmo sea superior), y el del jazz (en este caso es consecuencia de que la información local no predice como jazz ninguno de los datos de entrada, ası́ que el accuracy se acerca al 90%). Como con la pregunta anterior, por lo tanto, vemos claro que es el timbre el que más relevancia tiene para la clasificación. Por último, géneros relativamente extremos como la música clásica, el heavy metal y el jazz tienen un mayor porcentaje de clasificaciones correctas, como cabrı́a esperar. Sorprende por otro lado los buenos resultados del pop, uno de los géneros más vagamente definidos que sin embargo tiene una de las accuracies más altas.. 5.3. ¿Qué géneros se confunden más entre sı́?. Aunque establecer una taxonomı́a de los géneros musicales va más allá de los objetivos de este trabajo, se puede realizar una medida bastante superficial de qué géneros se parecen entre sı́, mediante la búsqueda de con qué género se equivoca el clasificador con más frecuencia a la hora de predecir una pieza de un género concreto. Los resultados se incluyen en la tabla 5.3. Lo que se obtiene tiene por lo general bastante sentido: la música clásica y el jazz se confunden entre sı́, al igual que el country y el rock. Géneros con bastante superposición como el pop y el hip hop o el metal y el rock también son causa de estos errores de clasificación. Más sorprendente es el caso del blues y el metal, ası́ como el de la música disco y el rock, que no tienen a priori mucho que ver entre sı́. Sea como fuere, este experimento nos dice que buena parte de los errores que comete no son excesivamente graves, o que al menos los géneros con los que se confunde no están muy alejados entre sı́..

(32) 28. Experimentos y resultados Género real Blues Clásica Country Disco Hip Hop Jazz Metal Pop Reggae Rock. Género con el que se confunde Metal Jazz Rock Rock Pop Clásica Rock Hip Hop Hip Hop Country. Table 5.3: Género con el que más se confunde a la hora de predecir cada género del dataset.. 5.4. ¿Cómo de bueno es el algoritmo comparado con otros?. Por último, se ha comparado el algoritmo con aquellos del apartado de Estado del Arte que han empleado GTZAN para su evaluación. A diferencia de los otros experimentos, en los cuales se han obtenido las medidas utilizando el dataset, aquı́ la evaluación se ha efectuado de manera similar al entrenamiento, utilizando como datos de test el mismo número de ejemplos positivos y negativos para cada género, que es la manera que los otros trabajos han empleado. Algoritmo Este algoritmo (Multi-label) Arabi 2009 Ariyaratne 2012 Fu 2010 Lidy 2005 Salamon 2012. Accuracy 0.8764 0.9079 0.7290 0.9085 0.7490 0.8200. Table 5.4: Comparación de la accuracy de nuestro algoritmo con otros de los mencionados en el Estado del Arte para el dataset GTZAN. En la tabla 5.4 podemos observar que aunque los resultados no son los mejores, sı́ que son muy buenos y superiores a los de otros algoritmos. Además, el hecho de que éste sea multi-etiqueta le da un valor añadido del que los otros carecen..

(33) Apartado 6 Conclusiones y trabajos futuros 6.1. Conclusiones. En este trabajo se ha presentado un método de clasificación de piezas musicales según su género utilizando información de múltiples orı́genes y permitiendo una clasificación multi-etiqueta, en la que un dato pueda pertenecer a más de una clase. Los experimentos llevados a cabo nos llevan a la conclusión de que este algoritmo, basado en clasificadores SVM y stacked generalization, tiene una alta precisión y unos resultados consistentes con lo que cabrı́a esperar, igualando o superando a otros algoritmos mono-etiqueta del mismo tipo.. 6.2. Trabajo futuro. El interrogante inmediato es comprobar si el método funciona igual de bien para un conjunto de datos multietiqueta. No hay ningún motivo para sospechar lo contrario, ası́ que una vez se efectúe el diseño de una base de datos adecuada para el problema podrı́amos confirmar el funcionamiento correcto del algoritmo. Este serı́a el primer paso en el trabajo futuro. Otras posibles lı́neas de trabajo o ideas para la mejora del algoritmo serı́an: • Realizar experimentos para optimizar la longitud de las texture windows, incluso utilizando ventanas de distinto tamaño para información de distinto tipo. • La función MFCC de Matlab también puede devolver las deltas (que miden el cambio de una ventana a la siguiente, como una derivada) primera y segunda de los coeficientes. Tal vez esto contenga información útil para la predicción. • Optimizar el valor lı́mite de la probabilidad posterior a la salida de los SVMs. Actualmente si la probabilidad es mayor que 0.5, consideramos el ejemplo como 29.

(34) 30. Conclusiones y trabajos futuros positivo, pero tal vez podemos modificar ese valor para mejorar la precisión o el recall, como ya se ha sugerido. • Añadir información sobre los acordes de la pieza de audio. Esto presenta sobre todo un reto a la hora de representar esa información, no tanto a la de encontrar los acordes. • Ajustar las probabilidades posteriores del último bloque de SVM de tal manera que la salida se adecúe más a la realidad (por ejemplo, que el programa no prediga que algo es música clásica, heavy metal y reggae a la vez). Utilizando por ejemplo el Million Song Dataset, se puede extraer información estadı́stica sobre la coocurrencia de géneros, que de alguna manera podrı́a emplearse para obtener predicciones más realistas. • Otra idea en la lı́nea de la anterior serı́a incorporar alguna taxonomı́a de géneros a la hora de entrenar el clasificador, de tal manera que el error cometido entre dos géneros relativamente similares (por ejemplo, predecir metal cuando es rock) sea menor que cuando los géneros son muy diferentes (predecir metal cuando es jazz )..

(35) References Anglade, A., Ramı́rez, R. A. M., & Dixon, S. (2009). Genre classification using harmony rules induced from automatic chord transcriptions. In Ismir. Arabi, A. F., & Lu, G. (2009). Enhanced polyphonic music genre classification using high level features. 2009 IEEE International Conference on Signal and Image Processing Applications, 101-106. Ariyaratne, H. B., & Zhang, D. (2012). A novel automatic hierachical approach to music genre classification. 2012 IEEE International Conference on Multimedia and Expo Workshops, 564-569. Aucouturier, J.-J., & Sandler, M. (2001). Segmentation of musical signals using hidden markov models.. Basili, R., Serafini, A., & Stellato, A. (2004). Classification of musical genre: a machine learning approach. In Ismir. Bertin-Mahieux, T., Ellis, D. P. W., Whitman, B., & Lamere, P. (2011). The million song dataset. In Proceedings of the 12th international conference on music information retrieval (p. 591-596). ISMIR. Dixon, S., Gouyon, F., & Widmer, G. (2004). Towards characterisation of music via rhythmic patterns. In Ismir. Fayek, H. (2016). Speech processing for machine learning: Filter banks, mel-frequency cepstral coefficients (mfccs) and what’s in-between. Retrieved 2016-04-21, from https://haythamfayek.com/2016/04/21/speech-processing-for -machine-learning.html Fu, Z., Lu, G., Ting, K. M., & Zhang, D. (2010). On feature combination for music classification. In Sspr/spr. Gonzalez, R. (2013). Better than mfcc audio classification features. In The era of interactive media (pp. 291–301). New York, NY: Springer New York. 31.

(36) 32. REFERENCES. Gouyon, F., Dixon, S., Pampalk, E., & Widmer, G. (2004). Evaluating rhythmic descriptors for musical genre classification.. Haggblade, M., Hong, Y., & Kao, K. (2011). Music genre classification.. Klapuri, A. P., Eronen, A. J., & Astola, J. T. (2006, December). Analysis of the meter of acoustic musical signals. Trans. Audio, Speech and Lang. Proc., 14 (1), 342-355. Lidy, T., & Rauber, A. (2005). Evaluation of feature extractors and psycho-acoustic transformations for music genre classification. In Ismir. Logan, B. (2000). Mel frequency cepstral coefficients for music modeling. In Ismir. Makhoul, J. (1975). Linear prediction: A tutorial review. Proceedings of the IEEE , 63 , 561-580. Peeters, G. (2004). A large set of audio features for sound description (similarity and classification) in the CUIDADO project (Tech. Rep.). Pérez-Sancho, C., Rizo, D., Quereda, J. M. I., de León, P. J. P., Kersten, S., & Ramı́rez, R. A. M. (2010). Genre classification of music by tonal harmony. Intell. Data Anal., 14 , 533-545. Petruncio, D. S., & Hasegawa-Johnson, M. A. (2002). Evaluation of various features for music genre classification with hidden markov models.. Platt, J. C. (1999). Probabilistic outputs for support vector machines and comparisons to regularized likelihood methods. In Advances in large margin classifiers (pp. 61–74). MIT Press. Rauber, A., Pampalk, E., & Merkl, D. (2002). Using psycho-acoustic models and selforganizing maps to create a hierarchical structuring of music by musical styles. In Ismir. Salamon, J., & Gomez, E. (2012). Melody extraction from polyphonic music signals using pitch contour characteristics. IEEE Transactions on Audio, Speech, and Language Processing, 20 (6), 1759-1770. Salamon, J., Rocha, B., & Gómez, E. (2012). Musical genre classification using melody features extracted from polyphonic music signals. In 2012 ieee international conference on acoustics, speech and signal processing (icassp) (p. 81-84). Scaringella, N., & Zoia, G. (2005). On the modeling of time information for automatic genre recognition systems in audio signals. In 6th international conference on music information retrieval (p. 666-671)..

(37) REFERENCES. 33. Scheirer, E. D. (1998). Tempo and beat analysis of acoustic musical signals. The Journal of the Acoustical Society of America, 103 1 , 588-601. Shao, X., Xu, C., & Kankanhalli, M. S. (2004). Unsupervised classification of music genre using hidden markov model. In 2004 ieee international conference on multimedia and expo (Vol. 3, p. 2023-2026 Vol.3). Sturm, B. L. (2012). An analysis of the gtzan music genre dataset. In Mirum. Tzanetakis, G. (2005). Tempo extraction using beat histograms.. Tzanetakis, G., & Cook, P. (2002). Musical genre classification of audio signals. IEEE Transactions on Speech and Audio Processing, 10 (5), 293-302. Wang, F., Wang, X., Shao, B., Li, T., & Ogihara, M. (2009). Tag integrated multi-label music style classification with hypergraph. In Ismir. West, K., & Cox, S. J. (2005). Finding an optimal segmentation for audio genre classification. In 6th international conference on music information retrieval (p. 680-685). Zheng, F., Zhang, G., & Song, Z. (2001, Nov 01). Comparison of different implementations of mfcc. Journal of Computer Science and Technology, 16 (6), 582–589. Zwicker, E. (1961). Subdivision of the audible frequency range into critical bands (frequenzgruppen). The Journal of the Acoustical Society of America, 33 (2), 248-248..

(38)

(39) Lista de Figuras 3.1 3.2 3.3 3.4 3.5 3.6. Gráfica de equivalencia entre Hz y Mels. . . . . . Conjunto de filtros triangulares en la escala Mel. . Esquema del proceso de obtención de los MFCC. Primera subbanda después de la DWT. . . . . . . Envolvente de la primera subbanda. . . . . . . . . Suma de las seis envolventes . . . . . . . . . . . .. 4.1. Esquema de bloques del sistema completo. . . . . . . . . . . . . . . . . . . 22. 35. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. 13 14 15 19 19 19.

(40)

(41) Lista de Tablas 5.1 5.2 5.3 5.4. Resultados de predicción para las caracterı́sticas individuales y para distintas combinaciones de ellas, usando todo el conjunto de datos . . . . . Accuracy de cada información de entrada para cada género del dataset. . Género con el que más se confunde a la hora de predecir cada género del dataset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comparación de la accuracy de nuestro algoritmo con otros de los mencionados en el Estado del Arte para el dataset GTZAN. . . . . . . . . . .. 37. . 26 . 26 . 28 . 28.

(42)

Referencias

Documento similar

 Para recibir todos los números de referencia en un solo correo electrónico, es necesario que las solicitudes estén cumplimentadas y sean todos los datos válidos, incluido el

1) La Dedicatoria a la dama culta, doña Escolástica Polyanthea de Calepino, señora de Trilingüe y Babilonia. 2) El Prólogo al lector de lenguaje culto: apenado por el avan- ce de

Fuente de emisión secundaria que afecta a la estación: Combustión en sector residencial y comercial Distancia a la primera vía de tráfico: 3 metros (15 m de ancho)..

La campaña ha consistido en la revisión del etiquetado e instrucciones de uso de todos los ter- mómetros digitales comunicados, así como de la documentación técnica adicional de

Abstract: This paper reviews the dialogue and controversies between the paratexts of a corpus of collections of short novels –and romances– publi- shed from 1624 to 1637:

o Si dispone en su establecimiento de alguna silla de ruedas Jazz S50 o 708D cuyo nº de serie figura en el anexo 1 de esta nota informativa, consulte la nota de aviso de la

Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de

Las manifestaciones musicales y su organización institucional a lo largo de los siglos XVI al XVIII son aspectos poco conocidos de la cultura alicantina. Analizar el alcance y