representación topológica de las características de la

115

Upload: others

Post on 07-Nov-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Representación Topológica de las Características de la

Universidad Técnica Federico Santa María

Departamento de Informática

Valparaíso � Chile

REPRESENTACIÓN TOPOLÓGICA DE LAS

CARACTERÍSTICAS DE LA SEÑAL DIGITALIZADA

DE LA MÚSICA PARA LA GENERACIÓN

AUTOMÁTICA DE LISTAS DE REPRODUCCIÓN.

Tesis presentada como requerimiento parcial

para optar al grado académico de

MAGISTER EN CIENCIAS DE LA INGENIERÍA

INFORMÁTICA

y al título profesional de

INGENIERO CIVIL EN INFORMÁTICA

por

Héctor Hidalgo Sepúlveda

JUNIO 2012

Page 2: Representación Topológica de las Características de la

Universidad Técnica Federico Santa María

Departamento de Informática

Valparaíso � Chile

TITULO DE LA TESIS:

REPRESENTACIÓN TOPOLÓGICA DE LAS CARACTERÍSTICAS

DE LA SEÑAL DIGITALIZADA DE LA MÚSICA PARA LA GENE-

RACIÓN AUTOMÁTICA DE LISTAS DE REPRODUCCIÓN.

AUTOR:

HÉCTOR HIDALGO SEPÚLVEDA

Tesis presentada como requerimiento parcial para optar al grado académico

deMagister en Ciencias de la Ingeniería Informática y al título profesional

de Ingeniero Civil en Informática de la Universidad Técnica Federico Santa

María.

Dr. Héctor Allende OlivaresProfesor Guía

Dr. Marcelo Mendoza RochaProfesor Correferente

Dr. Rodrigo Salas FuentesProfesor Externo

Junio 2012.

Valparaíso, Chile.

ii

Page 3: Representación Topológica de las Características de la

Dedicada a...

iii

Page 4: Representación Topológica de las Características de la

Agradecimientos

.

Valparaíso, Chile Héctor Hidalgo Sepúlveda

iv

Page 5: Representación Topológica de las Características de la

ResumenDesde que los formatos de música digital se crearon, enormes cantidades de archivos

de música comenzaron a estar almacenados en sistemas comerciales y en nuestros propios

computadores y dispositivos móviles, ya sea por la adquisición o libre y natural distribución

que se da entre los mismos usuarios. Estas grandes cantidades de archivos, no sólo requieren

ser almacenadas y organizadas; sino que dada la cantidad de nueva música disponible año

a año, se hace cada vez más necesaria no sólo su indexación y recuperación sino que su

procesamiento automático para tareas como clasi�cación, agrupamiento por similaridad de

estilos o conocer nueva música, entre los millones de grupos existentes a nivel mundial. Pero,

¾Es posible automatizar el concepto de distancia de timbre o similaridad como un fenómeno

en que una canción parece similar a otra?

El objetivo de esta tesis es diseñar e implementar un algoritmo para la generación de

grupos de música similar mediante la aplicación del modelo de mapas auto organizativos

para el aprendizaje topológico de las características de la señal digitalizada de la música.

En esta tesis se estudian los métodos de extracción de características para la recuperación

de información en música, se analiza un método para obtener el conjunto de características

que mejor permite tareas de aprendizaje automático y se construye un algoritmo basado en

las redes SOM para la generación de listas de reproducción de música que permita una suave

transición entre música similar.

Palabras Claves: Minería de Datos, Clustering, Recuperación de Información en

Música, Extracción de características, Generación automática de listas de reproducción de

música.

v

Page 6: Representación Topológica de las Características de la

AbstractSince the creation of digital audio formats, huge amounts of audio �les began to be stored

in commercial systems and on our own computers and mobile devices, whether by purchase

or users freely sharing between themselves. These large quantities of �les need to be more

than just simply stored and organized. Given the increasing amount of new music available

every year, these �les must be indexed and retrieved. They also should be automatically

processed for tasks such as classi�cation, clustering by style similarity, or processing new

music from among the millions of musical groups worldwide, but, is it possible to automate

the concept of timbre distance and similarity as a phenomenon in which one song seems

similar to another?

This thesis will focus on the design and implementation of an algorithm to generate

playlists of similar music by applying the Self-organizing map (SOM) model for topological

learning of the features of digitized music signal.

The methods used to extract characteristics for music information retrieval and to choice

the set of characteristics that best represents musical styles to automatic learning and

processing will be explored. Furthermore, will propose an algorithm based on SOM network

to generate playlists of music that allows smooth transitions between similar music.

Keywords: Data Mining, Clustering, MIR: Music Information Retrieval, Extraction of

features in music �les, Automatic playlists generation.

vi

Page 7: Representación Topológica de las Características de la

Indice de Contenidos

Agradecimientos iv

Resumen v

Abstract vi

Indice de Contenidos vii

1. Introducción 1

1.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2. Extracción de Características . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.3. Tipos de problemas abordados en Recuperación de Información en Música . 4

1.4. Objetivos y Contribución de esta Tesis . . . . . . . . . . . . . . . . . . . . . 5

1.5. Organización de esta Tesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2. Estado del Arte 7

2.1. Estado del Arte en Extracción y Selección de Características desde archivos

de música en formato digital. . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.1.1. Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.1.2. Proceso de extracción de características . . . . . . . . . . . . . . . . . 9

2.1.3. Selección de Características . . . . . . . . . . . . . . . . . . . . . . . 11

2.2. Estado del Arte en Clasi�cación de Música. . . . . . . . . . . . . . . . . . . 13

2.2.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.2. Clasi�cación de música . . . . . . . . . . . . . . . . . . . . . . . . . . 13

vii

Page 8: Representación Topológica de las Características de la

2.3. Estado del Arte en Visualización de Música utilizando Mapas auto-organizativos

SOM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3.1. Introducción a SOM . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3.2. SOM aplicado a la música . . . . . . . . . . . . . . . . . . . . . . . . 17

2.4. Estado del Arte en Generación de Listas de Reproducción de Música. . . . . 18

3. Metodología 19

3.1. Extracción de Características desde archivos de música en formato digital . 20

3.1.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.1.2. El proceso de extracción de características . . . . . . . . . . . . . . . 20

3.1.3. Reducción de dimensionalidad . . . . . . . . . . . . . . . . . . . . . . 27

3.2. Selección de Características . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.2.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.2.2. Preprocesamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.2.3. Relación entre el número de características y el número de datos de

entrenamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.2.4. El proceso de selección de características . . . . . . . . . . . . . . . . 34

3.3. Clasi�cación automática de Música . . . . . . . . . . . . . . . . . . . . . . . 39

3.3.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

3.3.2. SVM - Support Vector Machines . . . . . . . . . . . . . . . . . . . . 40

3.4. Generación de listas de reproducción de música . . . . . . . . . . . . . . . . 53

3.4.1. 1° Enfoque: Generación de listas de reproducción mediante similaridad

de cosenos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3.4.2. 2° Enfoque: Generación de listas de reproducción mediante SOM . . 56

4. Experimentos 61

4.1. Medidas de Evaluación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

4.1.1. Las medidas: Precisión y Recall . . . . . . . . . . . . . . . . . . . . . 62

4.1.2. La medida Fmeasure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

4.1.3. La medida Kappa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

4.2. Conjuntos de Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

viii

Page 9: Representación Topológica de las Características de la

4.2.1. Conjunto de datos - GarageBand 2008 . . . . . . . . . . . . . . . . . 65

4.2.2. Conjunto de datos - ISMIR 2004 . . . . . . . . . . . . . . . . . . . . 66

4.2.3. Conjunto de datos - GTZAN Genre Collection . . . . . . . . . . . . . 66

4.3. Extracción de Características . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4.4. Selección de Características: . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4.5. Clasi�cación automática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

4.6. Generación de listas de reproducción . . . . . . . . . . . . . . . . . . . . . . 71

4.6.1. Mediante distancia de cosenos . . . . . . . . . . . . . . . . . . . . . . 71

4.6.2. Mediante aplicación de SOM . . . . . . . . . . . . . . . . . . . . . . . 71

4.7. Resultados: Listas de reproducción . . . . . . . . . . . . . . . . . . . . . . . 77

4.8. Discusión de los resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

4.9. Visualización de grupos a través de la web . . . . . . . . . . . . . . . . . . . 86

5. Conclusiones y Trabajo Futuro 88

5.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

5.2. Posibilidades de trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . 89

5.2.1. Sobre disponibilidad de conjuntos de datos . . . . . . . . . . . . . . . 89

5.2.2. ¾Cómo efectuar el muestreo de una pieza musical? . . . . . . . . . . . 89

5.2.3. Calidad de la música a procesar . . . . . . . . . . . . . . . . . . . . . 89

5.2.4. ¾Qué características incluir? . . . . . . . . . . . . . . . . . . . . . . . 90

5.2.5. Criterios para la extracción de características . . . . . . . . . . . . . 90

5.2.6. Profundizar en la generación de listas de reproducción utilizando

distancia de cosenos . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

5.2.7. Investigar otros métodos de ranking . . . . . . . . . . . . . . . . . . . 91

Apéndices 92

A. Abreviaciones 93

B. Características seleccionadas 95

ix

Page 10: Representación Topológica de las Características de la

x

C. Listado de Clasi�cadores 98

C.1. Métodos de clasi�cación testados . . . . . . . . . . . . . . . . . . . . . . . . 98

Bibliografía 102

Page 11: Representación Topológica de las Características de la

Capítulo 1

Introducción

1.1. Motivación

Desde que los formatos de música digital existen hasta la fecha, las bases de datos de

música almacenan millones de registros y cada año aumenta signi�cativamente el número de

archivos nuevos, de manera que se vuelve cada día un gran reto todo lo que respecta a la

recuperación de información desde estos grandes volúmenes de datos.

Ya no sólo procesar, almacenar, indexar y/o categorizar [38] estas enormes cantidades de

archivos es un problema, sino que además darlos a conocer a los usuarios �nales, que por

supuesto, son los bene�ciados en contextos que van desde el ámbito comercial1, pasando por

el cultural y llegando hasta el actual contexto de la generación de redes sociales en torno a

preferencias musicales2.

La necesidad existente de indexar y organizar estas enormes cantidades de archivos dejó

de ser un problema que involucraba a las disqueras o coleccionistas, pues los actuales formatos

de música han posibilitado que cada persona albergue en sus computadoras o sistemas

portátiles varios miles de temas, en los que día a día se tienen necesidades del tipo:

Completar meta información (artista, nombre de la canción, etc.),

Identi�car un tema (dada una muestra de sonido, saber su meta información)[5],

Obtener partituras desde un archivo en formato digital,

1http://www.apple.com/itunes2http://www.lastfm.es/

1

Page 12: Representación Topológica de las Características de la

Categorizar la música por género (Rock, Pop, Jazz, etc.),

Agrupar música similar [23] (que además trae consigo el problema de visualización),

Sugerir artistas o temas similares para �nes tales como dar a conocer nueva música,

entre otros.

Y el problema no es sencillo, ya que una persona puede considerar ciertos tipos de música

como similares o no, pero enseñar a un computador este concepto es difícil dada la cantidad

de enfoques con las que puede ser abordado el tema.

Como ejemplo, un archivo Mp3 con una frecuencia de muestreo de 44.100 Hz, tasa de

bits de 128 kbps y unos 3 minutos de grabación, posee una señal con aproximadamente

8 ∗ 106 valores, luego dada esta serie de tiempo, saber si es similar o perteneciente a una

clase especí�ca, no es un asunto trivial y es justo en este contexto en el que esta tesis será

desarrollada.

1.2. Extracción de Características

Para el análisis de semejantes series de datos (señal digital de un archivo de música) y

cantidad de archivos a procesar, no resulta factible su computo en línea, ya que los tiempos

de cálculo agregan un problema adicional y que es la factibilidad de contar con resultados

en tiempos razonables, motivo por el cual diversos investigadores3 en Music Information

Retrieval han creado un preprocesamiento de estas señales en un procedimiento que

llamaremos �extracción de características� en la que las señales a analizar son preprocesadas

para obtener de ellas información adicional pero resumida acerca de su composición.

Algunos de los pasos típicos incluyen: Bajar la calidad del sonido de Estero a Mono, con

una tasa de muestreo de 22 MHz y además asumiendo en general, que la señal de sonido no

será completamente analizada sino que sólo una sección de ella (ejemplo: 10 o 30 segundos

de alguna parte de un tema musical), de la cual se obtienen características de corto y/o largo

plazo4.

3Alfred Ultsch, Andreas Rauber, Elias Pampalk, Fabian Mörchen, Robert Neumayer y Rudolf Mayerentre otros.

4Más adelante se entrega información acerca del proceso de extracción de características

2

Page 13: Representación Topológica de las Características de la

Respecto de las características que podrían ser extraídas de una señal digital, muchas

ya han sido propuestas en la literatura [21], pero no ha quedado claro en qué manera unas

se relacionan con otras. Algunos autores5 han propuesto extraer características sobre una

corta ventana de tiempo durante la cual la señal del sonido es asumido como estacionario, lo

que produce una pequeña muestra de serie de tiempo desde la cual se obtiene un conjunto

de descriptores de la señal de sonido. Estas características de bajo nivel son agregadas en

una etapa siguiente para formar un vector de alto nivel de características, lo que permite su

utilización, por ejemplo, en algoritmos de clasi�cación. Existe un estudio interesante realizado

por Moerchen y otros autores en 2005 [21], sobre las características que mejor permitirían

implementar estudios posteriores para clasi�cación o clustering.

A pesar de la gran cantidad de características que pueden ser extraídas desde los archivos

de música, diversos autores (como los participantes del famoso congreso internacional ISMIR6

el cual se desarrolla desde el año 2000 de manera anual) han basado sus investigaciones en

los buenos resultados que se han obtenido en otros trabajos utilizando como características

sólo los coe�cientes cepstrales en las frecuencias de Mel (MFCC Mel Frequency Cepstral

Coe�cients7), que corresponden a una transformación de la señal digital bruta que daría

mayor importancia a las frecuencias audibles por una persona, y que por ende, tendría

mejores resultados en el problema de reconocimiento de voz.

5Elias Pampalk, Fabian Mörchen, Alfred Ultsch, Rudolf Mayer, Robert Neumayer, y Andreas Rauberentre otros

6http://www.ismir.net/7Daniel P. W. Ellis: online web resource - http://www.ee.columbia.edu/~dpwe/resources/matlab/

rastamat

3

Page 14: Representación Topológica de las Características de la

1.3. Tipos de problemas abordados en Recuperación de

Información en Música

La recuperación de información en Música o MIR por su sigla en inglés, es el área de

investigación dedicada al modelamiento, creación, búsqueda, procesamiento y uso de datos

musicales. Tal como el término MIR indica, es una área de investigación motivada por el deseo

de proveer entre quienes gustan de la música, métodos y herramientas robustos, efectivos

y utilizables para ayudar a localizar, recuperar información y experimentar con la música.

MIR es un área interdisciplinaria que involucra a investigadores de las disciplinas de la

música, ciencias cognoscitivas, ciencias de la biblioteconomía y documentación, ciencias de

la computación, entre otras.

Algunas investigaciones han abordado los siguientes problemas:

Categorización automática para archivos digitales de audio. Este enfoque

intenta resolver problemas como: la identi�cación de género o estilo musical, la

identi�cación de artistas, el reconocimiento de voz en una señal de audio, la

identi�cación del idioma en una grabación, la traducción de señales a palabras escritas,

entre otros.

Agrupamiento automático de archivos digitales de audio según Similaridad.

Este problema intenta identi�car reglas de agrupamiento de señales de audio cuyas

clases no están prede�nidas con anticipación. Dentro de sus métodos destacan las

técnicas de aprendizaje automático no supervisado utilizando análisis de timbre, ritmo,

tono, pulso, entre otras características. Una subárea de investigación se relaciona al

estudio de medidas de similaridad y/o extracción de características.

Recomendación de música y/o generación de listas de reproducción. Este

problema se basa en la creación de modelos que permitan la generación automática de

recomendaciones de música de acuerdo a elementos de similaridad.

Transcripción de señales de música. Este problema trata de la obtención de

tablaturas o partituras después del procesamiento de las señales de audio.

Organización de colecciones de música Este problema aborda temáticas como el

4

Page 15: Representación Topológica de las Características de la

almacenamiento, localización e indexación de grandes volúmenes de archivos musicales

en formato digital.

Robots parlantes.Esta área de estudio intenta modelar y recrear robóticamente el

proceso de generación de señales audibles que imiten mecánicamente la voz humana.

Para saber otras interesantes áreas, véase http://ismir2012.ismir.net/authors/

call-for-participation.

1.4. Objetivos y Contribución de esta Tesis

El objetivo de esta tesis es diseñar e implementar un algoritmo para la generación de

listas de reproducción de música similar mediante la aplicación de mapas auto organizativos

para el aprendizaje topológico de las características de la señal digitalizada de la música.

Objetivos especí�cos

Estudiar métodos de extracción de características para la recuperación de información

en música y de�nir el conjunto de características que mejor posibilitaría la generación

de listas de reproducción por similaridad.

Proponer medidas de similaridad y construir un modelo SOM para el aprendizaje

topológico de las características de la señal digitalizada de la música, que permita un

agrupamiento de archivos de música similar.

Construir un algoritmo basado en las redes SOM para la generación de una lista de

reproducción que permita una suave transición entre música similar.

Generar la visualización del mapa auto-organizado para analizar la similaridad

entregada por la propuesta.

Hipótesis

Mediante una representación adecuada de la topología de las características extraídas de

las señales digitalizadas de la música, será posible la agrupación por similaridad de estilos

para la obtención de listas de reproducción.

5

Page 16: Representación Topológica de las Características de la

1.5. Organización de esta Tesis

Para comenzar, en el capítulo 2 se analiza el estado del arte de cada una de las etapas

necesarias para esta tesis, siendo detalladas en la sección 2.1 el estado del arte para la

�Extracción y Selección de Características desde archivos de música en formato digital�, en

la sección 2.2 el estado del arte en �Clasi�cación de Música�, en la sección 2.3 el estado del

arte en las técnicas SOM para la visualización de música y �nalmente en la sección 2.4 el

correspondiente a las técnicas de generación de listas de reproducción de música.

Como metodología, en el capítulo 3 se estudian los principios teóricos que fundamentan

esta tesis, comenzando en la sección 3.1 con el proceso de extracción de características y

la sección 3.2 con el proceso de selección de características. A continuación, la sección 3.3

detalla el proceso de clasi�cación automática de música, �nalizando en la sección 3.4 con el

proceso de generación de listas de reproducción.

En el capítulo 4 se resumen los experimentos realizados incluyendo en la sección 4.1,

información referente a las medidas de evaluación que fueron utilizadas y en la sección

4.2, una breve descripción de los diferentes conjuntos de datos para los cuales se probaron

los algoritmos. Los resultados y discusión de los mismos pueden ser profundizados en las

secciones 4.7 y 4.8 respectivamente. Las características mejor evaluadas para la tarea de

generar listas de reproducción de música puede ser obtenida en el apéndice B.

Para �nalizar, en el capítulo 5 se presentan las conclusiones y posibilidades de trabajo

futuro.

Nota: Con el objeto de evitar mencionar reiteradamente el concepto �los datos de un

archivo de música en formato digital�, en lo que sigue se mencionará indistintamente a estos

archivos como �música�.

6

Page 17: Representación Topológica de las Características de la

Capítulo 2

Estado del Arte

2.1. Estado del Arte en Extracción y Selección de Ca-

racterísticas desde archivos de música en formato

digital.

2.1.1. Contexto

En primer lugar se desea clari�car que existen abundantes trabajos de investigación que

han tratado el problema de la clasi�cación y la recomendación de música. Estos sistemas

hacen uso de la información que puede ser extraída desde las etiquetas ID3 de los archivos

multimedia o los que pueden ser obtenidos gracias a la intervención humana, como por

ejemplo, a través de rankings en sistemas de redes sociales como last.fm o etiquetado manual

de artistas y música. Sin embargo, en esta propuesta de tesis obviaremos en el modelo la

inclusión de estos datos (para lo cual existen investigaciones utilizando técnicas clásicas de

IR en archivos documentales). Ver un ejemplo de este enfoque en [11].

Extracción de Características de la música: Se comprenderá como el proceso

mediante el cual un archivo de música es mapeado desde un espacio en donde el recorrido de

las variables (canales de audio) tiene alta frecuencia (señal digital de un archivo de música)

y es transformado en otro espacio de n-dimensiones en donde cada dimensión corresponde

a una impresión, transformación, o característica derivada desde el archivo de música en

formato digital.

7

Page 18: Representación Topológica de las Características de la

Lo primordial para comprender la complejidad de esta tarea, es analizar la naturaleza

de los datos de entrada, la cual corresponde a una serie de tiempo de alta frecuencia1 y de

comportamiento irregular, sin ciclicidad ni estacionalidad evidente. En el ámbito de estudio,

estas series son llamadas �datos brutos� y por su naturaleza, no es posible analizarlas de

forma directa por diversos aspectos, que se mencionarán a continuación:

Habitualmente, la similaridad de series de tiempo es determinada con respecto a alguna

forma de curva generalizada o �exible2. Los datos de un archivo de audio en formato

digital no tienen características que permitan este tipo de métodos de análisis.

El i-ésimo valor en la serie de una canción favorita en formato digital, no tiene una

correspondencia con el i-ésimo valor en la serie de otra canción favorita, y ni siquiera

si esa restricción fuera relajada a un (i± n)-ésimo valor.

La forma de una señal de audio no expresa aspectos evidentes para la realización de

análisis como son: tareas de clasi�cación o identi�cación, de búsqueda de similaridad

entre muchos otros3.

El largo de un archivo musical (cantidad de datos en la serie de tiempo) no tiene

por qué guardar correspondencia con otro archivo musical, y esto implica un amplio

margen de posibilidades a tener en cuenta, como por ejemplo, estimar qué sección de

la música es más representativa para tareas de recuperación de información, además

del largo a seleccionar (10 segundos, 30 segundos, el tema completo, etc.) y la calidad

de dicha sección (frecuencia de muestreo, tasa de bits, etc.).

La calidad de la sección de audio que será analizada (a través de su frecuencia de

muestreo y bitrate) involucrará más o menos datos en la serie original y la diferencia

en la cantidad de puntos entre las series, puede ser de varias veces. Un ejemplo a

continuación:

1Ejemplo: La canción folclórica �El guatón Loyola� que tiene una duración de 1:57 [min], 128 kbps, 44100Hz en formato mp3, tiene una serie de 5.173.631 valores.

2Algunos ejemplos son el análisis de series de tiempo �nancieras que involucran la búsqueda de patrones,tendencias, ciclicidad, etc

3http://www.music-ir.org/mirex/wiki/MIREX_HOME

8

Page 19: Representación Topológica de las Características de la

� Archivo: �El guatón loyola.mp3� - 1:57, 128 kbps, 44100 Hz > 5.173.631 puntos.

� Archivo: �El guatón loyola.mp3� - 1:57, 19 kbps, 11025 Hz > 1.294.847 puntos.

Por todo lo anterior, es necesario que las características extraídas desde la señal de datos

(ver �gura 2.1) permitan un mapeo desde la señal digital hacia un vector de interés que

ofrezca un enfoque útil al procesamiento automático.

Figura 2.1: Señal de audio verde, �El guatón Loyola�, 1:57 [min]. 128 kbps, con una tasa demuestreo de 44100 Hz tiene un largo de ½5.173.631 valores!. Serie roja, corresponde a unaampliación visual de un segundo de una sección de la pieza musical. En este caso, el mayormovimiento de la serie corresponde a la voz.

2.1.2. Proceso de extracción de características

La cantidad de características a obtener desde un archivo de música es tan grande como

permita la imaginación, pues muchas de ellas podrían corresponder a transformaciones de

diversa naturaleza y no todas ellas relacionadas directamente a terminologías musicales, lo

