scieee AI-readable full text Open interactive document viewer

Un algoritmo eficiente para estudiar la similitud melódica de los cantes flamencos

Rizo-Massia, Juan Carlos; Díaz Báñez, José Miguel

Abstract

En este trabajo se estudia la similitud melódica entre cantes flamencos usando el paradigma Dynamic Time Warping como medida. Centramos nuestro estudio en un grupo de estilos en particular, las tonás, cantes flamencos a capela, caracterizados por ser cantes ad libitum y por su alto grado de complejidad en la ornamentación. Se muestra que esta medida de similitud discrimina correctamente variaciones entre estilos. Con relación a la aceleración de los algoritmos de similitud clásicos, nuestra estrategia calcula una segmentación eficiente del contorno melódico previa a la aplicación de la medida de similitud. Se demuestra que nuestro método obtiene mejores resultados (tanto en eficiencia como en precisión) que otros algoritmos existentes.

Full text

80 Un algoritmo eficiente para estudiar la similitud melódica de los cantes flamencos J. C. Rizo-Massia J. M. Díaz-Báñez Resumen En este trabajo se estudia la similitud melódica entre cantes flamencos usando el paradigma Dynamic Time Warping como medida. Centramos nuestro estudio en un grupo de estilos en particular, las tonás, cantes flamencos a capela, caracterizados por ser cantes ad libitum y por su alto grado de complejidad en la ornamentación. Se muestra que esta medida de similitud discrimina correctamente variaciones entre estilos. Con relación a la aceleración de los algoritmos de similitud clásicos, nuestra estrategia calcula una segmentación eficiente del contorno melódico previa a la aplicación de la medida de similitud. Se demuestra que nuestro método obtiene mejores resultados (tanto en eficiencia como en precisión) que otros algoritmos existentes. 1. Introducción Pese a la existencia del flamenco desde hace más de un siglo y al gran arraigo cultural y social que posee, no ha sido hasta hace relativamente poco cuando se ha querido someter este arte al juicio de la ciencia. Posiblemente, este hecho ha estado motivado por el carácter anárquico y sentimental del propio cante flamenco, ya que, aunque sus formas y estilos están claramente definidos, la tradición oral ha hecho que estos se superpongan y mezclen de tal forma que resulta muy complejo establecer un patrón fijo e inamovible de cada palo. 81 El flamenco es la música tradicional más importante en Andalucía, y goza además, de gran interés internacional. La música flamenca es fundamentalmente de tradición oral, lo que dificulta, y hace más interesante a la vez, su estudio científico. Por otra parte, la conservación de esta música de generación en generación hace que la melodía juegue un papel crucial en la evolución y clasificación de los distintos estilos del flamenco, siendo este uno de los problemas abiertos más apasionantes del área. La Teoría Computacional de la Música es un campo de creación relativamente reciente. La música y las matemáticas han estado relacionadas desde al menos 2.500 años, cuando Pitágoras descubrió que los intervalos más consonantes provenían de proporciones simples y pequeñas. Desde entonces, la interacción entre música y matemáticas no ha hecho sino crecer. Y ha sido en las últimas décadas cuando se ha producido una revitalización como consecuencia de la introducción de los métodos computacionales en el análisis de la música. Las técnicas computacionales y modelos matemáticos utilizados en el área de investigación de la Teoría Computacional del flamenco, pertenecen al campo de la Music Information Retrieval (MIR)1. Por su parte, la clasificación de los estilos flamencos con un procedimento automático está sujeto a diversas dificultades (incluso manualmente). Sin embargo, aunque dos interpretaciones de un mismo palo puedan sonar muy diferentes para un oído no acostumbrado al flamenco, detrás de cada estilo existe un patrón o esqueleto melódico que tiene memorizado el cantaor, de tal suerte que, cuando interpreta el cante, lo impregna de ornamentación y melismas propios del flamenco y que hacen bastante compleja la detección de tal patrón definitorio del estilo. De cualquier modo, resulta evidente que encontrar un método efectivo y eficiente de cálculo de similitud melódica en el cante flamenco no deja de ser un reto apasionante y complejo. 1 N. Orio, «Music retrieval: a tutorial and review», Foundations and Trends in Information Retrieval, vol. 1 (2006), pp. 1-90. 82 Existen trabajos actuales donde se proponen medidas de similitud melódica en el contexto del flamenco. Tal es el caso de los trabajos del grupo COFLA2. Así en uno de ellos3 se propone el uso de una distancia que combina el uso de la distancia de edición sobre dos contornos melódicos y una distancia vectorial sobre una cadena simbólica de variables musicales previamente definidas para los cantes de tonás. En este trabajo presentamos un procedimiento novedoso de cálculo de similitud melódica que permite la distinción de distintas variantes del flamenco. Lo aplicamos aquí a los cantes por Tonás, concretamente Deblas y Martinetes, pero puede usarse obviamente a otros estilos menos ornamentados. 2. El método del DTW Este algoritmo de similitud conocido por sus iniciales DTW4 se aplica cuando las dos secuencias que se van a comparar pueden variar en tiempo o velocidad, es decir, cuando ambas secuencias tienen diferente longitud. Es muy utilizado en aplicaciones de reconocimiento automático del habla, donde el sistema puede recibir una misma palabra enunciada a diferentes velocidades. En nuestro caso, las secuencias de entrada serán las dos melodías que queremos comparar. En general, el funcionamiento del algoritmo se basa en la búsqueda de un camino óptimo de coincidencia entre dos secuencias con ciertas restricciones. Las secuencias se transforman de forma no lineal en el tiempo, de modo que son comprimidas o expandidas en el tiempo para que tengan el mismo tamaño, y así poder compararlas 2 http://mtg.upf.edu/research/projects/cofla. 3 J. Mora; F. Gómez; E. Gómez; F. J. Escobar-Borrego; J. M Díaz-Báñez, «Characterization and melodic similarity of a Cappella flamenco cantes», International Society for Music Information Retrieval Conference, ISMIR, 2010. 4 H. Sakoe; S. Chiba, «Dynamic programming algorithm optimization for spoken word recognition. Acoustics, Speech and Signal Processing», IEEE Transactions, 26 (1) (1978), pp. 43-49. 83 punto a punto. Una variante del algoritmo DTW, conocida como Context- Dependent Dynamic Time Warping5 fue utilizada para la localización de patrones melódicos predefinidos y diferenciadores de estilos en el contexto de los fandangos de Huelva. El alto grado de complejidad del método DTW, tanto en tiempo como en espacio, crea la necesidad de establecer estrategias o métodos que aceleren el comportamiento del algoritmo DTW original. Se han realizado muchos esfuerzos en este sentido para la búsqueda de similitud de cadenas simbólicas y numéricas bajo el paraguas del algoritmo DTW. Dos de las propuestas más usadas son las que se basan en establecer restricciones en las trayectorias de búsqueda, como son las bandas de Sakoe-Chiba o el paralelogramo de Itakura. Recientemente se ha propuesto un algoritmo más rápido, FastDTW6, que obtiene una aproximación mediante la proyección de trayectorias que calcula el método DTW para distintos niveles de reducción. 3. La segmentación. El algoritmo FITTING El algoritmo de aproximación FITTING7 fue propuesto para simplificar cadenas ortogonales. Proponemos aquí el uso de este método para segmentar las melodías del cante flamenco. Aplicando este algoritmo sobre la curva melódica, se obtiene una representación discreta de la curva original (segmentación) de mínima longitud para un error o umbral fijado de antemano. Teniendo en cuenta que las máximas variaciones de tono en el cante flamenco están contenidas en una octava musical, la elección de valores de umbral comprendidos entre uno y medio semitono parece adecuada para capturar el esqueleto melódico de la pieza (ver Figura 1). 5 A. Pikrakis; F. Gómez; S. Oramas; J. M. Díaz-Báñez; J. Mora; F. Escobar; et al., «Tracking Melodic Patterns in Flamenco Singing by Analyzing Polyphonic Music Recordings», ISMIR, 2012, pp. 421-426. 6 S. Salvador; P. Chan, FastDTW: Toward Accurate Dynamic Time Warping in Linear Time and Space. KDD Workshop on Mining Temporal and Sequential Data, 2004, pp. 70-80. 7 J. M. Díaz-Báñez; J. A. Mesa, «Fitting rectilinear polygonal curves to a set of points in the plane», European Journal of Operational Research, 130, (1) (2001), pp. 214-222. 84 Figura 1: Segmentación de la frecuencia fundamental f0 realizada por el algoritmo fitting. A continuación se describe el algoritmo sin entrar en detalles técnicos. Dado un conjunto de puntos P={p1,p2,…,pn } en un espacio bidimensional y una tolerancia al error α, se trazan segmentos verticales (ventanas) Vi de longitud 2α centrados en cada punto pi. La restricción fijada de que cada punto de la curva melódica inicial esté dentro del intervalo Vi es equivalente a decir que la función escalonada (segmentación) intercepta cada uno de estos segmentos de longitud 2α. Barriendo de izquierda a derecha, el algoritmo trata de interceptar tantas ventanas consecutivas como sea posible, antes de empezar un nuevo escalón y repetir el procedimiento. El segmento vertical Vi define un intervalo Y=[yi +,yi -] donde yi + e yi - denotan las coordenadas del punto final superior y inferior de y respectivamente. Recorriendo de izquierda a derecha se mantiene la intersección ∆ de los intervalos hasta que se llega a un segmento Vj no interceptado por ∆. En este caso se termina la construcción del segmento, y se empieza un nuevo escalón (segmento horizontal). El tiempo computacional (rapidez) de este algoritmo es excelente y construye una cadena de segmentos horizontales de mínima longitud que representa la segmentación de la melodía con una tolerancia α. 4. Nuestra estrategia La ineficiencia del método clásico DTW, tanto en tiempo como en espacio, crea la necesidad de establecer estrategias o métodos que acele- 85 ren el comportamiento del algoritmo DTW original. A la hora de enfocar una estrategia para mejorar la complejidad del algoritmo DTW, es posible considerar dos alternativas para diseñar una medida de similitud melódica: 1. Aplicar alguna estrategia de simplificación del DTW, por ejemplo, FastDTW, bandas de Sakoe-Chiba, o alguna otra, y obtener una medida de similitud aproximada asumiendo los errores que ello conlleva. 2. Aplicar el algoritmo clásico del DTW sobre una aproximación de los datos de entrada (de la melodía) calculada mediante algún método de segmentación. En este trabajo se adoptará la segunda estrategia. Por lo tanto, nuestro objetivo se centra en discretizar la envolvente de la frecuencia fundamental extraída con herramientas existentes (Smstools2, Melody, Mami o similares) en pequeños segmentos o secuencias, de modo que las medidas de similitud no se alteren globalmente. La complejidad temporal de los algoritmos de segmentación utilizados varía desde el orden de la duración de la propia pieza (muy lento), en el caso de usar la segmentación obtenida por el Smstools2, hasta la gran velocidad ofrecida por el método basado en el algoritmo Fitting. A modo de resumen la estrategia combinada que proponemos se llevará a cabo en los siguientes pasos: 1. Obtención de la frecuencia fundamental (que llamamos f0) de las piezas a analizar mediante métodos de análisis de pitch8. 2. Pre-tratamiento de la frecuencia fundamental para la eliminación de silencios y posibles datos espurios. 3. Normalización de la frecuencia fundamental a una frecuencia de referencia. 8 E. Gómez; J. Bonada, «Towards computer-assisted flamenco transcription: An experimental comparison of automatic transcription algorithms as applied to a cappella singing», Computer Music Journal, 37 (2) (2013), pp. 73-90. 86 4. Segmentación usando el método elegido. 5. Aplicación del algoritmo DTW y obtención de la matriz de distancias. Describimos brevemente a continuación las etapas del método: 4.1. Primer paso: obtención de la frecuencia fundamental Para la obtención de la frecuencia fundamental (f0) se hará uso de métodos de análisis de pitch, con él se obtendrá a partir de la grabación de audio en formato *.wav, en mono, con una frecuencia de muestreo de 44.1 kHz. 4.2. Segundo paso: pre-tratamiento de la frecuencia fundamental Los datos extraídos poseen silencios y datos espurios que no aportan información y distorsionan la forma del contorno melódico que se va a analizar, por lo que se realizará un pretratamiento de los datos para así tener un perfil melódico correcto. Los silencios y los datos espurios del tipo «valores negativos», han sido eliminados de forma automática, mientras que los datos espurios de tipo «valores excesivamente altos», han sido eliminados de forma manual mediante la inspección del contorno. 4.3. Tercer paso: cuantización y normalización Al estar los datos de la frecuencia fundamental en Hz, debemos normalizarlos para poder comparar todos los cantes en base a un frecuencia de referencia. La frecuencia de afinación tomada como referencia es 440 Hz, que en el código de notas MIDI representa la nota LA 4ª. Para normalizar la frecuencia fundamental, se realizará una conversión a semitonos, tomando como se ha dicho como frecuencia de referencia 440 Hz. 4.4. Cuarto paso: segmentación Como se ha comentado en la introducción a la metodología a seguir, 87 la base fundamental de la estrategia escogida es simplificar los datos de entrada al algoritmo DTW mediante una segmentación del contorno melódico. Dicha segmentación se realizará mediante la implementación en código de Matlab del algoritmo Fitting. La segmentación obtiene un representación discreta mínima de la curva de contorno melódico para un rango fijado de tolerancia al error α, el cual marca el grado de aproximación de la representación discreta a la real continua, esto es, a menor α más similar es la aproximación a la real, conteniendo mayor número de componentes. A su vez, a mayor α se obtendrá una aproximación con mayor error pero con un menor número de componentes. En este escenario, se ha de encontrar una solución de compromiso entre la eficiencia y la eficacia del algoritmo al establecer un α determinado. Dicho problema se resolverá en la próxima sección, al realizar pruebas con distintos α y determinar los tiempos de computación y los errores que éstos poseen. La resolución mínima que se considera para el parámetro α es de medio semitono, es decir, la ventana se fija con una altura de 1 semitono. En la siguiente figura se representa la segmentación de una Debla interpretada por Antonio Mairena. Figura 2: Detalle de la segmentación. A medida que se disminuye el parámetro α, la aproximación de la función discreta (segmentación) se ciñe mejor a la función continua (contorno melódico), pero por el contrario, como se ha dicho antes, el número de componentes, o segmentos por los que la representación discreta aproxima al contorno melódico, aumenta. La tabla siguiente muestra un ejemplo del cambio de número de componentes de la segmentación de 88 una Debla interpretada por Antonio Mairena. α Nº de segmentos obtenidos 270 1174 0,5 398 Tabla 1: Número de segmentos para cada tolerancia al error. 4.5. Quinto paso: aplicación del algoritmo DTW y obtención de la matriz de distancias En este paso de la estrategia se llega a lo novedoso del algoritmo SDTW: la aplicación del algoritmo DTW clásico sobre el contorno segmentado de los audios que forman el corpus de cantes elegidos. Con ello, se calculan las distancias o diferencias numéricas entre los cantes del corpus. 5. Medidas de rendimiento Con el fin de evaluar y comparar nuestro algoritmo con otras estrategias usaremos diferentes medidas de rendimiento o bondad. Las describimos brevemente: • Una representación gráfica de las distancias obtenidas mediante la creación de árboles filogenéticos. Se hará uso de técnicas de Bioinformática9 que son capaces de construir un árbol que refleja las relaciones entre sus miembros. Un análisis similar se realizó por primera vez para la música flamenca en un artículo sobre la evolución rítmica del flamenco10. • Test de Mantel11 para cuantificar la correlación entre las matrices de distancias para cadenas melodicas no segmentadas y segmentadas. 9 D. H. Huson, «SplitsTree: analyzing and visualizing evolutionary data», Bioinformatics, 14 (1) (1998), pp. 68-73. 10 J. M. Díaz-Bañez; G. Farigu; F. Gómez; D. Rappaport; G. T. Toussaint, «El compás flamenco: a phylogenetic analysis», en Proceedings of BRIDGES: Mathematical Connections in Art, Music and Science, 2004, pp. 61-70. 11 N. Mantel; R. S. Valand, «A technique of nonparametric multivariate analysis», Biometrics, vol. 26, no. 3 (1970), pp. 547-558.