escola universitària d`enginyeria tècnica de

Transcripción

escola universitària d`enginyeria tècnica de
ESCOLA UNIVERSITÀRIA D’ENGINYERIA
TÈCNICA DE TELECOMUNICACIÓ LA SALLE
TREBALL FI DE CARRERA
ENGINYERIA TÈCNICA EN SO I IMATGE
ALUMNE
PROFESSOR PONENT
Lidia San Emeterio Arroyo
Francesc Alías Pujol
Clasificación musical personalizada en función del estado de ánimo
ABSTRACTO
Hay una clara y estrecha relación entre la música y los estados de ánimo. Pero en la
misma medida que esta relación parece, a simple vista, tan clara y estrecha, si se analiza
con un mínimo de profundidad se llega rápidamente a la conclusión que los patrones que
rigen esta supuesta claridad están llenos de conceptos altamente subjetivos y relativos.
La subjetividad es uno de los factores que actúa siempre en contra de la automatización
de cualquier tipo de proceso: por fácil que pueda parecer éste al pensar en el algoritmo
que conlleva, esta relativa simplicidad se vuelve compleja a la hora de implementarlo.
Así, partimos de una base en la que conocemos la existencia de diversas maneras de
clasificar la música bajo patrones como el estilo al que pertenecen (tomando en muchos
casos etiquetas que algunos usuarios han decidido como correctas pero que otros
cambiarían) o incluso enormes redes musicales como last.fm que, con los años, se
vuelven cada vez más eficaces a la hora de vincular usuarios a través de sus preferencias
musicales y ofrecerles recomendaciones. En el caso de este trabajo, se desarrolla una
aplicación capaz de vincular al usuario con su propia música, o que ésta se vincule y se
adapte a él, en función de su estado de ánimo. La música transporta a determinados
estados mentales, pasando del sosiego absoluto a la rabia contenida, ya que, algo tan
inocente como notas encadenadas de millones de maneras posibles, es capaz de influir
en el cuerpo humano de muchas formas (tiene efectos sobre latido del corazón, el pulso,
la presión sanguínea, los niveles de dopamina, adrenalina, etc.). Todos estos efectos
tienen una explicación científica que utilizan la musicología, la neurociencia y otros
estudios relativos a los sonidos y la música. A través de este trabajo se intenta
implementar un sistema que consiga vincular a un usuario con su música basándose en
este binomio música-emoción. Se busca una forma de parametrizar la música y
vincularla a los efectos que causa y, así, encontrar el camino inverso para ofrecer una
lista de canciones al usuario que se adapten a sus preferencias, o estado de ánimo, en un
momento determinado.
Clasificación musical personalizada en función del estado de ánimo
ABSTRACT
Obviously, there’s a clear and close relationship between music and moods. But, as clear
and close this relationship may seem at first, taking a deeper approach anyone could
easily come to the conclusion that the patterns that rule this so-called clearness and
closeness are really ruled by highly subjective and relative concepts. Subjectivity is one
of the factors always acting against the automatization of any kind of process: no matter
how easy it may seem to think about the algorithm to make it possible, this relative
simplicity turns into complex when trying to implement it. So, we start from the idea that
we know the existence of several different ways to classify music according to its style
(using in many cases tags that some users have chosen to be accurate and correct but
which some others would change) or even huge musical networks such as last.fm that
are becoming increasingly efficient when it comes to link users according to their musical
preferences or suggest them recommendations. This research develops an application
able to link users with their own music or even that music links and adapts to the user
depending on his or her mood. Music takes the listener to several mental moods that
travel from absolute tranquillity to furious anger because, something as innocent as a
succession of notes connected in millions of different melodies, can affect humans in
many ways (changes heartbeat, pulse, blood pressure, affects the levels of dopamine or
adrenaline, etc.). All of these effects have a scientific explanation used by musicology,
neuroscience and some other studies related to music and sounds. This research tries to
implement a system able to link a user with his or her music based on this musicemotion binomial. It seeks a way of parameterizing music and link it to the effects it
causes and then be able to find the reverse way and offer the user a list of songs that will
better suit his or her preferences, or mood, at a given moment.
Clasificación musical personalizada en función del estado de ánimo
ABSTRACT
Hi ha una clara i estreta relació entre la música i els estats d'ànim. Però en la mateixa
mesura que aquesta relació sembla, a primera vista, tan clara i estreta si s'analitza amb
un mínim de profunditat s'arriba ràpidament a la conclusió que els patrons que regeixen
aquesta suposada claredat estan plens de conceptes altament subjectius i relatius. La
subjectivitat és un dels factors que actua sempre en contra de l'automatització de
qualsevol tipus de procés: per fàcil que pugui semblar aquest al pensar en l'algorisme
que comporta, aquesta relativa simplicitat es torna complexa a l'hora d'implementar-lo.
Així, vam partir d'una base en la qual coneixem l'existència de diverses maneres de
classificar la música sota patrons com l'estil al que pertanyen (prenent en molts casos
etiquetes que alguns usuaris han decidit com correctes però que uns altres canviarien) o
fins i tot enormes xarxes musicals com last.fm que, amb els anys, es tornen cada vegada
més eficaces a l'hora de vincular usuaris a través de les seves preferències musicals i
oferir-los recomanacions. En el cas d'aquest treball, es desenvolupa una aplicació capaç
de vincular a l'usuari amb la seva pròpia música, o que aquesta es vinculi i s'adapti a ell,
en funció del seu estat d'ànim. La música transporta a determinats estats mentals,
passant de l'assossec absolut a la ràbia continguda, ja que, alguna cosa tan innocent com
notes encadenades de milions de maneres possibles, és capaç d'influir en el cos humà de
moltes formes (té efectes sobre batec del cor, el pols, la pressió sanguínia, els nivells de
dopamina, adrenalina, etc.). Tots aquests efectes tenen una explicació científica que
utilitzen la musicologia, la neurociencia i altres estudis relatius als sons i la música. A
través d’aquest treball s’intenta implementar un sistema que sigui capaç de vincular un
usuari amb la seva musica basant-se en aquest binomi música-emoció. Es busca una
forma de parametritzar la música i vincular-la als efectes que causa i, així, trobar el camí
invers i poder oferir una llista de cançons a l'usuari que s'adaptin a les seves
preferències, o estat d'ànim, en un moment determinat.
Clasificación musical personalizada en función del estado de ánimo
RESUMEN
Este trabajo sigue la estela de muchos otros trabajos e investigaciones realizadas en el
espacio determinado por las variables música y emoción. A través de él se justifica la
necesidad de clasificar la información en función de diversos parámetros, siendo en este
caso la música la información que se pretende clasificar. Esta necesidad ha existido a lo
largo de los años pero se ha visto acrecentada con los avances tecnológicos e
informáticos gracias a los que una colección de doscientos CD’s de música reunidos en
una estantería se convierten en veinte gigabytes de un reproductor MP3 que no ocupa
más que unos centímetros (y en el que aún queda espacio para doscientos CD’s más).
Dada la gran cantidad de música de la que dispone un usuario melómano, éste en
muchas ocasiones siente la necesidad de organizar toda esta información bajo criterios
que vayan más allá de los típicos (artista, género, etc.).
Así, en este trabajo se da un paso más allá intentando vincular el estado de ánimo del
oyente y la música. Generalmente, los reproductores de música, ofrecen al usuario
posibilidad de organizar su música utilizando metadatos (etiquetas que hacen referencia
al artista, título, etc.), con sistemas de fingerprinting o watermarking (señales asociadas
de manera única a las melodías y su señal acústica) o utilizando parámetros semánticos
(descripciones de alto nivel entre las que se incluye el estado de ánimo). Éstos últimos
parámetros son los más subjetivos de todos pero también los que un usuario utiliza para
definir, por ejemplo, lo que una determinada canción le transmite.
Sin embargo, son los parámetros acústicos (o también llamados perceptuales) los que
definen con precisión una canción analizando su ritmo, melodía o frecuencia. Aunque un
oyente no sea capaz de definir estos parámetros (y sean máquinas las que los calculen),
inconscientemente, un usuario, en su preferencia musical por una u otra canción o
conjunto de canciones similares (o que le aporten la misma emoción) estará agrupando
canciones que comparten esos parámetros acústicos a los que él no puede asignar un
valor concreto.
En la parte práctica de este trabajo se desarrolla una aplicación web (disponible online en
www.bucleinfinito.es) en la que se tiene en cuenta lo explicado anteriormente para
ofrecer diferentes opciones al usuario. Toda la aplicación se desarrolla utilizando una
base datos de quinientas canciones (CAL500) de las que se dispone tanto de sus
parámetros acústicos (MFCC, Chroma y AFTE) como de una serie de parámetros
semánticos asociados a las mismas; estos últimos hacen referencia a factores como el
género, el estado de ánimo que transmiten o los instrumentos utilizados. Así, el sistema
utiliza tanto los parámetros acústicos como los semánticos en su funcionamiento. Se le
ofrece al usuario la posibilidad de definir su estado de ánimo; ya sea a través de
adjetivos que hagan referencia a éste o seleccionando una canción que defina con
precisión su estado de ánimo. A partir de aquí se analiza la base de datos y se muestra
una selección de canciones acorde con la búsqueda realizada; esta lista puede guardarse
y personalizarse.
Resulta especialmente interesante como el funcionamiento de la web ofrece resultados
satisfactorios en ambos casos de búsqueda a pesar de realizarse a través de métodos de
búsqueda distintos (por parámetros semánticos o por parámetros acústicos). Sin
embargo, es en una búsqueda por parámetros semánticos cuyos resultados se reordenan
en función de los parámetros acústicos de las canciones el caso que los resultados son
mucho más completos que en la utilización independiente de unos u otros parámetros.
Tratándose de un proyecto web realizado utilizando lenguaje PHP junto con una base de
datos MySQL permite la implementación de nuevas opciones que convertirían la web en
una aplicación más dinámica y personalizada; estas opciones quedan planteadas como
líneas de futuro de este trabajo.
1/81
Clasificación musical personalizada en función del estado de ánimo
“Fácil es buscar, fácil no encontrar”
- “Flor De Loto”, Héroes Del Silencio.
2/81
Clasificación musical personalizada en función del estado de ánimo
Índice
RESUMEN ............................................................................................................ 1
ÍNDICE ............................................................................................................... 3
1. INTRODUCCIÓN .............................................................................................. 4
1.1. MARCO ......................................................................................................... 4
1.2. ESTADO DEL ARTE ............................................................................................ 6
1.3. DESCRIPCIÓN DEL PROBLEMA ............................................................................... 7
1.3.1. Organización de la información ................................................................. 7
1.3.2. Búsqueda de la información ..................................................................... 7
1.4. SOLUCIÓN PROPUESTA ....................................................................................... 8
1.5. PERSPECTIVA GENERAL DEL PROYECTO ..................................................................... 8
2. FUNDAMENTOS TEÓRICOS ............................................................................ 10
2.1. SISTEMAS DE BÚSQUEDA DE MÚSICA ..................................................................... 10
2.1.1. Introducción......................................................................................... 10
2.1.2. Metadatos ............................................................................................ 13
2.1.3. Descripciones de bajo nivel .................................................................... 16
2.1.4. Descripciones de alto nivel (semánticas) .................................................. 22
2.1.5. Comparativa ........................................................................................ 23
2.1.6. Problemas asociados ............................................................................. 24
2.2. ASPECTOS PERCEPTUALES Y SUBJETIVOS ................................................................ 25
2.2.1. Sistema auditivo humano....................................................................... 25
2.2.2. Aspectos perceptuales de una melodía..................................................... 29
2.3. ASPECTOS SEMÁNTICOS.................................................................................... 31
2.3.1. Género musical..................................................................................... 31
2.3.2. Estado de ánimo ................................................................................... 32
2.3.3. Ontología y taxonomía........................................................................... 33
2.4. EMOCIONES Y MÚSICA...................................................................................... 39
2.4.1. Introducción......................................................................................... 39
2.4.2. Modelos para estructurar las emociones................................................... 40
2.5. BASE DE DATOS: CAL500 ........................................................................... 45
2.5.1.
2.5.2.
2.5.3.
2.5.4.
Descripción de la base de datos .............................................................. 45
Canciones ............................................................................................ 45
Anotaciones semánticas......................................................................... 46
Parámetros acústicos............................................................................. 49
3. PARTE PRÁCTICA .......................................................................................... 52
3.1. APLICACIÓN WEB ........................................................................................... 52
3.1.1. Estructuración base de la datos MySQL.................................................... 54
3.1.2. Funcionamiento y opciones .................................................................... 60
4. RESULTADOS ................................................................................................ 67
4.1.
4.2.
4.3.
4.4.
4.5.
BUSCADOR ................................................................................................... 67
ENCUESTA (SISTEMA HOWDOYOUFEELTODAY) ........................................................ 67
SIMILAR (POR PARÁMETROS SEMÁNTICOS) .............................................................. 68
SIMILAR (POR PARÁMETROS ACÚSTICOS)................................................................ 69
SIMILAR (POR PARÁMETROS ACÚSTICOS Y SEMÁNTICOS).............................................. 70
5. CONCLUSIONES Y LÍNEAS DE FUTURO .......................................................... 71
6. BIBLIOGRAFÍA.............................................................................................. 74
3/81
Clasificación musical personalizada en función del estado de ánimo
1. Introducción
1.1. Marco
Figura 1. Evolución de los formatos musicales y su almacenamiento
Haciendo un ejercicio de imaginación viajamos en una máquina del tiempo y nos
situamos a mediados del siglo pasado caminando por una calle de cualquier ciudad del
mundo. Nos dirigimos a una tienda de discos a comprar un disco que nos recomendó
hace unos días un buen amigo por carta, llevamos el título apuntado en un papel en la
cartera y esperamos que lo tengan en la tienda. Buscamos entre todos los vinilos pero,
desafortunadamente, no lo encontramos. Preguntamos al dependiente y nos asegura que
lo pedirá a una tienda de Londres y que en unos quince días nos lo enviarán a casa. La
espera se hace larga: tenemos muchas ganas de escucharlo y de ser el primero de todos
nuestros amigos en escuchar esa gran rareza. Diez días después el disco está, por fin, en
casa. Nuestro tocadiscos pasa un mes girándolo y girándolo sin parar. Algunos de
nuestros amigos van a la tienda a pedirlo porque también quieren tenerlo y otros
disfrutan escuchándolo en nuestra casa. ¡Qué pena que el tocadiscos sea tan grande y no
podamos llevarlo en el bolsillo!
Años después nos encontramos echando un vistazo a nuestra colección de vinilos: todos
pulcramente ordenados por riguroso orden alfabético y asignando una balda diferente de
la estantería a cada género cuidadosamente etiquetado con pegatinas. Entre esos cientos
de discos nos topamos con aquel vinilo que nos enviaron de Londres que tantísimas
veces escuchamos años atrás: es una pena que haya acabado tan rayado y sea casi
imposible escucharlo sin que salte. Los buenos recuerdos y los tiempos compartidos con
esa música, que ahora no es más que un cartón con mucho valor sentimental, nos sacan
rápidamente de casa y vamos en coche a la tienda de discos. Vamos escuchando una
casete en la que algunos días atrás grabamos un recopilatorio de rock de producción
propia: uniendo canciones de diversas casetes, vinilos y de la radio apurando los noventa
minutos al máximo. Llegamos a la tienda y allí ahora el espacio está repartido: por un
lado los vinilos y por otro las casetes. Sorprendidos encontramos en este nuevo formato
esa rareza y, por supuesto, nos la llevamos. Volvemos a casa escuchándola en el coche
pensando que lo primero que haremos al llegar será coger casetes vírgenes y grabárselo
a nuestros amigos para que ellos también recuerden los viejos tiempos (y de paso,
mientras se graba, volver a escuchar el disco unas cuantas veces más). Siguiendo la ley
no escrita entre nuestros amigos y nosotros de “y si sobra sitio grábame más cosas”
4/81
Clasificación musical personalizada en función del estado de ánimo
rellenamos toda esa cinta magnética vacía con diversas canciones de la radio. A la
mañana siguiente nos vamos a correr por la playa: ¡que gran invento el walkman!
Estamos a principios de los noventa y nos hemos propuesto conseguir en formato CD
todos esos vinilos y casetes que están muy dañados por el paso del tiempo o,
simplemente, aquellos a los que les hemos tenido siempre algún cariño especial. No nos
resulta demasiado complicado hacernos con la mayoría de ellos. En la tienda de discos la
sección de vinilos es muy pequeña y está casi exclusivamente dedicada a coleccionistas.
La sección de los CD’s ha acaparado casi todo el terreno que antes tenían las casetes
(aunque las casetes vírgenes siguen ofreciendo la gran posibilidad de grabar los CD’s y
escucharlos, por ejemplo, en el coche y, como no, la de unir pistas de diversos de
nuestros CD’s para crear recopilatorios totalmente personalizados). Recientemente nos
hemos comprado un discman y disfrutamos de nuestra música en el autobús. En el
estuche que nos regalaron con él podemos guardar cómodamente, sin el incordio de las
cajas, diez CD’s diferentes: ¡casi diez horas de música!
Pasan los años y empieza el siglo XXI, el temido efecto Y2K no acaba con nuestro
ordenador; disfrutamos del lujo de poder grabar la música en CD a nuestros amigos en
lugar de en casete, desaparece Napster gracias a una polémica legal sin precedentes y
gracias a ella aparecen muchos otros sistemas similares: WinMX, Audiogalaxy, eMule,
etc. Ahora vivimos en una casa alquilada, a kilómetros de la casa en la que aún
conservamos nuestro armario repleto de vinilos, casetes y CD’s cuidadosamente
ordenados. Gracias a los doscientos gigabytes de disco duro de nuestro ordenador hemos
conseguido almacenar en él los MP3 correspondientes a toda esa música que tanto nos
gustaría tener con nosotros. Tenemos decenas de CD’s y DVD’s llenos de archivos de
música: unos con discografías enteras, otros solo con canciones de un único estilo, otros
con etiquetas como “música para estudiar”, “música para el coche” o “canciones de los
80” y un larguísimo etcétera. Enviamos un e-mail a uno de nuestros amigos porque
hemos estado recordando todos los buenos momentos que vivimos en los setenta. Esa
misma noche nos llega un mensaje multimedia al móvil de nuestro amigo con la canción
que más nos gustaba de aquel vinilo que nos enviaron de Londres. Rápidamente la
transferimos a nuestro reproductor MP3 en el que sólo quedan unos pocos megabytes
libres de los ochenta gigabytes disponibles. Y este hecho nos hace reflexionar un
momento; mentalmente sumamos rápidamente la cantidad de archivos de música que
nos rodean: unos cuatrocientos gigabytes, ¡mas de cien días de música!. Sobrepasados
por el pensamiento, meditando sobre si realmente sabemos qué tenemos y qué no
perdido entre tantos unos y ceros; nos echamos las manos a la cabeza abrumados: ¿Es
posible establecer un orden entre tal cantidad de información?
Figura 2. Evolución de los formatos: “...And Justice For All” de Metallica. En este disco está incluida
“One” que es la canción servirá de ejemplo conductor en diversos apartados de este trabajo.
5/81
Clasificación musical personalizada en función del estado de ánimo
1.2. Estado del arte
Como se ha visto en el viaje en el tiempo del apartado anterior (y como queda reflejado
gráficamente en la Figura 1 y Figura 2), en relativamente pocos años, tanto el formato
musical como la manera de almacenarlo han cambiado muy significativamente. Aunque,
probablemente, el cambio más sustancial y con mayor repercusión en todos los sentidos
ha sido la aparición del formato de audio digital más extendido: el MP3. En estos últimos
años han surgido muchos programas y aplicaciones diferentes en los que poder organizar
colecciones de música cada vez más extensas.
Algunas de estas primeras aplicaciones como Windows Media, Yahoo Player o Winamp
estructuran la música por criterios como: artista, género, canción o álbum al que
pertenecen. Todas ellas también permiten la creación de listas (playlist) en las que el
usuario puede añadir canciones en un orden determinado y después guardarlas y
recuperarlas en cualquier momento: el equivalente moderno a esas casetes o CD’s de
compilaciones personales. Pero, conforme los tiempos y las tecnologías avanzan,
paralelamente, los usuarios se tornan más exigentes y las aplicaciones evolucionan
buscando satisfacer estas demandas. Así, aplicaciones como Winamp o iTunes
actualmente permiten otras opciones aparte de las ya mencionadas como, por ejemplo,
la creación de “listas inteligentes” en las que se añaden canciones automáticamente en
función de unos determinados criterios que el usuario puede seleccionar. Pero el usuario
siempre quiere ir más allá.
Por eso, con los años, gracias a la inquietud de muchos creadores y la gran colaboración
de Internet, se han consolidado enormes redes y portales que organizan la música como
allmusic [4] o last.fm [78]. Allmusic constituye una inmensa base de datos en la que es
posible buscar música por artista, canción, álbum, año, estado de ánimo, similitud, etc.
Asimismo permite obtener críticas de los álbumes, biografía de los artistas y una gran
cantidad de información adicional. Last.fm reúne todas las características del anterior y
añade una serie de novedades que son las que la convierten en una de las mayores
redes musicales del momento con más de veintiún millones de usuarios registrados.
Last.fm permite vincular usuarios agrupándolos por su afinidad musical, generar
estadísticas de escuchas, recibir recomendaciones en concordancia con las preferencias
musicales del usuario, escuchar radio online con las recomendaciones sugeridas o en la
que escuchar canciones de un estilo concreto y un largo etcétera al que se añaden todas
esas nuevas opciones que estén siendo desarrolladas en la actualidad y aún no estén
activas.
Así, es fácil darse cuenta que, hoy en día, una persona que esté creando un recopilatorio
llamado “Música Para Estudiar” ya no pasa una tarde entera seleccionando canciones de
casetes e intentando que todas las que quiere quepan en los noventa o máximo ciento
veinte minutos de una casete virgen, tampoco quiere pasar unas horas seleccionando
pistas de su colección de CD’s y grabándolas en un CD en blanco y es probable que
tampoco le apetezca demasiado recorrerse su colección de cientos de gigabytes de
archivos musicales que ni recuerda que tiene buscando canciones que se ajusten a la
temática de su recopilatorio para crear una playlist con ellas. Lo que querría es una
aplicación en la que escribir: “Música Para Estudiar” y que ésta le entendiera, buscara en
su extensa colección de música y organizara el recopilatorio en unos minutos sin que él
tuviera que intervenir para nada. Para conseguir este objetivo tan ambicioso hay que
considerar que existen limitaciones basadas en la subjetividad, la semántica y la ausencia
de criterios deterministas en la música y las emociones humanas que hacen esta tarea
muy difícil de conseguir.
A lo largo de este trabajo se desarrolla una aplicación que intenta ser un primer paso
hacia a esa “perfección” o “mundo ideal” que querría encontrar el usuario actualmente en
una aplicación o reproductor de música.
6/81
Clasificación musical personalizada en función del estado de ánimo
1.3. Descripción del problema
En el desarrollo de una aplicación como la que se lleva a cabo en este trabajo, o en el de
cualquier aplicación capaz de gestionar archivos musicales, se debe dar respuesta
principalmente a dos preguntas: ¿Cómo se organizará la información? ¿Cómo va a
buscarse ésta después?. Ambas respuestas y conceptos están estrechamente
relacionados y, asimismo, en su resolución aparecen una serie de limitaciones.
1.3.1. Organización de la información
De una canción convertida en archivo musical de formato MP3 puede extraerse
información a diferentes niveles. Por un lado, simplemente mediante la escucha, se
pueden extraer aspectos perceptuales de la melodía (ritmo, tempo, armonía, etc.)
muchos de los cuáles pueden obtenerse, o aproximarse, computacionalmente con
herramientas como Matlab a partir del análisis frecuencial de la señal acústica. Por otro
lado hay información que forma parte del mismo archivo MP3 (metadatos) como por
ejemplo las etiquetas ID3 [64] de las que se puede extraer información objetiva de la
canción (artista, título, álbum, año, género, etc.). Así los archivos se organizarán
utilizando todos estos parámetros, tanto los objetivos como los perceptuales.
Además de los parámetros ya descritos, para conseguir la clasificación y organización en
función del estado de ánimo o emoción que transmiten, es necesario asociar a los
archivos de música datos semánticos que hagan referencia a estos dos aspectos. Es aquí
donde se encuentra una de las limitaciones del sistema: una canción puede transmitir
una emoción diferente a dos usuarios distintos y la emoción que esta canción evoca en
ellos será descrita por los dos usuarios utilizando un lenguaje que muchas veces resulta
impreciso. Por otra parte, independientemente de la subjetividad de las emociones y la
imprecisión del lenguaje, las emociones que evoca una canción están relacionadas con
aspectos perceptuales y frecuenciales de las mismas y la manera en que el cerebro
humano los procesa.
Por otro lado, se necesita un conocimiento previo de los archivos musicales. Es necesaria
una base de datos en la que las canciones estén debidamente etiquetadas, analizadas
perceptual y frecuencialmente y anotadas semánticamente haciendo referencia a las
emociones. Esta necesidad surge de la dificultad de anotar automáticamente y el alto
coste computacional que supone procesar los archivos de sonido a tiempo real.
1.3.2. Búsqueda de la información
Una vez organizada la información ya es posible buscar a través de ella y que la
aplicación sea capaz de generar una lista de canciones acorde a los criterios de búsqueda
del usuario o, en este caso, a su estado de ánimo. Sería deseable que el sistema fuera
capaz de interpretar el estado de ánimo del usuario a través de, por ejemplo, un texto,
pero esto entraña una gran dificultad ya que sería necesario una gran red semántica
capaz de interpretar la emoción que encierra un texto. Existen redes semánticas pero
una máquina está limitada a la hora de igualar su manera de procesar la información a la
del cerebro humano, especialmente los factores subjetivos del mismo.
Así, una vez expuesto lo anterior, se concluye que es necesario limitar las opciones de
búsqueda y llegar a un compromiso entre el uso de los aspectos perceptuales y
semánticos asociados a los archivos musicales, tanto a la hora de clasificar como a la de
buscar y mostrar la información al usuario.
7/81
Clasificación musical personalizada en función del estado de ánimo
1.4. Solución propuesta
La solución que se propone en este trabajo se limita a las quinientas canciones que
componen la base de datos CAL500 [38]. En esta base de datos se incluyen los archivos
MP3 de las quinientas canciones así como diferentes parámetros acústicos que modelan
los aspectos perceptuales de las mismas (MFCC dinámicos, MFCC delta, parámetros
Chroma y parámetros AFTE) y anotaciones que las describen semánticamente haciendo
referencia a emoción, estilo, voz, instrumentos y uso (estudiar, en el coche, etc.).
Utilizando una base de datos con un número limitado de archivos de sonido sobre los que
se tiene un conocimiento previo se consigue solventar la problemática que supone
procesar colecciones de música más extensas y, especialmente, colecciones sobre las
que no se tiene ningún conocimiento previo. En el caso de éstas últimas resultaría
necesario procesarlas para obtener los parámetros que ya están extraídos en CAL500. De
la misma manera, utilizando CAL500 no es necesario un sistema de anotación
automática, algo que sería imprescindible en caso de una colección de audio
desconocida.
En este trabajo se desarrolla una aplicación web, utilizando PHP y MySQL, capaz de
ofrecer al usuario diferentes opciones para generar una lista de canciones acorde con su
estado de ánimo en un momento dado. La generación de esta lista supone clasificar y
buscar canciones de la base de datos y mostrarlas en función de unos criterios elegidos
por el usuario. En este proceso intervienen tanto los parámetros acústicos como los
semánticos asociados a cada una de las quinientas canciones (véase Figura 3).
Figura 3. Diagrama de bloques general del sistema.
1.5. Perspectiva general del proyecto
La estructura general del trabajo queda plasmada, a grandes rasgos, en el diagrama de
la Figura 4.
En el apartado 2 se describen los fundamentos teóricos sobre los que se basa la
aplicación comenzando por los sistemas de búsqueda (apartado 2.1) justificando
primeramente la necesidad de la existencia de los mismos así como explicando las
características del formato MP3 (apartado 2.1.1) y seguidamente definiendo descriptores
basados en metadatos (apartado 2.1.2) y descriptores de bajo y alto nivel (apartados
2.1.3 y 2.1.4). Este apartado se cierra con una comparativa entre las distintas
descripciones anteriormente definidas (apartado 2.1.5) seguida de un listado de
limitaciones y problemas asociados a las mismas.
En los apartados 2.2 y 2.3 se describen los diferentes aspectos perceptuales (apartado
2.2.2) y semánticos que se pueden analizar de la música. Describiendo en el primer caso,
a grandes rasgos, cómo funciona el sistema auditivo humano (apartado 2.2.1) y en el
8/81
Clasificación musical personalizada en función del estado de ánimo
segundo cómo se estructura el conocimiento en redes ontológicas como por ejemplo
Wordnet (apartado 2.3.3).
A continuación, se establece una relación entre las emociones y la música (apartado 2.4)
describiendo por un lado diferentes ciencias que toman esta relación como base
(apartado 2.4.1) y por otros diversos modelos estudiados por diferentes autores para
estructurar las emociones (aparado 2.4.2).
El apartado 2 finaliza con la descripción de la base de datos CAL500 utilizada en este
trabajo (apartado 2.5.1). Detallando tanto las canciones (apartado 2.5.2) como los
diferentes parámetros de cada una de ellas que la componen (apartado 2.5.4) y las
anotaciones semánticas (apartado 2.5.3).
El apartado 3 define el sistema práctico implementado (apartado 3.1). En él se explica la
estructuración de la base de datos (apartado 3.1.1) y la funcionalidad de las diferentes
opciones que ofrece la interfaz web (apartado 3.1.2) y su funcionamiento.
Seguidamente, en el apartado 4, se detallan los resultados obtenidos estableciendo una
comparativa entre diferentes pruebas realizadas con el sistema y sus distintas opciones
para, finalmente, sacar conclusiones y definir posibles mejoras en el sistema que
quedarán propuestas como líneas futuras de investigación en el apartado 5.
Figura 4. Estructura general del trabajo
9/81
Clasificación musical personalizada en función del estado de ánimo
2. Fundamentos teóricos
2.1. Sistemas de búsqueda de música
2.1.1. Introducción
Formato MP3
Ha pasado mucho tiempo, y muchas evoluciones tecnológicas, desde que en Julio de
1994 la sociedad alemana de investigación Fraunhofer [52] desarrollara l3enc [75] (el
primer software que codificaba archivos WAV en formato MP3) y desde que, un año más
tarde, apareciese Winplay3 [122] (el primer software reproductor de este formato). Es
muy probable que entonces nadie hubiera creído la gran revolución que, para bien y/o
para mal, este nuevo formato iba a suponer en un futuro que no estaba tan lejos. A
finales de los noventa, y principios del nuevo siglo, surgen aplicaciones como Winamp o
Yahoo Player, orientadas a organizar las colecciones de MP3 cada vez más extensas.
Éstas estaban limitadas entonces al tamaño de los discos duros (que no llegaban, en el
mejor de los casos, a la decena de gigabytes). En este aspecto, el MP3 introduce una
gran ventaja respecto al WAV: un minuto de música en calidad CD en formato WAV
ocupa unos diez megabytes frente al megabyte que ocupa en MP3 (en general un archivo
MP3 codificado a 128 kbits/s ocupa la décima parte de lo que ocuparía en WAV). Así,
gracias a esto, las redes peer-to-peer (P2P) en las que los usuarios pueden transferir y
compartir sus ficheros se hacen cada vez más populares. Entre estas redes merece
especial mención la primera de ellas: Napster. Poder convertir pistas de CD en formato
MP3 con una calidad, esencialmente, idéntica a la del CD promueve la copia de discos de
forma ilegal y, asimismo, las redes P2P permiten la distribución de éstos con la misma
ilegalidad. Napster acabó cerrando por este motivo aunque, sin pasar mucho tiempo,
surgieron muchas otras redes con la misma funcionalidad. Actualmente, dejando de lado
términos legales, es virtualmente imposible detener esta nueva manera de entender,
distribuir y obtener música.
La popular extensión .mp3 (en su origen la extensión se llamó .bit) es, realmente, el
nombre común con el que se hace referencia a la capa 3 del estándar MPEG-1 Audio
(MPEG-1 Audio Layer 3). Un archivo MP3 está formado por una cabecera de 32 bits
(header) seguida de los datos (data), ocupando estos últimos un número variable de
bits. Los 32 bits (8 bytes) de la cabecera ofrecen información sobre las características del
archivo (véase la Figura 5).
Figura 5. Diagrama de la estructura de un archivo MP3.
10/81
Clasificación musical personalizada en función del estado de ánimo
Como ya se ha introducido anteriormente en este mismo apartado, la aparición y
extensión del formato MP3, hasta convertirse en estándar de facto para transferir y
reproducir música en reproductores de música digital, entraña una serie de aspectos
tanto positivos como negativos. En este sentido, son sus mismas características las que
hacen que, dependiendo la perspectiva desde la que se miren, se conviertan en ventajas
o en inconvenientes.
El formato MP3 supone una gran ventaja para nuevos músicos de dar a conocer su
trabajo a través de Internet, redes como MySpace [98] o last.fm ofrecen esta posibilidad
gratuitamente. Asimismo, un usuario puede conocer música que, probablemente, jamás
hubiera llegado a conocer si aún siguieran vigentes los vinilos. Por ejemplo, un grupo de
amigos que tienen una banda, y han grabado algunas de sus canciones con sus propios
medios, pueden subirlas a su MySpace ofreciendo la posibilidad de que los usuarios
puedan descargárselas (aunque sea en baja calidad) y así, tal vez, conseguir que alguien
se interese por ellos y los invite a tocar en su local. Un grupo como Artic Monkeys, entre
otros, se hizo popular a través de esta vía.
Otra ventaja del MP3 es la facilidad que ofrece para transportarlo: una persona que
quiere llevarse veinte CD’s (o más) consigo sólo necesita convertirlos a formato MP3 y
podrá almacenarlos en su ordenador, reproductor de música o teléfono móvil fácilmente.
El problema surge cuando estos archivos no han sido obtenidos de la colección de CD’s
legalmente adquiridos del usuario sino de redes P2P y esto, técnicamente, supone un
delito de piratería. Pero, actualmente, el mundo acepta esto como el común y habitual
procedimiento de escuchar música: descargar un CD que acaba de salir al mercado el día
anterior (o que ni siquiera está aún disponible), almacenarlo, seguir distribuyéndolo y, si
realmente merece la pena, comprarlo legalmente. Existe mucha controversia respecto a
todo lo que rodea estas nuevas vías de conocer, descubrir y escuchar música; muchas
discográficas desarrollan nuevos canales de distribución y estrategias de marketing para
luchar con ello. Existen estudios que demuestran que la venta de discos no se ha
reducido tanto como las discográficas hacen creer pero que la cantidad de conciertos y
afluencia a los mismos ha incrementado notablemente: bandas que antes nunca hubieran
podido darse a conocer sin el apoyo de Internet (y los MP3) ahora pueden salir de gira y
colgar el cartel de sold-out cuando, hace veinte años, tal vez sólo hubieran acudido diez
personas a un único concierto que hicieran en su barrio.
Necesidad de organizar la información
Desde los primeros años de popularidad del formato MP3, surgió la necesidad de, por un
lado, implementar programas capaces de reproducirlos y, por otro, idear sistemas para
que estos archivos pudieran organizarse. Surgen así en 1996 las etiquetas y su estándar
de facto ID3 (que se explica en profundidad en el siguiente apartado de este trabajo).
Las etiquetas añaden bits al archivo de audio (metadatos) que dan información sobre el
artista, la canción, etc. De esta forma las listas de reproducción se pueden organizar en
función de cualquiera de esas informaciones que proporcionan las etiquetas. Aún así, si
los MP3 no incluyen estas etiquetas, es el usuario quien tiene que tomarse su tiempo en
etiquetarlas, sino, serán archivos virtualmente imposibles de ordenar; más aún si ni
siquiera los nombres de los archivos están organizados con algún tipo de criterio. Las
figuras 6, 7 y 8 muestran un ejemplo de esto.
Actualmente, un usuario común dispone de un mínimo de cien gigabytes almacenados
indistintamente en su ordenador, reproductor MP3 o teléfono móvil. Cien gigabytes,
considerando que un disco en formato MP3 ocupe unos cien megabytes y dure una hora,
suponen más de cincuenta días de música y, suponiendo que un disco tenga, de media,
doce canciones, esto se traduce en unos doce mil archivos MP3. Obviamente, imaginar
estos doce mil archivos sin etiquetar añadidos a la biblioteca de un reproductor de
archivos multimedia, como iTunes, es la materialización del caos. Por lo tanto, si un
usuario no es ordenado a la hora de etiquetar el material que pueda, eventualmente,
11/81
Clasificación musical personalizada en función del estado de ánimo
estar sin etiquetar, las posibilidades que ofrezca su reproductor de organizar los archivos
por artista, género o álbum (entre muchos otros) serán completamente inútiles.
Figura 6. Archivo en el explorador de Windows.
Figura 7. Archivo en iTunes sin etiquetar.
Figura 8. Archivo en iTunes etiquetado.
Sistemas de búsqueda
Uno de los problemas que tenemos en el caso de la música es que disponemos de una
base de datos de canciones en la que tenemos una gran cantidad de información que
organizar y, obviamente, esta información debe estructurarse de manera que pueda
buscarse eficientemente. Así, resulta necesario utilizar un sistema para “etiquetar”
adecuadamente la información y estructurarla para que después pueda ser buscada en
función de una serie de criterios definidos por el usuario. En el caso de la música, estos
podrían ser los clásicos: grupo, canción, álbum, género, etc., u otros criterios más
concretos como: instrumentos, emoción que transmiten, en qué situaciones el usuario
preferiría escucharlas, etc. Estos últimos criterios más específicos son los que
establecerán la diferencia del sistema desarrollado en este trabajo con los sistemas
habituales y, al mismo tiempo, introducen un concepto diferente de búsqueda para el
usuario, pudiendo éste organizar sus archivos musicales de forma más personal o acorde
a un momento o estado de ánimo determinado. Un usuario es probable que encuentre
mucho más interesante un sistema de búsqueda que tenga en cuenta estos factores
subjetivos. A la hora de estructurar la información, tan importante es el hecho de tener
la base de datos musical etiquetada o anotada, como disponer de un mecanismo capaz
de estructurar todas las posibles maneras en las que un usuario puede buscar algo.
Así, al establecer un sistema de búsqueda basado en el audio (audio content based
search) existen diferentes opciones. En el apartado siguiente se enumeran las
características fundamentales de tres de ellas:
•
Búsqueda basada en la utilización de metadatos. Éstos son “datos que hablan sobre
los datos”, que aportan información sobre los mismos datos en los que,
generalmente, están integrados. En el caso de la música un ejemplo de metadatos
son las etiquetas (tags).
•
Búsqueda basada en definiciones de bajo nivel. Entre las técnicas de definición de
bajo nivel se destaca, por un lado, la marca de agua digital (watermarking) que
consiste en integrar en el audio un mensaje que, por lo general, aporta información
sobre la propiedad intelectual o algún tipo de aspecto legal; y por otro, la huella
digital (fingerprinting) que refuerza la información que se puede extraer de las
marcas de agua añadiendo otros datos relevantes a la hora de identificar una canción
(aparte de los referentes únicamente al copyright).
•
Búsqueda basada en definiciones de alto nivel, también llamadas definiciones
semánticas. El objetivo es conseguir un sistema de búsqueda que se base en estas
definiciones porque es así como los usuarios prefieren buscar la información. Para el
12/81
Clasificación musical personalizada en función del estado de ánimo
caso de una base de datos musical este método de búsqueda es el más adecuado y
agradable para el usuario (user-friendly) ya que supone un criterio fácil de
personalizar y adaptarse a las necesidades o preferencias del usuario. Las
definiciones semánticas van más allá de la simple búsqueda o clasificación a través de
los criterios habituales (artista, álbum, canción, etc.).
Aparte de los métodos ya especificados existen más sistemas de búsqueda musical
incluso muchos sistemas estrafalarios de dudosa funcionalidad. Por ejemplo, entre estos
últimos, destaca SongTapper [54] y MelodyHound [111] que establece un sistema de
búsqueda de música mediante el “tarareo” de una canción a través de los clicks de la
barra espaciadora o diversos sistemas de “Query By Humming” (búsqueda por tarareo)
[108][69][88].
2.1.2. Metadatos
El prefijo meta (del griego µετα, “junto a", "después de", "entre" o "con") combinado con
datos (del latin datum, “lo que se da”) forma la palabra metadatos que, literalmente,
significa “datos sobre datos”. Volviendo al viaje en el tiempo de la introducción de este
trabajo, las pegatinas utilizadas para indicar en que género se ubicaba en cada una de
las baldas los discos de vinilo serían el equivalente a los metadatos. Así, de la misma
manera que las pegatinas, los metadatos facilitan la organización y la gestión de los
datos. El contenido o información que aportan varía, obviamente, en función de los datos
a los que están asociados. En el caso de archivos musicales, los metadatos proporcionan
información sobre artista, título de la canción, álbum o género al que pertenecen (entre
otros) y su estándar de facto para incluirlos en los archivos MP3 son las etiquetas (tags)
ID3.
Los reproductores de música interpretan esta información de los MP3 y la utilizan para
organizar visualmente los archivos y, así, ofrecerle al usuario la posibilidad de
organizarlos y facilitar en gran medida su búsqueda ya que es posible que el nombre del
archivo no aporte ninguna información que permita localizarlo (véanse las figuras 5, 6 y
7). Por ejemplo, la canción que sirve de ejemplo conductor en ese trabajo, extraída del
CD y convertida a MP3 (proceso comúnmente conocido como “ripear”) con un software
que no identifica los archivos al extraerlos ni les añade etiquetas, aparecería en el
reproductor como “Pista04.mp3” nombre mediante el que es imposible saber que se trata
de la canción “One”. Los reproductores de música, además, permiten añadir, o modificar,
las etiquetas de los archivos. Esta facilidad supone una de las ventajas de los metadatos
y, al mismo tiempo, un inconveniente: un usuario es libre de asignar incorrectamente
metadatos a un archivo y que, además, estos sean diferentes a los que asignaría otro
usuario.
Etiquetas ID3
ID3 es la abreviatura de “IDentify an MP3”. La primera versión de las etiquetas ID3
(ID3v1) aparece en 1996 gracias a Eric Kemp. Esta primera versión ocupaba ciento
veintiocho bytes que se situaban al final del archivo para evitar incompatibilidades con
programas que no pudieran leer éstas etiquetas si estuvieran situadas al principio del
archivo. ID3v1 incluía treinta bytes para los campos de: título, artista, álbum y
comentarios; cuatro bytes para el año y un byte para identificar el género (que se elegía
de una lista predefinida de ochenta extendida más tarde a ciento veintiséis como se ve
en la Figura 9 y la Figura 10). Sumando los bytes mencionados resulta ciento veinticinco
ya que los otros tres bytes corresponden a la palabra TAG. Un año más tarde, en 1997,
Michael Mutschler introduce ID3v1.1. utilizando dos bytes del campo de comentarios para
incluir el número de pista del álbum original al que ese archivo pertenece. Michael
Mutschler también es el creador de MP3ext [89] (una extensión que permite consultar y
modificar las etiquetas desde el explorador de Windows). Se puede apreciar una
comparativa de las diferentes versiones de ID3 en la Figura 11.
13/81
Clasificación musical personalizada en función del estado de ánimo
0
'Blues'
20 'Alternative'
40 'AlternRock'
1
'Classic Rock'
21 'Ska'
41 'Bass'
60 'Top 40'
61 'Christian Rap'
2
'Country'
22 'Death Metal'
42 'Soul'
62 'Pop/Funk'
3
'Dance'
23 'Pranks'
43 'Punk'
63 'Jungle'
4
'Disco'
24 'Soundtrack'
44 'Space'
64 'Native American'
5
'Funk'
25 'Euro-Techno'
45 'Meditative'
65 'Cabaret'
6
'Grunge'
26 'Ambient'
46 'Instrumental Pop'
66 'New Wave'
7
'Hip-Hop'
27 'Trip-Hop'
47 'Instrumental Rock'
67 'Psychadelic'
8
'Jazz'
28 'Vocal'
48 'Ethnic'
68 'Rave'
9
'Metal'
29 'Jazz+Funk'
49 'Gothic'
69 'Showtunes'
10 'New Age'
30 'Fusion'
50 'Darkwave'
70 'Trailer'
11 'Oldies'
31 'Trance'
51 'Techno-Industrial'
71 'Lo-Fi'
12 'Other'
32 'Classical'
52 'Electronic'
72 'Tribal'
13 'Pop'
33 'Instrumental'
53 'Pop-Folk'
73 'Acid Punk'
14 'R&B'
34 'Acid'
54 'Eurodance'
74 'Acid Jazz'
15 'Rap'
35 'House'
55 'Dream'
75 'Polka'
16 'Reggae'
36 'Game'
56 'Southern Rock'
76 'Retro'
17 'Rock'
37 'Sound Clip'
57 'Comedy'
77 'Musical'
18 'Techno'
38 'Gospel'
58 'Cult'
78 'Rock & Roll'
19 'Industrial'
39 'Noise'
59 'Gangsta'
79 'Hard Rock'
Figura 9. Géneros de ID3v1.
80 'Folk'
92
'Progressive Rock'
104 'Chamber Music'
116 'Ballad'
81 'Folk-Rock'
93
'Psychedelic Rock'
105 'Sonata'
117 'Power Ballad'
118 'Rhythmic Soul'
82 'National Folk'
94
'Symphonic Rock'
106 'Symphony'
83 'Swing'
95
'Slow Rock'
107 'Booty Brass'
119 'Freestyle'
84 'Fast Fusion'
96
'Big Band'
108 'Primus'
120 'Duet'
85 'Bebob'
97
'Chorus'
109 'Porn Groove'
121 'Punk Rock'
86 'Latin'
98
'Easy Listening'
110 'Satire'
122 'Drum Solo'
87 'Revival'
99
'Acoustic'
88 'Celtic'
100 'Humour'
89 'Bluegrass'
90 'Avantgarde'
91 'Gothic Rock'
111 'Slow Jam'
123 'A Capela'
112 'Club'
124 'Euro-House'
101 'Speech'
113 'Tango'
125 'Dance Hall'
102 'Chanson'
114 'Samba'
103 'Opera'
115 'Folklore'
Figura 10. Géneros que añade WinAmp.
Teniendo en cuenta que un byte equivale a un carácter, la información que permitía cada
uno de los campos de ID3v1 era bastante reducida quedando ésta en muchos casos
truncada por superar los treinta caracteres. Así, en 1998, Martín Nilsson y su equipo de
id3.org desarrollan la segunda versión de ID3 (ID3v2). Esta nueva versión es más
flexible que la anterior permitiendo etiquetas de longitud variable y añadiendo en una
etiqueta diferentes campos (frames) en los que, virtualmente, hay capacidad para
cualquier tipo de información ya que los frames están limitados a un máximo de 16
megabytes y las etiquetas a 256 megabytes. Además, se pueden definir nuevas frames si
fuera necesario para una determinada aplicación. La diferente información que pueden
contener estas etiquetas en sus distintos frames incluye título, álbum, intérprete, letras,
ajustes de ecualización y volumen, portada del disco (u otras imágenes), links, beats por
minuto (BPM) y un largo etcétera. Incluso pueden vincularse a bases de datos de
información de CD’s de Internet como CDDB [14] o freeDB [53] o a tiendas como
Amazon [5] o Discogs [33] para obtener la información que añadir a las etiquetas como,
por ejemplo, la portada del disco. Existen programas como Mp3tag [90] que facilitan esta
tarea.
14/81
Clasificación musical personalizada en función del estado de ánimo
Las tres versiones hasta el momento de ID3v2 (ID3v2.2, ID3v2.3 y ID3v2.4) difieren
entre ellas especial, e imperceptiblemente en la mayoría de los casos para un usuario
común, en lo que se refiere a caracteres o formato que pueden tener los distintos
frames. La versión más extendida es ID3v2.2.
Se puede obtener un listado completo de todas las frames posibles en [50].
Figura 11. Comparativa ID3.
En la Figura 12 se aprecia la ventana de Mp3tag en la que se añade la etiqueta
correspondiente a la canción; habiendo sido obtenida gracias a que el programa se
conecta a Discogs y obtiene de esta página la información (que el usuario puede validar o
modificar). Así, al abrir después este archivo en un reproductor de música digital, como
iTunes, y analizar sus propiedades, aparecen las cuatro pestañas que se detallan en la
Figura 13. Entre éstas cabe destacar un contador de reproducción o la puntuación que un
usuario puede dar a la canción. Estas dos opciones, entre otras, son las que iTunes
puede utilizar más tarde para crear listas inteligentes buscando bajo los criterios, por
ejemplo, de “más escuchadas” o “mejor puntuadas”. De la misma forma se podrían
añadir comentarios que hicieran referencia al estado de ánimo y buscar en función de
éstos. Aunque, en lo que incumbe a este trabajo, esta última opción no se contempla ya
que las canciones están anotadas y etiquetadas en función de otros descriptores que se
detallan más adelante. Por este motivo, añadir estas mismas anotaciones como
metadatos sería una tediosa e innecesaria labor.
Figura 12. Etiquetas añadidas desde Discogs con Mp3tag.
15/81
Clasificación musical personalizada en función del estado de ánimo
Figura 13. Información sobre la canción en iTunes.
2.1.3. Descripciones de bajo nivel
Las descripciones de bajo nivel describen los componentes individuales que forman un
determinado sistema o información. Por ejemplo, en programación, el lenguaje
ensamblador es un lenguaje de bajo nivel ya que la abstracción entre éste y el hardware
es mínima. Así, un lenguaje de bajo nivel es más fácil de entender por una máquina
pero, al mismo tiempo, más complicado para un programador de utilizar. En otras
palabras, un lenguaje de bajo nivel, aunque igual de efectivo, dista bastante del lenguaje
natural. Buscando un ejemplo más simple: un chirrido podría ser definido como “un
sonido desquiciante” o como “un sonido con frecuencias muy elevadas”; siendo esta
última definición una definición de bajo nivel.
En el caso del audio y la música, una descripción de bajo nivel hace referencia a los
aspectos acústicos y perceptuales de la melodía que están directamente relacionados con
las características internas de la señal de audio especialmente aspectos extraídos de su
análisis frecuencial: picos de frecuencia o energía de cada banda, forma del espectro,
análisis del timbre, presencia de harmónicos, etc. Estas características se extraen, por lo
general, tras procesar las señales y someterlas a análisis (temporal y/o frecuencial). Son
características que los humanos no pueden inferir o extraer directamente de una canción
pero que para un procesador o software determinado (por ejemplo Matlab) suponen,
simplemente, una serie de órdenes computacionales que ejecutar.
MPEG-7 es un estándar para describir contenido multimedia, también se conoce como
Interficie de Descripción de Contenido Multimedia (Multimedia Content Description
Interface). Los descriptores de MPEG-7 están asociados con el contenido que representan
16/81
Clasificación musical personalizada en función del estado de ánimo
y lo describen directamente, permitiendo así una búsqueda e identificación de los
contenidos eficiente. Como ya se ha explicado anteriormente este método de describir la
información se corresponde directamente con los descriptores de bajo nivel. La parte
cuarta del estándar MPEG-7 está dedicada al audio y en ella se definen una serie de
descriptores de bajo nivel que informan sobre las características de la señal de audio.
Concretamente se definen diecisiete como aparecen detallados en la Figura 14. Existen
diversos sistemas, aplicaciones y estudios basados en los descriptores de MPEG-7
[93][55][91][92].
AudioWaveformType
AudioPowerType
Descriptores básicos. Ofrecen un valor mínimo y máximo de la
amplitud de la señal de audio. El primero permite la visualización de la
forma de onda y el segundo define la potencia de las muestras de la
señal de audio.
AudioSpectrumEnvelopeType
AudioSpectrumCentroidType
AudioSpectrumSpreadType
AudioSpectrumFlatnessType
Descriptores básicos del espectro. Describen el contenido espectral
de la señal con cuatro parámetros que representan: la envolvente
(envelope), la presencia de más altas o bajas frecuencias (centroid), la
forma de la energía del espectro (spread) y lo plano que es en cada una
de las bandas (flatness).
AudioSpectrumBasisType
AudioSpectrumProjectionType
Descriptores del espectro base. Describen
proyectar el sonido en un espacio tridimensional.
AudioFundamentalFrequencyType
AudioHarmonicityType
Descriptores de parámetros básicos de la señal. Informan sobre la
frecuencia fundamental y sus harmónicos.
LogAttackTimeType
TemporalCentroidType
Descriptores de timbre temporal.
SpectralCentroidType
HarmonicSpectralCentroidType
HarmonicSpectralDeviationType
HarmonicSpectralSpreadType
HarmonicSpectralVariationType
Descriptores de timbre espectral. Se complementan con los
descriptores básicos y añaden más información a los descriptores de
parámetros básicos de la señal
parámetros
para
Figura 14. Descriptores de audio de bajo nivel de MPEG-7.
Hash
El término "función hash" hace referencia a un proceso, o función matemática, que
convierte una determinada secuencia binaria de longitud M en otra secuencia binaria de
longitud N dónde esta última es la que se conoce como hash. El objetivo del hash, entre
otros, es compactar la información ya que la longitud de N es menor que la de M. Un
hash es capaz de identificar un archivo, un documento o, en general, cualquier tipo de
información. Estas funciones se utilizan especialmente en el campo de la criptografía
(ciencia que estudia el cifrado y descifrado de la información así como la forma de que
ésta se interpreta tanto en el emisor como en el receptor). Su utilización en el campo de
las aplicaciones multimedia está limitada por una de sus principales características: un
cambio de un único bit en la secuencia de origen da como resultado un hash totalmente
diferente. Así, por ejemplo, de una misma canción con diferente velocidad de bits (o
diferente volumen) se extraerían hash distintos.
En el mundo del audio, y especialmente en las redes de distribución P2P, una de las
funciones hash más utilizadas es MD5. Se comprueba la suma MD5 (md5sum) del
archivo descargado con la del archivo original para evitar posibles virus o incluso
descargas defectuosas o incompletas. Visto así, MD5 podría utilizarse también para
comprobar si un MP3 coincide con otro de una base de datos dada. Sin embargo, como
se ha explicado anteriormente, cualquier cambio en el volumen, o incluso la compresión,
no permitiría reconocer la coincidencia en el caso de darse. Los archivos deberían ser
idénticos en todos los aspectos. Para aplicar funciones hash al audio diversos autores
[67] han desarrollado algoritmos hash más robustos capaces de identificar como iguales
versiones de una misma canción extraídas de un CD y en formato MP3, aunque no hasta
llegar al punto de identificar esa misma canción en una versión interpretada en directo o
por otro autor (cover). Sería necesario que los hash utilizados en audio incorporaran
información perceptual de la canción para solventar este problema, pero, teniendo en
cuenta que las funciones hash utilizan únicamente los bits que forman el archivo MP3 y
17/81
Clasificación musical personalizada en función del estado de ánimo
que no es viable extraer aspectos perceptuales de éstos, es preciso recurrir a otros
métodos.
Marca de agua digital (watermarking)
El término marca de agua (watermark) originalmente hace referencia a una imagen en
papel, formada por diferentes espesores en el mismo, que se hace visible, por ejemplo,
al mirarse éste al trasluz (como la imagen que aparece en los billetes). Es útil para
demostrar la autenticidad de un papel o, en el caso de los billetes, diferenciar uno falso
de uno real. Por extensión, este término actualmente también se utiliza en el campo de
la tecnología para incluir en imágenes, vídeos o audio información sobre el copyright; en
este campo esto se conoce como marca de agua digital (digital watermark). Las marcas
de agua digitales son datos que están directamente incrustados en el contenido; son
imperceptibles para los humanos pero las máquinas los pueden interpretar.
Así como en el apartado anterior se vinculaba el hashing con la criptografía, el
watermarking está relacionado con la esteganografía. La esteganografía es la ciencia de
escribir mensajes ocultos de forma que solo pueden ser interpretados por quién lo envía
(en el caso de un archivo de audio el copyright de la discográfica, por ejemplo) y el
receptor a quien va dirigido (por ejemplo la misma discográfica en busca de copias
ilegales de sus archivos en redes P2P). Un usuario no puede diferenciar si un MP3 ha sido
comprado legalmente en una tienda de música digital o si éste ha sido ilegalmente
distribuido, sin embargo, una discográfica o empresa dedicada a insertar (y leer) marcas
de agua digitales [32], disponiendo del software adecuado, puede diferenciarlo y
establecer responsabilidades legales sobre estas copias.
En el caso del audio, con la marca de agua (watermarking), lo que se hace es incorporar
información de forma imperceptible en el propio audio, constituyendo así un mensaje
oculto que no se escucha ni necesita espacio extra para almacenarse. Como ya se ha
explicado, esta marca, puede leerse con un software (o hardware) preparado para este
fin. Generalmente se utiliza esta técnica para incluir informaciones de copyright (y
distinguir las copias del original) dado que las marcas de agua no pueden ser modificadas
o eliminadas por el usuario (como ocurre con los tags); solo pueden ser modificadas o
eliminadas por personas autorizadas. Así, las aplicaciones destinadas a analizar posibles
delitos de copyright buscan la presencia de esta marca antes de continuar utilizando un
determinado archivo (véase Figura 15).
Figura 15. Proceso general de detección de marcas de agua.
En audio, la marca de agua tiene las siguientes características:
•
Es (generalmente) inaudible; basándose en las características del sistema auditivo
para conseguir que no sea percibida.
•
Debe ser robusta ante procesos de codificación, transmisión, conversiones analógicodigital (AD) o digital-analógico (DA) y compresión (todos ellos eventos que aparecen
como “posibles distorsiones del canal” en la Figura 16). Además, sólo debe poder
detectarse y modificarse por personas autorizadas.
•
Es preciso que las marcas sean resistentes a ataques intencionados tales como
intentos de eliminarlas o modificarlas.
18/81
Clasificación musical personalizada en función del estado de ánimo
•
Un sistema de watermarking puede ser simétrico o asimétrico. En el primer caso las
claves (keys) utilizadas para la inserción y la detección son iguales. En el segundo
caso, el utilizado para aplicaciones públicas, estas claves son distintas.
Figura 16. Esquema general del watermarking.
Huella digital (fingerprinting)
El término más extendido de huella o huella digital (fingerprint) hace referencia a la
marca que deja la yema del dedo en un objeto al tocarlo, o la que se obtiene
impregnándola previamente en una materia colorante. Ésta es una característica única de
cada individuo y permite identificarlo inequívocamente ya que no existen dos huellas
dactilares exactamente iguales. De la misma manera, la huella genética o perfil de ADN,
es una técnica que permite diferenciar individuos a través de su ADN. Por extensión, la
huella acústica (acoustic fingerprint), hace referencia a un código único que identifica una
pieza de audio, éste se extrae directamente de la misma señal de audio y, por tanto, de
sus características acústicas. Así, el fingerprint está directamente relacionado con el
audio ya que se deriva de los aspectos perceptualmente relevantes del mismo.
El fingerprint surge como respuesta a la necesidad de representar una señal de audio de
forma que ésta ocupe menos que el archivo original pero que conserve la información
suficiente para distinguirla de otra señal diferente o identificarla con una que es idéntica.
Así, tal y como se aprecia en la Figura 17, dada una colección de música se extrae de
todos los archivos los diferentes fingerprint (con la posibilidad de asociar éstos a
metadatos relacionados con el archivo: artista, título, etc.) y se almacenan en un base de
datos. Este primer proceso consolida la base de datos necesaria para llevar a cabo el
siguiente: dada una canción sin identificar, se extrae su fingerprint, se compara con
todos los fingerprint almacenados en la base de datos y, si esta coincidencia existe, se
asocian a ella los metadatos correspondientes. Así, teniendo una gran base de datos,
aplicaciones como MagicMP3Tagger [81], ofrecen la posibilidad de añadir los metadatos
adecuados automáticamente a extensas colecciones de música sin etiquetar.
Figura 17. Esquema general de fingerprinting para identificación de audio (I).
La técnica del fingerprinting tienen diversas aplicaciones en el mundo del audio. Por un
lado permite la monitorización de contenido, esto es útil para aplicaciones que estén
relacionadas con la difusión en directo (broadcast). Por ejemplo, en un programa de
radio, donde las canciones que suenan en una determinada franja horaria pertenezcan
todas a una gran base de datos conocida. Si se extrae el fingerprint de la que está
sonando y se compara con el de las demás en la base de datos, se podría generar una
lista de reproducción donde se anotaría automáticamente la secuencia de canciones.
Asimismo, comparando un fingerprint de una canción con el de la misma canción en la
19/81
Clasificación musical personalizada en función del estado de ánimo
base de datos se puede analizar la integridad de la misma (véase ); esto es útil en redes
P2P e incluso en luchas contra la piratería (especialmente si se utiliza combinado con
técnicas de watermarking). Pero la aplicación del fingerprinting que resulta más
interesante para este trabajo es la de identificación y búsqueda basada en el contenido
(CBID: Content Based Identification) [106]: gracias al fingerprinting es posible vincular
un archivo de audio con los metadatos correspondientes sin importar el formato o
degradaciones que pueda tener el mismo.
Figura 18. Esquema de fingerprinting para verificar la integridad de un archivo.
Cualquier sistema de fingerprinting [6][1][68][94][95][97][104][106][121] atiende a
diferentes parámetros:
•
Robustez: Debe ser un sistema robusto, esto es, ser capaz de identificar una pieza de
audio a pesar de las posibles distorsiones que pueda sufrir la misma. Así, las
características perceptuales que se extraen deben ser invariantes ante estas
eventualidades (compresiones al cambiar de formato, cambios en la calidad,
conversiones AD/DA, transmisiones radiofónicas o incluso versiones en directo de las
canciones).
•
Fiabilidad: Es necesario que las canciones se identifiquen de forma correcta.
•
Tamaño de los fingerprint: Los fingerprint se almacenarán en una base de datos cuyo
tamaño está limitado a la memoria de un ordenador. El tamaño de los fingerprint
debe ajustarse a este hecho.
•
Granularidad: Define la capacidad para identificar una canción a partir de pequeños
fragmentos de ésta.
•
Velocidad de búsqueda y escalabilidad: La escalabilidad es uno de los parámetros
más valorados en un sistema informático, indica la capacidad del mismo de realizar la
función para lo que está diseñado a medida que aumenta el tamaño o dificultad del
proceso. En este caso, una búsqueda en una base de datos debería tardar un tiempo
del orden de milisegundos.
En un entorno de identificación de audio por contenido, el fingerprinting se compone de
dos procesos principales (véase Figura 19): la extracción del fingerprint y la búsqueda en
la base de datos. Ambos procesos requieren el uso de algoritmos matemáticos adecuados
a las circunstancias del problema planteado. La extracción del fingerprint incluye,
primeramente, un front-end (responsable de recolectar los datos de entrada) de donde
se extraen los fingerprint que más tarde se compactan en el modelo de fingerprinting
para formar el fingerprint final. Por otra parte, el algoritmo de búsqueda se encarga de
encontrar el fingerprint cuya coincidencia con el fingerprint dado sea mayor (best
matching fingerprint).
20/81
Clasificación musical personalizada en función del estado de ánimo
Figura 19. Esquema general de fingerprinting para identificación de audio (II).
En la Figura 20 se describe el esquema general del front-end que, a grandes rasgos, se
repite en cualquier sistema de fingerprinting y consta de varios procesos que se detallan
a continuación.
Figura 20. Esquema general de un sistema de fingerprinting.
•
Preprocesado: se preprocesa la señal convirtiéndola a un formato concreto (número
de bits y frecuencia de muestreo determinados) para mejorar la precisión de los
siguientes bloques o procesos.
•
Frames + Ventaneo: se divide la señal en frames temporales utilizando ventanas
Hanning para suavizar la señal y evitar posibles oscilaciones a la hora de transformar
la señal más tarde.
•
Transformar: se transforma la señal al dominio de la frecuencia, a pesar de existir
diversas transformadas, por lo general, se utiliza la FFT (Fast Fourier Transform).
•
Extracción de características: se extraen diversas características teniendo en cuenta
la forma en el que el sistema auditivo humano percibe el sonido, así por ejemplo es
común en sistemas de fingerprinting analizar la cantidad de energía existente por
cada banda crítica de frecuencia (bark) u obtener los MFCC que también están
estrechamente relacionados con la forma en la que funciona el sistema auditivo. Se
pueden extraer muchas otras características aparte de las mencionadas como se
detalla en la Figura 21.
Figura 21. Extracción de parámetros.
•
Post procesado: Las medidas obtenidas en la fase anterior, por ejemplo los MFCC, en
este post procesado se derivan para conseguir así filtrar las posibles distorsiones o
valores espurios.
21/81
Clasificación musical personalizada en función del estado de ánimo
En este punto del proceso se dispone de una secuencia de características para cada uno
de los frames (un vector de valores para cada frame), la cantidad de información
(considerando que los frames comprenden intervalos de milisegundos) es considerable.
Así, el modelo de fingerprinting se encarga de compactar esta información en un único
vector, que tenga en cuenta todos los frames, utilizando técnicas como, por ejemplo, los
modelos ocultos de Markov (HMM: Hidden Markov Model) [62][79].
Una vez se dispone de éste vector único, a través de él ya será posible encontrar la
similitud entre vectores. El método de búsqueda que se utilice debe ser rápido, correcto,
eficiente desde el punto de vista del uso de la memoria y fácil de actualizar (en caso de
que fuera necesario). El análisis de similitud entre vectores se puede realizar con
diversos métodos como, por ejemplo, la correlación o la entropía.
2.1.4. Descripciones de alto nivel (semánticas)
Volviendo a la definición del apartado anterior (ver apartado 2.1.3.), y estableciendo un
paralelismo con ella, las descripciones de alto nivel describen características generales
que definen un sistema en lugar de sus componentes individuales (como ocurre con las
descripciones de bajo nivel). Así, si antes se mencionaba el lenguaje ensamblador como
un ejemplo de lenguaje de bajo nivel, ahora se puede hacer referencia a lenguajes como
Perl o PHP; todos ellos lenguajes de alto nivel de abstracción entre éstos y la máquina. Al
mismo tiempo, son lenguajes más fáciles de entender y utilizar por los humanos: son
más intuitivos y más próximos al lenguaje natural. De igual forma, siguiendo con el
paralelismo con el apartado anterior, la definición del chirrido como “sonido desquiciante”
sería una definición de alto nivel.
En el caso del audio y la música, son descripciones de alto nivel por ejemplo el género,
los beats por minuto (BPM) o el estado de ánimo que la canción transmite. Estas
características de una melodía tienen una interpretación directa y son las que,
generalmente, un usuario utiliza para clasificar música o generar una playlist.
Igualmente, son las que utilizaría, aunque no fuera plenamente consciente de ello, para
crear una compilación que se llamara “Música para estudiar”. Así, en un caso habitual,
esta compilación contendría canciones con pocos BPM, géneros próximos al Trip-Hop,
Chill-Out o la música clásica (según preferencias) y transmitirían estados de ánimo que
oscilarían entre la tranquilidad, el relax y la suavidad. Por otro lado, “One”, la canción
que sirve como ejemplo a lo largo de los apartados de este trabajo, en función de estos
descriptores de alto nivel, es una canción que pertenece al género del Metal que
comienza como una balada para acabar, conforme transcurren sus nueve minutos,
transformándose con riffs de guitarra llenos de energía. Obviamente, estos son
conceptos fáciles de entender por las personas pero muy complicados de modelar para
una máquina (el “salto” o compromiso que debe existir entre estas dos vertientes de
pensamiento se conoce como intervalo semántico (semantic gap) y se define en el
apartado 2.1.6. de este trabajo). Este problema surge porque estas descripciones
semánticas hacen referencia a conceptos subjetivos y, en muchos casos, ambiguos: una
canción puede transmitir diferentes emociones o ser clasificada en diferentes géneros
dependiendo de la persona. Además, la asignación de estas descripciones, no se rige por
patrones deterministas: no hay un correcto o incorrecto en el campo de la asignación de
género, ni tampoco en el de la emoción asociada. Así, los algoritmos matemáticos que
pueden utilizarse a la hora de extraer descripciones de bajo nivel de una melodía, no son
útiles a la hora de tratar con las descripciones de alto nivel.
En general, los usuarios prefieren las descripciones semánticas a la hora de buscar
información. Por esta razón se necesitan métodos para describir un sonido y un
mecanismo de clasificación y anotación automática [80][11]. Al mismo tiempo, para
poder llevar esto a cabo, es necesario analizar cómo definen los usuarios un sonido o una
canción y encontrar una forma de codificar esta información para que pueda ser
procesada por máquinas de manera similar. Intentar establecer un compromiso entre
22/81
Clasificación musical personalizada en función del estado de ánimo
estas dos vertientes supone solucionar el semantic gap antes mencionado, que es uno de
los principales objetivos (y también uno de los principales problemas) de estas
descripciones. Con el sonido, y más aún con la música, hay un hecho a tener muy en
cuenta: una pieza musical es muy difícil de definir de manera precisa sin tener en cuenta
factores subjetivos. Por lo tanto, son necesarios modelos computacionales que
automaticen los métodos de anotar la información musical relevante a una canción.
2.1.5. Comparativa
Ventajas
Metadatos
Fácil de insertar.
Fácil de
máquina.
Descripciones de bajo nivel
Hashing
Inconvenientes
Fácil de quitar.
calcular
No se puede comprobar, a priori,
que
las
etiquetas
estén
asignadas de forma correcta.
por
una
Útil para encontrar versiones
exactamente iguales de una
misma
canción
y
para
comprobar si un archivo ha sido
alterado o modificado.
Una
canción
en
diferentes
formatos
(CD/MP3)
genera
diferentes archivos binarios y un
cambio en un único bit genera
un hash distinto. Sería necesaria
una base de datos donde
almacenar los hash asociados a
todas las posibles versiones y
formatos de una canción.
Modifica la señal en la que se
inserta (y en algunos casos
puede hacerse audible).
No requiere una base de datos.
Necesita estandarizarse.
Es independiente de la señal.
Watermarking
Si se distorsiona la señal
también se distorsiona la marca
Permite incluir información de
de agua.
copyright.
A efectos de copyright, las
señales originales tienen que
tener ya la marca de agua para
poder identificar las posibles
copias en nuevas señales.
23/81
Clasificación musical personalizada en función del estado de ánimo
No influye en absoluto
señal, es imperceptible.
a
la
No necesita estandarización.
Necesita una base de datos y
Tiene que ver directamente con
ésta puede llegar a ser muy
la señal, representa aspectos
extensa y, por tanto, requerir un
Fingerprinting perceptuales de la misma.
alto coste computacional para
recorrerla y buscar información
Es robusto frente a distorsiones.
en ella.
Se puede combinar con las
marcas de agua para también
incluir información sobre el
copyright.
Descripciones de
alto nivel
Es la manera natural de los Son subjetivas y complicadas de
usuarios de describir y buscar la modelar
por
algoritmos
información.
computacionales.
2.1.6. Problemas asociados
Cualquier sistema de búsqueda de información por contenido tiene que enfrentarse,
esencialmente a los tres problemas que se describen a continuación:
•
El sistema será utilizado por usuarios diversos, todos ellos tendrán diferentes criterios
de búsqueda y éstos, a su vez, pueden ser diferentes a los criterios que se han
utilizado al etiquetar o anotar la base de datos musical. Las diferencias podrán ser
más o menos insalvables pero, en cualquier caso, siempre existirán. Especialmente
en el caso de la música y las emociones dos usuarios pueden definir la misma
emoción que les evoca una melodía con diferentes palabras aunque el significado final
sea el mismo.
•
Otro problema a tener en cuenta es la gran cantidad de información existente. En
nuestro caso nos limitamos a las quinientas canciones de una base de datos dada
(CAL500) pero cabe tener en cuenta que el diseño debería ser extrapolable a una
base de datos mayor, o incluso a grandes cantidades de información desconocidas a
priori, por ejemplo, canciones de la radio
•
El tercer problema es lo que se conoce como intervalo semántico (semantic gap).
Esto es, en nuestro caso, la “distancia” que existe entre la riqueza de vocabulario en
la búsqueda (o la precisión de la misma) y la capacidad de poder describir o utilizar
estos criterios computacionalmente. Así, debe existir un compromiso entre lenguaje
natural y lenguaje computacional. De otro modo, es preciso establecer un vínculo
entre las características perceptuales de una melodía (descripciones de bajo nivel) y
sus descripciones semánticas más subjetivas y variables en función del usuario
(descripciones de alto nivel). Esto se conoce como “bridge the semantic gap” que,
traducido literalmente, significa “crear un puente en el intervalo semántico”.
24/81
Clasificación musical personalizada en función del estado de ánimo
2.2. Aspectos perceptuales y subjetivos
El sonido se define como la sensación producida en el órgano del oído por el movimiento
vibratorio de los cuerpos, transmitido por un medio elástico, como, por ejemplo, el aire.
Las principales características físicas de un sonido son su amplitud (medida en decibelios
[dB]), su frecuencia (medida de Hertz [Hz]) y su fase (en milisegundos). Por otro lado, la
percepción es el proceso de interpretar o procesar la información recibida a través de los
sentidos. Así, en este caso, el término aspectos perceptuales del sonido hace referencia a
toda la información que se recibe a través del sentido del oído [107]. Es importante
conocer el funcionamiento del sistema auditivo humano, así como los mecanismos del
cerebro para procesar las señales acústicas que percibe, para definir los aspectos
perceptuales más significativos de una melodía. Entre los principales aspectos
perceptuales del sonido destacan: la altura, tonalidad o frecuencia percibida (pitch) y sus
transiciones; la intensidad sonora percibida (loudness), el timbre, la duración (necesaria
para establecer estructuras rítmicas), el contorno, las repeticiones o la dirección (posición
de la fuente). La psicoacústica es la ciencia que estudia las principales características
perceptuales del sonido (intensidad, tono y timbre), que, a su vez, están determinadas
por los propios parámetros físicos del sonido (principalmente, frecuencia y amplitud). En
otras palabras: estudia la relación entre los sonidos físicos y la interpretación del cerebro
de los mismos.
2.2.1. Sistema auditivo humano
Ya que los aspectos subjetivos del sonido se perciben a través del sistema auditivo el
funcionamiento de éste influye en su percepción [49][61][110][18]. El oído está formado
por tres partes: oído externo (capta el sonido del exterior), oído medio (lo amplifica) y
oído interno (recibe las vibraciones que estimulan el nervio auditivo). Las características
de esta última parte del oído son las que intervienen en la relación entre los parámetros
físicos (intensidad y frecuencia) con los subjetivos (sonoridad y tonalidad). Según
Zwicker [43], en la parte central del espectro audible el oído se comporta como un
analizador harmónico de 24 bandas (bandas críticas) asociadas a las 24 parcelas de la
membrana basilar (véase la Figura 22 y la Figura 23) o barks. Esta membrana tiene un
máximo de vibración para cada frecuencia. Así, se define una banda crítica como la
banda de frecuencias máxima capaz de excitar un bark de la membrana basilar. A
frecuencias medias (entre 1000 Hz y 5000 Hz) estas bandas se corresponden
aproximadamente a un tercio de octava. En estas bandas, cualquiera que sea la anchura
de una banda de ruido contenida dentro de ellas, su sonoridad se mantiene constante
(siempre y cuando la intensidad del ruido se mantenga también constante). La sonoridad
aumenta cuando la banda del ruido es superior a la banda crítica.
El ser humano es capaz de percibir frecuencias entre los 20 Hz y los 20 KHz, aunque no
tiene una respuesta frecuencial lineal sino logarítmica. Esto implica que el pitch que se
percibe dado un determinado sonido está relacionado con la frecuencia en función de una
exponencial. Así, las escalas de Mel o Bark se basan en este hecho y se utilizan para
estudios perceptuales del sonido (ambas tienen carácter logarítmico y modelan la
percepción del sonido por el oído). De igual forma, en el campo de las escalas musicales,
la escala más utilizada, la escala temperada, se basa en que la distancia entre cada uno
de los doce semitonos es de 21/12, por lo tanto, multiplicar la frecuencia de un tono por 2
(212/12) implica subir 12 semitonos (una octava). En esta escala la nota de referencia es
La4=440Hz; a partir de esta nota se construye la escala en la que el intervalo entre
notas consecutivas es 21/12. Así, por ejemplo, el siguiente semitono de La4 es Si bemol,
cuya frecuencia se calcula así: 440*21/12=466Hz.
25/81
Clasificación musical personalizada en función del estado de ánimo
Figura 22. Oído humano esquema general y detalle de la membrana basilar.
Figura 23. Distribución de las frecuencias en la membrana basilar.
En cuanto a la intensidad sonora percibida (loudness) el margen dinámico abarca desde
los 0dB hasta el umbral del dolor que por lo general se establece alrededor de los 120dB,
auque no se puede definir con precisión ya que varía en función de la exposición a este
alto nivel (una persona expuesta momentáneamente a niveles de 120dB puede no sufrir
ningún daño en su oído mientras que expuesta a un nivel continuo de 90dB podría
causarle perdida de audición, así como otros efectos nocivos en la salud [99]). La
sonoridad (loudness) se relaciona con la presión sonora (dB) y la frecuencia a través de
las curvas isofónicas de Robinson y Dadson [23] que representan puntos con la misma
sonoridad (véase la Figura 24).
Figura 24. Curvas isofónicas.
Por otro lado, la tonalidad (o altura tonal o pitch) es la sensación de frecuencia que
permite calificar un sonido como grave o agudo. La tonalidad depende principalmente de
la frecuencia pero también es función de la intensidad. La unidad que valora esto es el
26/81
Clasificación musical personalizada en función del estado de ánimo
Mel (gracias al que se establece la escala de Mel que se define más adelante). La
dependencia entre tonalidad y frecuencia tampoco es lineal (la sensación de una octava
no coincide en general con el doble de la frecuencia). Esta relación se puede apreciar en
la Figura 25. Así, un aumento en la intensidad sonora provoca un aumento de la
tonalidad de los agudos pero baja los graves.
Figura 25. Relación Hertz-Mel.
Analizando con un sofware de edición digital como Audacity [10] dos canciones
radicalmente diferentes como son “One” (Metallica) y “Don’t Know Why” (Norah Jones) a
simple vista, observando su forma de onda (véase la Figura 26 y la Figura 27), se puede
apreciar como “One” es una canción con mucho más nivel (dB) que “Don’t Know Why”,
pero de la observación de ésta forma de onda no puede obtenerse mucha más
información. Audacity permite también dibujar el espectro de un minuto de la melodía
(véase la Figura 28). Comparando estas dos canciones, se observa que en “One” hay
más presencia de altas frecuencias y que, en general, el nivel es superior a “Don’t Know
Why”. En la Figura 28 aparecen los espectros frecuenciales tomando en primer lugar la
frecuencia lineal (izquierda) y después la logarítmica (derecha). El análisis frecuencial
logarítmico es útil en análisis musicales o de voz ya que el oído, como se ha explicado
anteriormente, no tiene una respuesta frecuencial lineal sino logarítmica. Así, un primer
paso para modelar como percibe el sistema auditivo humano el sonido, es describir
modelos matemáticos que representen su respuesta logarítmica. Se definen así, al final
de este apartado, las escalas de Mel y Bark.
Figura 26. Forma de onda de “One”
Figura 27. Forma de onda de “Don’t Know Why”
27/81
Clasificación musical personalizada en función del estado de ánimo
Figura 28. Comparación de analísis frecuenciales de “One” (morado) y “Don’t Know Why” (azul)
Realmente, y aunque no sea habitual, la representación de un sonido o melodía para
reflejar todos sus aspectos debería tener forma tridimensional en la que sus tres ejes
serían: amplitud, frecuencia y tiempo. A pesar de ello, lo más habitual es establecer
representaciones en función de los tres diferentes planos que estas dimensiones definen:
•
•
•
Plano dinámico: formado por amplitud y tiempo (Figura 26 y Figura 27).
Plano harmónico: formado por amplitud y frecuencia (Figura 28).
Plano melódico: formado por la frecuencia y el tiempo.
Respectivamente, las proyecciones del sonido sobre estos planos definen los siguientes
conceptos: oscilograma, espectrograma y sonograma. De todos ellos, el sonograma en el
plano melódico constituye la representación más completa de un sonido ya que analiza la
evolución continua del espectro en el tiempo teniendo así en cuenta la entonación y el
ritmo. Pero, de la misma forma, la característica que se deriva de relacionar frecuencia y
tiempo (el timbre) es la más compleja de analizar de un sonido ya que implica procesar
frecuencialmente la señal y sus variaciones a lo largo del tiempo y esto conlleva mayor
coste computacional.
Escala de Mel
Como ya se ha introducido anteriormente, el comportamiento del sistema auditivo
humano puede modelarse con una serie de bandas críticas, en este caso estas bandas se
conocen como bandas de Mel. Se basan en la escala de frecuencias de Mel, esta escala es
lineal para las frecuencias bajas (inferiores a 1000 Hz) y logarítmica para las altas (por
encima de 1000 Hz). Esta escala se utiliza especialmente en sistemas de reconocimiento
automático de la voz y, por extensión, en sistemas de reconocimiento y análisis musical.
En ambos ámbitos se utiliza esta escala para calcular los coeficientes cepstrales en las
frecuencias de Mel (más conocidos como MFCC derivado de su nombre en inglés: Mel
Frequency Cepstral Coefficients). Así, para convertir de Hertz (f) a Mel (M) se utilizan las
siguientes expresiones:
Para frecuencias inferiores a 1000 Hz:
Para frecuencias superiores a 1000 Hz:
M= f

f 
M = fc·1 + log10  , donde fc son 1000 Hz.
fc 

Escala de Bark
Es una escala psicoacústica que modela el comportamiento del oído humano dividiéndolo
en 24 bandas críticas (bark) que representan la respuesta del oído a cada una de las
frecuencias. Estas bandas son más estrechas a frecuencias bajas que a altas ya que el
oído humano distingue mejor las frecuencias bajas. De hecho, en esta baja percepción (o
capacidad de discernir) entre las frecuencias altas es en lo que se basa la compresión
28/81
Clasificación musical personalizada en función del estado de ánimo
que se utiliza, por ejemplo, en el formato MP3. Las frecuencias en Hertz que limitan estas
bandas son las siguientes: 0, 100, 200, 300, 400, 510, 630, 770, 920, 1080, 1270,
1480, 1720, 2000, 2320, 2700, 3150, 3700, 4400, 5300, 6400, 7700, 9500, 12000,
15500.
La conversión de Hertz (f) a Bark (B) sigue la siguiente expresión:
f 
 f 
−1 
B = 13·tan −1 
 + 3.5·tan 

 1315.8 
 7518 
2.2.2. Aspectos perceptuales de una melodía
La música está compuesta por aspectos puramente perceptuales (altura, sonoridad y
timbre) [107], aspectos acústicos o físicos (frecuencia, amplitud y fase) y aspectos
musicales (tono, nota y timbre) [15]. En este apartado se definen los tres principales
aspectos perceptuales de una melodía que se introdujeron en el apartado anterior (altura
(pitch), sonoridad (loudness) y timbre) así como otros aspectos o parámetros asociados
a ellos individual o conjuntamente [27][56][46]. Éstos últimos hacen referencia más
directa a la organización de la música y los primeros a los componentes de la misma.
•
Altura (pitch): La altura es la frecuencia fundamental percibida, mediante la que se
pueden ordenar una serie de sonidos de más grave (menor frecuencia) a más agudo
(más frecuencia). Esta es una labor sencilla si el análisis se trata únicamente de tonos
puros o instrumentos independientes, pero en el caso de la música, en la que
intervienen muchos instrumentos que varían su pitch a lo largo de la canción en
menor o mayor medida, no es algo tan trivial. Por ejemplo, en “One” la voz es más
grave en los primeros versos que al final. En general, cuánto más bajo sea el pitch el
ambiente que crean las canciones es más “oscuro”: transmite tensión y menos
energía. Si el pitch es disonante también transmite tensión o inquietud.
•
Sonoridad (loudness): Es la percepción subjetiva de la intensidad sonora. En el caso
de la música, una parte de esta sonoridad es el resultado de los ajustes que se hayan
realizado en la producción y postproducción de una canción, y otra, la que puede
ajustar el usuario al escucharla (tanto en cuestión de volumen como de
ecualizaciones). Una intensidad sonora percibida alta, en general, transmite energía
aunque, de la misma forma, si el sonido resulta desagradable para el oyente,
transmitirá crispación.
•
Timbre: El timbre permite diferenciar entre dos instrumentos diferentes que tocan la
misma nota al mismo volumen. También se define como calidad sonora. Depende de
la cantidad de harmónicos de un sonido y la intensidad de los mismos. El termino
color tonal, muy extendido en las valoraciones y análisis musicales, depende del
timbre. Por ejemplo, si hay presencia de muchos tonos puros se transmite calma pero
cuanto más harmónicos haya se transmite más tensión.
•
Tempo: El tempo es la velocidad de una pieza musical. En las partituras de música
clásica se indica con términos en italiano que hacen referencia a lo que en la música
moderna son los beats-per-minute (BPM). Así, una pieza marcada como Allegro
equivaldría a tener unos 120 a 170 BPM. Cuánto mayor tempo, más rápida es una
canción. Si el tempo es irregular a lo largo de una melodía aumenta la tensión o
crispación que evoca.
•
Ritmo: El ritmo es la proporción guardada entre el tiempo de un movimiento y el de
otro diferente. Se aprecia este concepto fácilmente en los ritmos que se pueden
establecer con una batería donde los BPM del bombo tienen una cadencia diferente a
los de la caja o los platos pero que en conjunto establecen un patrón rítmico. Por
ejemplo: Bombo-Caja-Caja-Bombo.
29/81
Clasificación musical personalizada en función del estado de ánimo
•
Armonía: El término armonía hace referencia al uso de diferentes pitch y notas
simultáneamente. Asimismo, la progresión armónica analiza el cambio de un pitch a
otro.
•
Melodía: Una melodía es un conjunto de sonidos que comprendiendo diferentes
pitch, timbres y tempos se perciben con sentido propio, de la misma manera que en
el lenguaje elementos independientes (adjetivos, artículos, verbos, etc.) forman una
oración. La melodía en la música sería el equivalente a una oración correctamente
construida en el lenguaje.
30/81
Clasificación musical personalizada en función del estado de ánimo
2.3. Aspectos semánticos
La utilización de metadatos a la hora de buscar música (artista, título, etc.) en muchos
casos es insuficiente para que los usuarios encuentren música que pueda interesarles.
Redes como last.fm aportan una nueva visión y mayores opciones para solucionar este
problema. Estas redes se basan, por ejemplo, en recomendar al usuario música que ha
sido etiquetada de forma similar a la que este usuario escucha con más frecuencia, o
vincularle a otros usuarios con gustos similares a los suyos. Aún así, los criterios que
utiliza last.fm (u otras redes similares), están generalmente basados en metadatos. Sin
embargo, poder extraer descriptores semánticos de una melodía de forma automática
ofrecería nuevas posibilidades tanto para organizar colecciones de música como para
generar compilaciones o listas de reproducción. Esto sería posible ya que los usuarios
organizan, mental y, en muchos casos, inconscientemente, sus colecciones musicales en
función de estas descripciones de alto nivel.
2.3.1. Género musical
Como se ha explicado anteriormente, el género musical es un ejemplo de descriptor
semántico. De hecho, la estrategia más extendida para ordenar la música físicamente en
las tiendas (aparte del orden alfabético) se basa en el género al que pertenecen los
diferentes discos. La clasificación musical más global es la que divide la música en Clásica
y Popular. Seguidamente, y especialmente dentro de la música Popular, se establece una
lista general de géneros y subgéneros (o estilos), y es a partir de aquí donde las
subdivisiones en subgéneros se hacen más extensas creciendo prácticamente cada día
gracias a nuevos grupos que revindican un nuevo estilo que ellos mismos acaban de
inventar y bautizar. Por ejemplo, dentro del Metal existen muchísimas subcategorías
(Black, Death, Doom, Gothic, Thrash, etc.) y a su vez dentro de estas existen otras
subdivisiones y la lista sigue convirtiéndose en algo similar a las muñecas rusas. En la
Figura 29 puede apreciarse un esquema general de géneros y subgéneros de la música
Popular. Este esquema está basado, en gran medida, en la clasificación que establece
AllMusic, en la que se especifican los géneros más importantes (en rojo y letra más
grande), los subgéneros dentro de éstos (en verde) y una selección de subgéneros
representativos relacionados con los anteriores (en rojo y letra pequeña).
La música, en general, se agrupa en géneros por sus características musicales
(utilización de instrumentos y ritmos) o armónicas que las diferentes piezas comparten o,
incluso, regiones geográficas de las que provienen. Aunque, muchas veces, se da el caso
de grupos que se asignan por defecto a un género debido a que sus primeros discos
pertenecían a éste pero con el tiempo han evolucionado a otro género completamente
diferente. Hechos como este no se tienen en cuenta: no es habitual encontrar discos de
un artista repartidos por diferentes secciones de una misma tienda. Así, el criterio del
género tiene una vertiente altamente subjetiva. Existen trabajos, como el realizado en
Islands Of Music [44] que basan la clasificación por género en aspectos puramente
musicales, que permiten minimizar este problema. Otros ejemplos de trabajos similares a
Islands Of Music se desarrollan en [25] y [70].
31/81
Clasificación musical personalizada en función del estado de ánimo
Figura 29. Esquema general de géneros y subgéneros principales.
Buscando “One”, la canción que sirve de ejemplo a lo largo de este trabajo, en las redes
de AllMusic y last.fm se obtienen clasificaciones similares en cuanto a género (véase la
Figura 30 y la Figura 31). En el caso de AllMusic no se permite analizar el género de una
canción independientemente; en la Figura 30 aparece el género asociado al álbum al que
pertenece “One” (“...And Justice For All”). En el caso de last.fm se permite analizar
independientemente las canciones. Así, lo que aparece en la Figura 31, son todas las
etiquetas asociadas a esta canción donde las que aparecen en mayor tamaño son las más
utilizadas por los usuarios.
Figura 30. Géneros asociados a “One” en AllMusic.
Figura 31. Etiquetas referentes a género asociadas a “One” en Last.fm
2.3.2. Estado de ánimo
Por otro lado, otro ejemplo de descriptor semántico es el estado de ánimo que una
canción transmite. Para encontrar un método de ordenar o estructurar la extensa
variedad de estados de ánimo que puede llegar a experimentar una persona, y las
diversas formas de expresarlos, es necesario tener una referencia en la que estén todas
las palabras organizadas. Así, es extremadamente útil una red semántica como Wordnet
[123] que organiza el conocimiento del mundo y constituye una enorme base de datos
léxica. Un factor a tener en cuenta es que el lenguaje humano es muy extenso y que las
formas de explicar la misma idea pueden diferir notablemente entre una persona y otra.
Por ejemplo: podría ocurrir que un usuario (o administrador de una base de datos),
etiquete o anote una canción con palabras referentes a la emoción. Seguidamente, puede
que otro usuario utilice otras palabras distintas para buscarla y no aparezca esta canción
en su búsqueda. Probablemente el significado de su búsqueda y la descripción con que la
32/81
Clasificación musical personalizada en función del estado de ánimo
canción está etiquetada sean equivalentes pero estén expresados con diferentes
palabras.
Se debe encontrar un compromiso entre cómo etiquetar o anotar la información y las
opciones de búsqueda que se pueden ofrecer [37]. Este acuerdo no puede ser
determinista; ya que no hay un bien o mal rotundo en ninguno de los dos casos. Es
importante estructurar el lenguaje para poder tener en cuenta las diferentes formas de
explicar las mismas ideas porque el lenguaje no es preciso, existen muchas opciones
para transmitir un mismo mensaje empleando palabras diferentes. En esta labor
intervienen los conceptos de ontología y taxonomía que se definen en el apartado
siguiente.
2.3.3. Ontología y taxonomía
El término taxonomía hace referencia a la ciencia que trata de los principios, métodos y
fines de la clasificación. Asimismo, taxonomía es un sinónimo de clasificación. En su
origen se aplicaba exclusivamente en el campo de la biología para referirse a la
ordenación jerarquizada y sistemática, con sus nombres, de los grupos de animales y de
vegetales. Actualmente se aplica a muchas y diversas áreas. En una taxonomía los
conceptos se agrupan desde los grupos (o tipos) más generales a subgrupos (o
subtipos). Así, por ejemplo, una guitarra eléctrica es un tipo de guitarra que al mismo
tiempo es un tipo de instrumento de cuerda que está dentro de los instrumentos
musicales (véase la Figura 32). Todas las guitarras eléctricas son instrumentos musicales
pero no todos los instrumentos musicales son guitarras eléctricas. Si se continuara la
lista anterior se llegaría a la entidad base de la guitarra que es la de ser un objeto (véase
la Figura 37).
Figura 32. Taxonomía general de “guitarra eléctrica”.
La ontología es la parte de la metafísica que trata del ser en general y de sus
propiedades trascendentales, es un estudio de las diferentes concepciones de la realidad
y la naturaleza de la misma. Aunque, esta definición de diccionario anterior, no deja
suficientemente claro a qué hace referencia el término ontología. La ontología estudia las
categorías de cosas que existen, o pueden existir, en un dominio (o campo de la
realidad) determinado. El resultado de este estudio o análisis es lo que se considera una
ontología: un catálogo de tipos de cosas que se asume que existen en un determinado
dominio de interés X desde la perspectiva de una persona que utiliza un lenguaje Y para
hablar sobre Z. En el contexto de este trabajo, X sería la música, Y sería, por ejemplo, el
Castellano y Z la emoción transmitida. Los diferentes tipos en la ontología representan
los significados de las palabras, conceptos o relaciones entre ellos. Una ontología formal
organiza los conceptos, y las relaciones entre los mismos, estableciendo una estructura
taxonómica de tipos y subtipos y definiendo una jerarquía entre ellos. Los principales
usos que se dan a la ontología en el ámbito de la tecnología y la informática están
relacionados con aplicaciones de inteligencia artificial (AI: Artificial Intelligence) o webs
semánticas (Semantic Web [113]).
33/81
Clasificación musical personalizada en función del estado de ánimo
Taxonomía y ontología son dos términos relacionados pero que hacen referencia a
conceptos distintos. Las diferencias entre ambos radican principalmente en dos aspectos:
•
Una ontología posee una estructura interna más compleja que una taxonomía ya que
no sólo se ocupa de la clasificación de los elementos sino también de las relaciones
entre ellos.
•
Una ontología representa un consenso del conocimiento o los conceptos referentes a
un determinado área. Por ejemplo, en este caso, gracias a una taxonomía se podrían
clasificar las palabras referentes a los estados de ánimo (principalmente adjetivos),
instrumentos y usos de las diferentes canciones. Y después, gracias a una ontología,
se podrían vincular éstas diferentes ramas (estados de ánimo, instrumentos, usos)
con, por ejemplo, los géneros musicales. Así, esta ontología sería válida para un
determinado área: el de relacionar música y estados de ánimo.
Bases de datos léxicas y semánticas informatizadas como por ejemplo Wordnet, Cyc [22]
o ConceptNet [63] se basan en los conceptos de ontología y taxonomía para organizar la
información.
Wordnet
Wordnet relaciona los dos conceptos descritos en el apartado anterior: taxonomía y
ontología. Wordnet es una base de datos léxica o diccionario léxico desarrollado por
George A. Miller y el Laboratorio de Ciencia Cognitiva de la Universidad de Princeton.
Agrupa nombres, verbos, adjetivos y adverbios de la lengua Inglesa en grupos de
sinónimos (llamados synsets) donde cada uno de ellos expresa un concepto diferente.
Wordnet provee de una base de datos léxica a un gran número de analizadores de texto
basados en inteligencia artificial y aplicaciones similares y, asimismo, sirve de diccionario
ya que puede accederse a él online y también descargarse gratuitamente. Los synsets se
agrupan en nombres, verbos, adjetivos y adverbios ya que todos ellos siguen reglas
gramaticales diferentes. Todos estos synsets se vinculan a otros synsets diferentes a
través de relaciones semánticas que varían en función del tipo de palabra. Así, tomando
el ejemplo del apartado anterior (el nombre "guitarra eléctrica") y analizándolo en
Wordnet se obtienen distintas informaciones sobre las que se muestra seguidamente una
pequeña definición para cada una de ellas:
•
Hiperónimo (hypernym): Palabra cuyo significado incluye al de otra u otras. A es
hiperónimo de B si todos los B son (un tipo de) A. Por ejemplo, flor (A) es hiperónimo
tanto de margarita (B) como rosa (B).
•
Hipónimo (hyponym): Palabra cuyo significado está incluido en el de otra. A es
hipónimo de B si todos los A son (un tipo de) B. Margarita (A) es hipónimo de flor (B).
•
Holónimo (holonym): A es holónimo de B si B es una parte de A. Así margarita (A) es
holónimo de tallo (B)
•
Meronimo (meronym): A es merónimo de B si A es una parte de B. Así, tallo (A) es
merónimo de margarita (B).
•
Coordinate terms (términos coordinados): A es un coordinate term de B si B y A
comparten un hiperónimo. Rosa (A) y margarita (B) son coordinate terms porque
comparten el hiperónimo flor.
En primer lugar al buscar "electric guitar" en Wordnet se obtiene simplemente su
significado (véase Figura 33).
34/81
Clasificación musical personalizada en función del estado de ánimo
Figura 33. Significado de guitarra eléctrica.
A partir de aquí se permite visualizar diferentes opciones (véase Figura 34):
Figura 34. Menu para la palabra buscada.
Synonyms (véase Figura 35): Muestra los sinónimos de la palabra (en este caso no hay)
y analiza los synsets que forman la palabra (si es una palabra compuesta como es el
caso de "electric guitar") quedándose el synset de mayor ocurrencia (en este caso
guitarra, guitar).
Figura 35. Sinónimos de guitarra eléctrica.
Coordinate terms (véase Figura 36): Muestra el hiperónimo inmediato (guitarra) así
como los hipónimos de éste último (guitarra acústica, bajo, etc.).
Figura 36. Coordinate terms de guitarra eléctrica.
Hypernyms (electric guitar is a kind of...): Muestra el árbol de hiperónimos. Como se
puede apreciar los primeros niveles coinciden con los detallados en la Figura 32 que
mostraba una taxonomía básica (véase la Figura 37).
Figura 37. Hiperónimos de guitarra eléctrica.
Meronyms (parts of electric guitar): Muestra los merónimos tanto de la palabra buscada
como de sus hiperónimos (véase la Figura 38).
35/81
Clasificación musical personalizada en función del estado de ánimo
Figura 38. Merónimos de guitarra eléctrica.
Disponiendo de una base de datos semántica tan extensa como esta, podría parecer
sencillo, a simple vista, establecer un sistema mediante el que un usuario pudiera
introducir un texto en el que reflejara su estado de ánimo, con mayor o menor grado de
precisión, y que una interfaz, basada en Wordnet, analizara cada una de las palabras a
fin de encontrar una coincidencia en los resultados y ofrecer así una lista determinada de
canciones. Aún consiguiéndolo, lo posible sería extraer una emoción de ese texto pero,
ésta no estaría vinculada a ninguna canción en particular. Para que pudiera vincularse a
la música, las diferentes canciones deberían estar etiquetadas con emociones y, teniendo
en cuenta lo amplio y poco preciso muchas veces del lenguaje, es posible que las
coincidencias entre las emociones etiquetadas y las extraídas del texto introducido por el
usuario fueran inexistentes aunque éstas representaran la misma emoción (o emociones
diferentes que compartieran hiperónimos). Aún así, aplicaciones desarrolladas como
mysoundtrack [101] han conseguido un objetivo similar.
Buscando en Wordnet los conceptos música y emoción, y analizando su complejidad, es
comprensible la dificultad que entraña establecer algún vínculo exclusivamente
semántico entre ellos. En las figuras 39, 40 y 41 se puede constatar este hecho. En la
primera aparecen los hiperónimos relacionados con música y en las segundas la extensa
lista de términos coordinados a emoción (coordinate terms) y su lista reducida de
hipónimos (cuya extensa lista completa aparece en la Figura 42). Resulta en muchos
casos más sencillo trazar estos hilos conceptuales entre ambos términos de forma
subjetiva o incluso científica como se explica en el apartado siguiente.
Figura 39. Hiperónimos de música.
Figura 40. Coordinate terms de emoción
36/81
Clasificación musical personalizada en función del estado de ánimo
Figura 41. Lista reducida de hipónimos de emoción.
37/81
Clasificación musical personalizada en función del estado de ánimo
Figura 42. Lista completa de hipónimos de emoción.
38/81
Clasificación musical personalizada en función del estado de ánimo
2.4. Emociones y música
2.4.1. Introducción
Si se representara una canción en función de las emociones que produce, ésta podría
considerarse un punto en el espacio multidimensional de las emociones. Además, la
música es un lenguaje universal capaz de expresar emoción y es, probablemente, esa
universalidad lo que convierte en compleja la labor de detectar la emoción en la música
de forma automática. Es complicado clasificar música por los estados de ánimo que
evoca porque los estados de ánimo, o la relación que puede vincularlos con una lista
determinada de canciones, es algo subjetivo y no es posible estandarizarlo de ninguna
forma. No hay una manera determinista de vincular estados de ánimo y canciones. Aún
así, aunque haya un alto componente subjetivo a la hora de asociar música y estado de
ánimo, se puede establecer una relación entre los sonidos y la influencia que éstos
causan en el que escucha basándose en los efectos que tienen las diferentes frecuencias
del sonido en el cerebro. Las características que afectan a la percepción de la emoción
están asociadas con la frecuencia central, la disonancia espectral y la tonalidad pura
[74][31][9]. La percepción de la emoción en la música es subjetiva: depende del estado
de ánimo del oyente, la personalidad y muchos otros parámetros subjetivos difícilmente
mesurables. Aún así, Allmusic, por ejemplo, asigna adjetivos que hacen referencia a los
estados de ánimo a la música (la lista completa de éstos puede verse en la Figura 43).
Aunque, las asignaciones categóricas de una única emoción a una canción son
imposibles. No es algo determinista ni el análisis de las emociones ni el análisis musical.
No todo el mundo comparte el mismo sentimiento por una canción, ni una canción tiene
porque evocarle el mismo sentimiento a cualquiera que la escuche. Y, por otro lado, la
emoción que transmite una canción puede variar dentro de la misma.
Cuando se dispone de gran cantidad de cualquier tipo de información, siempre es
complicado buscar a través de ella y encontrar exactamente lo que se está buscando;
como ya se ha explicado a lo largo de los anteriores apartados de este trabajo. Lo
habitual es utilizar metadatos [124], tanto para buscar como para organizar la
información. Aunque la existencia de los metadatos, o la verificación de los mismos,
requiere un conocimiento previo de la base de datos. Para organizar las canciones por
estado de ánimo se prescinde de los metadatos, ya que un estado de ánimo no atiende,
ni se limita, a un único género o artista. Por otro lado una organización por estado de
ánimo constituye una herramienta útil a la hora organizar la música. ¿Cuántas veces un
usuario sabe perfectamente que serie de canciones querría escuchar porque está triste o
contento? La gran mayoría de los sistemas existentes que organizan colecciones
musicales se concentran en la clasificación de manera determinista, no la consideran algo
dinámico y adaptativo.
Acerbic
Aggressive
Ambitious
Amiable/Good-Natured
Angry
Angst-Ridden
Atmospheric
Austere
Autumnal
Bitter
Bittersweet
Bleak
Boisterous
Brash
Brassy
Bravado
Bright
Brittle
Brooding
Calm/Peaceful
Campy
Carefree
Cathartic
Cerebral
Cheerful
Confrontational
Crunchy
Cynical/Sarcastic
Delicate
Detached
Difficult
Distraught
Dramatic
Dreamy
Druggy
Earnest
Earthy
Eccentric
Eerie
Effervescent
Elaborate
Elegant
Energetic
Enigmatic
Epic
Ethereal
Exciting
Exuberant
Fierce
Fiery
Giddy
Gleeful
Gloomy
Greasy
Gritty
Gutsy
Happy
Harsh
Hedonistic
Hostile
Humorous
Hungry
Hypnotic
Indulgent
Innocent
Insular
Intense
Intimate
Ironic
Irreverent
Joyous
Knotty
Laid-Back/Mellow
Lazy
Light
Meandering
Melancholy
Menacing
Messy
Naive
Nihilistic
Nocturnal
Nostalgic
Ominous
Organic
Outraged
Outrageous
Paranoid
Party/Celebratory
Passionate
Pastoral
Plaintive
Playful
Poignant
Precious
Provocative
Quirky
Rambunctious
Ramshackle
Raucous
Reserved
Restrained
Reverent
Rollicking
Romantic
Rousing
Rowdy
Rustic
Sad
Sardonic
Searching
Self-Conscious
Sensual
Sentimental
Sexual
Sexy
Silly
Sleazy
Slick
Smooth
Snide
Soft
Somber
Soothing
Sophisticated
Spooky
Sprawling
Springlike
Stately
Street-Smart
Stylish
Suffocating
Sugary
Summery
Swaggering
Sweet
Tense/Anxious
Theatrical
Thoughtful
Thuggish
Trashy
Trippy
Uncompromising
Unsettling
Urgent
Visceral
Volatile
Warm
Weary
Whimsical
39/81
Clasificación musical personalizada en función del estado de ánimo
Circular
Clinical
Cold
Complex
Confident
Fractured
Freakish
Freewheeling
Fun
Gentle
Literate
Lively
Lush
Malevolent
Manic
Rebellious
Reckless
Refined/Mannered
Reflective
Relaxed
Spacey
Sparkling
Sparse
Spicy
Spiritual
Wintry
Wistful
Witty
Wry
Yearning
Figura 43. Estados de ánimo (moods) de AllMusic.
Hay estudios que afirman que es posible definir la personalidad de cada individuo en
función del estilo que prefiere así, por ejemplo, basándose en esta teoría la Universidad
de Texas ha desarrollado el test STOMP (Short Test Of Music Preferences) [102].
También pueden citarse como ejemplo los estudios y análisis realizados por Daniel Levitin
(director del Laboratory Of Music Perception) en su libro This Is Your Brain On Music. En
cualquier caso, todos los estudios concluyen que es el tono de la música el que lo vincula
a una emoción determinada (ya que tanto el tono como las emociones se procesan en el
mismo hemisferio cerebral); es este el mismo motivo que justifica que el 80% de la
compresión de la emoción que se transmite en un mensaje hablado (aún si entender el
idioma de quien habla) se percibe a través del tono del mismo.
Está demostrado que la música puede inducir importantes cambios físicos y psicológicos.
Afecta a variables como el latido del corazón, el pulso, la presión sanguínea, la
resistencia eléctrica de la piel (respuesta galvánica), sudor, respiración y ondas
cerebrales. La música modifica los niveles de dopamina, adrenalina, noradrenalina y
serotonina; todas ellas hormonas que afectan directamente en el estado de ánimo. Todas
estas hormonas que el cerebro segrega de forma natural sometido a diversos estímulos
en muchos casos son denominadas sustancias (o drogas) endógenas. De la misma
forma, hay aplicaciones como i-doser [65] que generan ondas sonoras capaces de inducir
sensaciones físicas y psíquicas que, según prometen, provocan en quien las escucha el
efecto de determinadas drogas o medicinas.
Después de muchos años de investigación, en muchos campos y áreas de la ciencia y la
medicina, el cerebro aún sigue siendo un gran desconocido. Aún así, ciencias como la
neurociencia y la musicología estudian el efecto de la música sobre él, y por extensión,
sobre las personas. A éstas se podría sumar la musicoterapia que utiliza estos efectos
con fines terapéuticos.
2.4.2. Modelos para estructurar las emociones
Durante décadas, diversos psicólogos han estudiado y diseñado modelos para estructurar
las emociones humanas. Seguidamente se detallan tanto los nombres y trabajos más
significativos de algunos de ellos como los esquemas de algunos de sus modelos para
clasificar las emociones humanas en función a una serie de criterios o parámetros. De la
misma forma, se enumeran trabajos basados en estos modelos.
Paul Ekman
Paul Ekman es uno de los primeros psicólogos que se ha dedicado a establecer un
paralelismo entre las emociones humanas y las expresiones faciales. Considerando que
las expresiones faciales no están determinadas social ni culturalmente sino
biológicamente, este criterio para clasificar las emociones puede ser aplicado
universalmente. Las seis emociones que se establecen en esta clasificación son: tristeza
(sadness), ira (anger), asco (disgust), alegría (joy), sorpresa (suprise) y miedo (fear).
Paul Ekman también desarrolla el FACS [103] (Facial Action Coding System) junto a
Wallace Friesen en 1976 para clasificar todas las expresiones faciales concebibles. Este
sistema se utiliza ampliamente en el campo de la psicología, e incluso la animación, ya
que analiza las expresiones de las diferentes emociones en todo su amplio abanico de
posibilidades. Así, por ejemplo, suponiendo la animación de un personaje que
interpretara “One”, para poder transmitir la letra de la canción fielmente, su expresión
40/81
Clasificación musical personalizada en función del estado de ánimo
facial debería expresar fundamentalmente ira, aunque esta ira estaría fusionada tanto
con la tristeza como con el miedo.
Robert E. Thayer
En el modelo de Thayer para clasificar las emociones éstas se ubican en un sistema de
ejes en el que las abscisas determinan la tensión (stress) y las ordenadas la energía
(energy). La tensión varía entre ansiedad y calma y la energía entre cansancio y energia.
El eje de la tensión también se considera eje de valencia, variando esta de negativa a
positiva. Se definen así cuatro regiones: satisfacción (contentment), depresión
(depression), exuberancia (exuberance) y ansiedad o frenetismo (anxious/frantic); véase
la Figura 44. Así, cada punto del plano es un estado de ánimo o emoción diferente. Si
analizáramos cualquier canción bajo este sistema, ésta estaría en un punto diferente
estando más próximas las que transmitieran o se relacionaran con el mismo estado de
ánimo o emoción. Este modelo es el que utilizan aplicaciones como musicovery [96]
(véase Figura 45). Según Thayer las personas se sienten mejor cuando se combina
calma y energía y peor al tener un estado de tensión y estar cansados (poca energía).
"One" podría ubicarse, por ejemplo, donde aparece una cruz roja en la Figura 44, entre el
frenetismo y la depresión. Es así como también la sitúa musicovery como puede
apreciarse en la Figura 45. Además de musicovery, numerosos trabajos utilizan este
modelo, como por ejemplo los desarrollados en [17][120][125][126][127] o [84].
Figura 44. Modelo de Thayer de las emociones.
41/81
Clasificación musical personalizada en función del estado de ánimo
Figura 45. “One” en musicovery.
Albert Mehrabian
Albert Mehrabian desarrolla el modelo temperamental PAD, en él se describen los grados
de las emociones en función de tres dimensiones consideradas independientes. Estas tres
dimensiones son, al mismo tiempo, las que dan lugar a las siglas PAD: pleasuredispleasure (P), arousal-nonarousal (A) y dominance-submissiveness (D). P distingue
estados emociones positivos de negativos; A hace referencia a la combinación de
actividad física y alerta mental y, por último, D se define en términos de controlar o no
una situación dada. Así, por ejemplo, el enfado es un estado mental bajo en P, alto en A
y, según el caso, alto o bajo en D. En el caso de la música este modelo tendría utilidad
especialmente en los conceptos de P y A más que en D.
Kate Hevner
Kate Hevner [73] define un círculo de adjetivos para caracterizar las emociones. Este
modelo junto con el de Thayer son los más extendidos y utilizados en aplicaciones que
tienen que ver con emociones y música. Los parámetros musicales están mapeados en
un círculo de conceptos emocionales. Se dividen los adjetivos en ocho grupos, tal y como
aparece en la Figura 46. Los ocho grupos se han colocado en el plano definido por Thayer
para relacionar ambos modelos con facilidad. En una pieza musical hay factores que
tienen que ver en que una canción transmita o evoque estos adjetivos, entre todos estos
factores se pueden destacar, como ya se ha explicado anteriormente: modo, tempo,
pitch, ritmo, armonía y melodía. Este modelo se utiliza junto con el de Thayer descrito
anteriormente en trabajos como [16][24][35].
42/81
Clasificación musical personalizada en función del estado de ánimo
Figura 46. Círculo de adjetivos de Kate Hevner en los ejes de Thayer.
Paul R. Farnsworth
Farnsworth, en 1969, establece diez grupos de adjetivos basándose en los que había
definido Kate Hevner años antes en su círculo de adjetivos aunque eliminando algunos de
ellos. En [117] se desarrolla un sistema utilizando los adjetivos de Farnsworth junto con
los definidos por Hevner.
Tellegen y Watson
Tellegen y Watson definen un modelo psicológico en el que situar las emociones. En este
caso, de forma similar a la utilizada en los modelos anteriores, se separan los posibles
adjetivos para calificar emociones en grupos y estos se reparten en un plano. Tellegen y
Watson utilizan dos ejes para definir este plano. Las abscisas determinan la cantidad de
afecto negativo y las ordenadas de afecto positivo. Se puede apreciar el esquema en la
Figura 47.
Figura 47. Modelo de Tellegen y Watson.
43/81
Clasificación musical personalizada en función del estado de ánimo
Otros modelos
Más allá de los enumerados existen otros modelos diferentes; ejemplos de ellos se
pueden encontrar en diversos trabajos y aplicaciones [109][51][119]. También se
pueden encontrar trabajos en los que se combinan varios de los modelos mencionados
[100][42].
44/81
Clasificación musical personalizada en función del estado de ánimo
2.5. Base de Datos: CAL500
2.5.1. Descripción de la base de datos
En la realización de este trabajo se utiliza la base de datos Computer Audition Lab 500Song (CAL500) realizada por el Computer Audition Laboratory [21] de la Universidad de
California en San Diego por Douglas Turnbull, Luke Barrington, David Torres y Gert
Lanckriet en 2007. CAL500 está formada por quinientas canciones de música popular (no
clásica), todas ellas han sido anotadas por un mínimo de tres oyentes. Estas anotaciones
se consiguieron a través de una encuesta que estos oyentes rellenaban mientras
escuchaban todas las canciones en la que quedaba reflejada su experiencia al
escucharlas en base a diversos criterios así como su opinión y otros detalles que se
explican en el apartado 2.5.4. de este trabajo. Todas estas canciones no tienen
problemas de copyright para labores de investigación sobre MIR (Music Information
Retrieval) como lo es este trabajo. Cada una de las canciones, además de las
anotaciones, dispone de varios parámetros acústicos asociados extraídos directamente de
la señal acústica, como se detalla en el apartado 2.5.3.. Los mismos autores que han
realizado CAL500 la han utilizado para la realización de diversos proyectos e
investigaciones [26][29][36][38][39][40][41].
2.5.2. Canciones
Las quinientas canciones están en formato MP3, donde el bitrate habitual de 128 Kbps se
ha reducido a 32 Kbps y la frecuencia de muestreo habitual para audio de 44100 Hz se
ha reducido a la mitad (22050 Hz). Ambos procesos se han realizado para conseguir que
las canciones ocuparan menos espacio y teniendo en cuenta que estos cambios no
afectan la percepción de la canción ni, por tanto, el análisis de sus parámetros acústicos.
La lista completa de canciones aparece en la Figura 48.
10cc-for_you_and_i
2pac-trapped
5th_dimension-one_less_bell_to_answer
a_tribe_called_quest-bonita_applebum
aaron_neville-tell_it_like_it_is
abba-s.o.s.
abc-poison_arrow
ac_dc-dirty_deeds_done_dirt_cheap
adam_and_the_ants-prince_charming
adam_ant-wonderful
adverts-gary_gilmores_eyes
aerobic_jonquil-sweat_machine
aerosmith-dude_looks_like_a_lady
aimee_mann-wise_up
air-sexy_boy
al_green-sha-la-la_make_me_happy
alanis_morissette-thank_u
alice_cooper-elected
alice_in_chains-no_excuses
alicia_keys-fallin
allman_brothers_band-melissa
altered_images-dont_talk_to_me_about_love
american_music_club-jesus_hands
andrews_sisters-boogie_woogie_bugle_boy
ani_difranco-crime_for_crime
animals-im_crying
anita_baker-caught_up_in_the_rapture
antiguru-peering
antonio_carlos_jobim-wave
anup-life_glides
aphex_twin-come_to_daddy
apples_in_stereo-glowworm
aretha_franklin-dont_play_that_song
arlo_guthrie-alices_restaurant_massacree
art_tatum-willow_weep_for_me
artemis-don_t_look_back
arthur_alexander-you_dont_care
arthur_yoria-at_least_you_ve_been_told
ashford_and_simpson-solid
association-windy
atomic_opera-watergrave
b.b._king-sweet_little_angel
backstreet_boys-as_long_as_you_love_me
badly_drawn_boy-all_possibilities
band-king_harvest_has_surely_come
barbara_leoni-don_t_rain_on_my_parade
barenaked_ladies-its_all_been_done
barry_manilow-mandy
barry_white-cant_get_enough_of_your_love_babe
bauhaus-ziggy_stardust
bay_city_rollers-saturday_night
beach_boys-i_get_around
beatles-strawberry_fields_forever
beatundercontrol-this_is_beatundercontrol
beautiful_south-one_last_love_song
beck-where_its_at
bee_gees-stayin_alive
belief_systems-skunk_werks
belle_and_sebastian-like_dylan_in_the_movies
ben_folds_five-brick
beth_quist-survival
big_star-in_the_street
billie_holiday-god_bless_the_child
billy_bragg-jeane
billy_joel-we_didnt_start_the_fire
birthday_party-mr._clarinet
bjrk-army_of_me
black_crowes-thorn_in_my_pride
black_flag-six_pack
black_sabbath-black_sabbath
blind_faith-had_to_cry_today
blind_melon-no_rain
dead_kennedys-chemical_warfare
def_leppard-pour_some_sugar_on_me
dennis_brown-tribulation
depeche_mode-world_in_my_eyes
devo-girl_u_want
diana_ross_and_the_supremes-where_did_our_love_go
dido-here_with_me
dionne_warwick-walk_on_by
dire_straits-money_for_nothing
dj_jazzy_jeff_and_the_fresh_prince-summertime
dj_markitos-sunset_138_bpm_remix
django_reinhardt-brazil
domased-too_slow
donovan-catch_the_wind
doobie_brothers-china_grove
doors-touch_me
dr._dre-nuthin_but_a_g_thang
dr_kuch-persuaders_dub
drevo-our_watcher_show_us_the_way
drop_trio-slapjack
duke_ellington_and_his_orchestra-caravan
duncan_sheik-barely_breathing
duran_duran-come_undone
eagles-tequila_sunrise
earth_wind_and_fire-september
eels-cancer_for_the_cure
electric_frankenstein-teenage_shutdown
elliott_smith-baby_britain
elton_john-tiny_dancer
elvis_costello-less_than_zero
elvis_presley-heartbreak_hotel
eminem-my_fault
emma_s_mini-lost
erasure-chains_of_love
eric_clapton-wonderful_tonight
etherine-never_leave
eurythmics-sweet_dreams
evanescence-my_immortal
everly_brothers-take_a_message_to_mary
faith_hill-lets_make_love
faith_no_more-epic
falik-bliss
fiona_apple-love_ridden
fleetwood_mac-say_you_love_me
flying_burrito_brothers-break_my_mind
foo_fighters-big_me
four_stones-brilliant_day_eine_kleine_mix
frank_sinatra-fly_me_to_the_moon
frank_zappa-whats_the_ugliest_part_of_your_body
franz_ferdinand-come_on_home
garbage-hammering_in_my_head
gene_clark-the_true_one
genesis-cuckoo_cocoon
george_harrison-all_things_must_pass
germs-lexicon_devil
gin_blossoms-hey_jealousy
glen_bledsoe-p_pop
glenn_miller-in_the_mood
gloria_gaynor-i_will_survive
go-gos-vacation
gram_parsons-1000_wedding
grateful_dead-high_time
grayson_wray-heaven_s_the_place
green_day-longview
guided_by_voices-kicker_of_elves
guns_n_roses-november_rain
hall_and_oates-private_eyes
howlin_wolf-moanin_at_midnight
human_response-angels
hybris-hate
ike_and_tina_turner-river_deep_mountain_high
indidginus-dusty_lands
norine_braun-spanish_banks
nova_express-i_m_alive
oasis-supersonic
ojays-livin_for_the_weekend
olivia_tremor_control-i_have_been_floated
otis_redding-mr._pitiful
outkast-ms._jackson
panacea-dragaicuta
pantera-becoming
paul_mccartney-ebony_and_ivory
pearl_jam-yellow_ledbetter
pet_shop_boys-being_boring
pink_floyd-echoes
pixies-wave_of_mutilation
pizzle-what_s_wrong_with_my_footm
pj_harvey-dry
police-every_little_thing_she_does_is_magic
portishead-all_mine
pretenders-day_after_day
primus-jerry_was_a_race_car_driver
processor-nibtal_7
propellerheads-take_california
psychedelic_furs-love_my_way
psychetropic-dead_slow_day
queen-we_will_rock_you
r.e.m.-camera
radiohead-karma_police
rage_against_the_machine-maggies_farm
ramones-i_just_want_to_have_something_to_do
randy_newman-sail_away
ray_charles-hit_the_road_jack
red_hot_chili_peppers-give_it_away
replacements-answering_machine
rick_james-super_freak
robert_johnson-sweet_home_chicago
rocket_city_riot-mine_tonite
rolling_stones-little_by_little
ronettes-walking_in_the_rain
roots_of_rebellion-legend
roxy_music-love_is_the_drug
roy_orbison-running_scared
rubn_gonzlez-cumbanchero
rufus_wainwright-cigarettes_and_chocolate_milk
sade-smooth_operator
santana-love_of_my_life
sarah_mclachlan-possession
saros-prelude
scott_hill-silk_road
screaming_trees-nearly_lost_you
sebadoh-soul_and_fire
seismic_anamoly-wreckinball
sex_pistols-pretty_vacant
shakira-the_one
shane_jackman-set_fire_to_the_city
sheryl_crow-i_shall_believe
shins-new_slang
shira_kammen-music_of_waters
shiva_in_exile-hollow_earth
shuggie_otis-sweet_thang
simon_and_garfunkel-the_only_living_boy_in_new_york
sinad_oconnor-no_mans_woman
sir_mix-a-lot-baby_got_back
skitzo-last_depression
sly_and_the_family_stone-just_like_a_baby
small_faces-lazy_sunday
smashing_pumpkins-rocket
smithereens-behind_the_wall_of_sleep
smiths-how_soon_is_now
smokey_robinson-cruisin
smokey_robinson_and_the_miracles-ooo_baby_baby
snoop_doggy_dogg-gin_and_juice
solace-laz_7_8
45/81
Clasificación musical personalizada en función del estado de ánimo
blondie-rapture
blood_sweat_and_tears-sometimes_in_winter
blue_yster_cult-burnin_for_you
blur-country_house
bo_diddley-you_cant_judge_a_book_by_its_cover
bob_dylan-ill_be_your_baby_tonight
bob_marley_and_the_wailers-three_little_birds
bob_seger-turn_the_page
bobby_brown-my_prerogative
bobby_fuller_four-i_fought_the_law
bobby_womack-womans_gotta_have_it
bomb_the_bass-bug_powder_dust
bon_jovi-livin_on_a_prayer
bonnie_tyler-total_eclipse_of_the_heart
boo_radleys-wake_up_boo
boogie_down_productions-the_bridge_is_over
booker_t._and_the_mgs-time_is_tight
boston-more_than_a_feeling
bots-take_the_power_back
brad_sucks-overreacting
bread-if
breeders-cannonball
brenton_wood-lovey_dovey_kind_of_love
brian_eno-here_come_the_warm_jets
britney_spears-im_a_slave_for_you
bruce_springsteen-badlands
bryan_adams-cuts_like_a_knife
buddy_holly-peggy_sue
buena_vista_social_club-el_cuarto_de_tula
buffalo_springfield-for_what_its_worth
buffalo_springfield-mr._soul
buggles-video_killed_the_radio_star
built_to_spill-i_would_hurt_a_fly
burnshee_thornside-goodbye_on_a_beautiful_day
bush-comedown
busta_rhymes-woo_hah_got_you_all_in_check
buzzcocks-everybodys_happy_nowadays
byrds-wasnt_born_to_follow
c_layne-devil_and_the_woman
cab_calloway-minnie_the_moocher
cake-perhaps,_perhaps,_perhaps
camper_van_beethoven-take_the_skinheads_bowling
canned_heat-on_the_road_again
captain_beefheart_and_the_magic_band-safe_as_milk
cardigans-lovefool
cargo_cult-garden
carl_perkins-matchbox
carly_simon-youre_so_vain
carole_king-youve_got_a_friend
carpenters-rainy_days_and_mondays
cars-good_times_roll
cat_power-he_war
catherine_wheel-black_metallic
cc_music_factorygonna_make_you_sweat_everybody_dance_now
chad_and_jeremy-before_and_after
chantal_kreviazuk-surrounded
charles_mingus-mood_indigo
charlie_parker-ornithology
charlie_rich-behind_closed_doors
cheap_trick-dream_police
chemical_brothers-setting_sun
cheryl_ann_fulton-marsh_of_rhuddlan
chet_baker-these_foolish_things
chi-lites-stoned_out_of_my_mind
chic-le_freak
chicago-if_you_leave_me_now
chills-i_love_my_leather_jacket
chris_juergensen-prospects
christina_aguilera-genie_in_a_bottle
chuck_berry-roll_over_beethoven
chumbawamba-tubthumping
church-under_the_milky_way
cilla_black-alfie
clarence_ashley-the_house_carpenter
clash-lost_in_the_supermarket
coasters-poison_ivy
coldplay-clocks
contours-do_you_love_me
count_basie-lester_leaps_in
counting_crows-speedway
cowboy_junkies-postcard_blues
cranberries-linger
cream-tales_of_brave_ulysses
creedence_clearwater_revival-travelin_band
crosby_stills_and_nash-guinnevere
crosby_stills_nash_and_young-teach_your_children
curandero-aras
cure-just_like_heaven
curtis_mayfield-move_on_up
cyndi_lauper-money_changes_everything
cypress_hill-lowrider
daft_punk-da_funk
darkness-i_believe_in_a_thing_called_love
dave_matthews_band-ants_marching
david_bowie-song_for_bob_dylan
de_la_soul-eye_know
interpol-stella_was_a_diver_and_she_was_always_down
introspekt-tbd
ivilion-d_b_l
jackalopes-rotgut
jackson_5-abc
jacques_brel-les_vieux
jade_leary-going_in
jag-jag_s_rag
james_brown-give_it_up_or_turnit_a_loose
james_taylor-fire_and_rain
jamie_janover-event_horizon
jamiroquai-little_l
jan_and_dean-surf_city
janes_addiction-been_caught_stealing
janet_jackson-miss_you_much
jay_kishor-raga_malgunji_jor
jeff_buckley-last_goodbye
jefferson_airplane-somebody_to_love
jerry_lee_lewis-great_balls_of_fire
jesse_manno-alf_leyla_wa_leyla
jewel-enter_from_the_east
jimi_hendrix-highway_chile
john_cale-pablo_picasso
john_coltrane-giant_steps
john_lee_hooker-boom_boom
john_lennon-imagine
johnny_cash-the_man_comes_around
joram-solipsism
joy_division-love_will_tear_us_apart
junior_murvin-police_and_thieves
kansas-carry_on_wayward_son
kanye_west-gold_digger
kenji_williams-i_m_alive
king_crimson-thela_hun_ginjeet
kiss-deuce
kokoon-order
kool_and_the_gang-funky_stuff
kourosh_zolani-peaceful_planet
kraftwerk-spacelab
kris_kristofferson-the_best_of_all_possible_worlds
lambert_hendricks_and_ross-gimme_that_wine
led_zeppelin-immigrant_song
leonard_cohen-suzanne
lisa_debenedictis-fruitless
live-lightning_crashes
liz_phair-supernova
ll_cool_j-mama_said_knock_you_out
los_lobos-corrido_1
lou_reed-walk_on_the_wild_side
louis_armstrong-hotter_than_that
love-you_set_the_scene
love_and_rockets-mirror_people
lynyrd_skynyrd-sweet_home_alabama
macy_gray-i_try
madness-baggy_trousers
madonna-ray_of_light
mamas_and_the_papas-words_of_love
manassas-bound_to_fall
marvelettes-please_mr._postman
marvin_gaye-whats_going_on
mary_wells-my_guy
massive_attack-risingson
mazzy_star-fade_into_you
mc_hammer-u_cant_touch_this
memories_of_tomorrow-transcend_fate_of_a_dj
men_at_work-who_can_it_be_now
metallica-one
michael_jackson-billie_jean
michael_masley-advice_from_the_angel_of_thresholds
miles_davis-blue_in_green
moby-porcelain
modest_mouse-what_people_are_made_of
monkees-a_little_bit_me_a_little_bit_you
monoide-golden_key
morrissey-everyday_is_like_sunday
mose_allison-monsters_of_the_id
mott_the_hoople-roll_away_the_stone
mr_epic-ruff_and_tumble
mr_gelatine-knysnamushrooms
mrdc-leaving
muddy_waters-im_ready
muddy_waters-mannish_boy
my_bloody_valentine-when_you_sleep
myles_cochran-getting_stronger
napoleon_blown_aparts-higher_education
natalie_imbruglia-torn
neil_young-razor_love
neil_young_and_crazy_horse-western_hero
nelly-country_grammar
neutral_milk_hotel-where_youll_find_me_now
new_order-blue_monday
nine_inch_nails-head_like_a_hole
nirvana-aneurysm
no_doubt-artificial_sweetener
no_doubt-simple_kind_of_life
norah_jones-dont_know_why
somadrone-coda
sonic_youth-teen_age_riot
sonny_rollins-strode_rode
soul_ii_soul-keep_on_movin
soulprint-crawlspace
soundgarden-black_hole_sun
specials-gangsters
spencer_davis_group-gimme_some_lovin
spice_girls-stop
spinecar-stay
spiritualized-stop_your_crying
squarepusher-a_journey_to_reedham_(7am_mix)
squeeze-pulling_mussels_from_the_shell
stan_getz-corcovado_quiet_nights_of_quiet_stars
standells-dirty_water
starship-nothings_gonna_stop_us_now
steely_dan-rikki_dont_lose_that_number
steppenwolf-born_to_be_wild
stereolab-cybeles_reverie
stevie_ray_vaughan-pride_and_joy
stevie_wonder-for_once_in_my_life
sting-big_lie_small_world
stone_roses-i_wanna_be_adored
stooges-dirt
stranglers-golden_brown
strawbs-new_world
strojovna_07-130
style_council-headstart_for_happiness
sundays-heres_where_the_story_ends
superchunk-slack_motherfucker
sweet-fox_on_the_run
syd_barrett-effervescing_elephant
sylvester-you_make_me_feel_mighty_real
syreeta-what_love_has_joined_together
t._rex-children_of_the_revolution
talking_heads-and_she_was
tears_for_fears-everybody_wants_to_rule_the_world
teenage_fanclub-the_concept
television-venus
temptations-since_i_lost_my_baby
thelonious_monk-epistrophy
they_might_be_giants-i_should_be_allowed_to_think
thin_lizzy-dont_believe_a_word
third_eye_blind-semi-charmed_life
throwing_muses-hate_my_way
thursday_group-like_white_on_rice
tilopa-kyo_rei
tim_buckley-morning_glory
tim_hardin-dont_make_promises
tim_rayborn-yedi_tekrar
todd_rundgren-bang_the_drum_all_day
tom_paul-little_part_of_me
tom_petty-i_wont_back_down
tom_petty_and_the_heartbreakersdont_come_around_here_no_more
tom_waits-time
tommy_james_and_the_shondells-i_think_were_alone_now
tori_amos-professional_widow
touchinggrace-wild_spring_apples
traffic-pearly_queen
tricky-christiansands
troggs-wild_thing
turtles-elenore
u2-hold_me_thrill_me_kiss_me_kill_me
ultravox-dancing_with_tears_in_my_eyes
uncle_tupelo-the_long_cut
urge_overkill-sister_havana
utopia_banished-by_mourning
van_halen-aint_talkin_bout_love
van_morrison-and_it_stoned_me
vapors-turning_japanese
velvet_underground-new_age
version-universal_humans
very_large_array-psychedelic_baby
violent_femmes-blister_in_the_sun
war-all_day_music
weezer-buddy_holly
wes_montgomery-bumpin
west_exit-nocturne
white_stripes-hotel_yorba
whitney_houston-how_will_i_know
who-bargain
wicked_allstars-happy
wicked_boy-pressure
wilco-kingpin
williamson-whats_on_the_ceiling_beats_whats_on_tv
xtc-love_at_first_sight
yakshi-chandra
yeah_yeah_yeahs-maps
yes-leave_it
yo_la_tengo-tom_courtenay
young_mc-bust_a_move
young_rascals-baby_lets_wait
zapp-dance_floor
zombies-beechwood_park
Figura 48. Lista de canciones (songNames.txt)
2.5.3. Anotaciones semánticas
songNames.txt
Aparece en cada línea el título de una de las quinientas canciones. Los espacios aparecen
con un guión bajo y la separación entre artista y canción con un guión. No aparecen
apostrofes ni otros caracteres. Se puede ver el fichero en la Figura 48 anterior.
vocab.txt
En este archivo figuran los 174 conceptos sobre los que se extrae información en la
encuesta que se hizo a los oyentes. Como se explica posteriormente estos 174 conceptos
están relacionados con las anotaciones binarias que se extrajeron de las encuestas. Los
174 conceptos aparecen en la Figura 49. Como se ve hacen referencia a emoción,
género, instrumentos y presencia o no de solos de los mismos, adjetivos relacionados
con la melodía y la voz y situaciones en las que los oyentes consideran más acorde
escuchar esas canciones.
46/81
Clasificación musical personalizada en función del estado de ánimo
Emotion-Angry_/_Agressive
NOT-Emotion-Angry_/_Agressive
Emotion-Arousing_/_Awakening
NOT-Emotion-Arousing_/_Awakening
Emotion-Bizarre_/_Weird
NOT-Emotion-Bizarre_/_Weird
Emotion-Calming_/_Soothing
NOT-Emotion-Calming_/_Soothing
Emotion-Carefree_/_Lighthearted
NOT-Emotion-Carefree_/_Lighthearted
Emotion-Cheerful_/_Festive
NOT-Emotion-Cheerful_/_Festive
Emotion-Emotional_/_Passionate
NOT-Emotion-Emotional_/_Passionate
Emotion-Exciting_/_Thrilling
NOT-Emotion-Exciting_/_Thrilling
Emotion-Happy
NOT-Emotion-Happy
Emotion-Laid-back_/_Mellow
NOT-Emotion-Laid-back_/_Mellow
Emotion-Light_/_Playful
NOT-Emotion-Light_/_Playful
Emotion-Loving_/_Romantic
NOT-Emotion-Loving_/_Romantic
Emotion-Pleasant_/_Comfortable
NOT-Emotion-Pleasant_/_Comfortable
Emotion-Positive_/_Optimistic
NOT-Emotion-Positive_/_Optimistic
Emotion-Powerful_/_Strong
NOT-Emotion-Powerful_/_Strong
Emotion-Sad
NOT-Emotion-Sad
Emotion-Tender_/_Soft
NOT-Emotion-Tender_/_Soft
Emotion-Touching_/_Loving
NOT-Emotion-Touching_/_Loving
Genre--_Alternative
Genre--_Alternative_Folk
Genre--_Bebop
Genre--_Brit_Pop
Genre--_Classic_Rock
Genre--_Contemporary_Blues
Genre--_Contemporary_R&B
Genre--_Cool_Jazz
Genre--_Country_Blues
Genre--_Dance_Pop
Genre--_Electric_Blues
Genre--_Funk
Genre--_Gospel
Genre--_Metal/Hard_Rock
Genre--_Punk
Genre--_Roots_Rock
Genre--_Singer_/_Songwriter
Genre--_Soft_Rock
Genre--_Soul
Genre--_Swing
Genre-Bluegrass
Genre-Blues
Genre-Country
Genre-Electronica
Genre-Folk
Genre-Hip_Hop/Rap
Genre-Jazz
Genre-Pop
Genre-R&B
Genre-Rock
Genre-World
Instrument_-_Acoustic_Guitar
Instrument_-_Ambient_Sounds
Instrument_-_Backing_vocals
Instrument_-_Bass
Instrument_-_Drum_Machine
Instrument_-_Drum_Set
Instrument_-_Electric_Guitar_(clean)
Instrument_-_Electric_Guitar_(distorted)
Instrument_-_Female_Lead_Vocals
Instrument_-_Hand_Drums
Instrument_-_Harmonica
Instrument_-_Horn_Section
Instrument_-_Male_Lead_Vocals
Instrument_-_Organ
Instrument_-_Piano
Instrument_-_Samples
Instrument_-_Saxophone
Instrument_-_Sequencer
Instrument_-_String_Ensemble
Instrument_-_Synthesizer
Instrument_-_Tambourine
Instrument_-_Trombone
Instrument_-_Trumpet
Instrument_-_Violin/Fiddle
Song-Catchy/Memorable
NOT-Song-Catchy/Memorable
Song-Changing_Energy_Level
NOT-Song-Changing_Energy_Level
Song-Fast_Tempo
NOT-Song-Fast_Tempo
Song-Heavy_Beat
NOT-Song-Heavy_Beat
Song-High_Energy
NOT-Song-High_Energy
Song-Like
NOT-Song-Like
Song-Positive_Feelings
NOT-Song-Positive_Feelings
Song-Quality
NOT-Song-Quality
Song-Recommend
NOT-Song-Recommend
Song-Recorded
NOT-Song-Recorded
Song-Texture_Acoustic
Song-Texture_Electric
Song-Texture_Synthesized
Song-Tonality
NOT-Song-Tonality
Song-Very_Danceable
NOT-Song-Very_Danceable
Usage-At_a_party
Usage-At_work
Usage-Cleaning_the_house
Usage-Driving
Usage-Exercising
Usage-Getting_ready_to_go_out
Usage-Going_to_sleep
Usage-Hanging_with_friends
Usage-Intensely_Listening
Usage-Reading
Usage-Romancing
Usage-Sleeping
Usage-Studying
Usage-Waking_up
Usage-With_the_family
Vocals-Aggressive
Vocals-Altered_with_Effects
Vocals-Breathy
Vocals-Call_&_Response
Vocals-Duet
Vocals-Emotional
Vocals-Falsetto
Vocals-Gravelly
Vocals-High-pitched
Vocals-Low-pitched
Vocals-Monotone
Vocals-Rapping
Vocals-Screaming
Vocals-Spoken
Vocals-Strong
Vocals-Vocal_Harmonies
Genre-Best--_Alternative
Genre-Best--_Classic_Rock
Genre-Best--_Metal/Hard_Rock
Genre-Best--_Punk
Genre-Best--_Soft_Rock
Genre-Best--_Soul
Genre-Best-Blues
Genre-Best-Country
Genre-Best-Electronica
Genre-Best-Folk
Genre-Best-Hip_Hop/Rap
Genre-Best-Jazz
Genre-Best-Pop
Genre-Best-R&B
Genre-Best-Rock
Genre-Best-World
Instrument_-_Acoustic_Guitar-Solo
Instrument_-_Electric_Guitar_(clean)-Solo
Instrument_-_Electric_Guitar_(distorted)-Solo
Instrument_-_Female_Lead_Vocals-Solo
Instrument_-_Harmonica-Solo
Instrument_-_Male_Lead_Vocals-Solo
Instrument_-_Piano-Solo
Instrument_-_Saxophone-Solo
Instrument_-_Trumpet-Solo
Figura 49. Vocabolario asociado a las canciones (vocab.txt)
/annotations
En esta carpeta incluida en la base de datos aparecen un mínimo de tres archivos de
texto por cada canción (en el caso de “One” aparecen tres). Cada uno de estos archivos
incluye las anotaciones realizadas por los usuarios al realizar la encuesta. En la Figura 50
se pueden ver estos tres archivos.
songName = "metallica-one.mp3"
PageStatus = "Annotation"
Instrument_-_String_Ensemble = "None"
Instrument_-_Male_Lead_Vocals = "Prominent"
Instrument_-_Orchestra = "None"
Instrument_-_Female_Lead_Vocals = "None"
Instrument_-_Backing_vocals = "None"
Instrument_-_Harmonica = "None"
Instrument_-_Choir = "None"
Instrument_-_Trumpet = "None"
Instrument_-_Trombone = "None"
Instrument_-_Acoustic_Guitar = "Prominent"
Instrument_-_Acoustic_Guitar-Solo = "yes"
Instrument_-_Saxophone = "None"
songName = "metallica-one.mp3"
PageStatus = "Annotation"
Instrument_-_String_Ensemble = "None"
Instrument_-_Male_Lead_Vocals = "Prominent"
Instrument_-_Male_Lead_Vocals-Solo = "yes"
Instrument_-_Orchestra = "None"
Instrument_-_Female_Lead_Vocals = "None"
Instrument_-_Backing_vocals = "Present"
Instrument_-_Harmonica = "None"
Instrument_-_Choir = "None"
Instrument_-_Trumpet = "None"
Instrument_-_Trombone = "None"
Instrument_-_Acoustic_Guitar = "None"
Instrument_-_Saxophone = "None"
songName = "metallica-one.mp3"
PageStatus = "Annotation"
Instrument_-_String_Ensemble = "None"
Instrument_-_Male_Lead_Vocals = "Prominent"
Instrument_-_Male_Lead_Vocals-Solo = "yes"
Instrument_-_Orchestra = "None"
Instrument_-_Female_Lead_Vocals = "None"
Instrument_-_Backing_vocals = "Present"
Instrument_-_Harmonica = "None"
Instrument_-_Choir = "None"
Instrument_-_Trumpet = "None"
Instrument_-_Trombone = "None"
Instrument_-_Acoustic_Guitar = "Prominent"
Instrument_-_Saxophone = "None"
Instrument_-_Electric_Guitar_(clean) = "Prominent"
Instrument_-_Electric_Guitar_(clean)-Solo = "yes"
Instrument_-_Horn_Section = "None"
Instrument_-_Electric_Guitar_(distorted) = "Prominent"
Instrument_-_Electric_Guitar_(distorted)-Solo = "yes"
Instrument_-_Electric_Guitar_(clean) = "Prominent"
Instrument_-_Electric_Guitar_(clean)-Solo = "yes"
Instrument_-_Horn_Section = "None"
Instrument_-_Electric_Guitar_(distorted) = "None"
Instrument_-_Electric_Guitar_(clean) = "Prominent"
Instrument_-_Electric_Guitar_(clean)-Solo = "yes"
Instrument_-_Horn_Section = "None"
Instrument_-_Electric_Guitar_(distorted) = "Prominent"
Instrument_-_Electric_Guitar_(distorted)-Solo = "yes"
Instrument_-_Slide_Guitar = "None"
Instrument_-_Samples = "Uncertain"
Instrument_-_Bass = "None"
Instrument_-_Ambient_Sounds = "Uncertain"
Instrument_-_Banjo = "None"
Instrument_-_Scratches = "Uncertain"
Instrument_-_Sequencer = "Prominent"
Instrument_-_Piano = "None"
Instrument_-_Organ = "None"
Instrument_-_Drum_Set = "Present"
Instrument_-_Synthesizer = "None"
Instrument_-_Drum_Machine = "None"
Instrument_-_Hand_Drums = "None"
Instrument_-_Violin/Fiddle = "None"
Instrument_-_Tambourine = "None"
Vocals-Aggressive = "Yes"
Vocals-Monotone = "Yes"
Vocals-Altered_with_Effects = "No"
Vocals-Nasal = "No"
Vocals-Breathy = "No"
Vocals-Off-key = "No"
Vocals-Call_&_Response = "No"
Vocals-Rapping = "No"
Instrument_-_Slide_Guitar = "None"
Instrument_-_Samples = "Prominent"
Instrument_-_Samples-Solo = "yes"
Instrument_-_Bass = "None"
Instrument_-_Ambient_Sounds = "Present"
Instrument_-_Banjo = "None"
Instrument_-_Scratches = "None"
Instrument_-_Sequencer = "Uncertain"
Instrument_-_Piano = "None"
Instrument_-_Organ = "None"
Instrument_-_Drum_Set = "Present"
Instrument_-_Synthesizer = "None"
Instrument_-_Drum_Machine = "None"
Instrument_-_Hand_Drums = "None"
Instrument_-_Violin/Fiddle = "None"
Instrument_-_Tambourine = "None"
Vocals-Aggressive = "No"
Vocals-Monotone = "No"
Vocals-Altered_with_Effects = "Uncertain"
Vocals-Nasal = "No"
Vocals-Breathy = "No"
Vocals-Off-key = "No"
Vocals-Call_&_Response = "No"
Instrument_-_Slide_Guitar = "Uncertain"
Instrument_-_Samples = "Prominent"
Instrument_-_Bass = "Prominent"
Instrument_-_Ambient_Sounds = "Prominent"
Instrument_-_Banjo = "None"
Instrument_-_Scratches = "None"
Instrument_-_Sequencer = "Present"
Instrument_-_Piano = "None"
Instrument_-_Organ = "None"
Instrument_-_Drum_Set = "Present"
Instrument_-_Synthesizer = "None"
Instrument_-_Drum_Machine = "Present"
Instrument_-_Hand_Drums = "None"
Instrument_-_Violin/Fiddle = "None"
Instrument_-_Tambourine = "None"
Vocals-Aggressive = "Yes"
Vocals-Monotone = "No"
Vocals-Altered_with_Effects = "Yes"
Vocals-Nasal = "No"
Vocals-Breathy = "No"
Vocals-Off-key = "No"
Vocals-Call_&_Response = "No"
Vocals-Rapping = "No"
47/81
Clasificación musical personalizada en función del estado de ánimo
Vocals-Duet = "No"
Vocals-Scatting = "No"
Vocals-Emotional = "No"
Vocals-Screaming = "Uncertain"
Vocals-Falsetto = "No"
Vocals-Spoken = "No"
Vocals-Gravelly = "Yes"
Vocals-Strong = "No"
Vocals-Vocal_Harmonies = "Yes"
Vocals-Unintelligible = "Yes"
Vocals-High-pitched = "No"
Vocals-Virtuoso = "No"
Vocals-Low-pitched = "Yes"
Vocals-Weak = "No"
Genre-Best = "-_Metal/Hard_Rock"
Emotion-Happy = "1"
Emotion-Sad = "1"
Emotion-Calming_/_Soothing = "1"
Emotion-Arousing_/_Awakening = "3"
Emotion-Pleasant_/_Comfortable = "1"
Emotion-Cheerful_/_Festive = "1"
Emotion-Tender_/_Soft = "1"
Emotion-Powerful_/_Strong = "3"
Emotion-Loving_/_Romantic = "1"
Emotion-Carefree_/_Lighthearted = "1"
Emotion-Exciting_/_Thrilling = "2"
Emotion-Emotional_/_Passionate = "1"
Emotion-Positive_/_Optimistic = "1"
Emotion-Touching_/_Loving = "1"
Emotion-Light_/_Playful = "1"
Emotion-Angry_/_Agressive = "4"
Emotion-Laid-back_/_Mellow = "1"
Emotion-Bizarre_/_Weird = "2"
Song-Heard_Before = "No"
Song-Identify_Artist = "No"
Song-Like = "No_Opinion"
Song-Recommend = "No_Opinion"
Song-Recorded = "Concert"
Song-Quality = "Medium"
Song-Texture_Acoustic = "Yes"
Song-Texture_Electric = "Yes"
Song-Tonality = "Uncertain"
Song-High_Energy = "5"
Song-Changing_Energy_Level = "4"
Song-Heavy_Beat = "5"
Song-Fast_Tempo = "5"
Song-Very_Danceable = "1"
Song-Positive_Feelings = "1"
Song-Catchy/Memorable = "3"
Usage-Never = "Yes"
Vocals-Rapping = "No"
Vocals-Duet = "No"
Vocals-Scatting = "No"
Vocals-Emotional = "No"
Vocals-Screaming = "No"
Vocals-Falsetto = "No"
Vocals-Spoken = "No"
Vocals-Gravelly = "No"
Vocals-Strong = "No"
Vocals-Vocal_Harmonies = "Yes"
Vocals-Unintelligible = "Uncertain"
Vocals-High-pitched = "No"
Vocals-Virtuoso = "No"
Vocals-Low-pitched = "No"
Vocals-Weak = "Yes"
Genre-Best = "Rock"
Genre-Rock = "yes"
Genre--_Alternative = "yes"
Genre--_Punk = "yes"
Emotion-Happy = "2"
Emotion-Sad = "2"
Emotion-Calming_/_Soothing = "2"
Emotion-Arousing_/_Awakening = "2"
Emotion-Pleasant_/_Comfortable = "3"
Emotion-Cheerful_/_Festive = "2"
Emotion-Tender_/_Soft = "3"
Emotion-Powerful_/_Strong = "2"
Emotion-Loving_/_Romantic = "2"
Emotion-Carefree_/_Lighthearted = "2"
Emotion-Exciting_/_Thrilling = "2"
Emotion-Emotional_/_Passionate = "1"
Emotion-Positive_/_Optimistic = "2"
Emotion-Touching_/_Loving = "1"
Emotion-Light_/_Playful = "1"
Emotion-Angry_/_Agressive = "1"
Emotion-Laid-back_/_Mellow = "3"
Emotion-Bizarre_/_Weird = "1"
Song-Heard_Before = "No"
Song-Identify_Artist = "No"
Song-Like = "Yes"
Song-Recommend = "No_Opinion"
Song-Recorded = "Concert"
Song-Quality = "Medium"
Song-Texture_Electric = "Yes"
Song-Tonality = "Major"
Song-High_Energy = "2"
Song-Changing_Energy_Level = "1"
Song-Heavy_Beat = "2"
Song-Fast_Tempo = "2"
Song-Very_Danceable = "1"
Song-Positive_Feelings = "3"
Song-Catchy/Memorable = "3"
Usage-Driving = "Yes"
Usage-Getting_ready_to_go_out = "Yes"
Vocals-Duet = "No"
Vocals-Scatting = "No"
Vocals-Emotional = "Yes"
Vocals-Screaming = "No"
Vocals-Falsetto = "No"
Vocals-Spoken = "No"
Vocals-Gravelly = "No"
Vocals-Strong = "No"
Vocals-Vocal_Harmonies = "No"
Vocals-Unintelligible = "No"
Vocals-High-pitched = "No"
Vocals-Virtuoso = "No"
Vocals-Low-pitched = "No"
Vocals-Weak = "No"
Genre-Rock = "yes"
Genre-Best = "Pop"
Genre-Pop = "yes"
Emotion-Happy = "2"
Emotion-Sad = "4"
Emotion-Calming_/_Soothing = "1"
Emotion-Arousing_/_Awakening = "4"
Emotion-Pleasant_/_Comfortable = "2"
Emotion-Cheerful_/_Festive = "2"
Emotion-Tender_/_Soft = "1"
Emotion-Powerful_/_Strong = "5"
Emotion-Loving_/_Romantic = "1"
Emotion-Carefree_/_Lighthearted = "1"
Emotion-Exciting_/_Thrilling = "4"
Emotion-Emotional_/_Passionate = "1"
Emotion-Positive_/_Optimistic = "3"
Emotion-Touching_/_Loving = "1"
Emotion-Light_/_Playful = "1"
Emotion-Angry_/_Agressive = "5"
Emotion-Laid-back_/_Mellow = "1"
Emotion-Bizarre_/_Weird = "4"
Song-Heard_Before = "No"
Song-Identify_Artist = "No"
Song-Like = "Yes"
Song-Recommend = "Yes"
Song-Recorded = "Concert"
Song-Quality = "High"
Song-Texture_Synthesized = "Yes"
Song-Tonality = "Uncertain"
Song-High_Energy = "5"
Song-Changing_Energy_Level = "4"
Song-Heavy_Beat = "5"
Song-Fast_Tempo = "4"
Song-Very_Danceable = "4"
Song-Positive_Feelings = "3"
Song-Catchy/Memorable = "2"
Usage-Cleaning_the_house = "Yes"
Usage-Exercising = "Yes"
Figura 50. Ejemplo de los tres ficheros de anotaciones de “One”
softAnnotations.txt
En este archivo aparece el resultado de analizar los resultados en función de los 174
conceptos contenidos en vocab.txt. En este fichero cada una de las 502 líneas contiene
174 valores separados con una coma. El que aparece a continuación es el que pertenece
a “One”.
0.33333,0,0,0,0,0.33333,0,1,0,1,0,1,0,1,0,0.33333,0,1,0,0.66667,0,1,0,1,0,0
.66667,0,0.66667,0,0,0,0.33333,0,0.66667,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.66667,0,0.33333,0.66667,0.33333,0,0,1,1,0.333
33,0,0,0,0,1,0,0,0.66667,0,0.66667,0,0,0,0,0,0,0,0,0.33333,0,0.33333,0,0.33
333,0,0.33333,0,0.66667,0,0,0,0,0,0,0,0,1,0,0.66667,0,0,0,0,0.33333,0,0,0,0
,0,0,0,0,0,0,0,0,0,0,0,0.33333,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.33333,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,1,0.66667,0,0,0.66667,0,0,0
El orden en el que aparecen los 174 valores corresponde con el orden del fichero
vocab.txt. Algunos de los conceptos como por ejemplo Instrument_-_Drum_Set en la
encuesta solo permitían una respuesta de “Yes” o “No”, en estos casos la respuesta
positiva toma el valor de 1 y la negativa 0. Otros conceptos extraídos de la encuesta
como Emotion-Happy = "2" admitían una respuesta en cinco grados (1 siendo el mínimo
y 5 el máximo), en el vocabulario esto se traduce en dos valores diferentes: EmotionHappy y NOT-Emotion-Happy. Así los grados 1 y 2 cuentan como –1, el grado 3 como 0 y
los grados 4 y 5 como +1. Teniendo en cuenta esto se calculan los valores para aquellos
conceptos en los que no hay acuerdo entre los distintos oyentes siguiendo la formula:
valor = máx(0,[(votos positivos-votos negativos)/anotaciones]).
A continuación se realiza un ejemplo para explicar más detalladamente lo descrito en el
párrafo anterior.
48/81
Clasificación musical personalizada en función del estado de ánimo
0.33333,0,0,0,0,0.33333,0,1,0,1,0,1,0,1,0,0.33333,0,1,0,0.66667,0,1,0,1,0,0
.66667,0,0.66667,0,0,0,0.33333,0,0.66667,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.66667,0,0.33333,0.66667,0.33333,0,0,1,1,0.333
33,0,0,0,0,1,0,0,0.66667,0,0.66667,0,0,0,0,0,0,0,0,0.33333,0,0.33333,0,0.33
333,0,0.33333,0,0.66667,0,0,0,0,0,0,0,0,1,0,0.66667,0,0,0,0,0.33333,0,0,0,0
,0,0,0,0,0,0,0,0,0,0,0,0.33333,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.33333,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,1,0.66667,0,0,0.66667,0,0,0
Los valores señalados corresponden respectivamente con los siguientes conceptos:
Emotion-Angry_/_Agressive
(0.33333),
NOT-Emotion-Angry_/_Agressive
(0),
Instrument_-_Electric_Guitar_(clean)-Solo (1) y Instrument_-_Male_Lead_Vocals-Solo
(0.66667). Se compara seguidamente estos valores con las respuestas de los oyentes
que realizaron la encuesta.
Emotion-Angry_/_Agressive = "4"
Emotion-Angry_/_Agressive = "1"
Emotion-Angry_/_Agressive = "5"
Instrument_-_Electric_Guitar_(clean) = "Prominent"
Instrument_-_Electric_Guitar_(clean) = "Prominent"
Instrument_-_Electric_Guitar_(clean) = "Prominent"
Instrument_-_Male_Lead_Vocals-Solo = "yes"
Instrument_-_Male_Lead_Vocals-Solo = "yes"
Así, calculando los diferentes valores siguiendo la formula anterior:
Emotion-Angry_/_Agressive: máx(0,[(1+1-1)/3]) = 0’33333
NOT-Emotion-Angry_/_Aggresive: máx(0,[(0-1)/3]) = 0
Instrument_-_Electric_Guitar_(clean)-Solo: máx(0,[(3-0)/3]) = 1
Instrument_-_Male_Lead_Vocals-Solo: máx(0,[(1+1-0)/3]) = 0’66667
hardAnnotations.txt
En este archivo se “binarizan” los resultados anteriores. Así, si más de dos personas han
opinado sobre uno de los conceptos y hay un acuerdo del 80% entre los oyentes
aparecerá un 1, en el resto de los casos 0. Siguiendo el ejemplo anterior, los dos
primeros conceptos pasan a valer 0 y los dos últimos 1.
0,0,0,0,0,0,0,1,0,1,0,1,0,1,0,0,0,1,0,1,0,1,0,1,0,1,0,1,0,0,0,0,0,1,0,1,0,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,1,1,0,
0,0,0,0,1,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,1
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0
2.5.4. Parámetros acústicos
Parámetros AFTE
Las siglas AFTE corresponden a Auditory Filterbank Temporal Envelopes. Estos
parámetros representan la envolvente temporal procesada por el sistema auditivo
humano. La señal de audio primero se filtra mediante banco de filtros gammatone (filtros
de respuesta impulsional utilizados generalmente para modelar el sistema auditivo) y
seguidamente se realiza un análisis temporal para extraer la envolvente de cada uno de
los resultados obtenidos una vez filtrada la señal. La envolvente se normaliza con la
componente continua de la señal y se parametriza sumando la energía de diferentes
bandas frecuenciales obteniendo en total 73 parámetros AFTE. Para calcular estos
parámetros se ha tenido en cuenta la canción completa, por lo tanto, al leer estos
vectores en Matlab todos ellos contienen 73 columnas (cada una correspondiente a los 73
parámetros AFTE) pero varían en el número de filas (ya que algunas canciones son más
largas que otras). Más información sobre estos parámetros puede encontrarse en [86] y
[87]. Los ficheros que contienen los vectores con estos parámetros tienen la extensión
.afte (por ejemplo: metallica-one.afte).
49/81
Clasificación musical personalizada en función del estado de ánimo
Parámetros Chroma
La representación basada en los parámetros chroma consiste en proyectar todo el
espectro de una melodía en doce "compartimentos" (bins) que representan cada uno de
los doce semitonos que componen una octava. Se asume que notas separadas una
octava se perciben de forma similar (un La4=440Hz y un La5=880Hz tienen frecuencias
diferentes pero representan la misma nota o componente tonal). Como en el caso
anterior, estos parámetros están calculados procesando la canción completa, así, todos
los vectores tienen doce filas (correspondiendo a los doce semitonos) pero varían en el
número de columnas dependiendo de su longitud temporal. Puede encontrarse más
información sobre estos parámetros en los trabajos realizados por Dan Ellis [19] y Elias
Pampalk [45][44]. Los ficheros que contienen los vectores con estos parámetros tienen
la extensión .chroma (por ejemplo: metallica-one.chroma).
Parámetros MFCC
Los coeficientes MFCC (Mel Frequency Cepstral Coeficients) se extraen a partir de la
representación de la señal en el dominio espectral [114][13][34][3]. Estos parámetros se
usan ampliamente en aplicaciones que tienen que ver con la voz y también la música ya
que representan más fielmente las características del audio que los obtenidos sólo
considerando el dominio temporal. Esto también se debe a que, como se ha detallado con
anterioridad, el sistema auditivo procesa los sonidos frecuencialmente. Así, unos
parámetros como los MFCC, que están basados en un análisis frecuencial de la señal, se
asemejan más a cómo procesa el cerebro humano los sonidos ya que toman en
consideración la respuesta del oído a la hora de parametrizar la señal acústica. El
esquema general de cálculo de estos coeficientes se detalla en la Figura 51; el banco de
filtros Mel se puede observar en la Figura 52.
Figura 51. Esquema general del calculo de MFCC.
Figura 52. Banco de filtros Mel.
En CAL500 para calcular los vectores delta se han calculado los trece primeros MFCC
utilizando ventanas de 12 milisegundos con un overlapping de 6 milisegundos. Así, cada
una de las filas de los vectores contiene 39 valores: los trece primeros valores son los
MFCC ya mencionados y los restantes corresponden con las primeras y segundas
derivadas de estos trece MFCC. El resultado final son matrices de 10000 filas y 39
columnas por un minuto de audio (10000x6ms=60s). En principio se calcularon los MFCC
de las canciones completas pero, para evitar el problema surgido y explicado
anteriormente con los parámetros chroma o AFTE de la diferencia de longitud de los
vectores, se eligieron aleatoriamente 10000 valores de cada una de las canciones que
representan un minuto de audio de las mismas.
Estos serán los parámetros que se utilizarán en este trabajo a la hora de implementar
funciones que tengan en cuenta parámetros acústicos de las canciones ya que todos los
50/81
Clasificación musical personalizada en función del estado de ánimo
vectores que representan a cada una de las canciones están formados por 39 columnas y
10000 filas. De esta manera, siendo todos los vectores del mismo tamaño, se puede
establecer un algoritmo de comparación entre ellos tal y como se detallará en el apartado
siguiente. De la misma forma, en el apartado siguiente se explicarán las ventajas e
inconvenientes que supone que estos MFCC estén únicamente calculados sólo para un
minuto de audio de las canciones. Los ficheros que contienen los vectores con estos
parámetros tienen la extensión .delta (por ejemplo: metallica-one.delta).
Parámetros MFCC dinámicos
En la base de datos también se incluyen los parámetros MFCC dinámicos; éstos
representan los valores de la primera y segunda derivada de los MFCC explicados
anteriormente. Utilizando estos parámetros se puede analizar la variación de estas
derivadas. En este trabajo no se utilizan ya que, como en el caso de los AFTE o chroma,
todos ellos forman matrices que tienen 52 columnas (correspondientes a cada uno de los
MFCC dinámicos) pero varían en el número de filas.
51/81
Clasificación musical personalizada en función del estado de ánimo
3. Parte práctica
3.1. Aplicación web
Como parte práctica de este trabajo se ha desarrollado una aplicación web utilizando PHP
y MySQL. En esta aplicación se ha intentado introducir gran parte de los conceptos
desarrollados en la parte teórica. Además, en el desarrollo de la misma, se ha apreciado
la gran ventaja que supone la utilización de PHP junto con MySQL frente a la creación de
una página web únicamente utilizando lenguaje HTML. Gracias al lenguaje PHP, y con el
respaldo de una base de datos MySQL, se pueden crear páginas web dinámicas. Esto es
imprescindible en este trabajo ya que son usuarios diferentes los que potencialmente
utilizarán la aplicación y cada uno tendrá criterios diferentes a los que la aplicación
deberá adaptarse en cada caso. A continuación se detalla el proceso que se ha seguido
en la creación de la web a través de tres versiones; se explica, a grandes rasgos, el
funcionamiento e implementación de las dos primeras y se profundiza con mayor detalle
en la tercera y última versión.
En la primera versión de la web se trabajó con ficheros, siguiendo el esquema de la
Figura 53. En esta primera versión, que sirvió de toma de contacto con el lenguaje PHP y
sus funciones, únicamente se implementaron las funciones básicas: listado de canciones,
buscador, buscador de canciones por parámetros semánticos a través de una "encuesta"
en la que el usuario puede elegir sus preferencias y un buscador de canciones similares
también por parámetros semánticos. El diseño de esta primera versión era totalmente
plano y sencillo. Los resultados se mostraban en texto y para escuchar las canciones era
necesario abrir un reproductor de archivos MP3 como iTunes (en la Figura 54 se pueden
ver los resultados al elegir en la encuesta "Angry" y "Metal/Hard Rock"). En esta versión
se intentó implementar un buscador de canciones similares donde esta similitud se
calculaba en función del parecido acústico de las canciones (utilizando los MFCC) pero
esta comparación requería más tiempo de ejecución que el que permite el servidor. El
problema que supone esta comparación y su resolución se detallan ampliamente en el
apartado 3.1.1.; esta ha sido uno de las opciones que más tiempo ha llevado
implementar.
Figura 53. Esquema general de las versiones 1.0 y 2.0.
52/81
Clasificación musical personalizada en función del estado de ánimo
Figura 54. Resultados de la búsqueda “Angry” y “Metal-HardRock” en la versión 1.0.
En la segunda versión de la web se siguió trabajando con ficheros como en la versión
anterior, siguiendo el mismo esquema de la Figura 53. La diferencia de esta segunda
versión respecto de la primera radica en la utilización de una interficie más gráfica y
visual, como se aprecia en la Figura 55. Esto se consigue gracias a la utilización de CSS
(Cascading Style Sheet). Se mantienen las mismas opciones que en la versión primera
aunque ahora los resultados aparecen en un reproductor flash en el que las canciones
pueden escucharse directamente sin necesidad de salir de la aplicación y abrir un
reproductor de audio (en la Figura 55 se pueden apreciar los mismos resultados que se
mostraban en la Figura 54 pero en esta versión). En esta segunda versión se mejora el
diseño de la encuesta gracias al javascript y las solapas (tabs) que permiten navegar a
través de las opciones con más facilidad (véase Figura 57).
Figura 55. Esquema versión 2.0.
53/81
Clasificación musical personalizada en función del estado de ánimo
Figura 56. Resultados de la búsqueda “Angry” y “Metal-HardRock” en la versión 2.0.
Figura 57. Solapas de navegación javascript.
En este punto, a la hora de implementar la tercera y última versión de la web, se
considera la utilización de MySQL. Así, se introduce toda la información necesaria en una
base de datos y se modifica el código de la versión anterior para que la información se
obtenga de la base de datos en lugar de los ficheros. Se mantienen la mismas funciones:
listado de canciones, buscador, encuesta, buscador de canciones similares por
parámetros semánticos, acústicos y una combinación de los dos. Se introducen mejoras
en la visualización de las distintas opciones, así como otras posibilidades que hacen la
aplicación más amigable al usuario (user-friendly) y visual. Todos los detalles de esta
última versión así como la implementación de cada uno de ellos se explica
detalladamente a lo largo de los apartados siguientes.
3.1.1. Estructuración base de la datos MySQL
Esta tercera y última versión de la web, aparte de por una serie de mejoras que se
detallarán más adelante, se caracteriza por la utilización de una base de datos para
extraer la información (en lugar de extraerla de ficheros como en las versiones
anteriores). Así, el primer paso a la hora de implementar esta tercera versión, ha sido
construir la base de datos organizando los ficheros que se utilizaban directamente en las
anteriores versiones. Para llenar la base de datos ha resultado muy útil y conveniente la
creación de una aplicación PHP que se ha ido modificando para leer de los distintos
ficheros y completar los diferentes campos de la forma deseada; sin necesidad de escribir
y rellenar cada campo. Se construye así la base de datos "cal500" (véase Figura 58)
formada por dos tablas: "canciones" y "encuesta". En la Figura 59, Figura 60, Figura 61 y
Figura 62 se detalla la estructura de ambas tablas y en la Figura 63 un esquema
reflejando el proceso que se ha seguido para rellenar los diferentes campos.
54/81
Clasificación musical personalizada en función del estado de ánimo
Figura 58. Estructura de “cal500”.
Figura 59. Estructura de la tabla “canciones”.
Figura 60. Estructura de la tabla “encuesta”.
Figura 61. Estructura detallada de la tabla “canciones”.
Figura 62. Estructura detallada de la tabla “encuesta”.
55/81
Clasificación musical personalizada en función del estado de ánimo
Figura 63. Esquema de la construcción de la base de datos.
A pesar de lo obvio de la información que aportan la mayoría de los campos, a
continuación se explica el contenido de cada uno de los correspondientes a la tabla
"canciones" de la base de datos "cal500":
•
artista y canción: Extraídos del fichero songNames.txt.
•
mp3: Contiene la ruta a los archivos MP3.
•
hard y soft: Contienen los vectores de 174 valores extraídos de los ficheros
hardAnnotations.txt y softAnnotations.txt respectivamente correspondientes a cada
una de las canciones.
•
delta: Contiene la ruta a los archivos que contienen los vectores de parámetros
MFCC.
•
songname: Refleja los nombres de los diferentes archivos.
•
comp: Contiene, para cada canción, un vector de comparación, en el que cada uno
de los 502 valores representa el grado de similitud entre los vectores de MFCC de esa
canció y los de el resto de las 502 canciones. Tal y como aparece en la Figura 63,
para conseguir estos vectores de comparación ha sido necesaria la utilización de una
aplicación Matlab denominada Matrix502x502; la implementación de esta aplicación
se explica con detalle seguidamente.
En la tabla "encuesta", como aparece en la Figura 63, únicamente se ha volcado el
fichero vocab.txt en el campo "vocab" añadiendo otro campo ("tipo") para especificar a
que hace referencia cada uno de los conceptos de "vocab". También, en esta versión, se
ha considerado traducir todo el texto al Castellano.
Vectores de comparación: Matrix502x502
A continuación se detalla el proceso seguido para conseguir los vectores de comparación
"comp" que forman parte de la base de datos. Estos vectores representan el parecido de
los parámetros acústicos (MFCC) de cada una de las canciones con las 502 canciones que
forman parte de la base de datos. Este vector es necesario para poder implementar las
opciones que implican búsqueda de canciones (o reordenación de playlist) en función del
parecido acústico. Como se ha detallado previamente, en un primer momento se intentó
56/81
Clasificación musical personalizada en función del estado de ánimo
realizar esta comparación a través de la aplicación PHP: leyendo los ficheros .delta de
cada canción y comparándolos con los demás; pero esta operación requería mayor
tiempo de ejecución que el permitido por PHP y el servidor así que surgió la necesidad de
otros métodos para realizar esta comparación. Si la opción de realizarlo con PHP hubiera
sido viable esto permitiría la comparación de los parámetros MFCC a tiempo real. Debido
al tiempo y los recursos computacionales que este proceso requiere se considera
oportuno encontrar una alternativa para implementar esta comparación "offline" y
almacenar estos datos (la comparación de cada canción con todas las demás) en la base
de datos y así poder acceder fácilmente a ellos. Así, descartada la comparación a través
de la aplicación web y utilizando PHP, se recurre a otros métodos; siendo la herramienta
Matlab de gran ayuda para solventar el problema.
Gracias a la función dlmread de Matlab se pueden leer ficheros y convertirlos en
matrices. De esta manera todos los ficheros .delta una vez leídos en Matlab constituyen
matrices de 10000 filas y 39 columnas (realmente tienen 40 columnas pero la última
siempre es cero). Planteado así, el problema se limita a comparar matrices (véase la
Figura 64). En un primer momento la comparación se realiza siguiendo las ecuaciones
( 1) y ( 2). Se prueba este método comparando diez canciones con las 502 que forman la
base de datos. Este proceso de comparación tarda por cada una de las canciones
cincuenta minutos. Analizando está comparación, se observan los mismos resultados
para las diez canciones y esto hace pensar que el método seguido no es apropiado. Los
resultados son similares al comparar con todas las canciones porque se trabaja con
valores muy pequeños, cuya diferencia entre ellos también es pequeña. De igual forma,
al restar valores y elevar esta resta al cuadrado no se tiene en cuenta el signo (dirección)
de los diferentes valores.
Figura 64. Esquema de las matrices de parámetros MFCC.
dj =
1 i = 39
(c1i − c 2i ) 2
∑
39 i =1
DT =
1
10000
( 1)
j =10000
∑d
j
( 2)
j =1
Por lo tanto, siguiendo el método de comparación de MFCC utilizado en [71], se
modifican las ecuaciones que se utilizarán para compara las matrices por las ecuaciones
( 3) y ( 4). La medida de similitud utilizada en este caso se basa en la autocorrelación de
vectores. Dados dos vectores (canción1 y canción2 corresponden a vi y vj) se calcula la
similitud entre ellos calculando el producto escalar; éste será elevado si los dos vectores
57/81
Clasificación musical personalizada en función del estado de ánimo
tienen un valor alto y están orientados en la misma dirección (ángulo). Con la ecuación
( 3) se calcula la similitud de cada una de las filas, para tener en cuenta la matriz
completa se utiliza la segunda ecuación. En este caso se utiliza, como en el caso anterior,
una función de Matlab en la que pasándole el vector 10000x40 de una canción lo
compara con todas las demás; realizando esta función 502 dlmread y invirtiendo en esta
operación cincuenta minutos. En este caso analizando los resultados de las diez
canciones los resultados son diferentes y acordes con los esperados: realmente las
canciones y el orden de las mismas refleja la mayor o menor similitud acústica. Así,
llegado a este punto, habiendo encontrado un método de comparación el problema que
se presenta es el tiempo que se invertirá en este proceso. Obviamente, comparar las 502
canciones entre ellas implica realizar el proceso anterior 502 veces y esto conllevaría un
total de 25100 minutos, es decir, casi 18 días. Se considera esto excesivo y se intenta
buscar una solución para reducir el tiempo que requiere la comparación de todas las
canciones.
s (i, j ) ≡ vi • v j
S w (i, j ) =
1 w −1
∑ (vi + k • v j + k )
w k =0
( 3)
( 4)
En todo momento se tiene presente que lo que se quiere construir es una matriz de 502
filas y 502 columnas (de ahí el nombre Matrix502x502) en la que cada uno de los valores
represente el resultado de la comparación entre los vectores correspondientes a las
canciones que se comparan. En la Figura 65 se puede ver a grandes rasgos la matriz que
se pretende construir; se observa que las comparaciones de la diagonal (en la que se
comparan las canciones con ellas mismas) podrían ahorrarse. De la misma forma,
eliminando esta diagonal, las comparaciones están repetidas y sería suficiente con la
parte superior o inferior de la diagonal para tener todas las comparaciones (comparar
2pac-trapped con 10cc-for_you_and_i es lo mismo que comparar 10cc-for_you_and_i
con 2pac-trapped).
Se decide así leer las 502 canciones con dlmread y guardarlas en el workspace de Matlab
como variables así poderlas directamente utilizar en una función para realizar las
comparaciones pertinentes. En este proceso aparece un nuevo inconveniente: Matlab
almacena estas variables ocupando la memoria RAM del ordenador y esta está limitada a
dos gigabytes, cada matriz 10000x39 de cada canción ocupa 3200000 bytes de memoria
por lo que leer y almacenar en el workspace 502 matrices 100000x39 no es posible. Se
intenta limitar el trabajo y dividir la matriz en cuatro matrices 251x251, pero se vuelve a
presentar el mismo inconveniente. En este punto se decide dividir la matriz en veinticinco
matrices de 100x100, después de comprobar que limitando el problema a un grupo de
100 canciones calcular las comparaciones entre las 100 canciones tarda únicamente siete
minutos (empleando siempre la mayor parte de este tiempo en realizar los dlmread).
Antes de utilizar esta división para calcular la matrix502x502 se calcula una matriz
200x200 utilizando las divisiones en matrices de 100x100; analizando que en el calculo
de esta matriz 200x200 se emplean treinta minutos se decide calcular la matrix502x502
de la misma forma.
58/81
Clasificación musical personalizada en función del estado de ánimo
Figura 65. Trazos generales de la matriz de comparación.
Finalmente se crea la función c_matrix502, a la que se le pasa una matriz 502x502 de
ceros y se obtiene la matriz completa de comparación de todas las canciones, de la que
se obtienen los vectores "comp" que se incluyen en la base de datos. En la Figura 66 se
puede ver la división en bloques que se realiza. Los bloques marcados en azul son los
que incluyen las comparaciones que efectivamente se calculan. Los bloques marcados
con una letra y un asterisco gris corresponden a las matrices transpuestas de los bloques
anteriormente calculados. En el proceso de calculo se analizó el tiempo invertido en el
mismo; los resultados aparecen reflejados en el log de la Figura 68. Se observa que el
tiempo total es de dos horas y cuarenta minutos; mejorando notablemente el primer
tiempo estimado que fue de 18 días. Como se puede apreciar en el log se tarda menos
en calcular los bloques de la diagonal ya que en estos se utilizan únicamente 100
variables (y la RAM está menos saturada). La función c_matrix502 calcula los bloques
marcados en azul, después realiza las operaciones detalladas en la Figura 67 para
completar los valores de los bloques que faltan y obtener la matrix502x502 final.
Figura 66. División en bloques de 100x100.
59/81
Clasificación musical personalizada en función del estado de ánimo
Figura 67. Esquema de cálculo de la matriz de comparación.
Figura 68. Log del cálculo de la matriz de comparación.
3.1.2. Funcionamiento y opciones
Tal y como se puede observar en la Figura 69 la web mantiene el mismo diseño que en la
versión anterior. En esta misma figura se pueden ver la gran mayoría de las opciones
que ofrece la web. La totalidad de las opciones se describen a continuación una por una,
tanto en lo que tiene que ver con su implementación como su utilización, aunque en lo
que se refiere a utilización se describen diferentes procesos y ejemplos de forma más
detallada en el apartado 4.
60/81
Clasificación musical personalizada en función del estado de ánimo
Figura 69. Página principal de la versión 3.0.
Lista de canciones
Esta opción permite visualizar la lista completa de canciones. Las canciones aparecen
ordenadas por artista y por orden alfabético. Gracias a las solapas (tabs) la visualización
y navegación a través de las diferentes canciones es mucho más fácil que si se hiciera un
listado directamente de las 502 que forman la base de datos. Al lado de cada una de las
canciones aparece una checkbox (véase la Figura 70). A través de esta visualización se
pueden marcar tantas canciones como el usuario desee. Una vez finalice su selección al
clickear "Escuchar selección" se abre el reproductor flash para poder escuchar las
canciones seleccionadas, tal y como aparece en la Figura 71. Bajo el reproductor se
encuentra la opción "Editar y guardar playlist" que aparece siempre que se visualiza una
playlist; la utilidad y funcionamiento de esta opción se explica más adelante.
Figura 70. Menú de la lista de canciones.
Figura 71. Resultado de una selección de canciones.
61/81
Clasificación musical personalizada en función del estado de ánimo
Buscador
En la Figura 72 aparecen los diferentes menús de búsqueda. Todos ellos sólo permiten
búsquedas básicas: únicamente basándose en el título o el artista de la canción. En la
parte superior se ofrece la posibilidad de una búsqueda más general. La segunda opción
de búsqueda, situada en la parte inferior, permite buscar por artista o por canción;
siempre en orden alfabético. Tanto esta opción como la anterior (Lista de canciones),
figuraban en las dos versiones anteriores de la web y sirvieron como toma de contacto
con el funcionamiento del lenguaje PHP y las bases de datos MySQL. En cualquiera de las
dos opciones de búsqueda, tanto clickeando en “Buscar” como en “Escuchar”, los
resultados aparecen en el reproductor flash.
Figura 72. Menú del buscador.
Encuesta (Sistema HowDoYouFeelToday)
La denominada "encuesta" en las dos versiones anteriores de la web aquí toma el
nombre de sistema HowDoYouFeelToday (ComoTeSientesHoy). Navegando por las
diferentes pestañas, como se aprecia en la Figura 73, se permite al usuario elegir
diferentes criterios a la hora de buscar: emoción, género, instrumentos, canción, etc.
Aunque los criterios se podrían limitar únicamente a los dos primeros (Emoción y
Género); los demás criterios también permiten obtener resultados satisfactorios. Sin
embargo, para un usuario que no tenga demasiadas exigencias a la hora de buscar,
utilizando los dos primeros es suficiente. Dados los experimentos realizados, se concluye
que es suficiente con la emoción; el resto de criterios sirven para refinar la búsqueda.
Todas las opciones aparecen marcadas en [x] por defecto; a partir de aquí el usuario
puede elegir [si] o [no] en cada uno de los criterios. A partir de las opciones que el
usuario ha elegido se generara un vector de 174 valores, donde las opciones que el
usuario haya marcado tendrán un '1' (o un '0' en caso de haber elegido "no") y el resto
de las opciones no elegidas su valor en el vector será "x". Este vector se compara con
todos los vectores "hard" y "soft", acumulando en una variable el número de
coincidencias; una vez analizada esta variable, se muestran las canciones con mayor
número de coincidencias.
62/81
Clasificación musical personalizada en función del estado de ánimo
Figura 73. Menú del sistema HowDoYouFeelToday seleccionando “Feliz” y “Classic Rock”
La búsqueda, por defecto, muestra todas las canciones que contienen todos los criterios
de búsqueda elegidos; así en la Figura 74, que es el resultado de la búsqueda de la
Figura 73, aparecen todas las canciones que tienen asociada la emoción "Feliz" y el
género "Classic Rock". Tal y como se ve en la Figura 74, se ofrece la opción "Ordenar
alfabéticamente y personalizar". Al elegir esta opción se ofrece al usuario el menú de la
izquierda de la Figura 75, donde se le permite elegir la canción que más se haya
aproximado a lo que esperaba de la búsqueda y reordenar la playlist en función del
parecido acústico de las demás canciones a ella (en la imagen derecha de la Figura 75 se
muestra la playlist reordenada tomando como base “Money For Nothing” de Dire Straits).
Así, la opción “Ordenar alfabéticamente y personalizar” (junto con la encuesta), ofrece la
posibilidad de realizar una búsqueda utilizando únicamente parámetros semánticos y
reordenar posteriormente los resultados en función de su similitud acústica.
Figura 74. Resultados de la búsqueda.
63/81
Clasificación musical personalizada en función del estado de ánimo
Figura 75. Menú de “ordenar alfabéticamente y personalizar” y resultados.
Similar (por parámetros semánticos)
En ocasiones, para un usuario, puede que sea mucho más fácil expresar su estado de
ánimo, o cómo se siente en un determinado momento, especificando una canción
determinada. Así, a través de esta opción y las dos siguientes se aprovecha este hecho
para poder ofrecer una playlist acorde con las preferencias del usuario. Estas tres
opciones conjuntamente podrían considerarse tres versiones diferentes de una opción
general "Búsqueda de canciones similares". Esta es la primera versión de esta opción,
que ya estaba presente en las dos primeras versiones de la web. El funcionamiento se
basa en ofrecer al usuario la lista completa de canciones de la que éste puede seleccionar
únicamente una de ellas. Por defecto la similitud requerida que se establece entre la
canción elegida y las demás es de un 87% (esto supone que coincidan 151 parámetros
semánticos de los 174 totales que definen una canción) pero el usuario puede variarlo.
Para ofrecer esta lista se comparan los vectores "hard" y "soft" de la canción
seleccionada con los vectores "hard" y "soft" del resto de las canciones; acumulando en
una variable el número de coincidencias. Después se muestran las canciones con mayor
número de coincidencias; limitando esta lista el porcentaje de similitud escogido por el
usuario.
Similar (por parámetros acústicos)
Llegado a este punto, únicamente habiendo trabajado con los parámetros semánticos de
las diferentes canciones, se considera oportuno utilizar los parámetros acústicos de las
canciones (en este caso los vectores de MFCC) y así poder encontrar canciones similares
acústicamente. Esta segunda versión de la búsqueda de canciones similares permite al
usuario, como en la versión anterior, elegir una canción que represente su estado de
ánimo en un momento determinado. Una vez elegida, el sistema generará una lista de
canciones en la que aparecerán ordenadas en función del mayor o menor parecido
teniendo en cuenta los parámetros acústicos. El número de canciones que tiene esta lista
es configurable por el usuario. Para generar esta lista de canciones se analiza el vector
de comparación ("comp") de la canción elegida y se ordenan todos los valores de mayor
a menor; después simplemente se muestran tantas canciones de esta lista como haya
solicitado el usuario. Esta opción muestra resultados en muchos casos que tienen poca
relación con la canción seleccionada; los motivos de esto se explican con detalle en el
apartado 4.
64/81
Clasificación musical personalizada en función del estado de ánimo
Similar (por parámetros acústicos y semánticos)
Esta última versión de la búsqueda de canciones similares une los criterios de búsqueda
de las dos versiones anteriores. Así, igual que en los casos anteriores, se permite al
usuario seleccionar una canción. A partir de aquí el sistema busca las canciones que más
se parezcan a la seleccionada en función de sus vectores "hard" y "soft" (parámetros
semánticos), una vez obtenida está lista (limitada por el porcentaje de parecido que fija
el usuario), se reordenan las canciones en función de la similitud de sus vectores "comp"
(parámetros acústicos). Resumiendo, esta opción genera los mismos resultados que la
búsqueda de canciones similares por parámetros semánticos pero ordenando éstos en
función de su similitud por parámetros acústicos. Limitando primeramente la similitud
semántica entre canciones y después reordenando por parecido acústicos se obtienen
mejores resultados que con las dos versiones anteriores; tal y como se detallará en los
ejemplos del apartado 4.
Editar y guardar playlist
Siempre que se visualiza una playlist en el reproductor flash se ofrece debajo de éste la
opción al usuario de "Editar y guardar playlist". Seleccionando esta opción, tal y como se
ve en la Figura 76, se puede desmarcar cualquiera de las canciones (o añadir más a
través de las pestañas) y una vez conforme el usuario puede guardar la playlist en un
archivo de texto. En este caso el usuario ha decidido nombrar a la playlist
"para_el_coche". El formato de este archivo de texto aparece en la Figura 77.
Figura 76. Menú de editar y guardar playlist.
65/81
Clasificación musical personalizada en función del estado de ánimo
Figura 77. Ejemplo de playlist guardada.
Abrir playlist
Esta opción se visualiza permanente en el menú como todas las descritas con
anterioridad (a excepción de la de "Editar y guardar la playlist"). Se pueden abrir playlist
que hayan sido guardadas previamente siguiendo los pasos de la opción anterior para
guardar una playlist. El usuario busca donde esté almacenado el archivo de texto en su
ordenador y al abrirlo se cargará la playlist en el reproductor flash. El archivo de texto
debe tener la extensión .txt y su formato debe ser el mismo que el de la Figura 77.
66/81
Clasificación musical personalizada en función del estado de ánimo
4. Resultados
En este apartado se analizan los resultados de la implementación de la página web a
través de diferentes ejemplos de ejecución y búsqueda. Éstos se detallan en
subapartados; cada uno de ellos haciendo referencia a las distintas opciones que ofrece
la web. Se obvian los resultados obtenidos en el listado de canciones y otros procesos
sencillos que únicamente implican mostrar o guardar información (como, por ejemplo,
"Editar y guardar playlist" u "Ordenar alfabéticamente y personalizar"). Asimismo, se
analizan una serie de ventajas y desventajas de estos sistemas de búsqueda y del
sistema de organización de la información; éstas se analizan especialmente en los
apartados que tienen que ver con la búsqueda de canciones similares.
4.1. Buscador
En las primeras versiones de la web el buscador únicamente realizaba búsquedas
exactas. Esto se modificó para que las búsquedas fuesen más generales. Así, al escribir
"Bob" en el campo artista aparecerá tanto Bob Dylan como Bob Marley; o al escribir
"love" en canción aparecerán todas las canciones que contengan la palabra "love" en el
título. Estos mismos resultados (y algunos más) se obtendrían escribiendo "bo" o "lo" en
los campos de artista y canción respectivamente.
4.2. Encuesta (Sistema HowDoYouFeelToday)
Para comprobar el funcionamiento del sistema se realizan diversas pruebas. Se concluye
que al introducir un número elevado de criterios de búsqueda los resultados son menores
o en algunos casos ni siquiera se producen (es decir el resultado de la búsqueda es
nulo); en este último caso se muestra el mensaje que aparece en la Figura 78 al usuario
y se le ofrece la posibilidad de eliminar criterios. Si en ese caso se bajara el grado de
coincidencia aparecerían todas las canciones que tuviesen asignada la emoción
"Tranquilo" y todas las canciones cuyo género fuera "Metal". Igualmente, se concluye, y
se explica al usuario en la pestaña "¿Cómo funciona?" que los mejores resultados se
obtienen con "coincidencia total". Se prueba el funcionamiento con casos muy concretos
como "Solo de guitarra eléctrica (limpia)", obteniendo los resultados de la Figura 79;
todas las canciones contienen un solo de guitarra eléctrica limpio. Refinando la búsqueda
anterior marcando un [no] en "cantante masculino" en la pestaña "Instrumentos" se
aprecia en la Figura 80 como las únicas canciones que permanecen de las anteriores son
las que tienen una cantante femenina o son instrumentales. Como esta búsqueda se
realizan muchas otras verificando el funcionamiento sin observar especiales problemas o
discrepancias entre las búsquedas y los resultados.
Figura 78. Mensaje que aparece al no encontrar resultados.
67/81
Clasificación musical personalizada en función del estado de ánimo
Figura 79. Resultados de una búsqueda de “solo de guitarra eléctrica limpio”
Figura 80. Resultados al refinar la búsqueda.
4.3. Similar (por parámetros semánticos)
En este apartado, y en los siguientes, se utiliza la canción que ha servido de ejemplo a lo
largo de toda la memoria ("One" de Metallica) y también "Don't Know Why" de Norah
Jones. En el caso de "One", en la búsqueda por parámetros semánticos, aparecen pocas
canciones y algunas de ellas ni siquiera corresponden al género de "One" (Metal), esto
puede ser debido a que esta canción no es quizá la más representativa ni de este género
ni de este grupo; aún así, las canciones que aparecen en la búsqueda son similares. En la
Figura 81 se pueden observar los resultados de las dos búsquedas.
Figura 81. Resultados al buscar por parámetros semánticos: “One” y “Don’t Know Why”
68/81
Clasificación musical personalizada en función del estado de ánimo
4.4. Similar (por parámetros acústicos)
Para analizar los resultados de este apartado se utilizan de nuevo las canciones del
apartado anterior. Los resultados se pueden ver en la Figura 82. Escuchando las
canciones, especialmente en el caso de Norah Jones, la gran mayoría de ellas comparten
el mismo "beat" que "Don't Know Why". En el caso de "One" los resultados distan mucho
de ser parecidos, esto es debido a que los primeros minutos de "One" están formados
por sonidos pirotécnicos en lugar de música; así las canciones que aparecen en la
búsqueda por similitud de parámetros acústicos comparten parecido con esa pirotecnia.
Analizado desde este plano (el de buscar similitud entre la pirotecnia de "One" y otras
canciones) los resultados son acordes. Aún así, para demostrar el correcto
funcionamiento de esta aplicación se analizan dos hechos. Primeramente que en
cualquier búsqueda que se realice la primera canción que aparece como resultado, es
decir, el valor mayor del vector de comparación ("comp"), siempre es la misma canción.
Este primer hecho ya demuestra el funcionamiento pero se verifica con otro ejemplo que
se detalla a continuación. En la base de datos figuran dos canciones que comparten la
misma base melódica: "U Can't Touch This" de Mc Hammer y "Super Freak" de Rick
James. Si el sistema funciona correctamente al buscar canciones similares por
parámetros acústicos en cualquiera de los dos casos debería aparecer la otra; se
demuestra que así ocurre en la Figura 83. No aparece como primera opción ya que si se
escucha atentamente la melodía empieza en segundos diferentes; aún así aparece de los
veinte primeros resultados de una lista de 502 canciones.
Figura 82. Resultados al buscar por parámetros acústicos: “One” y “Don’t Know Why”
Figura 83. Resultados al buscar por parámetros acústicos: “U Can’t Touch This” y “Super Freak”
69/81
Clasificación musical personalizada en función del estado de ánimo
4.5. Similar (por parámetros acústicos y semánticos)
Para comprobar el funcionamiento de esta búsqueda se vuelven a utilizar los ejemplos
anteriores. Primeramente, en la Figura 84, aparece el resultado de buscar "U Can't Touch
This"; donde se observa que "Super Freak" (que como se ha comentado con anterioridad
tiene la misma base melódica) aparece como segunda opción en los resultados. Si se
busca “Super Freak”, “U Can’t Touch This” aparece como primera opción como se puede
observar en la misma figura. De la misma manera, buscando las otras dos canciones ya
mencionadas en ejemplos anteriores y escuchándolas, se observa que se ordenan
correctamente; mejorando los resultados que se obtenían en las dos opciones anteriores
en las que únicamente se tenían en cuenta parámetros acústicos y semánticos de forma
independiente (véase la Figura 85).
Figura 84. Resultados al buscar por parámetros acústicos y semánticos: “U Can’t Touch This” y
“Super Freak”
Figura 85. Resultados al buscar por parámetros acústicos y semánticos: “One” y “Don’t Know Why”
70/81
Clasificación musical personalizada en función del estado de ánimo
5. Conclusiones y líneas de futuro
La diferencia de este trabajo con otros similares, como los que se hace referencia a lo
largo del mismo, radica, por una parte, en que no se limita únicamente a búsquedas
semánticas y, por otra parte, éstas, a su vez, no se limitan exclusivamente al estado de
ánimo. Un usuario no siempre es capaz de determinar o definir su estado ánimo con
adjetivos concretos. Utilizando ese estrecho vínculo existente entre música y emoción, en
este trabajo se le ofrece al usuario la posibilidad de definir su estado de ánimo eligiendo
una canción. De este modo, el usuario está definiendo su estado de ánimo con precisión
(el estado de ánimo asociado por parámetros semánticos a esa canción). Así, la
búsqueda de canciones similares, uniendo las ventajas de la búsqueda por similitud de
parámetros semánticos y acústicos, ofrece una lista de canciones que se adapta al
usuario. Futuras versiones de esta web podrían incluir una opción en la que, una vez
elegida una canción y generada la lista de canciones similares acústica y semántica, se le
indicara al usuario el estado de ánimo que reflejan el conjunto de canciones mostrado
(utilizando los parámetros semánticos de todas ellas) y se le sugirieran más canciones
cuyos parámetros semánticos asociados a la emoción coincidieran con ese estado de
ánimo.
Otros trabajos relacionados con esta misma materia se limitan a análisis o
investigaciones en muchos casos muy concretos (utilizando bases de datos pequeñas, un
único estilo musical, etc.) y en otros demasiado generales o teóricos sin ofrecer ningún
resultado práctico que demuestre que la teoría llegue a funcionar. Asimismo, muchos de
estos trabajos no están disponibles online ni puede analizarse su funcionamiento. Por
este motivo se decide implementar una web en lugar de una aplicación software; por un
lado para que ésta sea accesible y por otro para aprovechar las ventajas que ofrece
Internet: una web de estas características, a largo plazo y disponiendo de un gran
número de usuarios, puede convertirse en una red social más en la que usuarios y
música estén vinculados por su estado de ánimo. Visto de otra manera, una aplicación
software carece en gran medida del dinamismo de una página web.
Además de lo ya mencionado, esta aplicación permite agrupar canciones en función de
parámetros tan concretos como un “solo de guitarra” o una “textura acústica”; aunque
esto es posible ya que la lista de canciones estaba previamente etiquetada gracias a la
encuesta realizada por el Computer Audition Laboratory de la Universidad de California.
Una lista desconocida de canciones no dispone de todas estas características semánticas
asociadas y es posible que únicamente tenga asociados tags que incluyan aspectos
básicos de esta canción (artista, título, etc.). Así, se concluye que para que este sistema
funcionara para cualquier base de datos desconocida necesitaría incluir todos estos
parámetros. Automatizar este proceso es algo sobre lo que no se han realizado excesivas
labores de investigación y queda en la mayoría de los trabajos que versan sobre aspectos
similares a los tratados en este como una línea de futuro.
Siguiendo con el hilo anterior, se observa que algunas canciones populares, al ser más
conocidas, ofrecen mejores resultados en las búsquedas; por ejemplo aparecen al
realizar búsquedas más restrictivas esperando encontrarlas. Esto es uno de los
problemas que provoca que los parámetros semánticos estén asignados manualmente
por usuarios a través de una encuesta realizada mientras escuchaban las canciones. En
este proceso intervienen la subjetividad y la predisposición de un usuario a escuchar o
valorar con más exactitud e interés una canción que haya escuchado previamente que
una canción desconocida. Esto se puede observar especialmente al buscar similitud de
canciones no muy populares por parámetros acústicos y observar generalmente pocos
resultados. Sin embargo una canción popular con la misma restricción de búsqueda
ofrece muchos más resultados.
71/81
Clasificación musical personalizada en función del estado de ánimo
Uno de los problemas que se han tenido que solucionar en el desarrollo de este trabajo
ha sido el hecho de que los parámetros acústicos utilizados para buscar similitud acústica
(MFCC) están calculados únicamente para un minuto de todas las canciones. Así, estos
parámetros, no consiguen definir totalmente las canciones. De igual forma, debido a
esto, canciones cuyo carácter melódico es variable a lo largo de los minutos que duran,
al únicamente considerar un minuto de las mismas este carácter melódico no siempre
queda representado por los MFCC extraídos (más aún cuando estos MFCC han sido
elegidos aleatoriamente). Por este motivo la búsqueda de canciones similares por
parámetros acústicos no ofrecía los resultados esperados y se necesitó refinarla con los
parámetros semánticos para así solventar el problema.
En el proceso de refinar la búsqueda se hace una observación: al considerar una
búsqueda semántica y acústica más restrictiva aparecen unas canciones como resultado
que al bajar el grado de restricción en la búsqueda cambian de lugar en la lista cuando,
aparentemente, deberían seguir manteniéndose las primeras de la lista. Esto ocurre
porque la búsqueda inicialmente se realiza por parámetros semánticos y estos resultados
después se reordenan por parecido acústico, así en la primera búsqueda (la restrictiva)
aparecerán todas las canciones con mayor coincidencia semántica pero al bajar esta
restricción en la segunda búsqueda se suman nuevas canciones que se reordenan según
la similitud acústica (nótese que la similitud semántica y acústica no tienen porqué
coincidir). Así se ofrece la posibilidad al usuario de descubrir nuevas canciones que
incluso pueden parecerse más acústicamente a la que ha seleccionado (aunque a priori
por sus parámetros semánticos, por ejemplo el género, sean diferentes).
A pesar de lo mencionado anteriormente, el funcionamiento de la comparación por
parámetros acústicos presenta un funcionamiento correcto si se analiza obviando una
serie de hechos. Si se escuchan detenidamente las canciones que se muestran en los
resultados de una búsqueda por similitud acústica, prestando únicamente atención al
beat de las canciones, se puede observar como comparten el mismo beat, aunque
puedan parecer en un primer momento canciones radicalmente opuestas (en cuanto a
género o incluso voz). En ocasiones en los resultados también aparecen de forma
recurrente canciones electrónicas o instrumentales; se concluye que esto ocurre ya que
canciones de este tipo son más "sencillas" (al no tener voz o muchos instrumentos
complejos como las guitarras eléctricas) y así es más probable que se parezcan a
cualquier otra canción.
En la mayoría de los casos al buscar una canción entre los resultados aparecen canciones
muy parecidas a la buscadas (especialmente en casos que la voz es especialmente
característica, por ejemplo) pero siempre aparece alguna canción instrumental o
electrónica que no tiene excesiva similitud con la seleccionada; estas canciones aparecen
también en los resultados porque contienen un beat común que se repite en la estructura
melódica de muchas canciones porque es sencillo. Los MFCC se utilizan generalmente en
aplicaciones que solo incumben la voz, como los sistemas de reconocimiento, en este
caso se analizan fonemas concretos y estudiados previamente que hacen referencia a los
diferentes fonemas vocales y modulaciones de la voz. Los patrones de estos fonemas se
repiten aunque se puedan pronunciar de diferentes formas que implican leves variaciones
de la envolvente frecuencial. La existencia de palabras y fonemas es extensa pero
limitada y puede cuantificarse y modelarse; sin embargo en el caso de la música
cuantificar las combinaciones de voz, instrumentos y ritmos resulta mucho más
complicado.
Aún así, como ya se explicó en el apartado correspondiente a los MFCC que forman parte
de la base de datos CAL500, éstos fueron calculados para toda la canción pero se
seleccionaron aleatoriamente sólo un número reducido de ellos (para conseguir que todos
los vectores fueran iguales y así pudieran compararse con facilidad). Esta aleatoriedad
impide saber a qué partes de la canción corresponden y esto, de igual manera,
72/81
Clasificación musical personalizada en función del estado de ánimo
imposibilita una evaluación minuciosa de los resultados obtenidos (especialmente cuando
se trata de canciones que varían de ritmo o beat).
Los MFCC se ocupan de analizar el comportamiento frecuencial de la señal sobre la que
se calculan, pero no analizan las componentes melódicas. Sería más adecuado para
realizar una comparación de este tipo utilizar unos parámetros que tuvieran en cuenta al
mismo tiempo la evolución temporal y frecuencial de la melodía (y que estuvieran más
allá del análisis que ofrecen las derivadas primera y segunda de los MFCC). Así, serían
más adecuados parámetros como los AFTE o chroma; pero al tener canciones que duran
tiempos diferentes la comparación de estos parámetros no sería viable, al menos no de
forma trivial, ya que esto implicaría tener que seleccionar partes de la canción (por
ejemplo el estribillo) o alinear los vectores de parámetros. El estudio y propuesta de
soluciones para este problema se considera como línea de futuro de este trabajo.
Para esta línea de futuro sugerida se considera la siguiente valoración que podría servir
como punto de partida: Generalmente lo más representativo de una canción está
contenido en el estribillo; teniendo en cuenta que éste dura un tiempo inferior al de la
melodía completa, se podría considerar extraer el estribillo de cada una de las canciones
(limitando el tiempo al de la canción con el estribillo más largo) y calcular todos los
parámetros acústicos (AFTE, chroma y MFCC) de este fragmento de tiempo para todas
las canciones. Se obtendrían así vectores acústicos para cada una de las canciones que
tendrían el mismo número de valores y así podrían ser comparados tal y como se ha
hecho en este trabajo al comparar los MFCC. Así, la información de similitud que aporta
la comparación de MFCC se vería complementada con las comparaciones de parámetros
chroma y AFTE.
Un proyecto web como el desarrollado en este trabajo siempre se presta a numerosas
mejoras (como ha ido sucediendo, por ejemplo, con last.fm). Se disponen en todo
momento recursos y conocimientos de PHP suficientes para desarrollarlos pero todos
ellos suponen mejoras o investigación en temas que tienen que ver directamente con el
desarrollo de algoritmos en PHP y no con el desarrollo explícito de aplicaciones acústicas.
Al considerarse estas mejoras únicamente relacionadas con la vertiente informática de
este trabajo y no con la acústica se ha decidido no implementarlas por el momento.
Entre éstas figuran: crear cuentas de usuario, permitiendo así guardar preferencias y
playlist de cada usuario en el servidor para que el usuario tenga fácil acceso a las
mismas; ofrecer al usuario la posibilidad de sugerir (o añadir) canciones cuando una
búsqueda no ofrece resultados; etc. Todas estas mejoras implican un sistema más
personalizado y dinámico, cuestión que se deja abierta para futuras versiones de la web.
En este trabajo se utiliza CAL500, una base de datos previamente construida en la que se
incluían tanto las anotaciones semánticas como los parámetros acústicos de todas las
canciones. Tal y como está diseñada la aplicación web es viable la inclusión de nuevas
canciones: se podría permitir al usuario añadir una canción, offline se calcularían los
parámetros acústicos, se compararían con las demás y se asignarían parámetros
semánticos (que podría añadir el usuario o el administrador). Una línea de futuro
conllevaría que este proceso se realizará online y automáticamente. Otra línea de futuro
consistiría en que esta aplicación pudiera utilizarse con un conjunto de canciones
desconocido; en este caso sería imprescindible añadir funciones que calcularan los
parámetros acústicos así como un sistema para obtener los parámetros semánticos.
Siguiendo las observaciones del párrafo anterior resultaría interesante que esta
aplicación web pudiera importarse e integrarse como una opción o función en
reproductores MP3 o teléfonos móviles (como ya se ha realizado en trabajos como los
realizados por Sony con su sistema SenseMe [116] o Lifetrack [112]).
73/81
Clasificación musical personalizada en función del estado de ánimo
6. Bibliografía
Nota: Todas las páginas web que aparecen en las referencias bibliográficas siguientes
fueron consultadas entre Abril y Mayo de 2008.
[1]
"AudioID Automatic Identification & Fingerprinting of Audio", Fraunhofer Society.
[2]
A. Härmä y K. Palomäki. "HUTear – a free Matlab toolbox for modeling of auditory
system". Proceedings of 1999 Matlab DSP Conference, Espoo, Finland, Nov. 1999,
pp. 96–99. http://www.acoustics.hut.fi/software/HUTear/
[3]
Absolute MFCC Computations, Institute for Signal and Information Processing
(Mississippi State University)
http://www.ece.msstate.edu/research/isip/projects/speech/software/tutorials/pro
duction/fundamentals/current/section_03/s03_03_p03.html
[4]
Allmusic http://www.allmusicguide.com
[5]
Amazon http://www.amazon.com
[6]
Andre Mosley, Po T. Wang, John Broadway, y Yu-Heng Lee; "Audio Fingerprint
Generation" (2006) http://cnx.org/content/m14232/latest/
[7]
Andreas Rauber, y Markus Frühwirth; “Automatically Analyzing and Organizing
Music Archives”. 5th European Conference on Research and Advanced Technology
for Digital Libraries (ECDL 2001), Springer Lecture Notes in Computer Science.
[8]
Arshia Cont y Shlomo Dubnov. "Realtime Multiple-Pitch And Multiple-Instrument
Recognition of Music Signals Using Sparse Non-Negative Constraints". Proceedings
of Digital Audio Effects Conference (DAFx), 2007.
[9]
Arshia Cont. "Audio Spectral Processing and Recognition Implementation of a
“Listening Machine”". International Conference in Acoustics, Speech and Signal
Processing (ICASSP), 2003.
[10]
Audacity http://audacity.sourceforge.net
[11]
AudioClas: Automatic Classification of Sound Effects. Music Tecnology Group,
Universidad Pompeu Fabra de Barcelona)
http://audioclas.iua.upf.edu/documents.shtml
[12]
Beinan Li. "Audio-based Music Similarity Analysis" (2005).
[13]
Beth Logan. "Mel Frequency Cepstral Coefficients for Music Modeling". Proceedings
of ISMIR 2000.
[14]
CDDB http://www.cddb.com/
[15]
Changsheng Xu, Namunu C Maddage, Mohan S Kankanhalli. "Automatic Structure
Detection for Popular Music". Multimedia, IEEE, Vol. 13, No. 1. (2006), pp. 65-77.
[16]
Chia-Chu Liu, Yi-Hsuan Yang, Ping-Hao Wu y Homer H. Chen. "Detecting and
Classifying Emotion in Popular Music". Joint Conference on Information Sciences
2006 (JCIS 2006).
74/81
Clasificación musical personalizada en función del estado de ánimo
[17]
Chris Cooke. "Automatic Mood Quantification of Contemporary Music" (2006).
[18]
Chris Plack. “The Musical Ear (NewMusicBox)”
http://www.newmusicbox.org/article.nmbx?id=4077
[19]
Chroma Feature Analysis and Synthesis. Dan Ellis. Lab for Recognition and
Organization of Speech and Audio (LabROSA).
http://www.ee.columbia.edu/~dpwe/resources/matlab/chroma-ansyn/
[20]
Codificador MP3 en Matlab
http://members.fortunecity.com/alex1944/psicoacustica/psycoasp.html
[21]
Computer Audition Laboratory,
http://cosmal.ucsd.edu/cal/
[22]
Cyc http://www.cyc.com
[23]
D. W. Robinson, R. S. Dadson. (1956). ‘‘A re-determination of the equal-loudness
relations for pure tones’’ Br. J. Appl. Phys. 7, 166–181.
[24]
Dan Liu, Lie Lu y Hong-Jiang Zhang. "Automatic Mood Detection from Acoustic
Music Data". Proceedings of the International Conference on Music Information
Retrieval (ISMIR 2003).
[25]
Dan-Ning Jiang, Lie Lu, Hong-Jiang Zhang, Jian-Hua Tao y Lian-Hong Cai. "Music
Type Classification By Spectral Contrast Feature". In Proceedings of IEEE
International Conference on Multimedia and Expo (ICME), 2002.
[26]
David A. Torres, Douglas Turnbull, Bharath K. Sriperumbudur, Luke Barrington y
Gert R. G. Lanckriet. "Finding Musically MeaningfulWords by Sparse CCA". Neural
Information Processing Systems (NIPS) Workshop on Music, the Brain and
Cognition, 2007.
[27]
David Huron. "Music Cognition Handbook: A Glossary of Concepts" (2004).
http://csml.som.ohio-state.edu/Resources/Handbook/index.html
[28]
David Huron. "Perceptual and Cognitive Applications in Music Information
Retrieval" (ISMIR 2000).
[29]
David Torres, Douglas Turnbull, Luke Barrington y Gert Lanckriet. "Identifying
words that are musically meaningful". ISMIR 2007, International Conference on
Music Information Retrieval.
[30]
Densil Cabrera, Sam Ferguson, Emery Schubert. “PsySound3: software for
acoustical and psychoacoustical analysis of sound recordings”. Proceedings of the
13th International Conference on Auditory Display, Montreal Canada, June 26-29
2007, pp. 356-363. http://psysound.wikidot.com/
[31]
Densil Cabrera. "‘Psysound’: A Computer Program For Psychoacustical Analysis".
MikroPolyphonie 5, http://www.mikropol.net
[32]
DigiMarc: http://www.digimarc.com/
[33]
Discogs www.discogs.com
[34]
Dominik Niewiadomy, Adam Pelikant. "Digital Speech Signal Parameterization by
Mel Frequency Cepstral Coefficients and Word Boundaries".
Universidad
de
California,
San
Diego.
75/81
Clasificación musical personalizada en función del estado de ánimo
[35]
Doris Baum. "EmoMusic – Classifying Music According to Emotion". Proceedings of
the 7th Workshop on Data Analysis (WDA2006), Kosice, Slovakia, July 1-3, 2006.
[36]
Douglas Turnbull, David Torres y Gert Lanckriet. "Semantic Annotation and
Retrieval of Music and Sound Effects". IEEE Transactions on Audio, Speech, and
Language Processing, February 2008.
[37]
Douglas Turnbull, Luke Barrington y Gert Lanckriet. "Modeling music and words
using a multi-class naïve Bayes approach". International Symposium on Music
Information Retrieval (ISMIR 2006).
[38]
Douglas Turnbull, Luke Barrington y Gert Lanckriet. "Towards Musical Query-bySemantic-Description using the CAL500 Data Set". Proceedings of the 30th annual
international ACM SIGIR, 2007.
[39]
Douglas Turnbull, Luke Barrington, David Torres y Gert Lanckriet. "Exploring the
Semantic Annotation and Retrieval of Sound". CAL Technical Report CAL-2007-01,
San Diego, 2007.
[40]
Douglas Turnbull, Ruoran Liu, Luke Barrington, Gert Lanckriet. "Using games to
collect semantic annotations of music". ISMIR, Viena (Austria),2007.
[41]
Douglas Turnbull. "Automatic Music Annotation" (2005).
[42]
E. Bigand, F. Madurell, J. Marozeau y A. Dacquet. "Multidimensional scaling of
emotional responses to music: The effect of musical expertise and of the duration
of the excerpts". Cognition and Emotion, vol. 19, n° 8, Diciembre 2005, p. 11131139.
[43]
E. Zwicker y E. Terhardt. (1980). Analytical expressions for critical bandwidths as
a function of frequency. The Journal of the Acoustical Society of America, 68,
1523--1525.
[44]
Elias Pampalk. "Islands of Music: Analysis, Organization, and Visualization of
Music Archives". Tesis, Vienna University of Technology, Austria (2001).
[45]
Elias Pampalk. http://pampalk.at/
[46]
Emilia Gómez Gutiérrez. "Melodic Description Of Audio Signals For Music Content
Processing”. Trabajo de investigación, PhD Programa Informática y Comunicación
Digital, Universidad Pompeu Fabra (2002).
[47]
Emilia Gómez. "Marcas de Agua en Audio Digital: Conceptos y aplicaciones".
Universidad Pompeu Fabra (2004).
[48]
Emotiongram. Meghen Miles, Merric Mosst (2006). http://wwwscf.usc.edu/~ise575/b/projects/mosst_miles/concept.htm
[49]
Fisiología del Sistema Auditivo. Universidad Simón Bolivar, Venezuela.
http://labc.usb.ve/EC4514/AUDIO/Sistema%20Auditivo/Sistema%20Auditivo.htm
l
[50]
Frames ID3 http://www.id3.org/Frames
76/81
Clasificación musical personalizada en función del estado de ánimo
[51]
Francesc Alías y David García, "Identificación de emociones a partir de texto
usando desambiguación semántica". Procesamiento del Lenguaje Natural, Revista
nº 40, marzo de 2008, pp. 75-82.
[52]
Fraunhofer Society http://www.fraunhofer.de/
[53]
FreeDB www.freedb.org
[54]
Geoff Peters, Caroline Anthony, and Michael Schwartz (Simon Fraser University,
Canadá). “SongTapper” http://www.songtapper.com/s/tappingmain.bin
[55]
Geoffroy Peeters, Stephen McAdams y Perfecto Herrera. "Instrument Sound
Description in the Context of MPEG-7". ICMC2000, Berlin (Alemania), 2000.
[56]
Geoffroy Peeters. "A Large Set of Audio Features for Sound Description (similarity
and classification)". CUIDADO project. CUIDADO I.S.T. Project Report 2004.
[57]
George Tzanetakis y Perry Cook. "MARSYAS3D: A Prototype Audio Browser-Editor
Using A Large Scale Immersive Visual And Audio Display". Proceedings of the
International Conference on Auditory Display (ICAD), Helsinki (Finland), 2001.
[58]
George Tzanetakis. "Manipulation, Analysis and Retrieval Systems For Audio
Signals". Princeton Computer Science Technical Report TR-651-02 , 2002.
[59]
George Tzanetakis. Marsyas http://marsyas.sness.net/documentation
[60]
Gert Lanckriet. "Designing a Content-Based Music Search Engine" (2007).
[61]
Handbook For Acoustics Ecology. Barry Truax. World Soundscape Project, Simon
Fraser University, ARC Publications, 1978. http://www.sfu.ca/sonicstudio/handbook/index.html
[62]
Hidden Markov Model (HMM) Toolbox for Matlab
http://www.cs.ubc.ca/~murphyk/Software/HMM/hmm.html
[63]
Hugo Liu, Push Singh y Ian Eslick. ConceptNet
http://web.media.mit.edu/~hugo/conceptnet/
[64]
ID3 http://www.id3.org
[65]
I-Doser http://www.i-doser.com/
[66]
ISMIR: The International Conferences on Music Information Retrieval and Related
Activities http://www.ismir.net/
[67]
Jaap Haitsma, Ton Kalker y Job Oostveen. "Robust Audio Hashing for Content
Identification". Proceedings of Content Based Multimedia Indexing 2001, Brescia,
Italia, Sept. 2001.
[68]
Jaap Haitsma, Ton Kalker. "A Highly Robust Audio Fingerprinting System". Proc.
ISMIR 2002, pp.107–115, Oct. 2002.
[69]
Jan-Mark Batke, Gunnar Eisenberg, Philipp Weishaupt y Thomas Sikora. "A Query
by Humming system using MPEG-7 Descriptors". 116th Audio Engineering Society
Convention, Berlin, May 2004.
77/81
Clasificación musical personalizada en función del estado de ánimo
[70]
Jayme Garcia Arnal Barbedo y Amauri Lopes. "Automatic Genre Classification of
Musical Signals". EURASIP Journal on Applied Signal Processing, Volume 2007,
Issue 1, pp. 157 - 157.
[71]
Jonathan Foote. "Visualizing Music and Audio using Self-Similarity". Proceedings of
the seventh ACM international conference on Multimedia (Part 1), pp. 77 - 80;
Orlando, Florida (1999).
[72]
Juha Vesanto, Johan Himberg, Esa Alhoniemi, Juha Parhankangas. SOM Toolbox
for Matlab 5. Report A57, Helsinki University of Technology, Neural Networks
Research Centre, Espoo, Finland, 2000.
[73]
Kate Hevner. Experimental studies of the elements of expression in music.
American Journal of Psychology, Vol. 48, pp. 246-268. 1936.
[74]
Kristine Thimm y Brooke Fischer. "Emotional Responses To Music: Influence Of
Psycho-Acoustical Features". Proceedings of The National Conference on
Undergraduate Research (NCUR) 2003, University of Utah, Salt Lake City, Utah.
March 13 – 15, 2003.
[75]
L3enc http://www.rjamorim.com/rrw/l3enc.html
[76]
LabROSA (Laboratory for the Recognition and Organization of Speech and Audio)
de la Universidad de Columbia, Nueva York http://labrosa.ee.columbia.edu/
[77]
Last.fm Audioscrobbler http://www.audioscrobbler.net/
[78]
Last.fm http://last.fm
[79]
Lawrence R. Rabiner. "A tutorial on Hidden Markov Models and selected
applications in speech recognition". Proc. IEEE, Vol 77, No. 2, pp. 257-286, 1989.
[80]
Luke Barrington, Antoni Chan, Douglas Turnbull & Gert Lanckriet. "Audio
Information Retrieval Using Semantic Similarity". International Conference on
Acoustic, Speech and Signal Processing (ICASSP), Hawaii, 2007.
[81]
MagicMP3Tagger http://www.magic-tagger.com/eng/index.php
[82]
Malcolm Slaney http://www.slaney.org/malcolm/pubs.html
[83]
Marc Torrens, Patrick Hertzog y Josep-Lluís Arcos. "Visualizing And Exploring
Personal Music Libraries". In ISMIR 2004, User Interfaces, pp. 421--424,
Barcelona, Spain, 2004.
[84]
Mark D. Korhonen, David A. Clausi y M. Ed Jernigan. "Modeling Emotional Content
of Music Using System Identification". IEEE Trans. on Systems, Man, and
Cybernetics: Part B Cybernetics, Vol. 36, No. 3, pp. 588-599.
[85]
Markus Frühwirth, Andreas Rauber. "Self-Organizing Maps for Content-Based
Music Clustering". Proceedings of the 12th Italian Workshop on Neural Nets
(2001).
[86]
Martin F. McKinney y Jeroen Breebaart. "Features for Audio and Music
Classification". Proceedings of the 4th Int. Conf. Music Information Retrieval
(ISMIR), H.H. Hoos and D. Bainbridge, eds., Johns Hopkins Univ., 2003, pp. 151–
158.
78/81
Clasificación musical personalizada en función del estado de ánimo
[87]
Martin F. McKinney y Jeroen Breebaart. "Features For Audio Clasiffication".
Proceedings of the 4th Int. Conf. Music Information Retrieval (ISMIR 2003).
[88]
Midomi http://www.midomi.com/index.php
[89]
MP3ext www.mutschler.de/mp3ext
[90]
Mp3tag www.mp3tag.de/en
[91]
MPEG-7 Audio Analyzer Low Level Descriptors Extractor (Technical University of
Berlin, Communication Systems Department) http://mpeg7lld.nue.tu-berlin.de/
[92]
MPEG-7 Multimedia Software Resources (Goldsmiths College, University of
London). http://mpeg7.doc.gold.ac.uk/
[93]
MPEG-7 Overview (ISO/IEC JTC1/SC29/WG11).
http://www.chiariglione.org/mpeg/standards/mpeg-7/mpeg-7.htm
[94]
Musicbrainz Audio Fingerprinting http://wiki.musicbrainz.org/AudioFingerprint
[95]
MusicIP https://secure.musicip.com/index.jsp
[96]
Musicovery http://www.musicovery.com/
[97]
Musictrace Audio Fingerprinting
http://www.musictrace.de/technologies/fingerprinting.en.htm
[98]
Myspace http://www.myspace.com
[99]
Noise Effects Handbook http://www.nonoise.org/library/handbook/handbook.htm
[100]
Owen Meyers. "A Mood-Based Music Classification and Exploration System".
Thesis paper, Massachusetts Institute Of Technology (2007).
[101]
Owen Meyers. "mySoundTrack: A Commonsense Playlist Generator". MAS.969
Final Project, 2005.
[102]
P. J. Rentfrow, S. D. Gosling. (2003). Short Test Of Music Preferences
http://homepage.psy.utexas.edu/HomePage/Faculty/Gosling/music_and_music_p
references.htm
[103]
Paul Ekman, Wallace V. Friesen y
emotion.com/dataface/facs/description.jsp
[104]
Pedro Cano, Eloi Batlle, Ton Kalker y Jaap Haitsma. "A Review of Algorithms for
Audio Fingerprinting". In Workshop on Multimedia Signal Processing (2002).
[105]
Pedro Cano, Martin Kaltenbrunner, Fabien Gouyon y Eloi Batlle. "On the Use of
FastMap for Audio Retrieval and Browsing". Proceedings of the International
Symposium on Music Information Retrieval 2002, Paris.
[106]
Pedro Cano. "Content-Based Audio Search: From Fingerprinting To Semantic
Audio Retrieval". Tesis (2006).
[107]
Perceptual Aspects of Hearing. Universidad de Standford, California.
http://ccrma.stanford.edu/CCRMA/Courses/150/perceptual.html
Joseph
C.
FACS
http://face-and-
79/81
Clasificación musical personalizada en función del estado de ánimo
[108]
Query By Humming. ACM Multimedia 95 - Electronic Proceedings, November 5-9,
1995, San Francisco, California.
http://www.cs.cornell.edu/Info/Faculty/bsmith/query-by-humming.html
[109]
R. Cowie, E. Douglas-Cowie, S. Savvidou, E. McMahon, M. Sawey, & M. Schröder.
“'FEELTRACE': An instrument for recording perceived emotion in real time”. ISCA
Workshop on Speech and Emotion, Northern Ireland, p. 19-24, 2000.
http://www.dfki.de/~schroed/feeltrace/
[110]
R. de Córdoba y J.M. Pardo. Ingeniería Neurosensorial, Capítulo 3.1 (Parte 2):
Funcionamiento del Odio, El Sistema Auditivo (2002).
[111]
Rainer Typke. MelodyHound: Query By Tapping
http://www.melodyhound.com/query_by_tapping.0.html
[112]
Sasank Reddy y Jeff Mascia. "Lifetrak: Music In Tune With Your Life". Proceedings
of the international workshop on Human-centered multimedia (2007); Augsburg,
Bavaria, Germany; pp. 13-22.
[113]
Sematic Web http://www.w3.org/2001/sw/
[114]
Sigurdur Sigurdsson, Kaare Brandt Petersen y Tue Lehn-Schiøler. "Mel Frequency
Cepstral Coefficients: An Evaluation of Robustness of MP3 Encoded Music”. ISMIR
2006, Victoria, Canada (2006).
[115]
SOM Toolbox (Laboratory of Information and Computer Science; Helsinki
University of Technology) http://www.cis.hut.fi/projects/somtoolbox/
[116]
Sony Ericsson SenseMe
http://www.sonyericsson.com/cws/support/phones/detailed/whatissenseme/w980
[117]
Tao Li y Mitsunori Ogihara. "Detecting Emotion in Music". 4th International
Conference on Music Information Retrieval ISMIR, Washington, D.C., and
Baltimore, MD (2003).
[118]
Thomas Lidy, Andreas Rauber, Antonio Pertusa y José Manuel Iñesta. "Improving
Genre Classification By Combination Of Audio And Symbolic Descriptors Using A
Transcription System". Proceedings of the 8th International Conference on Music
Information Retrieval, Österreichische Computer Gesellschaft, p. 61 – 66, 2007.
[119]
Tien-Lin Wu y Shyh-Kang Jeng. "Automatic emotion classification of musical
segments". Proceedings of 9th International Conference on Music Perception and
Cognition (2006).
[120]
Wang Muyuan, Zhang Naiyao y Zhu Hancheng. "User-Adaptive Music Emotion
Recognition" (2004). Proceedings of 2004 7th International Conference on Signal
Processing (ICSP'04), Beijing, China, 2004.
[121]
Wes Hatch. "A Quick Review of Audio Fingerprinting" (2003).
[122]
Winplay http://www.sonicspot.com/winplay/winplay.html
[123]
Wordnet http://wordnet.princeton.edu/
[124]
Xiao Hu y J. Stephen Downie. "Exploring Mood Metadata: Relationships With
Genre, Artist and Usage Metadata". Accepted in the Eighth International
Conference on Music Information Retrieval (ISMIR 2007), Vienna, 2007.
80/81
Clasificación musical personalizada en función del estado de ánimo
[125]
Yi-Hsuan Yang, Chia-Chu Liu y Homer H. Chen. "Music Emotion Classification: A
Fuzzy Approach". Proceedings of ACM Multimedia 2006 (ACM MM'06), Santa
Barbara, CA, USA, pp. 81-84.
[126]
Yi-Hsuan Yang, Ya-Fan Su, Yu-Ching Lin y Homer H. Chen. "Music Emotion
Recognition: The Role of Individuality". Proceedings of ACM SIGMM International
Workshop on Human-centered Multimedia 2007, in conjunction with ACM
Multimedia (ACM MM/HCM'07), Augsburg, Germany, pp. 13-21.
[127]
Yi-Hsuan Yang, Yu-Ching Lin, Ya-Fan Su y Homer H. Chen. "Music Emotion
Classification: A Regression Approach". Proceedings of IEEE Int. Conf. Multimedia
Expo 2007 (ICME'07), Beijing, China, pp. 208-211.
81/81

Documentos relacionados