que a su vez impide una comprensión evidente entre el sonido y la característica extraída.

Desde el año 2000, G. Tzanetakis y otros [32], han estudiado la extracción exhaustiva

de características desde archivos en formato digital, creando un framework desarrollado

en lenguaje C que permite a los profesionales del área de recuperación de información,

el desarrollo de modelos que permitan desarrollar tareas de aprendizaje automático.

Recomendable es revisar el trabajo del año 2007 titulado �Marsyas: a case study in

implementing Music Information Retrieval Systems�, el cual se puede estudiar en [34] y que

permitió posteriormente en 2008, la creación del trabajo �Interoperability and the Marsyas

0.2 Runtime� [33] que forma parte fundamental de este trabajo de investigación.

La �International Society for Music Information Retrieval Conference4� contiene la

mayor cantidad de avances y formas en que éste y otros problemas han sido abordados,

4http://www.ismir.net/

9

Page 20: Representación Topológica de las Características de la

encontrándose su máxima expresión en 2011, en donde puede notarse que el problema ya

no es visto sólo como un problema de recuperación de archivos sino que más bien ha tenido

enfoques más relacionados al intento de comprender tópicos más avanzados en análisis de

señales de audio.

En cuanto al proceso de extracción de características, en [18] se expone un marco

matemático introductorio acerca del proceso, pero se considera aún más relevante el aviso

que en ese entonces el autor presentó como problemáticas generales de esta área de estudio,

y que son también respaldadas en otros artículos del área (incluso en la actualidad):

Falta de un marco uni�cador: Existe un gran conjunto de métodos de extracción de

características que no han sido sistemáticamente investigados. Es necesaria la creación

de un framework que uni�que las técnicas de extracción para facilitar la comparación

de nuevas propuestas, métodos o características que podrían ser extraídas (Véase:

[18, 21, 34]).

Un mismo grupo de características no sirve para todos los propósitos o

conjuntos de datos: Se ha reportado en algunos trabajos [18, 21, 23, 38] que el mismo

grupo de características no tendría un nivel similar de éxito en tareas de clasi�cación

o separación de grupos en varios estilos musicales a la vez (música clásica, techno,

hip-hop, etc.), es decir, si la característica A, B y C permiten una buena clasi�cación

del estilo X, lo mismo podría no ocurrir en el estilo Y. Clasi�car música de acuerdo a

preferencias del usuario, di�cultaría aún más el problema de selección de características.

Gran espacio de búsqueda (explosión combinatoria): Actualmente no existe

un estudio que haya demostrado, que es posible seleccionar un subconjunto único de

características para resolver una tarea especí�ca. De hecho, ni siquiera sería posible

enumerarlo y además, se han reportado argumentos tendientes a pensar que un mismo

conjunto de características que obtuvo un buen rendimiento en un conjunto de datos,

no lo tendría en la misma forma en otro.

Algunos de los enfoques que son interesantes de mencionar son el de [19], en donde se

propone un método en el que se combina la generación exhaustiva de posibles características

y se analiza el aporte que cada una de ellas tendría para la identi�cación de música similar.

10

Page 21: Representación Topológica de las Características de la

En [18] se propone un framework para la obtención de características, idea que también fue

propuesta en [32].

Los que quizás fueron los trabajos más fundamentales de todos, son los presentados en [3]

y en [31], pues propusieron un método para describir una señal de audio mediante un vector,

lo que gatilló posteriormente una apertura en el ámbito de los problemas de clasi�cación que

veremos en el apartado 2.2.

A pesar de que los métodos con intervención humana no serán analizados en esta tesis,

es de interés mencionar que la categorización de datos no sólo ha sido estudiada analizando

características que son posibles de extraer desde la señal de audio, sino que además se han

analizado como características las que los usuarios, a través de plataformas sociales, han

otorgado a los diferentes archivos de audio a través de etiquetas o rankings5.

Por ejemplo en [44] se analiza una mezcla de métodos en la que por una parte se toma

un método propuesto previamente por [32] en lo referente a la generación exhaustiva de

características, lo cual fue mezclado con datos etiquetados por usuarios en sistemas sociales

en línea y que en consecuencia permitió describir con bastante acierto la pertenencia de un

tema a un grupo musical. Lo importante en este método es la mezcla de las fuentes de datos

de entrada.

Para �nalizar, en [1] se analiza el dilema de cuál método es mejor en cuanto a resultados:

extracción de características desde señales de audio o el análisis de etiquetas comentado

anteriormente ([11] y [22]).

2.1.3. Selección de Características

El objetivo de este apartado es el de revisar brevemente la forma en que algunos autores

han llevado a cabo la etapa de selección de características, acción que tiene varias razones

de ser, como por ejemplo:

La dimensionalidad de los datos, impacta en la complejidad computacional (y el proceso

de generación de características podría llegar a crecer en varios cientos de ellas),

Como consecuencia de lo anterior, un gran número de características estará relacionado

a un mayor número de parámetros de clasi�cación (pesos sinápticos en una red

5Véase los sistemas: Flickr, YouTube o Last.fm

11

Page 22: Representación Topológica de las Características de la

neuronal, pesos en un clasi�cador lineal, etc.),

Además, podría existir correlación entre las características extraídas (lo cual podría no

aportar razonablemente a la labor de clasi�cación automática), y

Por último, es deseable que para un número �nito de características (tan pequeño como

sea posible), la máquina de aprendizaje mantenga altas capacidades de generalización.

Por todo lo anterior, el problema a resolver quedará de�nido como sigue:

El Proceso Selección de Características (Feature Selection): Consiste en que

dada una colección de características, se desea seleccionar las más importantes, de tal modo

de reducir la cantidad de ellas y al mismo tiempo mantener, tanto como sea posible, la

información que permita una buena discriminación de las clases.

La problemática en este proceso es que al seleccionar mal las características se arriesga

un mal desempeño del clasi�cador en contraparte a lo que ocurriría al realizar una buena

selección de características, puesto que si se seleccionan las características más relevantes, la

complejidad del clasi�cador se verá notablemente simpli�cada (Capítulo 5 de [29]).

Lo que se desea obtener son aquellas características que permitan maximizar la distancia

entre clases y minimizar la varianza en los elementos de la misma clase en el espacio del

vector de características.

Típicamente, al analizar la literatura, los enfoques para esta etapa también son diversos.

Por ejemplo, mientras que en [18] se propone extracción de características y evaluación

de aptitud de las mismas, en [7] sencillamente no existe selección de características en un

modo estrictamente matemático sino que más bien se hace una preferencia a priori del

tipo de características que serán utilizadas (en este caso características Croma). El segundo

caso expuesto anteriormente, es uno de los casos más típicos encontrados en la literatura,

destacando los trabajos que utilizan prioritariamente las características MFCC6 o una mezcla

de estas con otras que son similares en su obtención [41].

Si el lector desea obtener un enfoque práctico de esta etapa de selección de características,

se recomienda revisar [30] pues podrá encontrar ejemplos y aplicaciones diseñados en

Matlab®. Si por otra parte, se desea obtener un enfoque teórico del proceso, se recomienda

revisar el libro [29].

6Mel Frequency Cepstral Coe�cients.

12

Page 23: Representación Topológica de las Características de la

2.2. Estado del Arte en Clasi�cación de Música.

2.2.1. Introducción

Desde hace más de cincuenta años que los profesionales en especialidades de la estadística

y las ciencias de la computación han encontrado en éste problema un interesante reto. En

este apartado nos concentraremos en algunos de los métodos y enfoques existentes para la

clasi�cación automática de música.

Los primeros inicios en el campo de la clasi�cación automática de música se registran entre

los años 1950 y 1960, en los que German Fucks [9] introdujo al campo una de las primeras

indagaciones de que podría existir en las características de las composiciones musicales,

aspectos claves para intentar solucionar el problema de la identi�cación de compositores o

detección de �épocas musicales�.

Fucks analizó la estructura de composición de la música de diferentes periodos por medio

de medidas estadísticas, por ejemplo, las frecuencias de los intervalos de transición entre

notas vecinas o tonos más distantes, tarea que fue desarrollada para compositores típicos.

De esta forma, las composiciones de Beethoven y Bach denotaron una estructura lineal (que

podían ser reducidas al 1°violín) y que permitieron clasi�car estas composiciones de otras

como Berg o Webern. Adicionalmente a las medidas anteriormente analizadas, la distribución

de frecuencias del largo de los tonos, intervalos de tonos paralelos, acordes, entre otros

fueron estudiados7. Además, con el objeto de generar resultados más generales, se calculó

desviaciones estándares de tonos en muchas piezas musicales y luego se comparó por períodos

abriendo de esta forma, un punto de vista estadístico acerca del desarrollo de la composición

de música en cientos de años.

2.2.2. Clasi�cación de música

Por supuesto la historia en clasi�cación de música es tan extensa como los autores, pero

iremos a continuación a discutir los aspectos clave en la investigación de los problemas de

clasi�cación de música.

Según se indica en [38], la clasi�cación de música puede ser tratada como un problema

de aprendizaje supervisado o no supervisado (clustering). Visto como un problema de

7Ver trabajo de Fucks W y Lauter, 1965 en [10].

13

Page 24: Representación Topológica de las Características de la

aprendizaje no supervisado, no se utiliza información alguna sobre las clases en las que

la categorización o agrupamiento se lleva a cabo, y por tanto, los grupos emergen desde

sus propiedades y una noción de similaridad utilizada para describir la música. Por otro

lado, el proceso de clasi�cación supervisado es tal, que se considera un conjunto de datos ya

etiquetados correctamente en una etapa previa, que serán los datos de entrada al clasi�cador

automático, el cual intentará aprender las reglas que permitan en el futuro clasi�car datos

no etiquetados.

Lo más importante para una adecuada clasi�cación mediante métodos supervisados o no

supervisados, es el conocimiento observable o deducido de las características obtenidas de

la música (véase [38] páginas 4-13), que será la base para el correcto agrupamiento de los

archivos (grupos distinguibles unos de otros). Adicionalmente, la clasi�cación no supervisada

requiere una adecuada �medida de similaridad o distancia� sobre la que estar basada. El

aprendizaje supervisado, requiere de clases relevantes observadas en el conjunto de datos de

aprendizaje y la evaluación de este tipo de aprendizajes típicamente estará basado en tasas

de error de las reglas de clasi�cación8.

A continuación algunos de los problemas que pueden ser abordados mediante técnicas de

clasi�cación en el campo de la recuperación de información en música.

Organización de colecciones de música.

Las enormes cantidades y volúmenes de datos asociados a archivos de música en formato

digital, han generado la necesidad de que estas colecciones de datos sean organizadas por

género, artista, álbum, etc., pero a menudo este procedimiento es efectuado de forma manual

para cada pieza musical. Por lo tanto, los métodos de clasi�cación supervisados pueden ser

utilizados para categorizar los archivos de música de acuerdo a elementos ya etiquetados,

por ejemplo, de acuerdo a artistas, estilos, etc. ya conocidos por el clasi�cador automático.

El nombre del artista, del álbum o el género podría ser asignado a un tema musical auto-

máticamente permitiendo consecuentemente el enlazado a sistemas en línea de distribución

y venta de música en Internet9.

Dentro de las aplicaciones de los métodos de clasi�cación no supervisados se encuentra la

8Véase sección 4.1 sobre métricas de evaluación para el aprendizaje automático supervisado9Music Genome Project - http://www.pandora.com, Apple Itunes: http://www.itunes.com/, Last Fm

- http://www.last.fm

14

Page 25: Representación Topológica de las Características de la

categorización de música [31], la visualización de colecciones de música [6, 20] o la generación

de sistemas de recomendación de música [28].

Importante es también la inclusión del etiquetado de usuarios en redes sociales, que

aunque no será tema de estudio en este trabajo, puede ser visto en [22].

Transcripción de señales de música.

La transcripción de señales de música consiste en transformar una señal de audio en sus

correspondientes partituras, lo que permitiría por ejemplo, aplicaciones de aprendizaje en

músicos novatos en canto o al tocar un instrumento. Para saber más sobre este problema,

revise [14].

Las tareas de transcripción de música son aquellas en las cuales un archivo de audio es la

entrada y las partituras serían la salida. Este problema puede ser tratado como una tarea de

clasi�cación supervisada en donde las notas correctamente ejecutadas por músicos expertos

o bien la música ya grabada serían los datos de aprendizaje. Volver desde una señal de audio

a una hoja musical es la tarea principal en este enfoque y su aplicación directa se encuentra

en el aprendizaje de jóvenes músicos que desean aprender a tocar un instrumento, cantar o

simplemente en la obtención de la partitura10.

Psicología Cognitiva de la Música.

Para los más �románticos�, esta es una interesante sub área de estudio, ya que las clases

son emociones que la canción o tema musical produce en las personas (tristeza, alegría,

euforia, etc.) catalogando con ello, temas musicales que provocan en los auditores sensaciones

emocionales similares, o bien que traigan recuerdos hacia ciertos hechos pasados colectivos.

El último aspecto es posible porque según se analiza en [38, sección 6], existen estructuras

de composición que ciertamente han demostrado ser extraíbles y por tanto, se podría

encontrar música que en cierta época de la historia tenía una tendencia (ejemplos: Música

Hippie, Música revolucionaria, Música �romántica�, etc.).

En [2] se encuentra un detallado estado del arte sólo de esta sub área de interés.

10http://www.kevinwinegar.com/

15

Page 26: Representación Topológica de las Características de la

Análisis de la estructura de composición.

Tiene por objeto la clasi�cación de acuerdo a criterios de estilo de compositores. Algunas

de sus aplicaciones pueden ser útiles en la identi�cación de un autor desconocido o para

explorar la variabilidad de técnicas en un gran número de piezas de un compositor en

particular.

Estas tareas de clasi�cación pueden ser exploradas en forma supervisada o no supervisada

desde una perspectiva exploratoria y dependiendo de la disponibilidad de información acerca

de autores o estilos. Algunas tareas podrían identi�car estructuras de alto nivel que no son

observables de forma directa, como por ejemplo, ciertas ocurrencias de eventos en un tema

musical, claves o estructuras de forma. A un bajo nivel de composición musical existen marcas

como cambios de pitch, entre otros aspectos más conocidos por expertos en música y que

permitirían clasi�car música por medio de su estructura de composición.

Estas tareas son similares a las de organización de colecciones de música, sin embargo, no

se utilizan análisis de señales para la clasi�cación sino que están basados en notas conocidas

(Véase [38, sección 7] para mayores referencias).

Por supuesto estas son sólo algunas de las áreas de estudio, y existe una enormidad

de material y enfoques de recuperación de información en música en constante desarrollo

e investigación. Se recomienda al lector interesado, tener como primera fuente de lectura,

la reciente agrupación en torno a temas de Recuperación de Información en Música en el

siguiente portal: http://www.ismir.net/

2.3. Estado del Arte en Visualización de Música utilizan-

do Mapas auto-organizativos SOM.

2.3.1. Introducción a SOM

En 1982, T. Kohonen presentó un modelo de red denominado �Mapas auto organizativos�

o SOM (Self-organizing Maps), inspirado en ciertas evidencias descubiertas a nivel cerebral.

Este tipo de red neuronal arti�cial posee un aprendizaje no supervisado competitivo.

No existe ningún maestro externo que indique si la red neuronal arti�cial está operando

correcta o incorrectamente, porque no se dispone de ninguna salida objetivo hacia la cual la

16

Page 27: Representación Topológica de las Características de la

red neuronal deba tender.

La red neuronal arti�cial auto-organizada debe descubrir rasgos comunes, regularidades,

correlaciones o categorías en los datos de entrada, e incorporarlos a su estructura interna

de conexiones. Se dice por tanto, que las neuronas deben auto-organizarse en función de los

datos de entrada.

En el aprendizaje competitivo, las neuronas compiten unas con otras con el �n de llevar

a cabo una tarea especí�ca, por ejemplo, categorizar los datos que se introducen en la red

que poseen similitudes que implicarán la activación de una o varias neuronas en la capa de

salida.

Las clases o categorías deben ser creadas por la propia red, puesto que se trata de un

aprendizaje no supervisado, a través de correlaciones entre los datos de entrada.

Para un análisis más profundo se invita al lector a revisar el libro [15].

2.3.2. SOM aplicado a la música

La similaridad musical de archivos de audio puede ser modelada utilizando, tal como

se introdujo en el apartado 2.1, un conjunto de características de diversa naturaleza. Sin

embargo, estos modelos no pueden ser utilizados de forma sencilla con algoritmos de minería

de datos tradicionales [27], pues son requeridos muchos cálculos de distancia, a la vez que

son necesarios también, muchos cálculos involucrados a promedios y centroides, lo cual por

su parte, ha abierto el campo para que los datos de entrada involucren al menos dos tipos

de datos: Características extraídas desde las señales de audio [39] y datos etiquetados en

plataformas sociales [11].

En 2002, una de las primeras publicaciones relacionadas del caso [26] propuso como

método el uso de SOM como propuesta de articulación de similaridad. Sin embargo, en 2003

aparece una de las propuestas más interesantes a destacar por ahora y que corresponde a

la técnica UMatrix [35] que explora una forma más extensa de las redes SOM por cuanto

amplia enormemente el espacio bidimensional de neuronas de la capa de salida produciendo

una especie de plano o mapa que puede ser utilizado para representar una especie de geografía

de los datos. En 2005 los mismos autores [36] mejoran la técnica ofreciendo una aplicación

práctica de ESOM la que posteriormente sirvió para el desarrollo de una aplicación en 2006

17

Page 28: Representación Topológica de las Características de la

que puede ser obtenida en Internet11.

2.4. Estado del Arte en Generación de Listas de Repro-

ducción de Música.

Tal como se ha comentado en otras secciones anteriores, en las conferencias ISMIR

existe una amplia cantidad de temáticas relacionadas a la recuperación de información

desde archivos de música. Una muy interesante categoría de participación es �Music

recommendation and playlist generation12�. En esta sección es en donde se pueden encontrar

trabajos relacionados a esta problemática.

Dentro de los alcances más interesantes se destacan [37] una técnica de generación de

listas de reproducción visual con pequeñas intervenciones de un usuario y el enfoque de

[8], por cuanto no utiliza metadatos (que sería lo obvio) sino que se basa en características

como las MFCC. En este último enfoque evidencian algunas tendencias en resultados ya

encontrados por otros investigadores del área y que se han mantenido en el tiempo en

publicaciones posteriores (existen estilos de música que son mucho más sencillos de analizar

e identi�car como el Hip-Hop y el Rock) y claramente los resultados para el mismo tipo de

características, di�ere enormemente entre distintos estilos musicales (afectando los resultados

de forma notoria). En el mismo artículo se incluye un ejercicio interesante (aunque subjetivo)

en donde se analiza la evaluación que realizan los usuarios al sistema de recomendación por

similaridad siendo la evaluación de los usuarios de un 71,1%.

En [16] se puede ver un enfoque que utiliza una técnica similar a la de [8], pero con

estaciones de radio online.

Todos los métodos anteriores utilizan el análisis de características, pero existen también

otros enfoques de interés: por ejemplo en [4] se plantea un modelo para la generación de

listas de reproducción mediante un enfoque visual y en [12] se puede ver un análisis del

problema utilizando técnicas de IR (information retrieval) que son muy utilizados en el área

de categorización de textos en problemas de bases de datos documentales.

11http://databionic-esom.sourceforge.net/12http://ismir2011.ismir.net/IFA.html

18

Page 29: Representación Topológica de las Características de la

Capítulo 3

Metodología

Este capítulo complementa cuatro etapas, siendo la primera el proceso de extracción de

características desde archivos Mp3, pasando luego a la evaluación de aporte de cada de una

de ellas (selección de características) para un proceso de categorización automática (proceso

supervisado), y posterior visualización mediante mapas auto-organizativos (SOM), con el

objetivo de obtener una lista de reproducción que re�eje la similaridad [21] de estilo entre

los archivos de música procesados. Se prueba además, un proceso alternativo utilizando

como medida de similaridad la distancia de cosenos. La siguiente �gura ilustra brevemente

todas las partes del proceso que serán analizadas por separado en las secciones subsiguientes.

Figura 3.1: Metodología del proceso global para la generación de listas de reproducción.

19

Page 30: Representación Topológica de las Características de la

3.1. Extracción de Características desde archivos de

música en formato digital

3.1.1. Introducción

Tal como se comentó en el Estado del Arte, la naturaleza de la señal de audio no permite

análisis tradicionales de series de tiempo y por lo mismo, es necesario un proceso de extracción

de características que, aunque podría simpli�car su análisis, también tiene importantes retos

aún no resueltos totalmente como: la gran cantidad y diversidad de posibles características a

obtener desde la señal digital y por consiguiente los enormes espacios de búsqueda (referido

al dominio de las variables de entrada en el problema).

3.1.2. El proceso de extracción de características

En términos generales, esta propuesta utiliza un gran número de características que han

sido propuestas en la literatura [31], las cuales dependiendo del enfoque y objetivo que se

desee lograr serán más o menos útiles.

Las características están basadas en la transformada corta de Fourier (STFT) y son

calculadas para cada frame (corto espacio de tiempo) del sonido a caracterizar1. Mt[n] es la

amplitud de la transformada de Fourier en el frame t y frecuencia del contenedor n.

Las características calculadas para esta tesis fueron:

Spectral Centroid: Es una medida de la forma espectral y corresponde al punto de

balance (centro de gravedad) de la magnitud del espectro de la STFT, el cual puede

ser calculado utilizando:

Ct =

∑nMt[n] · n∑nMt[n]

(3.1.1)

Spectral Rollof: está de�nido como la frecuencia Rt en la cual esta concentrado el

85% de la magnitud de la distribución, es decir, en las frecuencias más bajas. El Rollof

es también una medida de la forma espectral.

Rt∑n=1

Mt[n] = 0,85 ·N∑n=1

Mt[n] (3.1.2)

1Para más detalle acerca del algoritmo STFT, véase [25]

20

Page 31: Representación Topológica de las Características de la

Spectral Flux: es la norma 2 de la diferencia entre la magnitud del espectro de la

Transformada corta de Fourier (STFT) evaluada en dos frames sucesivos. La STFT es

normalizada en energía. Spectral Flux es una medida del cambio espectral.

Ft =N∑n=1

(Mt[n]−Mt−1[n])2 (3.1.3)

donde Mt[n] y Mt−1[n] son las magnitudes normalizadas de la transformada de Fourier

en el frame actual t y el frame anterior t− 1 respectivamente.

Zero Crossings: Provee una medida de lo ruidosa que es una señal.

Zt =1

2

N∑n=1

|sign(x[n])− sign(x[n− 1])| (3.1.4)

donde sign es 1 para entradas positivas y −1 para entradas negativas y x[n] es el dominio

de tiempo para el frame t. Zero Crossings corresponde también al número de veces que la

señal cambia de signo desde un punto en la serie al otro (o toca el eje central de la señal).

Es una buena medida para la estimación del Pitch.

Mel-Frecuency Cepstral Coe�cients (MFCC): Son una representación de corto

plazo de la energía del espectro de un sonido. Ellas se derivan de un tipo de

representación cepstral del archivo de audio (particularmente una representación no

lineal). La diferencia entre el cepstrum y el cepstrum de la frecuencia de Mel es que

en este último, las bandas de frecuencia están igualmente espaciadas sobre la escala de

Mel2 el cual aproxima de mejor manera la audición humana en sistemas automáticos

que las bandas de frecuencia espaciadas linealmente según el cepstrum normal.

Las MFCC se suelen utilizar para análisis de voz y el primer paso para obtenerlos es

el enventanado de la señal original, paso que se pasará a introducir a continuación.

Para la obtención de los MFCC se obtuvieron ventanas de 25 mili-segundos (típicamen-

te 512 muestras de la señal) de un archivo Mp33 separadas entre si 10 mili-segundos,

utilizando una ventana de análisis tipo Hamming (que atenúa la señal en los extremos

con la �nalidad de mejorar el análisis espectral) y a continuación siguiendo los siguientes

pasos.

2http://en.wikipedia.org/wiki/Mel_scale3El largo del archivo de audio dependerá del conjunto de datos para el cual se corre el experimento.

21

Page 32: Representación Topológica de las Características de la

Figura 3.2: Ventana de Análisis

s[n]: Señal de audiow[n]: Ventana de análisisN : Tamaño de la ventanaM : Desplazamientow[n] = 0,54− 0,46 cos

(2πnN−1

)

Figura 3.3: Enventanado de la señal de audio

1. Tomar la transformada de Fourier de 512 puntos para obtener una representación

en el dominio de la frecuencia.

2. Mapear la potencia del espectro obtenido anteriormente en la escala de Mel

utilizando la superposición de ventanas triangulares (24 �ltros triangulares

de�nidos en bandas de igual anchura en la escala de Mel). La conversión de hercios

(f) a mels (m) se realiza mediante la siguiente fórmula:

m = 1127, 01048 · ln(

1 +f

700

)(3.1.5)

3. Posteriormente se calcula el logaritmo de los 24 coe�cientes obtenidos en los �ltros

Mel. Estos 24 coe�cientes son una representación suavizada del espectro de la

ventana de señal.

4. Por último, se aplica una transformada discreta de cosenos (Discrete Cosine

Transform, DCT), con objeto de eliminar correlaciones entre los coe�cientes de los

�ltros, obteniendo una representación equivalente de 24 coe�cientes que se conoce

22

Page 33: Representación Topológica de las Características de la

precisamente como Mel-Filter Cepstral Coe�cients (MFCC). En esta tesis se han

utilizado sólo los 13 primeros coe�cientes, que son una representación aún más

suavizada del espectro de la señal, próxima a la envolvente.

Figura 3.4: Extracción de los MFCC

LPCC - Coe�cientes cepstrales de predicción lineal: Son coe�cientes lineales

(LPC) representados en el dominio del cepstrum y proporcionan estimaciones de los

parámetros del habla. La idea de LPC se basa en el modelo de producción del habla,

el cual intenta modelar el espectro del tracto vocal por medio de un �ltro lineal. LPC

se puede calcular directamente por los métodos de auto-correlación o covarianza desde

una ventana de tiempo en la señal de audio; y los coe�cientes cepstrales (LPCC) pueden

ser obtenidos desde los LPC como:

LPCCi = LPCi +i−1∑k=1

k − ii

LPCCi−kLPCk (3.1.6)

Para saber más revise [17].

23

Page 34: Representación Topológica de las Características de la

Características Croma (Chroma Features)4: Son una interesante representación

del audio ya que el espectro completo es proyectado en 12 partes que representan cada

uno los 12 semitonos distintos (o croma) de una octava musical (C, C#,D,D#,...,B).

Estas características se correlacionan fuertemente a la progresión armónica de la

señal de música reinante en la música occidental. En la literatura relacionada a la

recuperación de información en música (MIR) se les reconoce a estas características

que:

� Representan el pitch de distribución tanto para señales monofónicas como

polifónicas,

� Consideran la presencia de frecuencias harmónicas,

� Son robustas al ruido,

� Son independientes del timbre e incluso del instrumento que emite el sonido,

� Son independientes de la intensidad y la dinámica del sonido; y por último,

� Son independientes de la sintonía, y por lo tanto la frecuencia de referencia puede

ser diferente del estándar 440 Hz.

Figura 3.5: Grá�co de área para características de Chroma de audio.Fuente: MusicMiner - Visualizing timbre distances of music as topographical maps [21]

4Para mayor referencia se recomienda visitar http://labrosa.ee.columbia.edu/matlab/

chroma-ansyn/ en donde además podrá descargar una implementación en Matlab para el calculo deestas características.

24

Page 35: Representación Topológica de las Características de la

Medida de planitud espectral (Spectral Flatness Measure): Es una medida

utilizada en procesamiento de señales digitales para caracterizar un espectro de audio.

Esta medida provee una forma de cuanti�car cómo es el tono de un sonido. Una

medida alta de esta característica indica que el espectro tiene un valor similar en

todas las bandas espectrales (lo cual podría ser ruido blanco) y el grá�co de espectro

debería aparecer relativamente plano y liso. Por otro lado, una medida baja de esta

característica indica que la potencia del espectro esta concentrada en un número

pequeño de bandas.

Se puede obtener esta caracterización de la señal mediante la división de la media

geométrica de la potencia del espectro por la media aritmética de la potencia del

espectro.

Flatness =

N

√∏N−1n=0 x(n)∑N−1

n=0 x(n)

N

=exp

(1N

∑N−1n=0 lnx(n)

)1N

∑N−1n=0 x(n)

(3.1.7)

Factor de cresta espectral: Al igual que la característica anterior, está relacionada

a los peaks del espectro. Se utiliza para representar la relación entre el peak (cima) de

valor con el valor RMS5 de una onda medida en un intervalo de tiempo especi�cado.

Por ejemplo, una onda sinusoidal tiene un factor de cresta de 1.4 (o 3 dB), ya que el

valor máximo es igual a 1,414 veces el valor RMS. En esencia es una medida de una

forma de onda, el cual se calcula a partir de la amplitud del peak de la onda dividida

por el valor RMS de la onda. Su valor mínimo es cero.

C =|x|peakxrms

(3.1.8)

xrms =

√√√√ 1

N

N∑i=1

x2i =

√x21 + x22 + · · ·+ x2N

N(3.1.9)

5La media cuadrática: valor cuadrático medio o RMS (del inglés root mean square) es una medidaestadística de la magnitud de una cantidad variable. Puede calcularse para una serie de valores discretos opara una función de variable continua. El nombre deriva del hecho de que es la raíz cuadrada de la mediaaritmética de los cuadrados de los valores.

25

Page 36: Representación Topológica de las Características de la

Pares de Líneas Espectrales (LSP): Se basan en el modelamiento matemático

del tracto vocal, el cual es concebido como una serie de tubos de sección variable sin

pérdidas en donde se supone el sonido se propaga como una onda plana a través de los

tubos, desde la glotis hasta los labios.

Para un orden p dado, el análisis de la codi�cación predictiva lineal o LPC resulta en

un �ltro de todo polo 1Apz

descrito por:

H(z) =1

Apz=

1

1 + α1z + α2z2 + ...+ αpzp(3.1.10)

donde z = e−jω, −π < ω < π. Los parámetros {αi}i=1,...,p son conocidos como los

coe�cientes LPC.

Se puede veri�car que el polinomio Anz satisface las siguientes relaciones:

An(z) = An−1(z)− knBn−1(z), A0z = 1,

Bn(z) = zBn−1(z)− knAn−1(z), B0z = 1,(3.1.11)

donde An(z) y Bn(z) están relacionados por

Bn(z) = zn+1An(1

z) (3.1.12)

En las de�niciones 3.1.11 los parámetros {ki}i=1,2,...,p son llamados los coe�cientes

parcor. Es importante notar que los coe�cientes parcor son completamente equivalentes

a los coe�cientes LPC en un sentido matemático. En otras palabras, los coe�cientes

parcor y los coe�cientes LPC representan la misma información espectral.

Los coe�cientes parcor son también interpretados como los coe�cientes de re�exión en

el límite del tubo acústico para el modelo del tracto vocal.

Para n = p+ 1 en las fórmulas 3.1.11, se tiene que:

Ap+1(z) = Ap(z)− kp+1Bp(z)

= Ap(z)− kp+1zp+1Ap(

1

z)

(3.1.13)

26

Page 37: Representación Topológica de las Características de la

En 3.1.13 se considera las condiciones de borde kp+1 = 1 y kp+1 = −1. Estas

condiciones corresponden a la glotis completamente cerrada o completamente abierta

respectivamente en el modelo del tubo acústico. Para las condiciones kp+1 = 1 y

kp+1 = −1, el polinomio Ap+1(z) coincide con el polinomio:

P (z) = Ap(z)− zp+1Ap(1

z)

= 1 + (α1 − αp)z + ...+ (αp − α1)zp − zp+1

(3.1.14)

y

Q(z) = Ap(z)− zp+1zp(1

z)

= 1 + (α1 + αp)z + ...+ (αp + α1)zp + zp+1

(3.1.15)

respectivamente.

Cuando p es entero, los polinomios P (z) y Q(z) pueden ser expresados como:

P (z) = (1− z) Πi=2,4,...,p

(1− 2zcosωi + z2),

Q(z) = (1 + z) Πi=1,3,...,p−1

(1− 2zcosωi + z2),(3.1.16)

donde ω1 < ω3 < ... < ωp−1 y ω2 < ω4 < ... < ωp. De 3.1.16 se desprende que e−jωi ,

i = 1, 2, ..., p son las raíces del polinomio P (z) y Q(z). Los parámetros {wi}i=1,...,p

corresponden a los parámetros LSP. Es importante notar que ω0 = 0 y ωp+1 = π son

raíces de P (z) y Q(z) respectivamente y deben ser excluídas de los parámetros LSP.

Para profundizar acerca de estas características, revise [13].

3.1.3. Reducción de dimensionalidad

Sea S[x] la serie de datos obtenida de un archivo de música en forma digital (WAV o

Mp3) con x = 1, 2, ..., n. Esta señal de datos corresponde a cualquiera de los dos canales de

una señal estereo6. S[x] contiene (dependiendo del conjunto de datos7), unos 30 segundos de

6Por ahora se hará el supuesto de que ambas contienen la misma información7Lamentablemente no existen muchos conjuntos de datos de audio disponibles, pues contienen derechos

de autor. Algunos conjuntos de datos disponibles ofrecen 10 segundos de audio y otros 30 segundos. Muy

27

Page 38: Representación Topológica de las Características de la

música y de ellos se obtiene una matriz Mk,218 de 218 columnas (una por cada característica

obtenida, teniendo en consideración que las primeras 109 corresponden al promedio de las

características obtenidas de 512 muestras de la serie sin desplazamiento de superposición8

y las segundas 109 a la desviación estándar de las características en la misma sección) y

k �las, correspondiente al análisis de k frames de datos (cada uno de 512 muestras). Para

mayor comprensión, vea la �gura explicativa 3.6 que puede ser también comprendida por el

procedimiento 3.1.

Figura 3.6: Procedimiento para la obtención de una matriz de características para cadaarchivo de música.

pocos conjuntos de datos contienen los temas completos, lo cual obliga a utilizar estas muestras de datospara hacer comparaciones.

8Ver �gura 3.3

28

Page 39: Representación Topológica de las Características de la

Procedimiento para obtener matriz de características

Procedimiento 3.1: Obtención de matrices de características

1 [L,R] = archivo.mp3; // L, R, series de datos del archivo a procesar.

2 S = obtener30seg(L);

3 S[x] = Serie de datos (Senal de audio de 30 segundos);

4 M = obtenerCartacteristicas(S);

5 M : contiene 218 caracteristicas y aproximadamente 2578 datos (que representa

cada uno a una ventana de la senal) para cada caracteristica (

correspondiente a los 30 seg).

Las 218 características obtenidas se agrupan nuevamente en promedios y desviaciones

de los valores de cada columna (c: característica obtenida), quedando: Mean(Mean(c)),

Mean(Std(c)), Std(Mean(c)) y Std(Std(c)) con lo cual, se logra transformar S[x] en

M [436, 1], es decir, un vector de características para cada archivo de audio.

29

Page 40: Representación Topológica de las Características de la

3.2. Selección de Características

3.2.1. Introducción

En los capítulos previos se consideró que para el desarrollo de un clasi�cador o analizador

de archivos digitales de audio, se debían obtener características. El objetivo de este capítulo

es analizar algún método que permita la selección de estas variables.

Tal como se vio en el capítulo 3.1, el número de características posibles de obtener desde

este tipo de archivos puede ser muy grande y hay muchas razones por las cuales se desearía

tener este número tan pequeño como sea posible y obviamente la complejidad computacional

es una de ellas.

Otro aspecto de interés en este sentido es que, aunque dos o más características

pueden ofrecer a algoritmos de aprendizaje automático buenos resultados, en muchos

sentidos la complejidad crece sin mucha ganancia en los resultados �nales si estas variables

(características) son tratadas por separado. Además, es muy posible que exista una alta

correlación entre estas variables (asunto que podría ser analizado también).

Las propiedades de generalización deseadas de los algoritmos de aprendizaje automático,

están también relacionadas al número de muestras de entrenamiento y los parámetros

del algoritmo de clasi�cación. Por ejemplo, uno de los objetivos más importantes es el

rendimiento. No sólo se necesita construir sistemas de aprendizaje automático, sino que

también debemos preocuparnos de que el error de clasi�cación sea el mínimo posible evitando

el sobre-entrenamiento y manteniendo buenas propiedades de generalización en el clasi�cador

automático.

Selección de Características: Dado un conjunto o colección de características, se busca

seleccionar las más importantes de ellas de tal modo de reducir su cantidad y, al mismo

tiempo, mantener la información que es necesaria para tareas de aprendizaje automático.

Este proceso es conocido como selección o reducción de características.

Este proceso es muy importante pues si seleccionamos características con poco poder

de discriminación, el diseño del algoritmo de aprendizaje automático podría conducir a un

mal rendimiento del mismo, mientras que si se seleccionan las características que poseen la

información más importante, el diseño del algoritmo de aprendizaje automático puede verse

realmente simpli�cado.

30

Page 41: Representación Topológica de las Características de la

Para el caso de un clasi�cador, se debiera seleccionar las características que permitan

diferenciar con una gran distancia a aquellos elementos que son distintos (entre clases

distintas) y una pequeña varianza entre elementos que pertenecen a un mismo grupo (misma

clase) en el espacio de vectores de características extraídas.

En este sentido, se pueden tomar diferentes posturas, siendo uno de ellos, examinar las

características individualmente y discriminar aquellas con pequeñas capacidades discrimina-

torias o bien examinarlas en combinación. Algunas veces, aplicar transformaciones lineales o

no lineales del vector de características puede ofrecer mejores propiedades de discriminación.

3.2.2. Preprocesamiento

Eliminación de valores atípicos

Valor atípico: Es una observación que esta numéricamente distante respecto del resto

de los datos, es decir, corresponde a una observación que parece desviarse fuertemente del

modelo estocástico subyacente que describe la muestra.

Tomando como referencia la diferencia entre el primer cuartil Q1 y el tercer cuartil Q3,

o �rango intercuartil� en un diagrama de caja, se considerará un valor atípico al que se

encuentre a 1, 5 veces de distancia de uno de esos cuartiles (atípico leve) o a 3 veces esa

distancia (atípico extremo).

Valor atípico leve:

Atipicoleve < Q1 − 1,5 · IQR,

Atipicoleve > Q3 + 1,5 · IQR(3.2.1)

Valor atípico extremo:

Atipicoextremo < Q1 − 3 · IQR,

Atipicoextremo > Q3 + 3 · IQR(3.2.2)

Los puntos con valores extremadamente alejados pueden producir grandes distorsiones

durante la etapa de entrenamiento de un algoritmo de aprendizaje automático y en efecto

pueden llegar a generar efectos desastrosos.

Si el número de valores atípicos es pequeño usualmente estos son descartados del conjunto

31

Page 42: Representación Topológica de las Características de la

de datos. Sin embargo, si este no es el caso, ellos pueden ser el resultado de una distribución

con largas colas y en consecuencia, el diseñador debe adoptar funciones de costo que no

hagan tan sensible a la máquina de aprendizaje a esta presencia de valores atípicos.

Estandarización

En muchos casos reales, los valores de las características pueden estar ubicados en un

rango muy amplio, produciendo que aquellas características con valores muy grandes, tengan

una gran in�uencia en la función de costo respecto de aquellas con valores más pequeños,

sin embargo, en muchas ocasiones esta diferencia entre los valores no re�eja en realidad

la relevancia deseada en el diseño del algoritmo de aprendizaje automático. Este problema

puede ser superado a través del proceso de estandarización de los datos, de modo que sus

valores se encuentren dentro de rangos similares.

Una forma muy utilizada es la estandarización a través de la estimación de la media y la

varianza.

Sea N la cantidad de datos disponibles de la k-ésima característica, entonces:

xk =1

N

N∑i=1

xik, k = 1, 2, ..., l (3.2.3)

S2k =

1

N − 1

N∑i=1

(xik − xk)2 (3.2.4)

x̂ik =xik − xkSk

(3.2.5)

Con lo cual las características estandarizadas tendrán media cero y varianza uno. Por

supuesto, es posible también adecuar esta transformación para que los valores de las

características queden en rangos distintos al anterior a través de un escalamiento adecuado

al caso.

Además de los métodos lineales, los métodos no lineales también pueden ser utilizados

en casos en donde los datos no estén distribuidos alrededor de la media.

32

Page 43: Representación Topológica de las Características de la

Normalización:

Otra opción respecto de la estandarización, es la de hacer que los valores de las

características se ubiquen en un rango predeterminado, por ejemplo entre cero y uno, pero

solamente realizando una traslación y normalización adecuada.

Para desarrollar este proceso: Sea xi una canción en el conjunto de datos de entrada con

i ∈ [0, N ] para N canciones con k características. Además, min(xik) es el valor mínimo de

todos los datos i (canciones) en la característica k y max(xik) el valor máximo de todos

los datos i (canciones) en la característica k, entonces, para normalizar xik, aplicar a cada

canción i y característica k:

xik =

xik −min(xiki

)

max(xik)i

−min(xik)i

,∀i, ∀k. (3.2.6)

Con lo cual las características normalizadas se ubicarán en el intervalo cero, uno.

xik ∈ [0, 1] (3.2.7)

Nota: Para los vectores de características obtenidos en este trabajo de tesis, la

normalización obtuvo mejores resultados que la estandarización.

Dado que en el caso en estudio no se da la situación de ausencia de datos o vectores

de características incompletos, no se enunciarán técnicas que pueden ser utilizadas en estos

casos.

3.2.3. Relación entre el número de características y el número de

datos de entrenamiento

En [29] se analiza la relación que debiera existir entre el número de características y el

número de datos de entrenamiento para una máquina de aprendizaje. Si el número de datos

de entrenamiento es limitado o pequeño, entonces se debe mantener un número pequeño

de características, pues agregar más características después de cierto número crítico, deja de

mejorar el rendimiento y aumenta la probabilidad de error, y por consiguiente, la disminución

del rendimiento del algoritmo de aprendizaje automático (se pre�ere que el número de datos

de entrenamiento sea mucho mayor que la cantidad de características de los datos). Este

33

Page 44: Representación Topológica de las Características de la

comportamiento es conocido como �peaking phenomenon�.

La �gura 3.7 ilustra la idea antes planteada, en donde N corresponde a la cantidad

de datos de entrenamiento y l a la cantidad de características. Para N2 >> N1, el error

correspondiente a N2 es más bajo que el de N1 y el �peaking phenomenon� ocurre para

l2 > l1. Para cada valor de N , la probabilidad de error comienza decreciendo cuando se

incrementa l hasta un valor crítico donde el error comienza a aumentar. El mínimo en la

curva ocurre en algún l = Nα, donde α usualmente tiene un valor entre 2 y 10. Si se dispone de

un gran número de datos de entrenamiento, entonces se puede seleccionar un amplio número

de características.

Figura 3.7: Peaking Phenomenon: Para un valor dado de N , la probabilidad de error decrececuando el número de características l aumenta hasta un valor crítico, después de eso, elincremento del número de características fuerza a la probabilidad de error a incrementar.Si el número de puntos de entrenamiento se incrementa N2 >> N1, se podría aumentar elnúmero de características y obtener un error menor ocurriendo el �peaking phenomenon� enun l2 > l1.

3.2.4. El proceso de selección de características

Tal como se indica en la �gura 3.8, y que puede ser revisado en mejor detalle en los

procedimientos 3.2 y 3.3, el primer elemento de de�nición es la búsqueda de un método de

ranking para las características disponibles, el cual posteriormente requiere de alguna métrica

de evaluación9 y �nalmente, la medición de la variación del rendimiento de clasi�cación de

9Para el caso en ejercicio, fue el rendimiento de una máquina de aprendizaje con funciones de clasi�cación.Para elegir el clasi�cador, se probaron varios y se optó por aquel con mejor rendimiento según el procedimiento3.2

34

Page 45: Representación Topológica de las Características de la

la máquina de aprendizaje electa a medida que se agregaban características, situación que

puede ser revisada en la �gura 4.1 y 4.2.

Procedimiento 3.2: Selección del clasi�cador

1 function Seleccionar_Clasificador(M){

2 % M: Matriz de N canciones y K-1 caracteristicas >> M[N,K]

3 % en columna K esta almacenada la clase de acuerdo al Gold Standard.

4 rendimiento=0;

5 ClasificadorSeleccionado="";

6 foreach (maquina in MaquinasDeClasificacion){

7 performanceMaquina = mejorResultadoPostSintonizacion(maquina, M);

8 if ( performanceMaquina > rendimiento){

9 [rendimiento, ClasificadorSeleccionado] = [performanceMaquina,

maquina];

10 }

11 }

12 return [rendimiento, ClasificadorSeleccionado];

13 % El mejor clasificador encontrado fue una SVM con Kernel RBF.

14 }

Procedimiento 3.3: Selección de Características

1 % R: Matriz de N canciones y K caracteristicas, el orden de las

2 % caracteristicas esta dado por el ranking del algoritmo seleccionado.

3 % La caracteristica i se encuentra rankeada desde la mas relevante a la

4 % menos relevante, i.e. i=1 es la mejor e i=436 es la peor.

5 % En columna K esta almacenada la clase de acuerdo al Gold Standard.

6 R = Metodo_Ranking_Caracteristicas(M[N,K]);

7 for (i=K; i>0; i--){

8 performanceSVM[i] = SVM(R);

9 R=eliminar_ultima_caracteristica(R);

10 }

11 mostrar_Grafico(performanceSVM);

12 return max(performanceSVM);

35

Page 46: Representación Topológica de las Características de la

Figura 3.8: Procedimiento de eliminación de características: En la entrada se selecciona latotalidad de las características posibles, se selecciona un método de ranking para ellas y secomienza eliminando desde la que tiene el peor ranking. Para cada iteración se obtiene elrendimiento de una SVM a objeto de ver la variación del rendimiento tras haber eliminadoen cada ciclo una característica. En el Apéndice B se listan las características que fueronseleccionadas de acuerdo a esta propuesta.

Selección de Características mediante SVM

Para resolver el problema de la selección de características se distingue en la literatura

dos tipos de enfoques: el de �ltro y el de envoltura (wrapper). Los métodos de �ltro consisten

en desarrollar la eliminación de atributos irrelevantes antes o de forma separada al algoritmo

de aprendizaje automático. Mientras que los métodos de envoltura, utilizan subconjuntos de

características con los cuales se evalúa el rendimiento de una máquina de aprendizaje, valor

que corresponderá a la bondad del subconjunto de características.

Considere la siguiente formulación del problema dual10:

10Para mayores detalles sobre el problema dual, revisar la sección 3.3

36

Page 47: Representación Topológica de las Características de la

maxα,σLD ≡m∑i=1

αi −1

2

m∑i,s=1

αiαsyiysK(~xi, ~xs)

m∑i=1

αiyi = 0

0 ≤ αi ≤ C, i = 1, ...,m.

σj ∈ {0, 1}, j = 1, ..., n.

(3.2.8)

donde K(~xi, ~xs) = φ(~xi) · φ(~xs) y el producto por componentes entre vectores queda

introducido por:

~w ∗ ~w = (x1w1, ..., xnwn) (3.2.9)

con lo cual es posible introducir la selección de atributos en la función de Kernel de la

siguiente manera:

Kσ(~xi, ~xs) ≡ K(~σ ∗ ~xi, ~σ ∗ ~xs) (3.2.10)

donde σj es una variable auxiliar que representa la selección del atributo j (σj = 1 si se

selecciona este atributo y σj = 0 en caso contrario). Tomando la siguiente formulación del

problema dual es posible manejar como parámetros los atributos a utilizar:

maxα,σLD ≡m∑i=1

αi −1

2

m∑i,s=1

αiαsyiysKσ(~xi, ~xs)

m∑i=1

αiyi = 0

0 ≤ αi ≤ C, i = 1, ...,m.

σj ∈ {0, 1}, j = 1, ..., n.

(3.2.11)

con lo cual es posible eliminar recursivamente las características mediante la aplicación de

un algoritmo backward11 en el cual, para cada iteración, se anula el atributo menos relevante

11Respecto de los métodos tradicionales de selección de atributos, éstos siguen enfoques Backward oForward. Estos métodos son fáciles de utilizar pero sus resultados dependen de la herramienta utilizada paramedir la importancia de cada atributo, además que demandan la realización de entrenamientos sucesivos,lo cual es costoso computacionalmente cuando el número de atributos y objetos es muy grande. En elenfoque forward, se comienza con un conjunto vacío y se añaden secuencialmente atributos en cada iteración,

37

Page 48: Representación Topológica de las Características de la

en la clasi�cación.

1. Se de�ne ~σ = (1, ..., 1)

2. Se resuelve el problema 3.2.11

3. Se busca el atributo j que aporta menos a la clasi�cación.

4. Se impone σj = 0

5. Se vuelve al paso 2 hasta que se cumpla un criterio de parada.

W 2(~α) =m∑

i,s=1

αiαsyiysK(~xi, ~xs) (3.2.12)

En SVM, el valor de 3.2.12 representa una medida de la habilidad de predicción del

modelo y es inversamente proporcional al margen. El algoritmo puede utilizar esta medida

para eliminar los atributos que mantienen esta cantidad pequeña. Para una solución ~α dada

se calcula para cada atributo p:

W 2↓p(~α) =

m∑i,s=1

αiαsyiysK(~xi↓p, ~xs

↓p) (3.2.13)

donde ~xi↓p representa un objeto (canción para esta tesis) de entrenamiento i sin considerar

el atributo p. Finalmente se remueve el atributo con menor |W 2(~α)−W 2↓p(~α)|.

Para mayor profundidad del método revise [40].

habitualmente el mejor entre los no seleccionados de acuerdo a alguna función de evaluación. En el enfoquebackward en cambio se comienza con el conjunto completo de atributos y se eliminan secuencialmenteatributos en cada iteración, basándose en alguna función de evaluación en donde se escoge el atributo menosrelevante que aún no ha sido eliminado del conjunto total.

38

Page 49: Representación Topológica de las Características de la

3.3. Clasi�cación automática de Música

3.3.1. Introducción

Desde el principio, el proceso consideraba una importante cantidad de pasos previos a la

generación de una lista de reproducción tal cual se muestra en la �gura 3.9 lo cual requiere

(al menos para esta propuesta) el poder validar que los datos y el método son en sí coherentes

y útiles para el proceso en desarrollo, lo que implica que a medida que se fueron obteniendo

representaciones de los archivos de música, se validaban reiterativamente con una máquina

de clasi�cación que es la que será documentada en esta sección (por ejemplo al calcularse y

agregarse nuevas características y más importante aún, en lo referido al proceso anterior �la

selección de características�).

No se explicitará en esta etapa cada uno de los algoritmos de aprendizaje automático que

podrían ser útiles para tareas de clasi�cación supervisada, ya que queda fuera de los alcances

de este trabajo, sin embargo de lo anterior, se entregará a continuación, una detallada

explicación del método que mejor resultado obtuvo para esta tarea dados los conjuntos

de datos en estudio y en el Apéndice C, un listado de los restantes clasi�cadores testeados y

las referencias respectivas.

Figura 3.9: Proceso global previo a la generación de listas de reproducción

39

Page 50: Representación Topológica de las Características de la

3.3.2. SVM - Support Vector Machines

Introducción al Aprendizaje con Kernels

Supongamos que tenemos un problema de clasi�cación binaria. Cuando nos llega un

nuevo ejemplo queremos saber si pertenece a una de dos posibles clases etiquetadas como

{+1,−1}.Consideremos una medida de similaridad entre un conjunto de atributos a la cual le

llamaremos una función kernel.

Pensando que los valores de los atributos los podemos representar como vectores, una

medida simple de similaridad es el producto punto (producto interno o producto escalar) de

estos vectores: < x,x′ >=∑N

i=1[x]i[x′]i donde xi representa el i− esimo elemento del vector

x.

La interpretación geométrica es que se calcula el coseno del ángulo entre los vectores x

y x′ si y sólo si están normalizados a una longitud de 1. En general < x,x′ >= (x · x′) =

|x| · |x′|cos(θ).El producto punto también nos sirve para calcular la longitud o norma del vector como:

||x|| = √< x,x >.

De la misma forma, la distancia entre dos vectores se calcula también como la longitud

del vector diferencia. Para poder aplicar esto a problemas interesantes necesitamos:

1. Poder representar instancias como vectores, para lo cual se requiere de un mapeo Φ(x).

2. Poder utilizar medidas de similaridad más generales.

El espacio que se genera con el mapeo nos deja un espacio de atributos que llamaremos

H.El representar los datos en H usando Φ(x) nos permite:

1. De�nir una medida de similaridad a partir del producto punto en H.k(x, x′) :=< x,x' >=< Φ(x),Φ(x′) >.

2. Usar herramientas de álgebra lineal y análisis geométrico.

3. Usar cualquier tipo de mapeo que nos permite tener una gran variedad de medidas de

similaridad y de algoritmos de aprendizaje.

40

Page 51: Representación Topológica de las Características de la

Para construir un clasi�cador simple, una idea es tener dos clases y asignar la clase de

un nuevo ejemplo al que tenga la media más cercana al ejemplo.

La media de las dos clases es:

c+ =1

m+

∑{i|yi=+1}

xi

c− =1

m−

∑{i|yi=−1}

xi

donde m+ y m− son el número de ejemplos positivos y negativos.

La asignación hacia la media más cercana se puede hacer en forma geométrica mediante

el producto punto.

Sea c el punto medio entre las dos medias c = (c+ + c−)/2. Revisamos si el vector x− c

que conecta a c con x tiene un ángulo menor a π/2 con el vector w = c+ − c−. Si es menor

se asigna la clase +1 y si es mayor, entonces se asigna −1.

Esto se puede hacer con el producto punto entre (x− c) y (c+− c−) o w. Si el coseno es

positivo el ángulo es menor a 90o y si es negativo, el ángulo es mayor a 90o.

y = sgn < (x− c),w > .

= sgn < x− (c+ + c−)/2, c+ − c− >

= sgn((x− c+ + c−2

) · c+ − (x− c+ + c−2

) · c−)

= sgn((x · c+)− (x · c−) +c+ − c−

2· (c− − c+))

= sgn(< x, c+ > − < x, c− > +b)

donde: b = 12(||c−||2 − ||c+||2) y la norma ||x|| = √< x,x >. b vale cero si las medias de

las clases tienen la misma distancia al origen (Ver Figura 3.10)

Entre más pequeño el ángulo entre x y el centro de la clase, más grande es el coseno y la

clase se vuelve positiva.

Lo anterior nos representa una frontera en forma de hiperplano que satisface una

restricción que se puede expresar como una ecuación lineal.

Si substituimos las de�niciones de c+ y c− obtenemos:

41

Page 52: Representación Topológica de las Características de la

Figura 3.10: Representación de vectores.

y = sgn(1

m+

∑i|yi=+1

< x,xi > −1

m−

∑i|yi=−1

< x,xi > +b)

Si ahora ponemos k(x, xi) en lugar de < x,xi >:

y = sgn(1

m+

∑i|yi=+1

k(x, xi)−1

m−

∑i|yi=−1

k(x, xi) + b) (3.3.1)

donde b ahora se expresa como:

b =1

2

1

m2−

∑(i,j)|yi=yj=−1

k(xi, xj)−1

m2+

∑(i,j)|yi=yj=+1

k(xi, xj)

Si b = 0 y el kernel toma la forma de una distribución de probabilidad con uno de sus

argumentos �jos, tal que:

∫x

k(x, x′)dx = 1 para toda x′ ∈ X

Lo anterior se puede tomar como un clasi�cador Bayesiano, que asigna la clase

dependiendo de quien tiene mayor probabilidad.

42

Page 53: Representación Topológica de las Características de la

Esto es:

P+(x) =1

m+

∑i|yi=+1

k(x, xi)

y

P−(x) =1

m−

∑i|yi=−1

k(x, xi)

y veri�car quien tiene la mayor probabilidad.

En general, los clasi�cadores basados en kernels toman la forma de:

y = sgn

(m∑i=1

αik(x, xi) + b

)

Lo cual se puede considerar como un clasi�cador basado en instancias o IBL. La

clasi�cación del ejemplo x se hace comparándolo contra todos los ejemplos xi que tienen

un peso αi 6= 0.

Esta expresión se puede so�sticar dependiendo de los valores que puedan tomar los pesos

αi que se ponen en cada kernel particular, los kernels que se utilicen, y si queremos considerar

sólo los elementos que están más cercanos de la frontera de decisión.

Teoría de Aprendizaje Estadístico

Lo que queremos hacer �nalmente es encontrar una función que nos clasi�que instancias

nuevas. Para medir qué tan bien clasi�ca una función podemos usar lo que se conoce como

zero-one loss function:

c(x, y, f(x)) =1

2|f(x)− y|

donde la �perdida� es 0 si clasi�ca correctamente y 1 si no.

Podemos tomar esto para todos los datos y promediar el resultado:

Remp[f ] =1

m

m∑i=1

1

2|f(xi)− yi|

43

Page 54: Representación Topológica de las Características de la

Figura 3.11: Posibles divisiones de 3 puntos en 2 clases.

Valores pequeños en el error de prueba o riesgo empírico (empirical risk) no necesaria-

mente implican un error real o riego pequeño sobre la distribución real de ejemplos (P (x, y)):

R[f ] =

∫1

2|f(x)− y|dP (x, y)

Cada función que se elija separa los ejemplos de cierta forma. Como tenemos una

etiquetación de ±1, existen a lo más 2m etiquetas para m ejemplos.

Una clase de funciones su�cientemente expresiva podría generar las 2m particiones. Si ese

es el caso, se dice que esa clase de funciones despedaza o shatters los m ejemplos.

La dimensión VC se de�ne como la m más grande tal que existe un conjunto de m puntos

que la clase puede despedazar. Se puede ver como un número que de�ne la capacidad de un

sistema de aprendizaje.

Por ejemplo, para 3 puntos y 2 clases en un plano existen 8 posibles asignaciones y una

recta las puede generar, para 4 puntos ya no (ver �gura 3.11).

Si h < m es la dimensión VC (Vapnik-Chervonenkis) de una clase de funciones

que el algoritmo de aprendizaje implementa, entonces todas las funciones de la clase,

independientemente de la distribución P que genera los datos, cumplen con la siguiente

cota con probabilidad 1− δ sobre los datos de entrenamiento:

R[f ] ≤ Remp[f ] + φ(h,m, δ)

44

Page 55: Representación Topológica de las Características de la

donde el término de con�anza (con�dence) o de capacidad (capacity) φ se de�ne como:

φ(h,m, δ) =

√1

m

(h

(ln

2m

h+ 1

)+ ln

4

δ

)Lo que se busca es seleccionar una clase de funciones su�cientemente restrictiva (y por

lo tanto simple) que al mismo tiempo tenga la capacidad de modelar las dependencias que

existen en P (x, y).

Clasi�cadores con Hiperplanos

Vapnik y sus colegas consideraron la clase de hiperplanos (funciones lineales) en algún

espacio de producto punto H:

< w,x > +b =∑i

wixi + b (3.3.2)

donde w ∈ H, b ∈ <, lo cual corresponde a una función de decisión:

f(x) = sgn(< w,x > +b) (3.3.3)

y propusieron algoritmos de aprendizaje para problemas que son separables con hiperplanos.

De todos los posibles hiperplanos, existe uno óptimo que da el margen de separación más

grande entre cualquier punto de entrenamiento. Su solución es:

maximizaw∈H,b∈<min (‖x− xi‖|x ∈ H, < w,x > +b = 0, i = 1, . . . ,m) (3.3.4)

Se busca maximizar la separación w, buscando los elementos más cercanos ||x − xi||,donde < w,x > +b = 0 de�ne al hiperplano que separa a las dos clases.

Por otro lado, la capacidad de la clase de hiperplanos decrece al aumentar el margen.

El encontrar una solución para este problema, o sea un hiperplano, se puede lograr

resolviendo un problema de programación cuadrática.

Anteriormente, el vector normal al hiperplano se calculaba a partir de la media de las

clases: w = c+ − c−. Ahora tenemos que encontrar el vector normal que nos de el margen

45

Page 56: Representación Topológica de las Características de la

mayor.

De�nimos el margen (funcional) de un ejemplo (xi, yi) con respecto al hiperplano (w, b)

como:

γi = yi(< w,xi > +b)

Si γi > 0 implica que la clasi�cación es correcta o yi(< w,xi > +b) > 0 para toda

i = 1, . . . ,m.

Podemos escalar o normalizar w y b para que los puntos más cercanos al hiperplano

satisfagan: | < w,xi > +b| = 1. Con esto se obtiene la forma canónica del hiperplano (w, b)

que satisface yi(< w,xi > +b) ≥ 1. En este caso el margen (geométrico) es igual a 1||w|| y

representa la distancia del hiperplano al punto más cercano.

Por ejemplo, si tenemos un punto de cada lado del hiperplano que satisface la igualdad,

osea: < w,x1 > +b = +1 y < w,x2 > +b = −1. La distancia, o el margen, entre estos dos

puntos es su diferencia: < w, (x1−x2) >= 2. Si normalizamos (dividimos por ||w|| ) nos da:< w||w|| , (x1 − x2) >= 2

||w|| .

Una forma de maximizar esa distancia es minimizando lo siguiente:

minimizaw∈H,b∈<τ(w) =1

2||w||2 (3.3.5)

sujeto a:

yi(< w,xi > +b) ≥ 1 para toda i = 1, . . . ,m (3.3.6)

Si satisfacemos las restricciones de arriba para todas las instancias 1, . . . ,m con un w

mínimo, entonces el margen global será máximo.

La función τ arriba es la función objetivo que esta sujeta a las restricciones de desigualdad.

Para resolver este problema con desigualdades, se introducen las variables αi ≥ 0 y se resuelve

el Lagrangiano:

maxαminw,bL(w, b, α) =1

2‖w‖2 −

m∑i=1

αi(yi(< w,xi > +b)− 1) (3.3.7)

Este Lagrangiano L se minimiza con respecto a las variables primales w y b y se maximiza

con respecto a las variables duales αi, lo cual nos crea un punto silla.

46

Page 57: Representación Topológica de las Características de la

En el punto silla las derivadas de L con respecto a las variables primales debe de ser cero

(Karush-Kuhn-Tucker o KKT): ∂∂bL(w, b, α) = 0 y ∂

∂wL(w, b, α) = 0, lo cual nos da:

m∑i=1

αiyi = 0 (3.3.8)

y

w =m∑i=1

αiyixi (3.3.9)

El vector solución esta en términos de los ejemplos de entrenamiento con α's diferente

de cero, llamados vectores de soporte o Support Vectors.

Por las condiciones KKT:

αi[yi(< xi,w > +b)− 1] = 0, para toda i = 1, . . . ,m (3.3.10)

Los SVs están en el margen y todos los demás ejemplos son irrelevantes, su restricción:

yj(< w,xj > +b) ≥ 1 se puede eliminar.

Substituyendo las ecuaciones anteriores, se eliminan las variables primales w y b, y se

obtiene el problema de optimización dual, que es el que generalmente se resuelve:

L =1

2< w,w > −

m∑i=1

αi(yi(< w,xi > +b)− 1)

Como:

w =m∑i=1

αiyixi

L =1

2<

m∑i=1

αiyixi,m∑j=1

αjyjxj > −m∑i=1

αi(yi(<m∑j=1

αjyjxj,xi > +b)− 1)

=1

2

m∑i=1

m∑j=1

αiαjyiyj < xi,xj > −m∑i=1

m∑j=1

αiαjyiyj < xi,xj > −

m∑i=1

αiyib+m∑i=1

αi

como:∑m

i=1 αiyi = 0, entonces: b∑m

i=1 αiyi = 0

47

Page 58: Representación Topológica de las Características de la

Figura 3.12: Transformación de Atributos.

maximizaα∈<mW (α) =m∑i=1

αi −1

2

m∑i,j=1

αiαjyiyj < xi,xj > (3.3.11)

sujeto a αi ≥ 0 para toda i = 1, . . . ,m y∑m

i=1 αiyi = 0.

Usando la ecuación 3.3.8, la función de decisión se puede escribir entonces como:

f(x) = sgn

(m∑i=1

yiαi < x,xi > +b

)

Máquinas de Soporte Vectorial

Ahora ya tenemos todos los elementos para describir las SVMs.

Hasta ahora, todo se ha expresado en un espacio de producto punto. La idea es expresar

este producto que nos da una medida de distancia en términos de una función kernel:

k(x, x′) =< x,x′ >

A esta substitución se le llama el truco kernel o Kernel trick, que permite extender la

clasi�cación basada en hiperplanos a espacios no lineales (Ver �gura 3.12).

Por ejemplo, supongamos que queremos aprender la siguiente función: f(m1,m2, r) =

Gm1m2

r2que es la ley gravitacional de Newton, que nos calcula la fuerza gravitacional entre

48

Page 59: Representación Topológica de las Características de la

dos masas separadas una distancia r.

Claramente, una función lineal no nos sirve. Pensemos en representarlo en un nuevo

espacio (x, y, z) de�nido por los logaritmos de (m1,m2, r), (x, y, z) = (ln(m1), ln(m2), ln(r)).

Podemos tratar ahora de aprender una nueva función g(x, y, z) a partir del logaritmo de

f(m1,m2, r):

g(x, y, z) = ln(f(m1,m2, r)) = ln(G) + ln(m1) + ln(m2)− 2ln(r) = c+ x+ y − 2z

lo cual se convierte en una función lineal.

El Kernel trick consiste en aplicar una función de distancia no lineal que transforma el

espacio original y que permite aprender hiperplanos o funciones lineales que nos discriminen

las clases.

Aplicando esta substitución a las ecuaciones anteriores nos queda que la función de

decisión se puede escribir entonces como:

f(x) = sgn

(m∑i=1

yiαi < Φ(x),Φ(x)i > +b

)= sgn

(m∑i=1

yiαik(x, xi) + b

)(3.3.12)

con el siguiente problema:

maximizaα∈<mW (α) =m∑i=1

αi −1

2

m∑i,j=1

αiαjyiyjk(xi, xj) (3.3.13)

sujeto a αi ≥ 0 para toda i = 1, . . . ,m y∑m

i=1 αiyi = 0.

En la práctica es probable que no exista un hiperplano que separe perfectamente a las dos

clases, posiblemente debido a ruido. Por lo mismo, se puede permitir que algunos ejemplos

violen la restricción de la ecuación 3.3.11) introduciendo variables de holgura: ξi ≥ 0 para

toda i = 1, . . . ,m: yi(< w,xi > +b) ≥ 1− ξi para toda i = 1, . . . ,m.

Para esto se tiene que hacer un balance entre la capacidad del clasi�cador, por medio de

||w|| y la suma de las variables de holgura∑

i ξi, que representa una cota máxima sobre los

errores permitidos.

49

Page 60: Representación Topológica de las Características de la

Para esto, la función objetivo a minimizar nos queda:

τ(w, ξ) =1

2||w||2 + C

m∑i=1

ξi

donde C > 0 nos sirve para expresar el balance entre maximizar el margen y minimizar

el error.

De nuevo, queremos maximizar la ecuación 3.3.13 sujeta a: 0 ≤ αi ≤ C para toda

i = 1, . . . ,m, y∑m

i=1 αiyi = 0

La solución toma la forma de la ecuación 3.3.12 y b se puede calcular considerando de

que en todos los SVs xi con αi < C la variable de holgura ξi es cero y por lo tanto:

m∑j=1

αjyjk(xi, xj) + b = yi

donde el valor b signi�ca el desplazamiento del hiperplano.

Existe otra forma de considerar obtener un clasi�cador de margen suave soft margin

classi�er usando lo que se llama ν-parametrization, que no va a ser visto en este trabajo.

Kernels

Existen diferentes tipos de kernels. Se ha encontrado que los siguientes kernels con una

selección adecuada de parámetros, d ∈ N y σ, κ,Θ ∈ < dan SVM con resultados muy

parecidos:

Polinomial: k(x, x′) =< x, x′ >d

Gaussiano: k(x, x′) = exp(− ||x−x′||2

2σ2 )

Signoidal: k(x, x′) = tanh(κ < x, x′ > +Θ)

Uno de los problemas con SVM es que el tamaño del problema cuadrático aumenta con

el número de vectores de soporte. Como no se saben cuáles son los vectores de soporte se

usan todos los ejemplos de entrenamiento. Para m ejemplos, se tiene una matriz de m×m.

Un típico Kernel Polinomial puede ser K(x; y) = (x ∗ y + 1)d y un kernel Gaussiano

K(x; y) = exp( −1σ2(x−y)2 ) donde d es el grado del Kernel Polinomial.

50

Page 61: Representación Topológica de las Características de la

Desde el punto de vista de la implementación, entrenar una SVM es equivalente a resolver

un linearly quadratic programming (QP) con un número de variables del doble de datos de

entrenamiento.

Una práctica común es ir tomando pedazos chunks de los ejemplos de entrenamiento.

Otra forma es ir resolviendo analíticamente el problema de optimización usando sólo 2

multiplicadores de Lagrange.

SMO (Sequential Minimal Optimizer) selecciona dos multiplicadores a optimizar, encuen-

tra su valor y actualiza el problema de SVM con esos valores. Esto lo repite hasta que todos

los SV satisfagan las condiciones KKT dentro de un rango de error pequeño.

Clasi�cación multiclase

Es muy habitual cuando se trabaja con problemas de clasi�cación extraídos de la vida

real, encontrarse con situaciones en donde existen más de dos clases. Como aproximación a

la resolución del problema de clasi�cación multiclase, en [43] se propone una modi�cación de

la función de optimización binaria para un número deseado de k clases, mientras que en otras

técnicas para la aproximación a SVM multiclase de k clases se ha utilizado una combinación

de clasi�cadores binarios [42].

Los métodos más conocidos que posibilitan la multiclasi�cación mediante SVM creadas

para problemas binarios (que corresponden a la línea electa para esta tesis) requieren que el

problema multiclase sea separado en una serie de clasi�caciones binarias del tipo:

Uno contra uno (1A1): Involucra la construcción de un sistema de aprendizaje para

cada par de clases, es decir, requiere N(N − 1)/2 máquinas de aprendizaje. Cuando se

requiere saber la clase de una nueva instancia, cada clasi�cador entrega un voto a la

clase ganadora y el dato es etiquetado con la clase que obtuvo más votos. Si dos clases

obtienen el mismo número de votos, entonces se elije la clase ganadora bajo algún

criterio prede�nido por el modelador de la máquina de aprendizaje. Este corresponde

al método utilizado para esta tesis.

Uno contra todos (1AA): Involucra la construcción de N clasi�cadores binarios,

cada uno entrenado para distinguir los datos en una sola clase respecto del resto de

todos los datos restantes. Cuando se requiere clasi�car una nueva instancia, los N

51

Page 62: Representación Topológica de las Características de la

clasi�cadores son puestos en ejecución y el clasi�cador que entrega el valor más grande

(más positivo) en Ci = argi=1,...,kmax(wix+ bi) es elegido.

Comentarios �nales sobre SVM

La ventaja de SVM respecto de otras técnicas es que en SVM, tal como se revisó en

detalle anteriormente, maneja criterios de optimalidad maximizando la distancia entre los

margenes de las clases.

SVM ha sido muy bien aceptado en la comunidad de investigadores por su rendimiento

con datos altamente dimensionales y además porque existen varias implementaciones libres

disponibles como por ejemplo: SVMlight, Libsvm, TinySVM, etc. Además de frameworks

como Weka12 que pueden hacer uso de estas implementaciones.

El problema más importante que tienen las SVM esta relacionado a la etapa de

sintonización de parámetros, el cual en la mayoría de los casos termina realizándose mediante

búsqueda exhaustiva. Lo anterior puede verse simpli�cado con la experiencia, lo cual por

ejemplo, impactará en la decisión del tipo de kernel a utilizar y un valor aproximado u orden

de magnitud cercano de los valores de los parámetros que han ofrecido buenos resultados en

análisis anteriores.

12http://www.cs.waikato.ac.nz/ml/weka/

52

Page 63: Representación Topológica de las Características de la

3.4. Generación de listas de reproducción de música

Todo el proceso seguido hasta ahora tiene un sólo objetivo general, y que es el poder

generar, mediante un procedimiento alternativo, una lista de reproducción de música

siguiendo un método cuantitativo no tradicional en donde la información para la generación

de esta lista no sea la que tradicionalmente puede ser obtenida mediante el etiquetado manual

de usuarios ni el que puede ser evidenciado fácilmente desde los metadatos tipo ID313.

3.4.1. 1° Enfoque: Generación de listas de reproducción mediante

similaridad de cosenos

Explicación del método

Sean mi vectores �jos en un espacio vectorial euclidiano n-dimensional mi ∈ Rn, donde

la túpla mi = (f1, f2, ..., fn−1, fn) con fj componentes del vector, j ∈ [1, n] y cada fj

correspondiente a una de las n características extraídas.

Intuitivamente para mi ∈ R2, según sepuede observar en la �gura 3.13 (en donde seproyectan varios vectores desde el origen haciadiversos puntos ubicados en el plano), dosvectores pueden ser de�nidos como similares,siempre que su largo sea similar y que el ánguloentre ellos sea pequeño y cercano a cero. Porotro lado, dos vectores en donde su direcciónes absolutamente contraria, se considerarán nosimilares (aunque sean del mismo largo).

Figura 3.13: Vectores en el plano euclidiano

Para medir la similaridad entre vectores, se podrá utilizar cualquiera de estas dos medidas:

El ángulo Θ entre dos vectores,

El coseno del ángulo Θ entre los mismos dos vectores.

13http://es.wikipedia.org/wiki/ID3

53

Page 64: Representación Topológica de las Características de la

Por su parte, la función de coseno entredos ángulos tiene atributos interesantes porcuanto, es monótomamente decreciente paraángulos que van desde 0 a π y tambiéndesde 0 a −π (ver �gura 3.14) lo cual resultamuy atractivo de utilizar puesto que tieneequivalencia con lo que intuitivamente seplanteará para una de�nición de similaridadentre vectores. Figura 3.14: Coseno entre Vectores

Para medir el nivel de similaridad entrevectores (según se planteó recientemente),es necesario utilizar una medida que seaindependiente del largo del vector y es porlo mismo que se hará una normalizacióna cada vector para circunscribirlos a unacircunferencia unitaria tal cual se muestra enla �gura 3.15.

Figura 3.15: Vectores normalizados inscritos ala circunferencia unitaria.

Para normalizar las representaciones vectoriales de los archivos Mp3, se utilizará la norma

‖ x ‖2=√

Σix2i con lo cual los vectores quedarán mapeados a la circunferencia unitaria

manteniendo cada uno su dirección; y |V | corresponderá a la cantidad de características

seleccionadas. La medida de similaridad, por lo tanto, quedará de�nida como:

SIM(ma,mk) = COS(ma,mk) =ma �mk

|ma| · |mk|=

Σ|V |i mai ·mki√

Σ|V |i m2

ai ·√

Σ|V |i m2

ki

(3.4.1)

Para vectores normalizados, el coseno es equivalente al producto punto o producto escalar.

A pesar de que a esta medida se le conoce como distancia de cosenos, se comporta como

medida de similaridad puesto que tiene relación inversa con el ángulo entre los vectores.

54

Page 65: Representación Topológica de las Características de la

Estimación de la cantidad de cálculos de distancia: Sea N la cantidad de datos en

el conjunto de datos. Por lo tanto, la cantidad de distancias a calcular equivale a la cantidad

de cálculos de distancia de todos con todos N2, menos la cantidad de datos N (puesto que

equivale a la cantidad de cálculos de distancia de todos los vectores consigo mismos), dividido

en dos (puesto que la distancia de A → B es la misma que de B → A). Por lo tanto, la

cantidad de distancias equivale a: N2−N2

.

Generación de la lista de reproducción

Figura 3.16: Modelo general del generador de listas de reproducción utilizando distanciade cosenos. El ciclo que agrega canciones a la lista de reproducción se reitera N vecesdependiendo de la cantidad de canciones que se desee en la lista de reproducción.

Para la generación de una lista de reproducción, se tomará la elección de un tema Mp3 de

parte de un usuario, y posteriormente, según se muestra en la �gura 3.16, se irá rankeando

el siguiente tema de acuerdo a la menor distancia de cosenos encontrada en los temas aún

no agregados a la lista de reproducción. Este ciclo se repite la cantidad de veces equivalente

al largo de la lista de reproducción deseada.

55

Page 66: Representación Topológica de las Características de la

3.4.2. 2° Enfoque: Generación de listas de reproducción mediante

SOM

Explicación del método

Tal como se comentó en el Estado del Arte en la sección 2.3, en 1982 T. Kohonen presentó

un modelo de red denominado �Mapas auto organizativos� o SOM (Self-organizing Maps)

[15], el cual da una propuesta para la agrupación de datos de manera no supervisada. El

procedimiento de aprendizaje se puede observar a grandes rasgos a continuación.

Algoritmo de aprendizaje SOM - versión 1

PASO 1: Inicializar los pesos de cada nodo con valores aleatorios.

PASO 2: Elegir un vector desde el conjunto de datos de entrenamiento y presentarlo

a la SOM

PASO 3: Examinar cada nodo, buscando cual tiene un vector de pesos mas similar al

vector presentado. El ganador es llamado BMU (Best Match Unit).

PASO 4: Estimar los vecinos del BMU de acuerdo a algun criterio de radio.

PASO 5: Alterar los pesos del BMU y de todos los vecinos de acuerdo a alguna

funcion que permita estrechar el parecido entre cada nodo en el vecindario y el

vector de entrada.

PASO 6: Repetir desde el paso 2 para N iteraciones.

Al presentar un nuevo vector a la red SOM, se busca elBMU (nodo con vector de pesos más similar al vectorde entrada y marcado a modo de ejemplo en verde en la�gura 3.17) y se actualizan los pesos de toda la vecindaddel BMU (marcados en colores alrededor del BMU enla �gura 3.17) de modo de hacer que dicha sección dela rejilla de neuronas tienda a valores similares en suspesos respecto del vector presentado. Figura 3.17: Mapa auto organizativo

Claramente al ser cada vector en los datos de entrada una representación vectorial de

alta dimensionalidad de un archivo Mp3 (una dimensión por característica calculada), no es

posible visualizar si la ubicación de cada uno de los nodos activados (BMU) por la SOM

representa una buena ubicación para cada grupo de música similar.

56

Page 67: Representación Topológica de las Características de la

Además, el problema de rankear la posición relativa de un dato intragrupo es un asunto

de sumo interés por cuanto se desea generar una lista de reproducción que permita �suaves

transiciones� de estilo para un usuario �nal.

Para poder realizar lo anterior, se puede por ejemplo, tomar cada grupo identi�cado

en el mapa SOM (Ver Figura 3.18) y realizar un ranking de similaridad con alguna(s) de

las características que tiene cada representación vectorial de un archivo Mp3. Una buena

aproximación podría ser tomar la característica asociada a los pulsos por minuto o BPM14,

con lo cual cada grupo se ordena por �velocidad� de las canciones.

Figura 3.18: Resultado del entrenamiento de una SOM de dimensión 100x100, utilizandocomo datos de entrada los vectores de características de 1880 archivos Mp3 del conjunto dedatos ISMIR2004. Se puede notar que los nodos activos en negro grá�camente no ofrecenposibilidad de visualizar que tan numerosos son los grupos (que se representan en este caso,por un punto negro en la red SOM) ni mucho menos una forma evidente para rankear datosen cada grupo a objeto de generar una lista de reproducción.

La propuesta anterior puede resultar interesante, pero empíricamente se evidenciaron los

siguientes problemas:

Algunas veces los grupos generados, tenían muchos datos en contraste con otros grupos

de la red SOM.

Lo anterior implicaba que al ordenar la lista de reproducción para un grupo masivo

según la característica BPM, se generasen situaciones de similaridad cuestionables,14Las pulsaciones por minuto (�Beats per minutes o �BPM� en inglés) es una unidad empleada para medir

el tempo en música. Equivale al número de pulsaciones que caben en un minuto.

57

Page 68: Representación Topológica de las Características de la

como por ejemplo, que se arroje dos canciones de absoluta diferencia de estilos (rock

y clásica) y que a pesar de ser incluso iguales en velocidad, no sean percibidas como

similares en su transición desde una canción a otra.

Es por lo anterior que se propone realizar modi�caciones al algoritmo de entrenamiento

básico anterior para poder:

Identi�car (dado un requerimiento musical de un usuario), el siguiente tema más similar

pero no sólo basados en medidas armónicas ni de tempo de las canciones.

Identi�car el o los temas subsiguientes, con lo cual se podría generar una lista de

reproducción.

Algoritmo de aprendizaje SOM - versión 2

PASO 1: Inicializar los pesos de cada nodo con valores aleatorios.

PASO 2: Elegir un vector desde el conjunto de datos de entrenamiento y presentarlo

a la SOM

PASO 3: Examinar cada nodo, buscando cual tiene un vector de pesos mas similar al

vector presentado. El ganador es llamado BMU (Best Match Unit).

PASO 4: Si el BMU encontrado en el paso 3 ya ha sido ocupado por otro dato, buscar

nuevamente un nuevo BMU en la vecindad.

PASO 5: Si todos los nodos de la vecindad ya fueron ocupados, aumentar el radio de

la vecindad y volver a buscar un nuevo BMU en la nueva vecindad ampliada.

Repetir paso 5 hasta encontrar un BMU.

PASO 6: Guardar como centroide el BMU encontrado en el paso 3 y como posicion, el

BMU encontrado en el paso 5.

PASO 7: Estimar los vecinos del BMU encontrado en el paso 5 de acuerdo a algun

criterio de radio.

PASO 8: Alterar los pesos de todos los vecinos, de acuerdo a alguna funcion que

permita estrechar el parecido entre cada nodo en el vecindario y el vector de

entrada.

PASO 9: Repetir desde el paso 2 para N iteraciones.

El contador de ubicación será muy útil para rehacer la lista de reproducción, pues al

desearse una lista desde un grupo especí�co, se ordenará por este atributo.

58

Page 69: Representación Topológica de las Características de la

La diferencia con la versión 1 del procedimiento deentrenamiento, se basa en que:

1. Se requiere entrenar la totalidad de los datos, esdecir, se debe presentar todas las canciones a lared SOM (pues en este proceso se identi�carásu posición relativa para listas de reproducciónfuturas).

2. Si durante el entrenamiento la posición del BMUya está siendo utilizada por un dato previo,entonces se procede a buscar un nuevo BMU enla vecindad a una distancia de 1 nodo; si no existeuna nueva posible ubicación, entonces se ampliael radio del BMU en una unidad, repitiéndose labúsqueda de un nuevo BMU sucesivamente hastaencontrar un BMU desocupado.

3. Se realiza la actualización de pesos en torno alnuevo BMU de forma tradicional.

4. Se guarda una lista para cada grupo en dondese incluye: el centroide del grupo, la posición�nal encontrada y datos complementarios (comogénero de la canción, contador de ubicación, entreotros).

Figura 3.19: Ejemplo de BMU y suvecindario

Generación de la lista de reproducción

Para la generación de una lista de reproducción es necesario el entrenamiento previo de

todas las canciones en el conjunto de datos, cuyo objetivo es identi�car la posición relativa

en el modelo de neuronas y el correlativo en que se instanciará para la generación de la lista.

Habiéndose realizado el paso anterior, se tomará la elección de un tema Mp3 en un grupo

de parte de un usuario, y posteriormente, según se muestra en la �gura 3.20, se irá rankeando

el siguiente tema de acuerdo a la ubicación relativa en la rejilla de la red SOM desde el centro

de cada isla de música.

59

Page 70: Representación Topológica de las Características de la

Figura 3.20: Modelo general del generador de listas de reproducción utilizando SOM.

60

Page 71: Representación Topológica de las Características de la

Capítulo 4

Experimentos

4.1. Medidas de Evaluación

La satisfacción de un usuario a un sistema de clasi�cación esta estrechamente relacionada

a la calidad de la clasi�cación en términos de efectividad. Pero cómo medir la calidad. Para

poder responder a esta interrogante de modo cuantitativo, se expresan las siguientes medidas:

Experto dice: Clase X Experto dice: Clase 6= XClasi�cador dice: Clase X Verdaderos Positivos (TP) Falsos Positivos (FP)Clasi�cador dice: Clase 6= X Falsos Negativos (FN) Verdaderos Negativos (TN)

Cuadro 4.1: matriz de confusión

En el cuadro 4.1 se pueden apreciar 4 grupos de respuesta (con sus respectivos nombres

en la literatura). En ella se puede ver que obviamente para una tarea de clasi�cación son

deseados: muchos verdaderos positivos y muchos verdaderos negativos, a la vez que pocos

falsos positivos y falsos negativos.

Las anteriores son medidas típicas y cuanti�cables de rendimiento. A continuación se

entregará otras medidas que dependen de estas métricas.

61

Page 72: Representación Topológica de las Características de la

4.1.1. Las medidas: Precisión y Recall

Las medidas anteriores se pueden calcular para cada clase (una vez terminado el proceso

de clasi�cación automático). Sin embargo, a veces es posible encontrar clases en las cuales el

algoritmo tiene excelentes indicadores en contraste con otras clases en donde los resultados

son pobres, lo cual nos indica que en �términos generales� el clasi�cador no es del todo bueno.

Para poder medir en términos globales el rendimiento se utilizan las siguientes medidas

(apoyadas en los cálculos anteriores):

P =TP

TP + FP(4.1.1)

P:Precisión equivale a la fracción de elementos que fueron bien clasi�cados respecto de todos

los elementos que recibieron automáticamente la misma clase (bien o mal clasi�cados).

R =TP

TP + FN(4.1.2)

R:Recall equivale a la fracción de elementos que fueron bien clasi�cados respecto de todos

los elementos.

Ejemplo de cálculo de las medidas Precisión y Recall

a b c d e f g h i j ← clasi�cado por:93 0 2 0 0 0 1 0 0 4 | a = blues0 95 1 0 0 4 0 0 0 0 | b = classical3 1 80 2 0 0 0 5 0 9 | c = country3 0 5 75 2 0 0 2 3 10 | d = disco2 0 1 2 82 0 2 2 8 1 | e = hiphop2 8 1 1 0 83 1 1 0 3 | f = jazz1 0 0 1 4 0 87 0 0 7 | g = metal0 0 7 4 2 1 0 83 2 1 | h = pop3 0 3 4 4 1 0 2 78 5 | i = reggae5 1 9 10 3 2 5 6 1 58 | j = rock

Cuadro 4.2: Ejemplo para el calculo de la precisión y el recall. Para las clases a,b,...,i,j seobtiene la siguiente matriz de confusión después de un proceso de clasi�cación supervisado,en donde las clases verdaderas se enuncian hacia abajo y la salida del clasi�cador hacia ellado.

62

Page 73: Representación Topológica de las Características de la

Con los datos del cuadro 4.2, se pueden calcular por ejemplo la Precisión y el Recall de

la clase �blues� como sigue:

Pblues =TP

TP + FP=

93

93 + 3 + 3 + 2 + 2 + 1 + 3 + 5= 0, 83 (4.1.3)

Rblues =TP

TP + FN=

93

93 + 2 + 1 + 4= 0, 93 (4.1.4)

En general, a medida que mejora el recall, empeora la precisión, lo cual obliga a agregar

una nueva medida de evaluación que mezcle ambas medidas anteriores. Esta medida es la

Fmeasure.

4.1.2. La medida Fmeasure

Fmeasure =1

α 1P

+ (1− α) 1R

=(β2 + 1)PR

β2P +R. (4.1.5)

donde β2 = 1−αα

con α ∈ [0, 1] y β ∈ [0,∞[.

En general se usa una Fmeasure balanceada con β = 1 o α = 0, 5 que es la media armónica

de P y R:

1

F1

=1

2(

1

P+

1

R) (4.1.6)

Ejemplo de cálculo de la medida F1

Utilizando los datos del mismo ejemplo anterior, se procede de la siguiente manera:

1

F1

=1

2(

1

P+

1

R) =

1

2(

1

0, 83+

1

0, 93) = 1, 140 (4.1.7)

y posteriormente obteniendo el inverso multiplicativo, F = 11,140

= 0, 877, que es un valor

que representa de mejor manera el comportamiento del clasi�cador por tanto considera a

ambos elementos anteriores con igual importancia.

F1−measure es como un mínimo suavizado y al obtenerlo, F1−measure sólo obtiene valores

altos cuando tanto la Precisión como Recall son altos.

63

Page 74: Representación Topológica de las Características de la

F1 ∈ [0, 1] (4.1.8)

F1 = 0, si la clasi�cación de la clase en cuestión fue totalmente nula.

F1 = 1, si la clasi�cación de la clase en cuestión fue perfecta.

4.1.3. La medida Kappa

Suponga que usted tiene a dos expertos que razonan acerca de la pertenencia de un

elemento a una clase X. Lo deseable sería que existiera un alto grado de acuerdo entre los

juicios de estos expertos.

La medida Kappa evalúa el grado de acuerdo o desacuerdo entre juicios de relevancia y

está diseñado para juicios de tipo categóricos (que es justo lo que se desea puesto que se

requiere comparar el Gold Standard entregado por el conjunto de datos o�cial de prueba y

los resultados del clasi�cador automático seleccionado para este estudio).

Sea P (A) = proporción de veces que los expertos coinciden, y

P (E) = P (/∈)2 + P (∈)2 coincidencia por azar.

Por lo tanto, la medida κ se puede obtener por:

κ =P (A)− P (E)

1− P (E)(4.1.9)

Los valores de κ recomendados están en el rango [23, 1].

Ejemplo de cálculo de la medida κ.

Pasos del cálculo:

1. P (A) = 300+70400

= 370400

= 0, 925

2. P (/∈) = 80+90400+400

= 170800

= 0, 2125

3. P (∈) = 320+310400+400

= 630800

= 0, 7878

4. P (E) = P (/∈)2 + P (∈)2 = 0, 21252 + 0, 78782 = 0, 665

64

Page 75: Representación Topológica de las Características de la

SI NO TotalSI 300 20 320NO 10 70 80Total 310 90 400

Cuadro 4.3: Ejemplo para el calculo de la medida κ. Las columnas son la opinión del primerexperto y las �las son la opiniones del segundo experto, acerca del grado de pertenencia de400 elementos a una clase X.

5. κ = P (A)−P (E)1−P (E)

= 0,925−0,6651−0,665 = 0, 776

6. κ = 0, 776 que esta en el rango aceptable.

4.2. Conjuntos de Datos

Para el desarrollo de esta tesis, se ha utilizado los siguientes conjuntos de datos:

4.2.1. Conjunto de datos - GarageBand 2008

Disponible online1 como un conjunto de datos de propósito general en investigación en

máquinas de aprendizaje. Su conformación nace desde datos obtenidos en www.garageband.

com en 2008.

Garageband alternative 145Garageband blues 120Garageband electronic 113Garageband folkcountry 222Garageband funksoulrnb 47Garageband jazz 319Garageband pop 116Garageband raphiphop 300Garageband rock 504

Cuadro 4.4: Distribución del conjunto de datos por género musical: GarageBand

1http://www.imm.dtu.dk/English/Research/ISP/Publications.aspx?lg=showcommon&id=211241

65

Page 76: Representación Topológica de las Características de la

4.2.2. Conjunto de datos - ISMIR 2004

Puesto a disposición de la comunidad participante del congreso internacional ISMIR

20042. Fue creado para el concurso en sus secciones de clasi�cación de música por género,

identi�cación de artista y similaridad de artistas.

ISMIR 2004 alternative 145ISMIR 2004 blues 119ISMIR 2004 electronica 113ISMIR 2004 folkcountry 222ISMIR 2004 funksoulrnb 47ISMIR 2004 jazz 317ISMIR 2004 pop 116ISMIR 2004 raphiphop 298ISMIR 2004 rock 503

Cuadro 4.5: Distribución del conjunto de datos por género musical: ISMIR 2004

4.2.3. Conjunto de datos - GTZAN Genre Collection

Por último, se suma a este trabajo el conjunto de datos GTZAN3 el cual contiene 100

temas de audio para cada uno de los 10 géneros musicales más conocidos.

GTZAN Genre Collection-30seg blues 100GTZAN Genre Collection-30seg classical 100GTZAN Genre Collection-30seg country 100GTZAN Genre Collection-30seg disco 100GTZAN Genre Collection-30seg hiphop 100GTZAN Genre Collection-30seg jazz 100GTZAN Genre Collection-30seg metal 100GTZAN Genre Collection-30seg pop 100GTZAN Genre Collection-30seg reggae 100GTZAN Genre Collection-30seg rock 100

Cuadro 4.6: Distribución del conjunto de datos: GTZAN Genre Collection

2http://ismir2004.ismir.net/genre_contest/index.htm3http://opihi.cs.uvic.ca/sound/genres.tar.gz

66

Page 77: Representación Topológica de las Características de la

4.3. Extracción de Características

Las características que se obtuvieron fueron las enunciadas en la tabla 4.7.

Característica Mean Std Total

Mean

Zero Crossings 1 1 2Centroid Power 1 1 2Rollo� 1 1 2Flux 1 1 2MFCC 13 13 26Chroma 12 12 24Peak Ratio Average 1 1 2Peak Ratio Mínimo 1 1 2SCF 24 24 48SFM 24 24 48LSP 18 18 36LPCC 12 12 24

Std

Zero Crossings 1 1 2Centroid Power 1 1 2Rollo� 1 1 2Flux 1 1 2MFCC 13 13 26Chroma 12 12 24Peak Ratio Average 1 1 2Peak Ratio Mínimo 1 1 2SCF 24 24 48SFM 24 24 48LSP 18 18 36LPCC 12 12 24Total 218 218 436

Cuadro 4.7: Cantidad de características obtenidas por tipo

En la siguiente sección se desarrollará una revisión de efectividad de estas 436

características para el modelo propuesto.

4.4. Selección de Características:

De todas las formas posibles de ranking de características, se ha seleccionado el método

propuesto en [40], en tanto fue el que obtuvo mejores resultados combinados con la máquina

67

Page 78: Representación Topológica de las Características de la

de aprendizaje electa.

En las �guras 4.1 y 4.2 se puede observar que una vez rankeadas las características,

e ir eliminando cada una desde la menos relevante a la más relevante (de una en una) y

volviendo a realizar el entrenamiento de una SVM (que fue la máquina de aprendizaje electa

en el procedimiento 3.2), el rendimiento varía de acuerdo al �peaking phenomenon�. Este

mismo procedimiento se aplicó para los tres conjuntos de datos disponibles4 y se analizó la

ocurrencia de cada característica para cada conjunto de datos.

Se eligió como cantidad de características las 174 que fueron mejor rankeadas al menos

en dos de los tres conjuntos de datos disponibles de acuerdo a la implementación del método

propuesto por [40].

Para seleccionar la cantidad idónea de características en el algoritmo 3.3, se de�ne un ε =

±0, 5 % de tal forma que, si al recorrer la matriz de rendimientos obtenidos desde la primera

celda en adelante, no se nota una disminución en el error de clasi�cación o bien se obtiene

aumento en el error de clasi�cación superior a ε, entonces se detiene la agregación/eliminación

de características de acuerdo al ranking, quedando por tanto la selección culminada en el

mejor resultado obtenido hasta el momento. Esto tiene validez dado el comportamiento

grá�co que puede ser visto en la �gura 4.1.

Para los conjuntos de datos disponibles, se pudo comprobar empíricamente el Peaking

Phenomenon mostrado en la �gura 3.7.

En el próximo apartado se abordará los resultados obtenidos en el proceso de clasi�cación

expuesto brevemente en la �gura 3.8 y las medidas de rendimiento mencionadas en las �guras

4.1 y 4.2 las cuales forman parte integral de este análisis.

4.5. Clasi�cación automática

En esta etapa se probaron una serie de algoritmos entre los cuales se encontraban: Redes

Neuronales, SVM (con diversos kernels y parámetros), Árboles de decisión (varias opciones

de ellos) y otros métodos de clasi�cación conocidos5, encontrándose que para los conjuntos

de datos en estudio, el mejor rendimiento se producía para las SVM6 (tarea de clasi�cación

4Ver sección 4.2 para más detalle sobre los conjuntos de datos utilizados.5Para más referencia de los métodos testeados, revisar el Apéndice C6Para saber más sobre este método, revisar la sección 3.3.2

68

Page 79: Representación Topológica de las Características de la

Figura 4.1: Variación del rendimiento (instancias correctamente clasi�cadas) versus cantidadde características seleccionadas. Se destaca un punto que marca un peak su�ciente, puesdespués de las 174 características seleccionadas, no se notan importantes variaciones derendimiento para los tres conjuntos de datos disponibles.

Figura 4.2: Variación de la medida Kappa versus cantidad de características seleccionadas.Se destaca la medida Kappa obtenida para la misma cantidad seleccionada en la �gura 4.1,después de lo cual no se evidencia importantes variaciones de rendimiento.

supervisada).

Como es de esperarse, los algoritmos en algunas con�guraciones tendían a aprender

de memoria los datos afectando positívamente los resultados de la clasi�cación pero a la

vez disminuyendo las capacidades de generalización. Es por este motivo que se pre�rió la

realización de validación cruzada: 10 fold cross validation [24].

En la �gura 4.3 se muestra una tabla con los resultados más importantes, comparando

69

Page 80: Representación Topológica de las Características de la

los rendimientos de diferentes clasi�cadores que fueron probados.

Figura 4.3: Rendimiento de varios algoritmos de clasi�cación testeados con el conjunto dedatos ISMIR2004. Columna%OK corresponde al porcentaje de instancias bien clasi�cadasmientras que la columna%NOK corresponde al porcentaje de instancias mal clasi�cadas.

La primera opción destacada en los resultados con casi un 60% de clasi�cación efectiva

para el conjunto de datos ISMIR 2004, se obtuvo con una SVM y es por esto que será

seleccionada como máquina de análisis.

El cuadro 4.3 detalla en las columnas:

El clasi�cador probado.

El tiempo en segundos que demoró la construcción del clasi�cador.

El porcentaje bien clasi�cados.

El porcentaje mal clasi�cados; y

La medida κ (Kappa) como métrica de evaluación (ver detalle en el Apéndice 4.1 al

�nal)

La columna de tiempo (aproximados a la centésima de segundo), deja en evidencia

práctica una notable diferencia entre los tiempos necesarios para la construcción de los

clasi�cadores.

70

Page 81: Representación Topológica de las Características de la

4.6. Generación de listas de reproducción

4.6.1. Mediante distancia de cosenos

Para el desarrollo de esta sección de experimentos se calculó las distancias de cosenos

entre todos los archivos de música de cada conjunto de datos disponible. Cada vector

esta compuesto solamente por las 174 características que fueron reconocidas como más

importantes en el Capítulo 3.2.

El cálculo de distancia es extremadamente rápido entre un tema musical y otro

(naturalmente), pero se requiere realizar los cálculos entre todos los pares de vectores del

conjunto de datos (sin importar el orden), lo cual necesariamente implicará que este tipo de

etapas se lleve a cabo de forma preliminar (ya que los cálculos totales pueden tomar varias

horas para un par de cientos de canciones en el conjunto de datos).

En la tabla 4.8 se muestra la cantidad de cálculos de distancia efectuados para los tres

conjuntos de datos en estudio.

Conjunto de datos Canciones Cantidad de Cálculos de distanciaISMIR 2004 1.880 1.766.260GarageBand 1.886 1.777.555GTZAN Genre Collection 1.000 499.500TOTAL 4.766 4.043.315

Cuadro 4.8: Cantidad de canciones según conjunto de datos y cantidad de cálculos dedistancia de cosenos entre archivos de música. Esta cantidad de datos de distancia utiliza108 MB de memoria. No se calcularon distancias entre Mp3 de distintos conjuntos de datos.

4.6.2. Mediante aplicación de SOM

Preprocesamiento de los vectores

Primero se debe identi�car el tipo de procesamiento que se aplicará a los vectores de

características antes de entrenar la red SOM. Varias son las posibilidades de acuerdo a lo

mencionado en el Capítulo 3.2 en el que se explicaba en detalle algunas transformaciones

posibles. De las que en ese entonces se plantearon, se aplicó: Normalización, Estandarización

y Ninguna transformación, obteniéndose los siguientes los resultados:

71

Page 82: Representación Topológica de las Características de la

Figura 4.4: Resultado del entrenamiento mo-di�cado de la SOM sin realizar procesamientoprevio de los vectores de características.

De�nición de Colores: Para poder repre-sentar de mejor forma la ubicación de cadaMp3 en la red SOM, se identi�có a cada estilomusical estimado con los siguientes colores:

RockAlternativeBluesPopElectronicJazzRap - Hip HopCountryFunksoulrnb

Figura 4.5: Resultado del entrenamientomodi�cado de la SOM, con estandarización delos vectores de características

Figura 4.6: Resultado del entrenamientomodi�cado de la SOM, con normalización delos vectores de características

Tal cual se puede observar en la �gura 4.4, no realizar transformación de los datos,

genera pocos grupos en la capa de salida lo que perjudica los resultados de la lista pues se

obtienen grupos muy grandes (siendo considerado un Mp3 similar a una muy alta cantidad

de archivos).

En la �gura 4.5 por otro lado, el proceso previo de estandarización de las características,

genera en los resultados, enormes distribuciones en la capa de salida generando islas casi

72

Page 83: Representación Topológica de las Características de la

aleatorias de música.

Por último, en la �gura 4.6 se puede observar una mejora en la cantidad de grupos,

pero sin llegar a extremos como ocurría al realizar estandarización de los datos. Este mismo

comportamiento se mostró con los tres conjuntos de datos disponibles y en consecuencia será

el método de preprocesamiento que se utilizará.

Los colores que se muestran en las tres �guras anteriores (4.4, 4.5 y 4.6), corresponden a

las representaciones de color de las clases estimadas por el método de clasi�cación del paso

previo (SVM con kernel de radio basal) para facilitar la observación de las distribuciones.

Aspectos importantes a considerar en esta fase:

Se requiere de un método que permita rankear música por similaridad; y esta

similaridad, no esta relacionada exclusivamente al género de una canción especí�ca,

pues sino se realizaría la lista sólo con canciones del mismo género.

Los conjuntos de datos disponibles cuentan en general con varias decenas de canciones

por estilo, en las cuales se denotó por un experto que, pudiendo ser del mismo género,

las canciones no son necesariamente similares (por ejemplo por diferencias de tempo,

técnica de armonización, diferencias de instrumentación, etc.). Lo anterior implica que

es esperado que no estén todas las islas con Mp3 del mismo género.

Se detectó que dentro de los conjuntos de datos disponibles, la clase dada por el

Gold Standard en varios archivos de música es cuestionable. Por ejemplo, temas mal

clasi�cados de facto o canciones que eran mezcla de varios estilos como parte de la

creación musical (ejemplo: introducción de una salsa de Celia Cruz para un tema de

rap y catalogado como rap por el Gold Standard, a pesar de que al menos el 80% de

la muestra disponible de 30 segundos era salsa), entre otros.

Las redes SOM modi�cadas según la segunda propuesta resultaron ser útiles para

agrupar por similaridad, pero requieren de información adicional para la realización de

rankings, pues por si solas, son muy sensibles al orden en que se presentan los datos de

entrenamiento; lo cual afecta el método de enlistado que se deseaba implementar para

generar una lista de reproducción.

73

Page 84: Representación Topológica de las Características de la

Por lo anterior, se utilizó el modelo de la SVM del Capítulo 3.3 para estimar las clases

de todos los conjuntos de datos disponibles, con el objeto de ordenar los datos por clase

estimada antes de ser presentados a la red SOM. El resultado del entrenamiento puede ser

observado en la �gura 4.7, en donde se puede notar una mayor coherencia por estilos.

Nótese que un mismo estilo musical, no termina necesariamente en la misma isla musical

(que es lo deseado), pudiendo generarse relaciones de similaridad entre estilos distintos.

Recordar además que, cada isla de música va guardando un correlativo de orden, el cual

indica qué tema es el siguiente según el aprendizaje que se va realizando en la etapa de

entrenamiento. Este correlativo colaborará a continuación con la generación de la lista de

reproducción.

Figura 4.7: Resultado del entrenamientomodi�cado de la SOM, con normalización delos vectores de características y ordenamientopor clase estimada

De�nición de Colores: Para poder repre-sentar de mejor forma la ubicación de cadaMp3 en la red SOM, se identi�có a cada estilomusical estimado con los siguientes colores:

RockAlternativeBluesPopElectronicJazzRap - Hip HopCountryFunksoulrnb

Comparativo visual de experimentos con tres conjuntos de datos distintos

A continuación se muestran los resultados del entrenamiento de las redes SOM

tradicionales y SOM adaptadas para los tres conjuntos de datos en estudio.

En las �guras 4.8, 4.9 y 4.10 se puede observar similares resultados en la capa de salida

para la red SOM tradicional en los conjuntos de datos ISMIR2004, GarageBand y GTZAN

respectivamente, lo que considerando que cada conjunto de datos tiene alrededor de diez

74

Page 85: Representación Topológica de las Características de la

clases, no ofrece una forma intuitiva de clasi�cación o similaridad por si sola.

Figura 4.8: ISMIR SOMtradicional

Figura 4.9: GarageBandSOM tradicional

Figura 4.10: GTZAN SOMtradicional

En las �guras 4.11, 4.12 y 4.13, se puede notar que el entrenamiento arroja en las capas

de salidas de cada SOM adaptada, una mayor agrupación de Mp3 que las otorgadas por una

SOM tradicional, con una pequeña cantidad de grupos y en consecuencia una gran cantidad

de canciones por agrupación de música.

Figura 4.11: ISMIR SOMv2sin preprocesamiento

Figura 4.12:GarageBand SOMv2sin preprocesamiento

Figura 4.13:GTZAN SOMv2 sinpreprocesamiento

Por otro lado en las �guras 4.14, 4.15 y 4.16 se puede notar que el entrenamiento de la

SOM modi�cada genera en la capa de salida, ubicaciones extremadamente poco agrupadas

y con distribuciones aparentemente aleatorias en la rejilla de neuronas.

En las �guras 4.17, 4.18 y 4.19 se puede notar que la cantidad de grupos es también

pequeña en contraste al resultado del entrenamiento de una red SOM tradicional, pero con

75

Page 86: Representación Topológica de las Características de la

Figura 4.14: ISMIR SOMv2con preprocesamiento es-tandarizado

Figura 4.15:GarageBand SOMv2con preprocesamientoestandarizado

Figura 4.16:GTZAN SOMv2 conpreprocesamientoestandarizado

una mayor cantidad de grupos que las obtenidas sin el procesamiento de los vectores de

características antes de la etapa de entrenamiento.

Figura 4.17: ISMIR SOMv2con preprocesamiento nor-malizado

Figura 4.18:GarageBand SOMv2con preprocesamientonormalizado

Figura 4.19:GTZAN SOMv2 conpreprocesamientonormalizado

Por último en las �guras 4.20, 4.21 y 4.22 se puede notar que al agregar como atributo de

ordenamiento (antes de entrenamiento) la clase estimada de los Mp3, se obtienen similares

números de islas de datos en la capa de salida que el método anterior, pero con una mayor

agrupación de estilos, lo cual facilitará la generación de listas de reproducción dada la ayuda

que ofrecerá al modelo tener la estimación de la clase a la que pertenece cada Mp3.

76

Page 87: Representación Topológica de las Características de la

Figura 4.20: ISMIR SOMv2con preprocesamiento nor-malizado + clasi�cación

Figura 4.21:GarageBand SOMv2con preprocesamientonormalizado + clasi�cación

Figura 4.22:GTZAN SOMv2 conpreprocesamientonormalizado + clasi�cación

4.7. Resultados: Listas de reproducción

A continuación se muestran algunos fragmentos de listas de reproducción generados

mediante el método de distancia de cosenos, redes SOM y sus variaciones tanto de aprendizaje

como de preproceso de vectores de características.

El cuadro 4.9 muestra la lista obtenida a través de la distancia de cosenos. Prelimi-

narmente pareciera ser una lista con similaridad coherente puesto que varios de los

temas parecen ser del mismo tipo, sin embargo hay que considerar el punto de partida

(la elección del usuario), que en este caso corresponde a un tema de ROCK, el salto

siguiente corresponde a un tema de estilo METAL, pero muy pronto la lista se va a un

estilo que puede no ser el que el usuario buscaba. Nótese que la lista en pocas ocasiones

vuelve a mostrar información relativa al estilo que el usuario había elegido.

En el fragmento de lista de reproducción mostrado en el cuadro 4.10 se puede notar que

la columna �Neurona� ubica a todas estas canciones como similares (misma posición en

la rejilla de salida de la red SOM), sin embargo, al ver los estilos musicales asociados a

la lista, además de las variaciones de tempo desplegadas en la columna BPM, se puede

predecir que la lista, a pesar de ser mejor que el caso anterior, no generará lo que se

espera en cuanto a transiciones de similaridad desde un tema a otro.

Lo anterior mejora levemente en la propuesta de lista mostrada en el cuadro 4.11 pero

77

Page 88: Representación Topológica de las Características de la

tal como se había comentado anteriormente, los grupos bajo esta propuesta tienden a

ser muy grandes, generando similaridades muy amplias (muchos temas se parecen a

muchos temas). En este caso la propuesta predice que todas las canciones de la lista

son similares a la ubicada en torno al centroide (7, 14).

La lista generada tras preprocesar los vectores de características via estandarización

de datos se muestra en el cuadro 4.12 en donde se puede notar que los grupos son muy

pequeños (observar los centroides y las posiciones �nales de las neuronas). Aunque a

nivel intragrupo los estilos son similares en términos generales, la cantidad de canciones

por grupo genera la desventaja de tener listas cortas de reproducción7.

El fragmento de lista mostrado en el cuadro 4.13 mejora las de�ciencias de los dos

puntos anteriores por cuanto el grupo es más amplio que cuando se estandarizan los

vectores de características pero sin llegar a los extremos del modelo SOM tradicional

o el modelo sin preprocesamiento de los vectores de características.

Por último en el cuadro 4.14 se muestra un fragmento de la lista de reproducción

generado en base a la normalización de los vectores de características y haciendo uso

de la clase estimada de los vectores como ordenamiento previo al entrenamiento de

la red SOM modi�cada. Se puede observar que las transiciones son en general más

aceptables pues se mezclan aspectos de similaridad basadas además en género musical

y BPM. En este caso hay cuatro sublistas importantes en torno a las neuronas (3, 4),

(6, 60), (16, 82) y (18, 83) que de acuerdo a lo que se puede observar (y oír), genera una

mejor aceptación de similaridad por parte de usuarios.

Es importante mencionar que todas estas propuestas de listas de reproducción generan

errores de similaridad en sus salidas, sin embargo, el fragmento de lista del cuadro 4.14 es la

que posee perceptiblemente mejores resultados generales.

Respecto de la intervención de un usuario, la distancia de cosenos como método para

generar la lista de reproducción, requiere de la elección previa de un sólo archivo de música,

mientras que las propuestas basadas en SOM, requieren de la elección de un tema en una

isla de música, lo cual implica que en ambos casos la amplitud de búsqueda es al conjunto

de datos completo y a los temas agrupados en cada isla de música respectivamente.

7Recordar que las listas se generan para cada isla de música

78

Page 89: Representación Topológica de las Características de la

N CLASE Mp3 BPM ID DESDE ID HASTA DISTANCIA1 rock 00031.mp3 117,454 elección usuario 1881 02 metal 00018.mp3 113,582 1881 2213 9.70480975436e-103 jazz 00002.mp3 184,57 2213 2566 2.35688046041e-124 jazz 00046.mp3 156,605 2566 2496 6.19068850684e-125 jazz 00035.mp3 141,588 2496 2490 8.22216383941e-126 hiphop 00013.mp3 135,999 2490 2317 1.06655002564e-117 jazz 00040.mp3 145,577 2317 2571 1.3167709226e-118 blues 00024.mp3 116,134 2571 2091 1.42317471818e-119 blues 00006.mp3 161,499 2091 2103 1.50217102714e-1110 jazz 00039.mp3 166,709 2103 2543 1.64178935579e-1111 jazz 00033.mp3 94,8251 2543 2557 1.77545118808e-1112 jazz 00042.mp3 130,835 2557 2489 1.8653756696e-1113 jazz 00045.mp3 169,442 2489 2530 2.08699010489e-1114 jazz 00010.mp3 114,844 2530 2503 2.29964725305e-1115 blues 00027.mp3 175,185 2503 2113 2.59083751829e-1116 hiphop 00014.mp3 178,206 2113 2315 2.81801665082e-1117 jazz 00041.mp3 178,206 2315 2517 3.18439042069e-1118 jazz 00036.mp3 181,332 2517 2549 3.46992899313e-1119 rock 00005.mp3 98,4375 2549 1949 3.81970900108e-1120 jazz 00003.mp3 126,048 1949 2491 4.47082528434e-1121 country 00076.mp3 105,469 2491 2655 4.71551628573e-1122 classical 00037.mp3 116,134 2655 2786 5.08672222371e-1123 disco 00047.mp3 184,57 2786 2075 5.45229762505e-1124 blues 00010.mp3 147,656 2075 2124 5.65950137553e-1125 blues 00028.mp3 127,604 2124 2155 5.81310688458e-1126 classical 00003.mp3 106,556 2155 2830 6.40475880092e-1127 blues 00026.mp3 104,403 2830 2165 6.89382182917e-1128 blues 00007.mp3 112,347 2165 2092 6.98186471568e-1129 jazz 00006.mp3 132,512 2092 2533 7.41157294677e-1130 blues 00023.mp3 97,5088 2533 2082 7.83067256027e-1131 blues 00052.mp3 98,4375 2082 2170 8.05109295304e-1132 jazz 00044.mp3 109,957 2170 2568 8.70823317269e-1133 metal 00038.mp3 118,804 2568 2272 8.83201522932e-1134 metal 00089.mp3 151,999 2272 2222 9.04748490687e-1135 classical 00013.mp3 184,57 2222 2804 9.30551153235e-1136 rock 00006.mp3 114,844 2804 1959 9.2990076751e-1137 blues 00012.mp3 124,529 1959 2174 9.48073978722e-1138 jazz 00007.mp3 184,57 2174 2579 9.81604337257e-1139 country 00071.mp3 184,57 2579 2608 1.0241978958e-1040 classical 00007.mp3 154,268 2608 2828 1.06750477764e-10

Cuadro 4.9: Lista de reproducción utilizando distancia de Cosenos

79

Page 90: Representación Topológica de las Características de la

N Neurona BPM Clase estimada Clase Gold Standard + Mp31 (2,23) 102.336 blues blues.00094.mp32 (2,23) 105.469 blues blues.00051.mp33 (2,23) 105.469 country country.00098.mp34 (2,23) 106.556 blues blues.00013.mp35 (2,23) 106.556 hiphop hiphop.00099.mp36 (2,23) 108.799 rock rock.00089.mp37 (2,23) 111.139 blues blues.00084.mp38 (2,23) 111.139 rock rock.00098.mp39 (2,23) 113.582 blues country.00094.mp310 (2,23) 113.582 blues country.00058.mp311 (2,23) 114.844 blues rock.00006.mp312 (2,23) 114.844 country country.00096.mp313 (2,23) 114.844 jazz jazz.00010.mp314 (2,23) 116.134 blues blues.00080.mp315 (2,23) 116.134 metal metal.00092.mp316 (2,23) 116.134 metal metal.00083.mp317 (2,23) 117.454 rock rock.00096.mp318 (2,23) 120.185 blues blues.00078.mp319 (2,23) 120.185 jazz jazz.00038.mp320 (2,23) 120.185 rock country.00092.mp321 (2,23) 121.599 blues blues.00022.mp322 (2,23) 121.599 country country.00061.mp323 (2,23) 121.599 hiphop hiphop.00007.mp324 (2,23) 124.529 blues blues.00003.mp325 (2,23) 124.529 blues blues.00012.mp326 (2,23) 129.199 metal metal.00022.mp327 (2,23) 132.512 country country.00055.mp328 (2,23) 132.512 metal metal.00030.mp329 (2,23) 141.588 rock reggae.00016.mp330 (2,23) 143.555 country country.00085.mp331 (2,23) 145.577 blues jazz.00008.mp332 (2,23) 147.656 blues blues.00010.mp333 (2,23) 147.656 blues blues.00077.mp334 (2,23) 149.796 rock rock.00001.mp335 (2,23) 164.062 blues blues.00081.mp336 (2,23) 164.062 metal metal.00069.mp337 (2,23) 166.709 country country.00068.mp338 (2,23) 178.206 country country.00095.mp339 (2,23) 178.206 jazz jazz.00041.mp340 (2,23) 178.206 rock rock.00008.mp3

Cuadro 4.10: fragmento - Lista de reproducción utilizando SOM tradicional

80

Page 91: Representación Topológica de las Características de la

N Centroide Neurona BPM Clase estimada Clase Gold Standard + Mp31 (7,14) (7,14) 114.844 reggae rock.00030.mp32 (7,14) (6,15) 172.266 hiphop hiphop.00064.mp33 (7,14) (7,15) 97.5088 hiphop hiphop.00078.mp34 (7,14) (6,14) 123.047 reggae reggae.00058.mp35 (7,14) (8,13) 156.605 country country.00044.mp36 (7,14) (7,13) 124.529 pop pop.00083.mp37 (7,14) (6,13) 114.844 disco disco.00000.mp38 (7,14) (8,15) 184.57 hiphop hiphop.00038.mp39 (7,14) (8,14) 114.844 reggae reggae.00086.mala.mp310 (7,14) (6,16) 184.57 reggae pop.00079.mp311 (7,14) (5,14) 161.499 pop pop.00072.mp312 (7,14) (8,16) 184.57 reggae reggae.00050.mp313 (7,14) (9,16) 178.206 pop pop.00059.mp314 (7,14) (9,13) 139.675 pop pop.00050.mp315 (7,14) (5,13) 139.675 reggae reggae.00071.mp316 (7,14) (7,12) 149.796 pop pop.00025.mp317 (7,14) (9,15) 169.442 rock pop.00033.mp318 (7,14) (5,15) 116.134 disco rock.00041.mp319 (7,14) (7,16) 169.442 reggae reggae.00046.mp320 (7,14) (5,16) 151.999 reggae reggae.00090.mp321 (7,14) (8,12) 124.529 rock rock.00050.mp322 (7,14) (9,12) 184.57 hiphop hiphop.00059.mp323 (7,14) (9,14) 147.656 reggae reggae.00077.mp324 (7,14) (6,12) 134.233 rock rock.00046.mp325 (7,14) (5,12) 98.4375 hiphop reggae.00052.mp326 (7,14) (6,17) 184.57 hiphop hiphop.00063.mp327 (7,14) (10,15) 149.796 pop pop.00094.mp328 (7,14) (9,11) 132.512 country country.00040.mp329 (7,14) (10,11) 145.577 pop pop.00088.mp330 (7,14) (6,11) 93.1166 rock pop.00006.mp331 (7,14) (9,17) 109.957 hiphop hiphop.00057.mp332 (7,14) (10,12) 108.799 disco disco.00005.mp333 (7,14) (10,13) 143.555 rock rock.00054.mp334 (7,14) (4,15) 175.185 pop pop.00045.mp335 (7,14) (10,14) 98.4375 hiphop hiphop.00069.mp336 (7,14) (4,14) 96.5975 hiphop hiphop.00048.mp337 (7,14) (4,16) 98.4375 hiphop hiphop.00074.mp338 (7,14) (4,17) 105.469 country country.00023.mp339 (7,14) (7,11) 159.014 reggae hiphop.00040.mp340 (7,14) (8,11) 178.206 pop pop.00056.mp3

Cuadro 4.11: fragmento - Lista de reproducción utilizando SOM modi�cada sinpreprocesamiento de vectores antes de entrenamiento

81

Page 92: Representación Topológica de las Características de la

N Centroide Neurona BPM Clase estimada Clase Gold Standard + Mp31 (0,4) (0,4) 107.666 jazz jazz.00054.mp32 (0,13) (0,13) 156.605 reggae hiphop.00033.mp33 (0,27) (0,27) 184.57 blues blues.00065.mp34 (0,27) (1,28) 184.57 blues blues.00069.mp35 (0,27) (0,26) 175.185 blues blues.00061.mp36 (0,27) (1,27) 112.347 blues blues.00062.mp37 (0,35) (0,35) 111.139 country country.00004.mp38 (0,59) (0,59) 98.4375 hiphop hiphop.00016.mp39 (0,59) (1,59) 126.048 disco disco.00061.mp310 (0,68) (0,68) 149.796 reggae reggae.00029.mp311 (0,74) (0,74) 121.599 jazz jazz.00024.mp312 (1,52) (1,52) 169.442 reggae reggae.00046.mp313 (1,52) (2,53) 90.6661 jazz jazz.00049.mp314 (2,5) (2,5) 141.588 blues blues.00090.mp315 (2,22) (2,22) 184.57 jazz jazz.00077.mp316 (2,30) (2,30) 109.957 pop pop.00024.mp317 (2,30) (1,31) 105.469 pop pop.00009.mp318 (2,30) (3,30) 109.957 rock rock.00047.mp319 (2,41) (2,41) 154.268 metal metal.00007.mp320 (2,55) (2,55) 169.442 disco disco.00050.mp321 (2,69) (2,69) 184.57 reggae reggae.00011.mp322 (2,74) (2,74) 93.9631 pop disco.00007.mp323 (2,77) (2,77) 130.835 country country.00032.mp324 (2,93) (2,93) 107.666 classical classical.00033.mp325 (2,93) (2,92) 156.605 blues blues.00014.mp326 (2,93) (3,93) 116.134 classical classical.00055.mp327 (2,93) (1,94) 94.8251 reggae reggae.00038.mp328 (2,93) (1,93) 164.062 jazz jazz.00074.mp329 (3,11) (3,11) 141.588 metal metal.00003.mp330 (3,40) (3,40) 106.556 country disco.00041.mp331 (3,40) (3,41) 175.185 pop pop.00045.mp332 (3,74) (3,74) 184.57 blues blues.00034.mp333 (3,74) (3,73) 184.57 classical country.00030.mp334 (3,84) (3,84) 184.57 blues blues.00057.mp335 (3,84) (4,85) 93.9631 disco disco.00019.mp336 (4,7) (4,7) 90.6661 metal metal.00009.mp337 (4,7) (3,8) 147.656 metal metal.00099.mp338 (4,7) (3,6) 164.062 metal metal.00097.mp339 (4,7) (5,8) 116.134 metal metal.00083.mp340 (4,7) (4,6) 111.139 metal metal.00024.mp3

Cuadro 4.12: fragmento - Lista de reproducción utilizando SOM modi�cada conestandarización de vectores antes de entrenamiento

82

Page 93: Representación Topológica de las Características de la

N Centroide Neurona BPM Clase estimada Clase Gold Standard + Mp31 (4,2) (4,2) 126.048 blues blues.00096.mp32 (4,2) (3,1) 129.199 jazz jazz.00032.mp33 (4,2) (4,3) 111.139 blues blues.00011.mp34 (4,2) (4,1) 124.529 blues blues.00099.mp35 (4,2) (5,2) 164.062 blues blues.00086.mp36 (12,91) (12,91) 90.6661 jazz jazz.00018.mp37 (12,91) (11,92) 98.4375 rock rock.00020.mp38 (12,91) (13,92) 132.512 country country.00055.mp39 (12,91) (11,90) 92.2852 metal metal.00037.mp310 (12,91) (11,91) 106.556 classical classical.00056.mp311 (12,91) (13,90) 113.582 jazz jazz.00009.mp312 (12,91) (12,90) 126.048 disco disco.00059.mp313 (12,91) (12,92) 124.529 blues blues.00003.mp314 (12,91) (13,91) 111.139 disco disco.00057.mp315 (12,91) (10,92) 101.333 disco disco.00069.mp316 (12,91) (13,89) 137.812 jazz jazz.00048.mp317 (12,91) (10,91) 105.469 hiphop hiphop.00082.mp318 (13,69) (13,69) 137.812 blues blues.00072.mp319 (13,69) (14,70) 96.5975 disco country.00075.mp320 (13,69) (12,68) 121.599 rock rock.00083.mp321 (13,69) (12,69) 143.555 metal metal.00073.mp322 (13,69) (12,70) 103.359 jazz jazz.00021.mp323 (13,69) (13,70) 154.268 disco disco.00052.mp324 (13,69) (14,69) 149.796 metal metal.00077.mp325 (13,69) (13,68) 159.014 jazz jazz.00029.mp326 (13,69) (14,68) 164.062 metal metal.00069.mp327 (13,69) (15,68) 121.599 disco disco.00095.mp328 (13,69) (14,71) 118.804 metal metal.00011.mp329 (13,69) (13,67) 178.206 disco disco.00067.mp330 (13,69) (12,67) 121.599 disco reggae.00098.mp331 (13,69) (11,70) 127.604 blues blues.00028.mp332 (13,69) (15,71) 151.999 disco rock.00022.mp333 (13,69) (14,67) 130.835 rock blues.00055.mp334 (13,69) (11,68) 184.57 rock rock.00099.mp335 (13,69) (11,67) 118.804 disco disco.00049.mp336 (13,69) (15,70) 120.185 disco rock.00075.mp337 (13,69) (11,71) 149.796 disco disco.00098.mp338 (13,69) (15,67) 103.359 blues blues.00054.mp339 (13,69) (15,69) 156.605 blues blues.00002.mp340 (13,69) (12,71) 132.512 metal metal.00067.mp3

Cuadro 4.13: fragmento - Lista de reproducción utilizando SOM modi�cada connormalización de vectores antes de entrenamiento

83

Page 94: Representación Topológica de las Características de la

N Centroide Neurona BPM Clase estimada Clase Gold Standard + Mp31 (3,4) (3,4) 107.666 blues blues.00059.mp32 (3,4) (4,5) 172.266 blues blues.00040.mp33 (3,4) (2,3) 124.529 country country.00001.mp34 (3,4) (2,5) 132.512 disco disco.00075.mp35 (3,4) (2,4) 130.835 disco disco.00034.mp36 (3,4) (3,3) 95.7031 disco hiphop.00010.mp37 (3,4) (4,4) 172.266 disco country.00009.mp38 (3,4) (4,3) 114.844 hiphop hiphop.00021.mp39 (3,4) (3,5) 97.5088 hiphop hiphop.00012.mp310 (3,4) (5,5) 97.5088 hiphop hiphop.00017.mp311 (3,4) (4,6) 169.442 hiphop hiphop.00008.mp312 (3,4) (1,5) 129.199 metal disco.00089.mp313 (3,4) (1,4) 97.5088 metal metal.00048.mp314 (3,4) (5,3) 134.233 metal metal.00031.mp315 (3,4) (1,6) 147.656 metal metal.00010.mp316 (3,4) (3,2) 169.442 metal metal.00055.mp317 (3,4) (5,2) 137.812 metal metal.00087.mp318 (3,4) (5,4) 164.062 metal metal.00080.mp319 (3,4) (5,6) 118.804 metal metal.00011.mp320 (3,4) (4,2) 147.656 metal metal.00099.mp321 (3,4) (2,2) 112.347 rock rock.00026.mp322 (3,4) (3,6) 156.605 rock rock.00021.mp323 (3,4) (1,2) 134.233 rock country.00082.mp324 (4,82) (4,82) 102.336 pop pop.00087.mp325 (6,60) (6,60) 121.599 country country.00035.mp326 (6,60) (5,60) 130.835 country country.00037.mp327 (6,60) (5,59) 129.199 reggae reggae.00055.mp328 (16,82) (17,81) 181.332 pop pop.00096.mp329 (16,82) (16,83) 129.199 pop pop.00053.mp330 (16,82) (15,83) 132.512 pop pop.00000.mp331 (18,83) (18,83) 184.57 blues blues.00037.mp332 (18,83) (17,84) 166.709 blues classical.00054.mp333 (18,83) (18,82) 113.582 classical classical.00075.mp334 (18,83) (19,83) 184.57 classical classical.00019.mp335 (18,83) (18,84) 164.062 classical classical.00057.mp336 (18,83) (19,84) 184.57 classical classical.00015.mp337 (18,83) (17,82) 102.336 classical classical.00068.mp338 (18,83) (19,82) 166.709 classical classical.00089.mp339 (18,83) (17,83) 169.442 classical classical.00044.mp340 (18,83) (16,82) 114.844 disco rock.00058.mp3

Cuadro 4.14: fragmento - Lista de reproducción utilizando SOM modi�cada connormalización + ordenamiento de vectores por clase estimada antes de entrenamiento

84

Page 95: Representación Topológica de las Características de la

4.8. Discusión de los resultados

En primer lugar se debe destacar que el método de similaridad de cosenos propuesto en

esta tesis, no logra entregar recomendaciones adecuadas para los �nes de generación de listas

de reproducción. Estos resultados sin embargo, no implican necesariamente que la medida de

similaridad sea poco apta, sino que es necesario profundizar en la interpretación y posibles

transformaciones adecuadas a los vectores de entrada para este método.

Los resultados obtenidos con un mapa auto-organizativo tradicional en el cuadro 4.10,

mejoran la propuesta entregada por el método de distancia de cosenos, sin embargo, se

evidencia la falta de un elemento de ranking dentro de cada clase. En este caso, fue necesaria

la adición de una característica que ya era parte de la capa de entrada del modelo de red

neuronal, con la cual se pudo mostrar un resultado más coherente. La crítica al método es

que requiere la adición doble de una de las características para poder entregar resultados

más adecuados.

La lista desplegada en el cuadro 4.11 que corresponde a la salida de un mapa

auto-organizativo modi�cado sin transformación de los datos de entrada, representa el

comportamiento obtenido para todos los conjuntos de datos, por cuanto se generaron menos

islas de música pero también agrupaciones numerosas que perjudicaban las recomendaciones

entregadas por el algoritmo.

Lo anterior se intentó resolver mediante la transformación de los vectores de caracte-

rísticas en la capa de entrada del mapa auto organizativo, a través de estandarización o

normalización. Los resultados obtenidos al estandarizar los vectores de entrada, tendieron

a generar pocos elementos de recomendación en general ya que los grupos contenían pocos

elementos (en todos los conjuntos de datos analizados) mientras que al normalizarse los

vectores, los grupos tendieron a ser más numerosos permitiendo más opciones al algoritmo

recomendador. Al revisar los cuadros 4.12 y 4.13 se puede notar a través de las columnas

Centroide, BPM y Clase Estimada que los resultados son mejores para el mapa auto-

organizativo modi�cado con normalización de vectores en la capa de entrada.

Los resultados se mejoran si se aprovecha la clase estimada por el modelo y se incluye

como elemento de ranking al �nal del proceso generador de listas de reproducción. Los

resultados podrían haber sido ordenados también por la columna BPM, con lo cual, la

transición incluiría un elemento de ritmo a la transición entre temas.

85

Page 96: Representación Topológica de las Características de la

4.9. Visualización de grupos a través de la web

Tal como se describe en la �gura 3.20, el procedimientode la generación de una lista de reproducción requierepara el paso inicial, la identi�cación de la preferenciadel usuario.

En el contexto de pruebas de esta tesis, se desarrollóuna implementación en PHP que lee los datos yaprocesados y almacenados en una base de datosMySQL, y muestra el resultado de la generaciónde islas de música descrito en la sección 3.4.2. Enesta implementación se puede reproducir los temasmusicales para analizar personalmente los resultadosde la agrupación.

Para asuntos de pruebas y mejor comprensión, la listacontiene en primer lugar un número correspondientea los Beats per Minute o BPM, a continuación, laubicación en el disco duro y como parte de esta, laclase otorgada por el Gold Standard.

Se puede apreciar que la agrupación por similaridad nonecesariamente contiene elementos de un mismo generomusical. Figura 4.23: Lista de Reproducción -

Implementación para web.

Otra salida durante la generación de listas de reproducción fue resuelta mediante la

creación automática de archivos de texto de tipo �*.pls�, el cual corresponde a un formato

de archivos que puede ser leído por diversos reproductores de música. Su estructura interna

simpli�cada puede ser como la que se indica a continuación:

Salida de sistema 4.1: Ejemplo de estructura interna de archivo lista.pls

[playlist]

NumberOfEntries=3

File1=file:///media/www/tesis/dataset-GTZAN30seg/mp3/hiphop/hiphop.00013.mp3

File2=file:///media/www/tesis/dataset-GTZAN30seg/mp3/jazz/jazz.00040.mp3

File3=file:///media/www/tesis/dataset-GTZAN30seg/mp3/blues/blues.00024.mp3

86

Page 97: Representación Topológica de las Características de la

Figura 4.24: Captura de pantalla de la implementación para la visualización de resultados deagrupamiento de música similar utilizando SOM. En este caso, corresponde a la visualizaciónde una rejilla de 100x100, en donde cada celda, corresponde a un archivo Mp3. El colorrepresenta a la clase estimada por el modelo. El fondo en negro signi�ca que no existe aúnmúsica en estas áreas.

87

Page 98: Representación Topológica de las Características de la

Capítulo 5

Conclusiones y Trabajo Futuro

5.1. Conclusiones

Este trabajo demuestra que es posible la generación de listas de reproducción de música

similar de forma automática con muy poca o escasa intervención humana, no siendo necesaria

hasta ahora, más información que la contenida en las propias señales de audio.

Se advierte además que, a pesar de que la representación vectorial es muy resumida en

contraste a los datos completos de cada señal de audio, se mantiene en ésta representación,

información cuantitativa su�ciente para permitir tareas de aprendizaje automático como el

aquí desarrollado.

Respecto de las técnicas utilizadas, se evidencia un gran espacio de investigación en los

cuales focalizar trabajos futuros, siendo algunos de ellos: la identi�cación de la sección de

audio desde la cual se obtendrán las características, la calidad necesaria de la muestra de

audio y su impacto en los resultados, el tipo de características adicionales que se podrían

incluir, los métodos alternativos a los propuestos en esta tesis y sus posibilidades de mejora

en los resultados, las posibilidades de construcción de un framework para la extracción de

características, entre otras.

Finalmente, se concluye que los resultados no son perfectos y que las listas generadas

pueden ser perfeccionadas si se amplía el modelo agregando técnicas paralelas o nuevos datos,

lo cual abre la posibilidad para incluir además de la información cuantitativa ya enunciada

en este trabajo, información cualitativa que pueda ser obtenida desde los usuarios cuando

estos interactúen con las listas de reproducción que el modelo genera.

88

Page 99: Representación Topológica de las Características de la

5.2. Posibilidades de trabajo futuro

5.2.1. Sobre disponibilidad de conjuntos de datos

En la actualidad existen impedimentos de derechos de autor que imposibilitan la creación

de un gran conjunto de datos para el desarrollo de investigaciones de este tipo. Por supuesto,

las pruebas locales (con música propia) puede ser desarrollada, pero di�culta la publicación

de resultados para que otros autores intenten rehacer los experimentos o bien mejorar con

nuevas propuestas, el rendimiento obtenido por autores en el pasado.

Hoy en día existen bandas que dejan su música disponible para descarga, pero genera un

espacio limitado de acción, sobre todo porque los usuarios en general tienen tendencias de

gusto hacia artistas conocidos.

En este sentido, un punto de mejora sería realizar acuerdos con sellos de música para

que se haga público un conjunto de datos con muestras de archivos digitales (por ejemplo

30 segundos por canción), para que puedan ser descargados con �nes de investigación.

5.2.2. ¾Cómo efectuar el muestreo de una pieza musical?

Otro tema de interés en esta área de investigación (una vez que se posee un conjunto

de datos para estudio) es identi�car qué sección de la canción corresponderá a los datos de

entrada en el modelo. A la fecha, no existen estudios que hayan demostrado que una sección,

como por ejemplo el coro o estribillo, sea la mejor parte para calcular las características.

Al respecto, se optó por tomar de los conjuntos de datos el 100% de la muestra de música

disponible, el cual correspondía a 10 o 30 segundos ya otorgados en los conjuntos de datos,

sin embargo, se plantea averiguar si existen formas más adecuadas para la selección del sector

de la señal que debiera ser analizado.

5.2.3. Calidad de la música a procesar

Un tema que no ha sido estudiado en profundidad tiene que ver con la calidad de la música

que se va a procesar (tasa de muestreo, bitrate, etc). En este sentido, no esta completamente

de�nido aún que una mejor calidad en la señal provea de mejores resultados a tareas de

aprendizaje automático.

89

Page 100: Representación Topológica de las Características de la

5.2.4. ¾Qué características incluir?

A pesar de que se ha planteado en el estado del arte que existen diversos enfoques, aún

falta mucho por desarrollar en cuanto a tipos de características que pueden ser incluidas en

el modelo de aprendizaje automático.

Una tarea futura podría estar relacionada a incluir en el modelo la intervención humana,

por ejemplo, al estimar el grado de aceptación de las canciones propuestas por el modelo

generador de listas de reproducción con el objeto de aumentar la capacidad discriminatoria

de la propuesta.

5.2.5. Criterios para la extracción de características

A pesar de que existen varios algoritmos y programas que colaboran con la extracción de

características, varios de ellos no son del todo con�ables puesto que en diversos casos fallan

en la apertura de la señal de un Mp3 (dejando sin procesar algunos archivos del conjunto de

datos) o bien, los resultados de las características di�eren en valor respecto de las calculadas

por otros algoritmos, lo que rati�ca lo propuesto en [18, 21, 34].

Al respecto, se propone �ser parte de la comunidad� en vez de levantar desde cero

una propuesta de framework nueva que no tome en consideración el aprendizaje de otros

investigadores en el pasado. Pero más importante aún, revisar las características extraídas

por frameworks (es decir, no con�arse del todo), pues los códigos disponibles no están 100%

debugueados y algunas veces podrían requerir intervención de parte del investigador.

5.2.6. Profundizar en la generación de listas de reproducción

utilizando distancia de cosenos

Respecto de la generación de listas de reproducción utilizando distancia de cosenos,

se recomienda que a pesar de los resultados obtenidos en este trabajo, se prueben otras

transformaciones a los vectores (antes del calculo de las distancias). Pues empíricamente los

resultados, a pesar de no ser tan buenos como la propuesta hecha a través de redes SOM,

fueron interesantes pudiendo existir espacios de mejora.

90

Page 101: Representación Topológica de las Características de la

5.2.7. Investigar otros métodos de ranking

Para �nalizar se recomienda analizar otras propuestas de rankings para la generación

de listas de reproducción. La red SOM modi�cada que se implementó en este trabajo

tuvo resultados aceptables pero pueden existir otras propuestas algorítmicas que obtengan

notorias mejoras.

91

Page 102: Representación Topológica de las Características de la

Apéndices

92

Page 103: Representación Topológica de las Características de la

Apéndice A

Abreviaciones

BPM Beats per minute. Las pulsaciones por minuto son una unidad empleada para medir

el tempo en música. Equivale al número de pulsaciones que caben en un minuto.

C Es un lenguaje de programación creado en 1972. Se trata de un lenguaje débilmente

tipi�cado de medio nivel pero con muchas características de bajo nivel. Dispone

de las estructuras típicas de los lenguajes de alto nivel pero, a su vez, dispone de

construcciones del lenguaje que permiten un control a muy bajo nivel.

DCT Transformada Discreta de Cosenos.

ESOM Emergent Self-Organizing Maps. Mapas auto-organizativos emergentes.

FT Transformada de Fourier.

FFT Transformada Rápida de Fourier.

ID3 Es un estándar de facto para incluir metadatos (etiquetas) en un archivo contenedor

audiovisual, tales como álbum, título o artista. Se utiliza principalmente en �cheros

sonoros como MP3.

IR Information Retrieval. Recuperación de Información.

ISMIR International Society for Music Information Retrieval. Sociedad Internacional para

la recuperación de información en música. http://www.ismir.net

93

Page 104: Representación Topológica de las Características de la

kbps Un kilobit por segundo es una unidad de medida que se usa en telecomunicaciones e

informática para calcular la velocidad de transferencia de información a través de una

red. Equivale a 1000 bits por segundo = 1000 bit/s.

MHz Un megahercio (MHz) equivale a 106 hertzios (1 millón). Se utiliza muy frecuente-

mente como unidad de medida de la frecuencia.

MFCC Los Mel Frequency Cepstral Coe�cients (coe�cientes cepstrales en las frecuencias

de Mel) son coe�cientes para la representación del habla basados en la percepción

auditiva humana.

MIR Music Information Retrieval. Recuperación de Información en Música.

MP3 MPEG-1 Audio Layer III o MPEG-2 Audio Layer III, más comúnmente conocido como

MP3, es un formato de compresión de audio digital patentado que usa un algoritmo con

pérdida para conseguir un menor tamaño de archivo. Es un formato de audio común

usado para música tanto en ordenadores como en reproductores de audio portátil.

MySQL Es un sistema de gestión de bases de datos relacional.

PHP Es un lenguaje de programación interpretado (Lenguaje de alto rendimiento),

diseñado originalmente para la creación de páginas web dinámicas.

SOM Self-Organizing Maps. Mapas auto-organizativos.

STFT Short-time Fourier transform. La Transformada de Fourier de Tiempo Reducido.

SVM Support Vector Machines. Las máquinas de soporte vectorial o máquinas de vectores

de soporte son un conjunto de algoritmos de aprendizaje supervisado desarrollados por

Vladimir Vapnik y su equipo en los laboratorios AT&T.

WAV (o WAVE), apócope de WAVEform audio �le format, es un formato de audio digital

normalmente sin compresión de datos desarrollado y propiedad de Microsoft y de IBM

que se utiliza para almacenar sonidos en el PC, admite archivos mono y estéreo a

diversas resoluciones y velocidades de muestreo, su extensión es .wav.

94

Page 105: Representación Topológica de las Características de la

Apéndice B

Características seleccionadas

A continuación se muestran las características que fueron obtenidas para el procesamiento

de las señales de audio1. Cada una de estas se calculó para cada Mp3 en los conjuntos de

datos, generando por tanto una representación vectorial de cada archivo. Para saber más ver

el Capítulo 3.1.

1 Std Acc1000 Std PeakRatio Minimum Chroma A Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

2 Std Acc1000 Std PeakRatio Chroma A Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

3 Mean Acc1000 Std LPCC 3

4 Std Acc1000 Mean MFCC1 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

5 Std Acc1000 Mean PeakRatio Chroma D Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

6 Mean Acc1000 Std PeakRatio Chroma B Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

7 Std Acc1000 Std PeakRatio Chroma D Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

8 Std Acc1000 Mean PeakRatio Chroma E Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

9 Mean Acc1000 Std PeakRatio Chroma A# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

10 Std Acc1000 Mean PeakRatio Minimum Chroma A Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

11 Std Acc1000 Mean PeakRatio Chroma F Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

12 Mean Acc1000 Std LPCC 1

13 Std Acc1000 Std MFCC1 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

14 Std Acc1000 Std PeakRatio Chroma G Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

15 Mean Acc1000 Std PeakRatio Chroma A Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

16 Mean Acc1000 Std PeakRatio Chroma E Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

17 Mean Acc1000 Std PeakRatio Chroma F Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

18 Mean Acc1000 Mean PeakRatio Chroma E Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

19 Std Acc1000 Std PeakRatio Chroma B Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

20 Mean Acc1000 Mean LSP 8

21 Std Acc1000 Mean LPCC 2

22 Mean Acc1000 Std PeakRatio Chroma G# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

23 Mean Acc1000 Mean PeakRatio Chroma B Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

24 Mean Acc1000 Std LSP 1

25 Std Acc1000 Mean PeakRatio Chroma G# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

26 Std Acc1000 Std LPCC 9

27 Std Acc1000 Mean LPCC 5

28 Mean Acc1000 Mean PeakRatio Chroma D# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

29 Mean Acc1000 Mean SFM 11

30 Mean Acc1000 Mean Centroid Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

Cuadro B.1: Características seleccionadas de acuerdo a lo planteado en el Capítulo 3.2(parte 1 de 3)

1Las características se encuentran listadas por ranking desde la más a la menos importante. Lacaracterística número 174 fue agregada directamente, es decir, su ubicación no implica menos importanciarespecto de las anteriores.

95

Page 106: Representación Topológica de las Características de la

31 Mean Acc1000 Mean PeakRatio Chroma F# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

32 Std Acc1000 Std PeakRatio Chroma F Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

33 Mean Acc1000 Mean LPCC 3

34 Mean Acc1000 Std ZeroCrossings HopSize512 WinSize512 Sum AudioChannel-1

35 Mean Acc1000 Std SCF 11

36 Mean Acc1000 Mean MFCC1 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

37 Std Acc1000 Mean MFCC3 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

38 Mean Acc1000 Mean PeakRatio Chroma A# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

39 Mean Acc1000 Mean PeakRatio Minimum Chroma A Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

40 Mean Acc1000 Mean SCF 5

41 Mean Acc1000 Mean SFM 4

42 Mean Acc1000 Std Centroid Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

43 Std Acc1000 Mean PeakRatio Chroma G Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

44 Mean Acc1000 Mean MFCC2 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

45 Mean Acc1000 Mean LPCC 12

46 Mean Acc1000 Std Rollo� Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

47 Mean Acc1000 Std SFM 15

48 Mean Acc1000 Std PeakRatio Minimum Chroma A Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

49 Std Acc1000 Mean PeakRatio Chroma B Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

50 Mean Acc1000 Std SCF 4

51 Mean Acc1000 Std LSP 2

52 Mean Acc1000 Std SCF 2

53 Std Acc1000 Std LPCC 2

54 Mean Acc1000 Mean MFCC5 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

55 Mean Acc1000 Mean PeakRatio Chroma F Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

56 Mean Acc1000 Std MFCC6 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

57 Mean Acc1000 Std SFM 5

58 Std Acc1000 Mean LPCC 9

59 Mean Acc1000 Mean SFM 2

60 Mean Acc1000 Mean PeakRatio Average Chroma A Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

61 Std Acc1000 Mean LSP 10

62 Mean Acc1000 Std PeakRatio Chroma D Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

63 Mean Acc1000 Std SFM 19

64 Mean Acc1000 Mean SFM 21

65 Std Acc1000 Std PeakRatio Chroma D# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

66 Mean Acc1000 Std SFM 13

67 Std Acc1000 Mean ZeroCrossings HopSize512 WinSize512 Sum AudioChannel-1

68 Std Acc1000 Mean PeakRatio Chroma F# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

69 Mean Acc1000 Mean LPCC 1

70 Mean Acc1000 Std LPCC 4

71 Mean Acc1000 Mean PeakRatio Chroma G# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

72 Mean Acc1000 Mean SCF 13

73 Mean Acc1000 Mean LSP 2

74 Mean Acc1000 Std MFCC3 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

75 Mean Acc1000 Mean LSP 1

76 Std Acc1000 Std PeakRatio Chroma F# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

77 Mean Acc1000 Std PeakRatio Average Chroma A Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

78 Mean Acc1000 Std LSP 11

79 Std Acc1000 Mean PeakRatio Chroma D# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

80 Mean Acc1000 Std LPCC 12

81 Mean Acc1000 Mean ZeroCrossings HopSize512 WinSize512 Sum AudioChannel-1

82 Std Acc1000 Mean SFM 16

83 Mean Acc1000 Mean LSP 9

84 Mean Acc1000 Std LSP 12

85 Std Acc1000 Std LPCC 5

86 Mean Acc1000 Std PeakRatio Chroma D# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

87 Std Acc1000 Mean LSP 2

88 Mean Acc1000 Std MFCC12 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

89 Mean Acc1000 Mean LSP 6

90 Mean Acc1000 Std SFM 11

91 Mean Acc1000 Mean LSP 10

92 Std Acc1000 Mean MFCC7 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

93 Std Acc1000 Mean MFCC12 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

94 Mean Acc1000 Std LSP 7

95 Std Acc1000 Mean LSP 11

96 Std Acc1000 Std LSP 10

97 Mean Acc1000 Mean MFCC8 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

98 Std Acc1000 Std SFM 13

99 Std Acc1000 Std MFCC7 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

100 Mean Acc1000 Mean SFM 15

101 Mean Acc1000 Std PeakRatio Chroma F# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

102 Std Acc1000 Std PeakRatio Chroma G# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

103 Mean Acc1000 Std SCF 19

104 Mean Acc1000 Std LSP 5

105 Mean Acc1000 Mean SFM 13

106 Mean Acc1000 Std LSP 13

107 Mean Acc1000 Mean MFCC12 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

108 Mean Acc1000 Mean MFCC0 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

109 Std Acc1000 Std PeakRatio Chroma E Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

110 Std Acc1000 Mean SCF 5

Cuadro B.2: Características seleccionadas de acuerdo a lo planteado en el Capítulo 3.2(parte 2 de 3)

96

Page 107: Representación Topológica de las Características de la

111 Mean Acc1000 Mean LSP 5

112 Mean Acc1000 Std SFM 22

113 Mean Acc1000 Mean MFCC9 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

114 Mean Acc1000 Mean SCF 2

115 Std Acc1000 Std PeakRatio Chroma C# Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

116 Mean Acc1000 Mean LSP 7

117 Std Acc1000 Std LSP 5

118 Std Acc1000 Mean MFCC11 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

119 Std Acc1000 Std SCF 22

120 Std Acc1000 Std LPCC 12

121 Mean Acc1000 Std SFM 2

122 Std Acc1000 Std MFCC6 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

123 Mean Acc1000 Mean SFM 5

124 Mean Acc1000 Mean LSP 4

125 Mean Acc1000 Std LSP 8

126 Std Acc1000 Mean LSP 4

127 Mean Acc1000 Std MFCC11 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

128 Mean Acc1000 Std SCF 22

129 Std Acc1000 Std LPCC 8

130 Mean Acc1000 Mean MFCC3 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

131 Mean Acc1000 Mean SFM 19

132 Std Acc1000 Std LPCC 1

133 Mean Acc1000 Std SCF 13

134 Mean Acc1000 Std LSP 16

135 Std Acc1000 Mean LPCC 12

136 Mean Acc1000 Mean LPCC 2

137 Mean Acc1000 Std MFCC0 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

138 Std Acc1000 Mean LPCC 8

139 Std Acc1000 Mean SFM 18

140 Mean Acc1000 Std LPCC 11

141 Mean Acc1000 Std LSP 9

142 Mean Acc1000 Mean LSP 12

143 Std Acc1000 Std MFCC9 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

144 Mean Acc1000 Mean LSP 3

145 Mean Acc1000 Mean LSP 13

146 Mean Acc1000 Mean LPCC 4

147 Std Acc1000 Mean LSP 6

148 Std Acc1000 Mean MFCC9 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

149 Mean Acc1000 Mean SFM 1

150 Std Acc1000 Mean SFM 7

151 Std Acc1000 Std LSP 9

152 Mean Acc1000 Mean SFM 17

153 Std Acc1000 Std LPCC 6

154 Std Acc1000 Mean MFCC4 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

155 Mean Acc1000 Mean SFM 16

156 Mean Acc1000 Std LPCC 5

157 Mean Acc1000 Std LSP 17

158 Std Acc1000 Mean LSP 13

159 Mean Acc1000 Std SFM 21

160 Mean Acc1000 Std SFM 1

161 Mean Acc1000 Mean LSP 16

162 Std Acc1000 Std MFCC10 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

163 Std Acc1000 Std LPCC 10

164 Mean Acc1000 Std LPCC 2

165 Mean Acc1000 Mean SFM 14

166 Mean Acc1000 Mean SCF 1

167 Std Acc1000 Mean LSP 15

168 Std Acc1000 Mean MFCC10 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

169 Std Acc1000 Std SCF 2

170 Std Acc1000 Mean SFM 24

171 Std Acc1000 Std MFCC12 Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

172 Std Acc1000 Std SFM 17

173 Mean Acc1000 Mean Rollo� Power powerFFT WinHamming HopSize512 WinSize512 Sum AudioChannel-1

174 BPM (agregada directamente)

Cuadro B.3: Características seleccionadas de acuerdo a lo planteado en el Capítulo 3.2(parte 3 de 3)

97

Page 108: Representación Topológica de las Características de la

Apéndice C

Listado de Clasi�cadores

C.1. Métodos de clasi�cación testados

Los siguientes fueron los métodos de clasi�cación testeados con la representación vectorial

obtenida. El orden de los mismos se entrega en orden de rendimiento (que puede ser visto

en la tabla mostrada en la �gura 4.3).

Todos estos algoritmos se encuentran implementados en el framework Weka1.

SMO

Implementación de John C. Platt del algoritmo �sequential minimal optimization� para

el entrenamiento de un clasi�cador con vectores de soporte utilizando kernel polinomial o

RBF. Los problemas multiclases son resueltos utilizando pares de clasi�cación. Para más

información acerca del algoritmo SMO ver: J. Platt (1998). Fast Training of Support Vector

Machines using Sequential Minimal Optimization. Advances in Kernel Methods - Support

Vector Learning, B. Schoelkopf, C. Burges, and A. Smola, eds., MIT Press and S.S. Keerthi,

S.K. Shevade, C. Bhattacharyya, K.R.K. Murthy, Improvements to Platt's SMO Algorithm

for SVM Classi�er Design. Neural Computation, 13(3), pp 637-649, 2001.

1http://www.cs.waikato.ac.nz/ml/weka/

98

Page 109: Representación Topológica de las Características de la

Simple Logistic

Crea un modelo de regresión logística utilizando LogitBoost. Incorpora selección de

atributos a través de funciones convenientes de regresión simple en LogitBoost. Para más

información ver la tesis de master �Logistic Model Trees� (Niels Landwehr, 2003)

LMT Trees

Clasi�cador �Logistic model tree�. Para más información ver la tesis de máster �Logistic

Model Trees� (Niels Landwehr, 2003).

Logistic

Una implementación2 para la construcción de una regresión logística multinomial con

estimador rígido. Para más información ver: le Cessie, S. and van Houwelingen, J.C. (1992).

Ridge Estimators in Logistic Regression. Applied Statistics, Vol. 41, No. 1, pp. 191-201.

Classi�cation via Regretion

Clasi�cación utilizando métodos de regresión. Para más información ver: E. Frank, Y.

Wang, S. Inglis, G. Holmes, and I.H. Witten (1998) �Using model trees for classi�cation�,

Machine Learning, Vol.32, No.1, pp. 63-76.

END

Para más información ver: Ensembles of Balanced Nested Dichotomies for Multi-class

Problems. In: PKDD, 84-95, 2005.

Bagging

Clasi�cador utilizando la técnica bagging. Para más información ver: Leo Breiman (1996).

Bagging predictors. Machine Learning, 24(2):123-140.

2http://weka.sourceforge.net/doc/weka/classifiers/functions/SimpleLogistic.html

99

Page 110: Representación Topológica de las Características de la

FT Trees

Functional trees: que son árboles de clasi�cación que podrían tener funciones de regresión

logística en los nodos internos u hojas. El algoritmo puede tratar variables con targets

binarios o multiclases para atributos numéricos, nominales o incluso atributos faltantes.

Para más información ver: Joao Gama (2004). Functional Trees. Niels Landwehr, Mark Hall,

Eibe Frank (2005). Logistic Model Trees.

LogitBost

Additive logistic regression: Este clasi�cador puede tratar problemas de multiclase. Para

más información ver: Friedman, J., T. Hastie and R. Tibshirani (1998) Additive Logistic

Regression: a Statistical View of Boosting.

RBFNetwork

Implemetación de una red con radio basal (normalizada). Se utiliza el algoritmo de

agrupamiento K-means para proporcionar las funciones de base y aprende una regresión

logística (problemas discretos de clase) o de regresión lineal (problemas numéricos de clase)

en la parte superior. Los datos de cada grupo se ajustan a una Gaussiana Simétrica

multivariante. Si la clase es nominal se utiliza el número determinado de grupos por clase.

Se estandariza todos los atributos numéricos con media cero y varianza unitaria.

NB Trees

Naive Bayes tree : Árbol de decisión con clasi�cador Naive Bayes en las hojas. Para

más información ver: Ron Kohavi (1996). Scaling up the accuracy of naive-Bayes classi�ers:

a decision tree hybrid. Proceedings of the Second International Conference on Knowledge

Discovery and Data Mining.

IB1

Clasi�cador tipo IB1. Utiliza una medida de distancia simple para encontrar la instancia

de entrenamiento más cercana para una instancia de testeo dada y predice la misma clase

100

Page 111: Representación Topológica de las Características de la

que la instancia entrenada. Si son múltiples las instancias con pequeñas distancias al dato

de test, se utiliza el primero encontrado. Para más información ver: Aha, D., and D. Kibler

(1991) �Instance-based learning algorithms�, Machine Learning, vol.6, pp. 37-66.

IBK

Clasi�cador K-vecinos. Para más información ver: Aha, D., and D. Kibler (1991)

�Instance-based learning algorithms�, Machine Learning, vol.6, pp. 37-66.

J48graft Trees

Genera un injerto (podado o no podado) del árbol de decisión C4.5. Para más información

ver: Geo� Webb: Decision Tree Grafting From the All-Tests-But-One Partition. San

Francisco, CA, 1999.

KStar

K∗ Es un clasi�cador basado en instancias. El supuesto subyacente de los clasi�cadores

basados en instancias tales como K∗, IB1, PEBLS, etc., es que casos similares tendrán clases

similares. Para más información de K∗ ver: John, G. Cleary and Leonard, E. Trigg (1995)

�K∗: An Instance- based Learner Using an Entropic Distance Measure�, Proceedings of the

12th International Conference on Machine learning, pp. 108-114.

J48 Trees

Árbol de decisión C4.5 (podado o no podado). Para más información ver: Ross Quinlan

(1993). C4.5: Programs for Machine Learning, Morgan Kaufmann Publishers, San Mateo,

CA.

101

Page 112: Representación Topológica de las Características de la

Bibliografía

[1] 11th International Society for Music Information Retrieval Conference (ISMIR 2010),editor. Are tags better than audio features? The e�ect of join use of tags and audiocontent features for artistic style clustering, 2010.

[2] 11th International Society for Music Information Retrieval Conference (ISMIR 2010),editor. Music emotion recognition: A state of the art review, 2010.

[3] Jayme Garcia Arnal Barbedo and Amauri Lopes. Automatic genre classi�cation ofmusical signals. EURASIP J. Appl. Signal Process., 2007(1):157�157, 2007.

[4] M. Crampes et al. An integrated visual approach for music indexing and dynamicplaylist composition. In Proceedings of the 13th Annual Multimedia Computing andNetworking, 2006.

[5] Alexander Duda, Andreas Nürnberger, and Sebastian Stober. Towards query by singing-humming on audio databases. ISMIR, page 331, 2007.

[6] Andreas Rauber Elias Pampalk and Dieter Merkl. Content-based organization andvisualization of music archives. Proceedings of the 10th ACM International Conferenceon Multimedia, pages 570�579, 2002.

[7] Daniel P. W. Ellis. Classifying music audio with timbral and chroma features abstract.

[8] Arthur Flexer, Dominik Schnitzer, Martin Gasser, and Gerhard Widmer. Playlistgeneration using start and end songs. ISMIR 2008 � Session 2a � MusicRecommendation and Organization, 2008.

[9] W Fucks. Mathematical analysis of formal structure of music. IEEE Transactions onInformation Theory, 8(5):225�228, 1962.

[10] W Fucks and J Lauter. Exaktwissenschaftliche musikanalyse. Westdeutscher Verlag,1965.

[11] F. Maxwell Harper, Shilad Sen, and Dan Frankowski. Supporting social recommenda-tions with activity-balanced clustering. In ACM Conference On Recommender Systems,Minneapolis, MN, USA, 19/10/2007 2007. ACM, ACM.

102

Page 113: Representación Topológica de las Características de la

[12] Xiao Hu and Jingjing Liu. Evaluation of music information retrieval: Towards auser-centered approach. In �The Music Information Retrieval Evaluation eXchange:Some Observations and Insights,� Advances in Music Information Retrieval, Studiesin Computational Intelligence, Proceedings of the 4th Workshop on Human-ComputerInteraction and Information Retrieval (HCIR). Springer, 2010.

[13] P. Kabal and R. P. Ramachandran. The computation of line spectral frequencies usingChebyshev polynomials. IEEE Transactions on Acoustics Speech and Signal Processing,34(6):1419�1426, 1986.

[14] Anssi Klapuri et al. Signal processing methods for music transcription. Springer, 2006.

[15] Teuvo Kohonen. Self-Organizing Maps, volume 30 of Springer Series in InformationSciences , Vol. 30. Springer, 3rd edition, 2001.

[16] Francois Maillet, Douglas Eck, Guillaume Desjardins, Paul Lamere, et al. Steerableplaylist generation by learning song similarity from radio station playlists. 10thInternational Society for Music Information Retrieval Conference (ISMIR 2009), 2009.

[17] J. Makhoul. Linear prediction: A tutorial review. Proceedings of the IEEE, 63(4):561�580, 1975.

[18] Ingo Mierswa and Katharina Morik. Automatic feature extraction for classifying audiodata. Mach. Learn., 58(2-3):127�149, 2005.

[19] Fabian Moerchen, Ingo Mierswa, and Alfred Ultsch. Understandable models of musiccollections based on exhaustive feature generation with temporal statistics. In KDD '06:Proceedings of the 12th ACM SIGKDD international conference on Knowledge discoveryand data mining, pages 882�891, New York, NY, USA, 2006. ACM.

[20] Fabian Moerchen, Alfred Ultsch, Mario Nöcher, and Christian Stamm. Databionicvisualization of music collections according to perceptual distance. Proceedings of the6th International Conference on Music Information Retrieval, pages 396�493, 2005.

[21] Fabian Moerchen, Alfred Ultsch, Michael Thies, Ingo Löhken, Mario Nöcher, ChristianStamm, Niko Efthymion, and Martin Kümmerer. Musicminer: Visualizing timbredistances of music as topographical maps. Technical report, Data Bionics ResearchGroup, Philipps-University Marburg, 35032 Marburg, Germany, May 2005.

[22] Proceedings of 21st NIPS Conference, editor. Automatic Generation of Social Tags forMusic Recommendation, 2007.

[23] Elias Pampalk. Computational Models of Music Similarity and their Application inMusic Information Retrieval. PhD thesis, Vienna University of Technology, Vienna,Austria, March 2006.

103

Page 114: Representación Topológica de las Características de la

[24] Lei Tang Payam Refaeilzadeh and Huan Liu. Cross validation. Encyclopedia of DatabaseSystems, 5, 2009.

[25] L Rabiner and B. H. Juang. Fundamentals of speech recognition. Englewood Cli�s, NJ:Prentice-Hall, 1993.

[26] Andreas Rauber, Elias Pampalk, and Dieter Merkl. Content-based music indexing andorganization. In Proceedings of the 25th annual international ACM SIGIR conferenceon Research and development in information retrieval, SIGIR '02, pages 409�410, NewYork, NY, USA, 2002. ACM.

[27] Sebastian Risi, Alfred Ultsch, and Pascal Lehwark. Visual mining in music collectionswith emergent som. Audio, 1, 1992.

[28] R Stenzel and T Kamps. Improving content-based similarity measures by traininga collaborative model. Proceedings of the 6th International Conference on MusicInformation Retrieval, pages 264�271, 2005.

[29] Sergios Theodoridis and Konstantinos Koutroumbas. Pattern Recognition. Elsevier,2009.

[30] Sergios Theodoridis, Konstantinos Koutroumbas, Aggelos Pikrakis, and DionisisCavouras. Introduction to Pattern Recognition A MATLAB® Approach. Elsevier,2010.

[31] G Tzanetakis and P Cook. Musical genre classi�cation of audio signals. IEEETransactions on Speech and Audio Processing, 10(5):293�302, 2002.

[32] George Tzanetakis and Perry Cook. Marsyas: a framework for audio analysis. Org.Sound, 4(3):169�175, 1999.

[33] George Tzanetakis et al. Interoperability and the marsyas 0.2 runtime. Marsyas, pages0�3, 2008.

[34] George Tzanetakis, Computer Science, Computer Engineering, and Computer ScienceBuilding. Marsyas-0.2: a case study in implementing music information retrievalsystems. Marsyas, 2007.

[35] Alfred Ultsch. Maps for the visualization of high-dimensional data spaces. Technicalreport, DataBionics Reseach Lab, Department of Computer Science - University ofMarburg, D-35032 Marburg, Germany, August 2003.

[36] Alfred Ultsch and Fabian Moerchen. Esom-maps: tools for clustering, visualization,andclassi�cation with emergent som. Technical report, Data Bionics Research Group,University of Marburg, D-35032 Marburg, Germany, March 2005.

[37] Rob van Gulik and Fabio Vignoli. Visual playlist generation on the artist map. ISMIR,2005.

104

Page 115: Representación Topológica de las Características de la

[38] Claus Weihs, Uwe Ligges, Fabian Moerchen, and Daniel Müllensiefen. Classi�cation inmusic research. SpringerLink, 1(3):255�291, December 2007.

[39] Kris West and Stephen Cox. Features and classi�ers for the automatic classi�cation ofmusical audio signals. 5th International Conference on Music Infor- mation Retrieval.,pages 1�6, 2004.

[40] J. Weston, S. Mukherjee, O. Chapelle, M. Pontil, T. Poggio, and V. Vapnik. Featureselection for svms. In Advances in Neural Information Processing Systems 13, pages668�674. MIT Press, 2001.

[41] Changsheng Xu, N. C. Maddage, and Xi Shao. Automatic music classi�cation andsummarization. IEEE Transactions on Speech and Audio Processing, 2005.

[42] C.-H. Hsu y C.-J. Lin. A comparison of methods for multiclass support vector machines.IEEE Transactions on Neural Networks, 2002.

[43] J. Weston y C. Watkins. Multi-class support vector machines. Proceedings of ESAAN,the European Symposium on Arti�cial Neural Networks, 1999.

[44] K Yoshii, M Goto, K Komatani, T Ogata, and HG Okuno. An e�cient hybrid musicrecommender system using an incrementally trainable probabilistic generative model.IEEE, February 2008.

105