ES2354330A1 - Método para calcular medidas de similitud entre señales temporales. - Google Patents

Método para calcular medidas de similitud entre señales temporales. Download PDF

Info

Publication number
ES2354330A1
ES2354330A1 ES200901057A ES200901057A ES2354330A1 ES 2354330 A1 ES2354330 A1 ES 2354330A1 ES 200901057 A ES200901057 A ES 200901057A ES 200901057 A ES200901057 A ES 200901057A ES 2354330 A1 ES2354330 A1 ES 2354330A1
Authority
ES
Spain
Prior art keywords
sequence
result
accumulated
sub
signals
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
ES200901057A
Other languages
English (en)
Other versions
ES2354330B1 (es
Inventor
Joan Serra Julia
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universitat Pompeu Fabra UPF
Original Assignee
Universitat Pompeu Fabra UPF
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Universitat Pompeu Fabra UPF filed Critical Universitat Pompeu Fabra UPF
Priority to ES200901057A priority Critical patent/ES2354330B1/es
Priority to US12/764,424 priority patent/US8718803B2/en
Publication of ES2354330A1 publication Critical patent/ES2354330A1/es
Application granted granted Critical
Publication of ES2354330B1 publication Critical patent/ES2354330B1/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/06Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
    • G06F7/20Comparing separate sets of record carriers arranged in the same sequence to determine whether at least some of the data in one set is identical with that in the other set or sets

Abstract

Método para calcular medidas de similitud entre señales temporalesComprende:- adquirir y comparar unos datos (xi, yj) de unas señales (X, Y) temporales;- asignar un uno o un cero a cada dos datos comparados (xi, yj), en función del resultado de dicha comparación, creando un conjunto de datos;- determinar unas secuencias temporales con dichos unos y ceros del conjunto de datos, cada una formada por unas subsecuencias consecutivas de unos, separadas por discontinuidades de ceros;- seleccionar el resultado mayor de unos resultados acumulados obtenidos para cada subsecuencia, realizándose para cada punto determinado i, j de valor uno la suma de dicho uno al resultado acumulado de valor máximo, de entre los resultados acumulados en un punto i-1, j-1 de dicha subsecuencia, un punto i-2, j-1 de una subsecuencia de una segunda secuencia temporal, y un punto i-1, j-2 de una subsecuencia de una tercera secuencia.

Description

Método para calcular medidas de similitud entre señales temporales.
Sector de la técnica
La presente invención concierne en general a un método para calcular medidas de similitud entre señales temporales, que comprende evaluar el nivel de similitud, en relación a uno o más valores umbrales, de unos datos variables en el tiempo de dichas señales, y realizar una serie de sumas acumuladas con los resultados de dichas comparaciones, y en particular a un método que comprende compensar las posibles diferencias en la velocidad de dichas señales temporales.
La invención es particularmente aplicable al campo de la recuperación de información musical, y más en particular a la detección de interpretaciones o versiones de una misma pieza musical.
\vskip1.000000\baselineskip
Estado de la técnica anterior
Es conocido calcular medidas de similitud entre diferentes señales temporales, para determinar automáticamente cuanto se parecen o difieren entre sí, con diferentes fines, en función de la naturaleza de dichas señales temporales.
Con el fin de realizar dichos cálculos se conocen propuestas en las cuales se comparan directamente los datos relativos a la magnitud variable en el tiempo de unas señales de interés, tales como unas señales de audio, o donde la comparación se hace con respecto a unas series temporales de unos descriptores representativos de uno o más aspectos característicos de dichas señales de interés, tales como los conocidos descriptores tonales cuando es el caso de señales de audio. Algunas propuestas combinan los datos relativos a la magnitud de las señales de interés con los de dichos descriptores.
Una manera conocida de realizar dichas comparaciones es mediante una matriz de recurrencia cruzada, o extensión bivariante del diagrama o matriz de recurrencia RP [J. P. Eckmann, S. O. Kamphorst, and D. Ruelle, Europhysics Letters 5, 973 (1987)], es decir la denominada matriz de recurrencia cruzada, o CRP [J. P. Zbilut, A. Giuliani, and C. L. Webber Jr., Physics Letters A 246, 122 (1998)], la cual parece ser la más conveniente para el análisis de series temporales de diversa índole, en particular de series temporales de descriptores musicales, ya que la CRP está definida para señales de diferentes longitudes y puede hacer frente fácilmente a variaciones en el dominio temporal [N. Marwan, M. Thiel, and N. R. Nowaczyk, Nonlinear Processes in Geophysics 9, 325 (2002)].
Es asimismo conocido que, dada una sola señal potencialmente multivariante x, el método de coordenadas de retardo proporciona una estimación de la dinámica subyacente en un espacio de estado reconstruido [F. Takens, Lecture Notes in Mathematics 898, 366 (1981) y H. Kantz and T. Schreiber, Nonlinear time series analysis (Cambridge University Press, 2004)].
Una matriz RP es una manera directa de visualizar características de estados similares de uno o varios sistemas logrados en tiempos diferentes. Con este fin, dos ejes temporales discretos definen una matriz cuadrada que contiene ceros y unos, visualizados típicamente como celdas blancas y negras, respectivamente. Cada celda negra en las coordenadas (i, j) indica una recurrencia, es decir, que un estado en el tiempo i era similar a un estado en el tiempo j. Por ello, la línea diagonal principal de la matriz RP es negra, es decir una secuencia de celdas negras sin disrup-
ciones.
Dadas un par de señales x e y que son, en general, de diferentes longitudes, una matriz CRP es construida de la misma forma que una RP, pero con la diferencia de que en una CRP los dos ejes definen una matriz rectangular Ny x Nx (siendo Nx y Ny el número de puntos de las series temporales x e y, respectivamente). Una matriz CRP permite resaltar las equivalencias de estados entre ambos sistemas para diferentes tiempos. Los elementos (o celdas) incluidos en un matriz CRP son en general indicados como R_{i, \ j}, y cuando adquieren un valor positivo, en general uno, se representan mediante una correspondiente celda negra, y por una celda blanca cuando su valor es cero.
En general R_{i, \ j} se define convencionalmente por la siguiente ecuación:
1
para i = 1, ..., N_{x} y j = 1, ..., N_{y}, donde x_{i} e y_{i} son representaciones (en el espacio de estado o en el espacio temporal) de dos respectivas señales temporales durante unas ventanas de muestreo i y j, respectivamente, siendo
\Theta (\cdot) en general la función de paso Heaviside (\Theta (z) = 0 si z<0 y \Theta (z) = 1 en cualquier otro caso), y siendo \varepsilon un valor o distancia umbral, también aplicable al utilizar el método de los vecinos cercanos entre los datos de ambas señales [J. P. Eckmann, S. O. Kamphorst, and D. Ruelle, Europhysics Letters 5, 973 (1987)]. Por lo que se refiere a ||\cdot|| este símbolo hace referencia a cualquier norma, tal como una norma euclidiana.
Cuando una matriz CRP se utiliza para caracterizar sistemas distintos, la diagonal principal de elementos R_{i, \ j}, en general, no es negra, es decir que la secuencia de celdas que define dicha diagonal incluye celdas negras y blancas, o dicho de otro modo una serie de subsecuencias separadas por discontinuidades de uno o más ceros, o celdas blancas. Cualquier trayectoria diagonal de celdas negras conectadas representa las secuencias de estados similares exhibidas por ambos sistemas. Cuando se aplica a series temporales de un descriptor, extraídas, por ejemplo, de dos piezas musicales, tales "trayectorias de similitud" pueden reflejar que una misma porción musical fue reproducida en ambas canciones. Debe observarse que el análisis de cuantificación de la recurrencia (RQA) [J. P. Zbilut and C. L. Webber Jr., Physics Letters A 171, 199 (1992); C. L. Webber Jr. and J. P. Zbilut, Journal of Applied Physiology 76, 965 (1994); y L. L. Trulla, A. Giuliani, J. P. Zbilut, and C. L. Webber Jr., Physics Letters A 223, 255 (1996)] permite que se extraigan otras características cuantitativas adicionales basadas en la densidad de puntos de recurrencia y en las estructuras lineales en las matrices RP y CRP, para caracterizar la dinámica sobre la que se han obtenido las señales medidas.
Uno de dichos análisis de cuantificación de la recurrencia, descrito en N. Marwan, M. Thiel, and N. R. Nowaczyk, Nonlinear Processes in Geophysics 9, 325 (2002), considera la longitud L_{max} de la diagonal más larga, es decir la subsecuencia de celdas negras más larga, hallada en la matriz RP o CRP, como indicativa de las medidas de similitud entre ambas señales.
Para ello, se realizan una serie de sumas acumuladas de todos los valores, en general unos, de cada subsecuencia, y de entre dichas sumas se selecciona la que ofrece un resultado mayor.
L_{max} puede ser expresada como el valor máximo de una matriz acumulativa L computada a partir de la matriz CRP. Inicializando L_{1, \ j} = L_{i, \ 1} = 0 para i = 1, ..., N_{x} y j = 1, ..., N_{y}, y entonces aplicando de manera recursiva:
2
para i = 2, ..., N_{x} y j = 2, ..., N_{y}, siendo definida L_{max} = max {L_{i, \ j}} para i = 1, ..., N_{x} y j = 1, ..., N_{y}.
L_{max} proporciona información interesante acerca de la similitud local de dos series temporales, ya que, por ejemplo, ésta hace frente a cambios estructurales entre las dos señales o series temporales a comparar, tal como por ejemplo el que se produce cuando una misma porción o porción muy similar de datos puede estar incluida en tramos temporales distintos entre ambas señales, lo cual provoca que en la matriz CRP se produzca una diagonal o subsecuencia de celdas negras, o de unos, que no coincide con la diagonal principal. Aplicando L_{max}, dicha subsecuencia que no coincide con la diagonal principal es tenida en cuenta, en particular su valor acumulado, por lo que tales cambios estructurales no afectan a la medida de similitud realizada mediante L_{max}.
Existen, no obstante, otras variaciones entre las señales o series de datos temporales que no son tenidos en cuenta ni por L_{max} ni por ninguna otra medida de análisis de cuantificación de la recurrencia conocida por los presentes inventores.
Tal es el caso de las variaciones o desviaciones en la velocidad con la que evolucionan en el tiempo dichas señales o series de datos, denominada tempo en el caso de señales de audio, las cuales son representadas en la matriz CRP como trazas o subsecuencias negras, o de unos, de forma curvada o alabeada, que no son tenidas en cuenta por ninguna de dichas medidas de análisis de cuantificación de recurrencia. En particular, la matriz acumulativa L computada a partir de la matriz CRP no incluye dichas trazas curvadas o alabeadas, por lo que su existencia es ignorada al calcular L_{max}, produciéndose por tanto un resultado erróneo, es decir una medida de similitud baja, para dos señales o series temporales que en realidad sean muy similares pero con una velocidad o tempo distinto.
\vskip1.000000\baselineskip
Explicación de la invención
Resulta necesario ofrecer una alternativa al estado de la técnica que cubra las lagunas halladas en el mismo, y que proporcione una solución válida a la hora de medir la similitud entre dos señales o series temporales que evolucionan en el tiempo con velocidades distintas.
Para ello, la presente invención aporta un método para calcular medidas de similitud entre señales temporales, que comprende realizar las siguientes etapas, en sí conocidas, de manera automática:
a) adquirir unos datos x_{i} de una primera señal X variable en el tiempo y unos datos y_{i} de una segunda señal Y variable en el tiempo, a lo largo de parte o la totalidad de la duración de cada señal;
b) comparar cada uno de dichos datos x_{i} adquiridos de dicha primera señal X con como mínimo una parte de dichos datos y_{j} adquiridos de dicha segunda señal Y, para evaluar el nivel de similitud entre ellos;
c) asignar un valor positivo predeterminado, en general un valor unitario, a cada dos datos comparados x_{i}, y_{j}, si el resultado de dicha comparación es superior a un umbral determinado, y un cero si es inferior a dicho umbral determinado, creando un conjunto de datos con dichos valores positivos y dichos ceros ordenados temporal-
mente;
d) determinar al menos una primera secuencia temporal con al menos parte de dichos valores positivos predeterminados y dichos ceros asignados de dicho conjunto de datos, formada por una serie de subsecuencias consecutivas de valores positivos, separadas por discontinuidades formadas por uno o más ceros;
e) obtener una serie de resultados acumulados para como mínimo cada una de dichas subsecuencias consecutivas, sumando los valores positivos incluidos en al menos cada subsecuencia; y
f) seleccionar el resultado mayor de entre dichos resultados acumulados obtenidos en dicha etapa e), y establecer dicho resultado seleccionado como indicativo del nivel de similitud entre dichas dos señales.
A diferencia de los métodos convencionales, el propuesto por la presente invención, comprende compensar posibles diferencias en la velocidad de dichas señales X, Y, o en parte de las mismas. Para ello el método comprende llevar a cabo dicha etapa e) obteniendo un resultado acumulado para cada punto determinado i, j de un valor positivo, de cada una de dichas subsecuencias, realizando la suma de dicho valor positivo al resultado acumulado de valor máximo, de entre al menos los siguientes tres resultados acumulados obtenidos de manera análoga:
- un resultado parcial acumulado en un punto justo anterior i-1, j-1 de dicha subsecuencia,
- un resultado acumulado en un punto i-2, j-1 de una subsecuencia de una segunda secuencia temporal, y
- un resultado acumulado en un punto i-1, j-2 de una subsecuencia de una tercera secuencia temporal.
En función del ejemplo de realización del método propuesto por la presente invención, los datos x_{i} e y_{j} de las señales X e Y son relativos a directamente la magnitud variable en el tiempo de dichas señales X e Y, o a unas series temporales de uno o más descriptores representativos de uno o más aspectos característicos de dichas señales X e Y, tales como los conocidos descriptores tonales cuando es el caso de señales de audio, o a una combinación de
ambos.
Para un ejemplo de realización dicho conjunto de datos es una matriz de recurrencia cruzada CRP, siendo dichos datos unos datos de recurrencia R_{i, \ j}, que para un ejemplo de realización son obtenidos de manera convencional según se ha descrito en el apartado anterior, o para otro ejemplo de realización preferido son obtenidos teniendo en cuenta la posible reciprocidad, o ausencia de la misma, existente a la hora de realizar dicha comparación de dicha etapa b) tomando como referencia una u otra de dichas señales X, Y.
Para dicho ejemplo de realización en que el conjunto de datos es una matriz de recurrencia cruzada, dicha primera secuencia temporal determinada en dicha etapa d) corresponde a una diagonal de celdas negras y blancas, es decir de unos y ceros respectivamente, tal como la diagonal principal de la matriz CRP, siendo dichas subsecuencias consecutivas cada uno de los segmentos de celdas negras o unos que forman parte de la misma diagonal. Diferentes ejemplos de matrices CRP aplicadas a diferentes señales temporales se encuentran ilustrados en las figuras adjuntas, y serán debidamente descritos en un apartado posterior.
Para cuantificar la longitud de las trazas curvadas o alabeadas provocadas por las diferencias de velocidades indicadas, el método propuesto por la presente invención comprende computar una matriz acumulativa S a partir de la matriz CRP.
Inicializando S_{1, \ j} = S_{2, \ j} = S_{i, \ 1} = S_{i,\ 2} = 0 para i = 1, ..., N_{x} y j = 1, ..., N_{y}, y entonces aplicando de manera recursiva:
3
para i = 3, ..., N_{x} y j = 3, ..., N_{y}.
\newpage
El método propuesto por la invención aporta un nuevo parámetro de medida S_{max} de análisis de cuantificación de la recurrencia, que puede ser expresado como el valor máximo de la matriz acumulativa S es decir:
4
cuyo valor corresponde a la longitud, o resultado acumulado, de la traza curvada más larga en la matriz CRP, es decir de la subsecuencia curvada de unos o celdas negras más larga, el resultado acumulado de la cual será seleccionado en dicha etapa f).
El método comprende, para un ejemplo de realización, llevar a cabo todas las etapas descritas para determinar, en d), una pluralidad de secuencias temporales, de manera análoga a la determinación de dicha primera subsecuencia, para obtener, en e), una serie de resultados acumulados para cada subsecuencia de cada secuencia temporal, y realizar dicha etapa f) para seleccionar el resultado mayor de entre todos los resultados acumulados obtenidos en la etapa e). Es decir que el método comprende tener en cuenta todas las diagonales de celdas negras incluidas en la matriz
CRP.
Por lo que se refiere a la anteriormente comentada reciprocidad a la hora de llevar a cabo, para un ejemplo de realización, la obtención de los elementos o datos de recurrencia R_{i, \ j}, el método comprende en dicha etapa b), también comparar cada uno de dichos datos y_{j} adquiridos de dicha segunda señal Y con como mínimo una parte de dichos datos x_{i} adquiridos de dicha primera señal X, para evaluar el nivel de similitud entre ellos.
En particular el método comprende definir RR_{i, \ j} según la siguiente ecuación:
5
para i = 1, ..., N_{x} y j = 1, ..., N_{y}, donde en este caso a diferencia de la ecuación convencional de cálculo de R_{i, \ j} descrita en el apartado de Estado de la Técnica, se utilizan dos valores o distancias umbrales \varepsilon_{i}^{x} y \varepsilon^{y}_{j}, que son ajustados de manera que un porcentaje máximo predeterminado de vecinos k es utilizado para ambos x_{i} e y_{j}. Así, el número máximo de entradas o elementos de valor positivo en cada fila y columna de la matriz CRP nunca excede de k x N_{y}, ni de k x N_{x}, respectivamente.
Los presentes inventores han comprobado que el uso de un porcentaje fijo de vecinos cercanos ofrece unos resultados mejores que los obtenidos mediante el uso de un valor umbral fijo.
Las discontinuidades o disrupciones entre subsecuencias se producen por diversas causas, por ejemplo, cuando las señales a analizar son señales de audio, o más en particular versiones "cover" de una canción, en ocasiones los músicos se saltan algunos acordes de la canción original, o parte de su melodía, lo cual provoca disrupciones cortas en, de otro modo, trazas coherentes en la matriz CRP. Además, para el caso particular de que los datos x_{i} e y_{j} correspondan a unas series temporales de un descriptor tonal de unas señales de audio, en concreto del descriptor HPCP ("harmonic pitch class profiles"), estas disrupciones pueden estar ocasionadas por el hecho de que las características HPCP pueden contener alguna energía que no esté directamente asociada a contenido tonal de audio.
Para un ejemplo de realización del método propuesto por la invención, para cada subsecuencia que comienza tras una discontinuidad, el método comprende comenzar la operación de suma de sus valores positivos que ofrezca un resultado acumulado para dicha subsecuencia, independientemente del resultado o resultados acumulados de una o más subsecuencias previas a dicha discontinuidad, es decir tal y como se lleva a cabo para calcular Lmax, donde cada discontinuidad entre dos subsecuencias consecutivas hace que el "contador" se ponga a cero antes de iniciarse la cuenta acumulada de la segunda subsecuencia que comienza tras la discontinuidad.
Con el fin de que dichas discontinuidades no afecten de manera tan negativa a una cuenta acumulada, en particular cuando las mismas no son muy largas, es decir están formadas por pocos ceros, el método propuesto por la presente invención comprende, para un ejemplo de realización preferido, alternativo al descrito en el párrafo anterior, para cada subsecuencia que comienza tras una discontinuidad, comenzar la operación de suma de sus valores positivos (en general unos) que ofrezca un resultado acumulado para dicha subsecuencia, teniendo en cuenta como mínimo el resultado acumulado de una subsecuencia previa a dicha discontinuidad.
En particular el método comprende comenzar la operación de suma de valores positivos que ofrezca un resultado acumulado para dicha subsecuencia posterior a una discontinuidad, a partir de un valor de resultado acumulado penalizado obtenido al aplicar como mínimo una penalización a dicho resultado acumulado de la subsecuencia previa, perteneciente a la misma secuencia que dicha subsecuencia posterior, o a otra secuencia temporal alternativa.
Si bien el tipo de penalización a aplicar puede ser de muy diversa índole, en general dicha penalización comprende restar un valor determinado a dicho resultado acumulado de la subsecuencia previa.
El método comprende, para cada cero de dicha discontinuidad hallado en un punto determinado i, j, obtener dicho valor de dicho resultado acumulado penalizado restando un valor determinado a al menos el resultado acumulado de la subsecuencia previa, en un punto justo anterior i-1, j-1 a dicho cero. Este caso solamente es aplicable cuando no existen trazas curvas o alabeadas en la matriz CRP, o se considera que su existencia no es demasiado relevante.
En cambio para el caso más preferido en que sí que se tienen en consideración las variaciones de velocidad o tempo que provocan las mencionadas trazas curvas o alabeadas en la matriz CRP, el método comprende, para cada cero de dicha discontinuidad hallado en un punto determinado i, j, obtener dicho valor de dicho resultado acumulado penalizado:
- restando un valor determinado al resultado acumulado de la subsecuencia previa en un punto justo anterior i-1, j-1 a dicho cero.
- restando un valor determinado al resultado acumulado en un punto i-2, j-1 de una subsecuencia de una segunda secuencia temporal,
- restando un valor determinado al resultado acumulado en un punto i-1, j-2 de una subsecuencia de una tercera secuencia temporal, y
- seleccionar, de entre dichos tres resultados y un valor igual a cero, el que tenga un valor máximo, como dicho valor de dicho resultado acumulado penalizado.
Para implementar dicho caso más preferido, el método propuesto por la presente invención comprende computar una matriz acumulativa Q a partir de la matriz CRP.
Inicializando Q_{1, \ j} = Q_{2, \ j} = Q_{i, \ 1} = Q_{i, \ 2} = 0 para i = 1, ..., N_{x} y j = 1, ..., N_{y}, y entonces aplicando de manera recursiva:
6
para i = 3, ..., N_{x} y j = 3, ..., N_{y}.
Para un ejemplo de realización el valor a restar a dichos resultados acumulados es uno u otro en función de que dicho punto en el que se produce dicha resta tenga un valor positivo o sea igual a cero, es decir que para una discontinuidad formada por una serie de ceros, se aplicarán diferentes penalizaciones en función de si es el cero inicial de la discontinuidad, es decir que está precedido de un valor positivo, en general un uno, o de si el cero correspondiente a un punto i, j está precedido de otro cero, penalizándose en general este segundo caso más severamente que el primero, con el fin de que las discontinuidades más cortas afecten de manera menos negativa a las medidas de similitud realizadas.
Los diferentes valores o penalizaciones a restar pueden expresarse de la siguiente manera:
7
Donde \gamma_{o} corresponde al principio de una disrupción, es decir un cero inicial, y \gamma_{e} a una extensión de una disrupción, es decir un cero que no es el inicial.
El cero en la segunda cláusula de la ecuación (5) es utilizado para prevenir que estas penalizaciones provoquen una entrada negativa de Q. Debe observarse que para \gamma_{o}, \gamma_{e} \rightarrow \infty, la ecuación (5) se convierte en la (4).
De manera análoga a L_{max} y S_{max}, el método propuesto por la invención comprende un nuevo parámetro de medida Q_{max} de análisis de cuantificación de la recurrencia, que puede ser expresado como el valor máximo de la matriz acumulativa Q, es decir:
8
cuyo valor corresponde a la longitud, o resultado acumulado, de la subsecuencia o traza curvada más larga y potencialmente más brevemente interrumpida, en la matriz CRP.
El método comprende, en función del ejemplo de realización, calcular S_{max} y Q_{max}, con el fin de obtener dos valores representativos de la similitud entre las dos señales estudiadas, o únicamente calcular Q_{max}, que como ya se ha indicado representa una mejora de S_{max}, ya que tiene en consideración tanto las variaciones de velocidad como las disrupciones o discontinuidades en las secuencias de la matriz CRP.
Para este último caso en que solamente se calcula Q_{max}, ésta implementa la anteriormente descrita etapa f), es decir la selección del resultado acumulado máximo, llevándose a cabo las sumas que ofrecen los resultados acumulados de la etapa e), para cada subsecuencia que sigue a una discontinuidad, partiendo del valor acumulado en la subsecuencia previa (perteneciente a la misma secuencia, o diagonal, o a otras secuencias o diagonales paralelas) debidamente penalizado tal y como se ha descrito.
En función del ejemplo de realización cada una de las dos señales X, Y comparadas mediante el método propuesto son dos tramos de una misma señal variable en el tiempo, o dos señales independientes.
El método comprende utilizar los datos x_{i} e y_{j}, en un espacio de estados o en un espacio temporal.
Para un ejemplo de realización dichas dos señales temporales contienen información musical, siendo en general unas señales de audio, donde dichos datos extraídos x_{i} e y_{j} son relativos a los distintos valores que dichas señales de audio toman a lo largo del tiempo, o a unas series temporales de uno o más descriptores representativos de uno o más aspectos característicos de dichas señales de audio X e Y, que reflejan la evolución temporal de un aspecto musical característico de dichas señales de audio X, Y.
Un caso particular de aplicación del método propuesto, donde las señales X, Y son dos señales de audio, considerado de gran interés por los presentes inventores, y para el cual han realizado numerosos ensayos, es el referido a la detección de interpretaciones o versiones, o "covers", de una misma pieza musical.
En un apartado posterior se explicará un ejemplo de realización referido a dicha detección de "covers", donde se han utilizado como datos x_{i} e y_{j} unos vectores construidos, en el espacio de estados, a partir de la información (referente a numerosas clases) existente en una secuencia temporal del conocido descriptor tonal HCPC.
Para otro ejemplo de realización, las dos señales temporales X, Y contienen información referente a la evolución temporal de señales fisiológicas y/o neurológicas, tales como las obtenidas mediante electroencefalogramas, electrocardiogramas, etc., o de cualquier otra clase de señal de interés en el campo de la medicina.
Según otro ejemplo de realización alternativo, el método propuesto está aplicado al cálculo de medidas de similitud entre señales temporales que contienen información referente a la evolución temporal de parámetros de estudio de otros campos, tales como la economía, la climatología, la bioinformática, la geofísica, etc.
\vskip1.000000\baselineskip
Breve descripción de los dibujos
Las anteriores y otras ventajas y características se comprenderán más plenamente a partir de la siguiente descripción detallada de unos ejemplos de realización con referencia a los dibujos adjuntos, que deben tomarse a título ilustrativo y no limitativo, en los que:
la Fig. 1 es un diagrama de bloques general que ilustra las diferentes etapas a realizar para el cálculo de medidas de similitud entre dos señales temporales, para un ejemplo de realización para el que éstas son dos respectivas canciones, incluyendo el diagrama etapas convencionales, y las propuestas por la presente invención;
la Fig. 2 muestra una secuencia del descriptor musical HPCP extraída, utilizando una ventana de muestreo móvil, de la canción "Day Tripper" interpretada por "The Beatles";
la Fig. 3 muestra sendas matrices CRP donde la primera señal X es la canción "Day Tripper" interpretada por "The Beatles", y la segunda señal Y es, en la vista (a) una versión de "Day Tripper" interpretada por el grupo "Ocean Colour Scene", y, en la vista (b), corresponde a la canción "I've got a crush on you" interpretada por Frank Sinatra. Los parámetros utilizados en dichas matrices, y que se describirán posteriormente, son m = 9, \tau = 1 y k = 0,08.
la Fig. 4 muestra tres respectivos ejemplos de matrices acumulativas L (vista (a)), S (vista (b)) y Q (vista (c)), a la derecha de las cuales se encuentran representados los respectivos niveles asociados de L_{max}, S_{max} y Q_{max}. para un ejemplo de realización para el que las canciones son las mismas que las utilizadas para la matriz CRP de la vista (a) de la Fig. 3, y los parámetros de las matrices CRP son los mismos que en la Fig. 3, y donde, para la matriz Q se han utilizado unos parámetros de penalización \gamma_{o} = 3 y \gamma_{e} = 7;
la Fig. 5 muestra dos vistas (a) y (b), que corresponden a unos detalles ampliados de parte de las vistas (b) y (c), respectivamente, de la Fig. 4, con las respectivas trazas o subsecuencias de valor máximo acumulado remarcadas mediante unas líneas dibujadas en dichas vistas (a) y (b);
la Fig. 6 ilustra dos gráficas referentes a distintas distribuciones de unas canciones de una colección de música utilizada para evaluar el método propuesto por la presente invención, donde la gráfica (a) ilustra la distribución del número de canciones por cada grupo de versiones de una misma canción, y la vista (b) la distribución de géneros entre todas las canciones, indicados por las siglas PR: pop-rock; E: música electrónica; JB: jazz-blues; WM: música del mundo; C: música clásica; y M: miscelánea;
la Fig. 7 muestra varias gráficas referentes a un parámetro de medida de precisión \Psi, para Q_{max}, variando diferentes parámetros, en concreto en las vistas (a) a (c) se muestra curvas iso-\tau (a-c), en las (d) a (f) curvas iso-m, para k = 0,05 (a, d), k = 0,1 (b, e) y k = 0,15 (c, f);
la Fig. 8 es una gráfica que representa a \Psi_{Q_{max}} en función de \gamma_{o} y \gamma_{e}; y
la Fig. 9 muestra diferentes diagramas que indican la precisión media de los distintos parámetros de medida de análisis de cuantificación de recurrencia, para un conjunto de datos de entrenamiento (vista (a)) y tres conjuntos de datos de prueba (vistas (b)-(d)), incluyendo L_{max}, y los propuestos por la presente invención S_{max} y Q_{max}; correspondiendo las barras de error indicadas como "Null" al rango a lo largo de diecinueve aleatoriaciones que se describirán posteriormente.
Descripción detallada de unos ejemplos de realización
Un caso conocido en el que se aplican los métodos de cálculo de medidas de similitud es el referente a la recuperación de información musical, o MIR (del inglés: "Music Information Retrieval"), y en particular a la detección de versiones "cover", o interpretaciones alternativas de una canción grabada previamente. Dado que tales interpretaciones pueden diferir de sus originales en varias facetas musicales, determinarlas automáticamente es una tarea más bien difícil.
En los ejemplos de realización descritos en el presente apartado se ha aplicado el método propuesto por la presente invención a la medida de similitud entre canciones, y específicamente a la detección de "covers".
Haciendo referencia a la Fig. 1, en ella se indican diferentes etapas utilizadas para construir una matriz CRP, en sí conocidas, y diferentes etapas o parámetros de medida de análisis de la cuantificación de dicha matriz CRP, algunos conocidos y otros propuestos por la presente invención, en particular S_{max} y Q_{max}.
Se han indicado en dicha Fig. 1 las mencionadas etapas convencionales con el fin de explicar un ejemplo de realización del método propuesto por la invención aplicado a una matriz CRP construida con unos parámetros específicos, para medir la similitud entre dos canciones X e Y, con el fin de detectar si una es una "cover" de la otra, es decir una interpretación alternativa de una misma canción.
Por lo que se refiere a la etapa de pre-procesamiento, se considera que la secuencia tonal es la característica más importante compartida entre "covers" y canciones originales. En particular el descriptor tonal HPCP ("harmonic pitch class profiles") se ha utilizado en los ejemplos de realización descritos en el presente apartado, por considerarse el más adecuado para la detección de "covers".
Se ha utilizado el mismo procedimiento de extracción de HPCP descrito en "J. Serrà, E. Gómez, P. Herrera, and X. Serra, IEEE Trans. on Audio, Speech and Language Processing 16, 1138 (2008)", pero utilizando doce componentes en lugar de treinta y seis.
El cómputo de los descriptores HPCP en una ventana de muestreo móvil, resulta en una serie temporal multidimensional x para cada canción, siendo expresada su evolución tonal temporal como sigue: x = {x_{h, \ i}} para h = 1, ..., H y i = 1, ..., N_{x}^{\text{*}}, donde H = 12 es el número de componentes HPCP y N_{x}^{\text{*}} representa el número total de ventanas.
En la Fig. 2 se ilustra una secuencia HPCP de 350 ventanas extraída utilizando una ventana de 464 ms de duración.
El último paso de la etapa de pre-procesamiento, indicado en la Fig. 1, consiste en la transposición de una secuencia HPCP a la clave principal de la otra, debido a que un cambio en la clave o tonalidad principal es una alteración común cuando los músicos interpretan versiones de una canción conocida. En las representaciones de secuencias HPCP un cambio en la tonalidad principal se representa por un desplazamiento circular en la clase tonal. Por consiguiente, se puede revertir este cambio utilizando un desplazamiento circular apropiado de los componentes de clase tonal a lo largo del eje vertical de la secuencia HPCP (por ejemplo, para transponer la secuencia ilustrada por la Fig. 2 de D a C, deben desplazarse circularmente los componentes de clase tonal hacia arriba dos componentes, es decir dos semitonos, para todas las ventanas).
Para determinar el número de componentes se ha utilizado el procedimiento de índice de transposición óptimo propuesto en "J. Serrà, E. Gómez, P. Herrera, and X. Serra, IEEE Trans. on Audio, Speech and Language Processing 16, 1138 (2008)" y extendido en "J. Serrà, E. Gómez, and P. Herrera, IEEE CS Conference on The Use of Symbols to Represent Music and Multimedia Objects pp. 45-48 (2008)".
Una vez completada la etapa de pre-procesamiento, para construir la matriz CRP, se procede a una inmersión en el espacio de estados.
Para ello debe tenerse en cuenta que una secuencia HPCP es una representación multivariante de la evolución tonal temporal de una canción dada X o Y. Ciertamente, no representa una señal medida a partir de un sistema dinámico descrito por alguna ecuación de movimiento. No obstante, las coordenadas de retardo, una herramienta derivada de la teoría de los sistemas dinámicos que es usada comúnmente en análisis de series temporales no lineales, puede ser empleada de manera pragmática para facilitar la extracción de información contenida en una secuencia HPCP x, de la canción X indicada en la Fig. 1 (de igual manera para la secuencia HPCP y, es decir de la canción Y). En particular, mediante la evaluación de vectores de secuencias de muestreo, las coordenadas de retardo permiten evaluar recurrencias entre sistemas de manera más fiable que utilizando solamente muestras escalares.
Tal utilización de secuencias de notas, en lugar de notas aisladas, es esencial en música, en particular para la percepción y el reconocimiento de melodías.
Considerando la evolución temporal de cada clase tonal (pitch) individual, se ha construido una secuencia x de vectores en el espacio de estados de coordenadas de retardo, donde
9
donde m es la denominada dimensión de inmersión, y \tau es el retardo temporal. Es conocido que para un análisis de series temporales no lineales, una correcta elección de m y \tau es crucial para extraer información significativa de señales con ruido y de longitud finita.
Aunque existen propuestas para el cálculo de valores fijos óptimos de m y \tau (por ejemplo, el método de los falsos vecinos más cercanos y el uso de la función de auto-correlación de tiempo de caída), para llevar a cabo los ejemplos de realización descritos en el presente apartado se ha estudiado la precisión en la identificación de "covers" de canciones bajo la variación de estos parámetros y la selección de la mejor combinación posible.
Para construir la matriz CRP se han comparado, en la etapa b) del método propuesto, los datos x_{i} tal y como se definen en la expresión (1), con los datos y_{j} definidos de igual modo, es decir unas correspondientes secuencias de vectores en el espacio de estados de coordenadas de retardo, relativos al descriptor HPCP, para diversas clases tonales.
En particular se han introducido los valores de dichas secuencias de vectores x_{i} e y_{i} en la expresión (2), para diferentes canciones.
Para las matrices CRP ilustradas por la Fig. 3 se han utilizado, para la vista (a), secuencias de vectores x_{i} del descriptor HPCP de la canción "Day Tripper" interpretada por "The Beatles", y de vectores y_{j} del descriptor HPCP de una versión de "Day Tripper" interpretada por el grupo "Ocean Colour Scene". Para la vista (b) se ha utilizado la misma secuencia x_{i}, pero la secuencia y_{j} corresponde a la canción "I've got a crush on you" interpretada por Frank Sinatra. Los parámetros utilizados en ambas matrices son m = 9, \tau = 1 y k = 0,08 (a partir del cual se han ajustado los valores o distancias umbrales \varepsilon_{i}^{x} y \varepsilon_{j}^{y}).
Puede observarse en dicha Fig. 3, cómo, en general, dos matrices CRP construidas a partir de dos canciones, una de las cuales es una "cover" de la otra, muestran patrones extendidos, en forma de subsecuencias o trazas, claramente distinguidos (vista (a)), mientras que pares de canciones no relacionadas ofrecen como resultado una matriz CRP que no exhibe ninguna estructura evidente (vista (b)).
Las discontinuidades o disrupciones cortas que separan subsecuencias de una misma secuencia, es decir que se extienden según una misma diagonal, según se ilustran en la vista (a) de la Fig. 3, se deben a que los músicos que han interpretado una de las canciones se han saltado algún acorde o parte de la melodía en su interpretación, o "cover", de la otra canción, disrupciones las cuales son tenidas en cuenta mediante Q_{max}, tal y como se ha explicado anteriormente.
Se han realizado diversas medidas de análisis de cuantificación de recurrencia con las matrices CRP creadas utilizando diferentes canciones, con el fin de comparar los resultados obtenidos con cada una de dichas mediadas.
En particular se ha obtenido el valor del parámetro convencional L_{max}, así como el de los propuestos según el método de la presente invención S_{max} y Q_{max}, a partir de las matrices acumulativas L, S y Q, construidas según las expresiones (3), (4) y (5), respectivamente, descritas anteriormente.
Utilizando los mismos datos x_{i} e y_{j} que se han utilizado para construir la matriz de la vista (a) de la Fig. 3, se han construido las tres matrices acumulativas ilustradas en la Fig. 4, en particular la matriz L (vista (a)), la S (vista (b)) y la Q (vista (c)), a la derecha de las cuales se encuentran representados los respectivos niveles asociados de L_{max}, S_{max} y Q_{max}, para un ejemplo de realización para el que los parámetros de las matrices CRP son los mismos que en la Fig. 3, y donde, para la matriz Q se han utilizado unos parámetros de penalización \gamma_{o} = 3 y \gamma_{e} = 7.
Es necesario resaltar el incremento notable en los valores máximos entre las distintas medidas de cuantificación. En particular en la vista (a) puede verse cómo L_{max} = 33, o resultado mayor acumulado en una traza o subsecuencia recta y continua que empieza en 140,232 s; en la vista (b) S_{max} = 79, o resultado mayor acumulado en una traza curva y continua que empieza en 216,142 s, y en la vista (c) se observa que Q_{max} = 136, o resultado mayor acumulado en una traza curva, o alabeada, en este caso discontinua, que empieza en 14,118 s.
En la Fig. 5(a) se ha representado un detalle ampliado de la Fig. 4(b), donde se aprecia la citada traza curva y continua que proporciona un S_{max} = 79, marcada con una línea gris dibujada sobre las distintas subsecuencias que la definen.
La Fig. 5(b) es, asimismo, un detalle ampliado de la Fig. 4(c), que muestra a la citada traza curva y discontinua de valor acumulado máximo que proporciona un Q_{max} = 136, indicada mediante una línea gris discontinua, dibujada sobre las distintas subsecuencias que la definen. En dicha Fig. 5(b) se han indicado mediante unos rectángulos las discontinuidades en la traza dibujada.
Es decir que según S_{max} y, en especial según Q_{max}, las dos canciones analizadas, según el ejemplo de realización ilustrado por la Fig. 4, son mucho más similares que lo que indica L_{max}, lo que demuestra la bondad del método propuesto por la presente invención, ya que efectivamente una de las dos canciones utilizadas es una "cover" de la otra canción.
A continuación se describen, con referencia a las Figs. 6 a 9, unos ejemplos de realización relativos a la evaluación del método propuesto por la presente invención, para un conjunto de datos de evaluación que se detallan seguidamente.
Datos de evaluación
Para comprobar la efectividad del método propuesto por la presente invención con un número mayor de canciones que las utilizadas para los ejemplos de realización descritos hasta ahora, en el presente apartado, se ha analizado una colección musical que incluye un total de mil novecientas cincuenta y tres canciones comerciales con una longitud de canción media de 3,5 min, en un rango que va de 0,5 a 7 min. Entre estas canciones se incluyen quinientos grupos de versiones, o "cover", cada uno de los cuales hace referencia a un grupo de versiones de la misma canción. El número medio de canciones por grupo de versiones es de 3,9, en un rango que va de dos a dieciocho canciones por grupo de versiones, que se ilustra gráficamente en la Fig. 6(a).
Al componer esta colección musical se tuvo como objetivo incluir una gran variedad de estilos y géneros musicales, tal y como se ilustra en la vista (b) de la Fig. 6, donde se incluyen cinco géneros conocidos, y un sexto género denominado "miscelánea" donde se encuentran agrupadas las canciones que no han podido clasificarse en ninguno de los otros cinco géneros. No se ha aplicado ningún otro criterio para la inclusión o exclusión de canciones. Una lista completa de la colección musical puede ser encontrada en http://mtg.upf.edu/people/jserra/. Esta colección musical fue recopilada de manera previa e independiente al método propuesto por la presente invención (ver J. Serrà, Master's thesis, Universitat Pompeu Fabra, Barcelona, Spain (2007), [Online]: http://mtg.upf.edu/node/
536).
Con el fin de formar un conjunto de datos de entrenamiento y varios conjuntos de datos de testeo, se dividió el número total de quinientos grupos de versiones en tres subgrupos que no se superponen. El conjunto de entrenamiento contiene noventa canciones divididas en quince grupos de versiones de seis canciones cada uno. El primer conjunto de testeo contiene trescientas treinta canciones divididas en treinta grupos de versiones de once canciones cada uno. El segundo grupo de testeo contiene los restantes cuatrocientas cuarenta y cinco grupos de versiones, cada uno de los cuales contiene entre dos y dieciocho versiones, resultando en un total de mil quinientas treinta y tres canciones. Un grupo de testeo adicional fue definido como la unión del primer y el segundo grupos de
testeo.
\newpage
Metodología de evaluación
Dada una colección de documentos con D canciones, se ha calculado L_{max}, S_{max} y Q_{max}, para todas las combinaciones de parejas posibles \frac{D(D-1)}{2}. Una vez se ha computado una matriz de similitud como fuente principal de información, se ha recurrido a medidas estándares de recuperación de información para evaluar la energía discriminatoria de esta información. Se ha utilizado la denominada medida de precisión media promedio, indicada como \Psi. Para calcular esta medida, la matriz de similitud se utiliza para computar, para cada canción con índice q, una lista \Lambda_{q} de D-1 canciones clasificadas en orden descendente con relación a su similitud con la canción q. Suponiendo que la canción consulta q pertenece a un grupo de versiones que comprende C_{q} + 1 canciones, se obtiene entonces la precisión media \Psi_{q} como:
10
\vskip1.000000\baselineskip
donde P_{q}(r) es la denominada precisión de la lista \Lambda_{q} para el rango r,
11
e I_{q}(\cdot) es la denominada función de relevancia que cumple que I_{q}(z) = 1 si la canción con rango z en la lista clasificada es una versión o "cover" de q, e I_{q}(z) = 0 en cualquier otro caso. Por lo tanto \Psi_{q} varía entre cero y uno. Si las canciones "cover" toman los primeros rangos de C_{q}, entonces \Psi_{q} = 1. Valores próximos a cero son obtenidos si todas las canciones "cover" son halladas próximas al final de \Lambda_{q}.
\Psi es calculado como el promedio de las precisiones medias \Psi_{q} a lo largo de todas las consultas q. Esta medida de evaluación se emplea comúnmente en una amplia variedad de tareas en las comunidades IR y MIR, incluyendo la identificación de canciones "cover". Su utilización tiene la ventaja de tener en cuenta la lista clasificada completa donde los elementos correctos con un rango bajo reciben los pesos más grandes.
De manera adicional, se ha estimado el nivel de precisión esperado bajo la hipótesis de nulidad de que la matriz de similitud no tendría ninguna energía discriminatoria con relación a la asignación de grupos de versiones, o "cover". Con tal fin, se ha permutado \Lambda_{q} y mantenido todos los demás pasos igual. Se ha repetido el proceso diecinueve veces y tomado la media para cada canción q, resultando en \Psi_{null}. Este \Psi_{null} puede ser usado para estimar la precisión de todas las medidas L_{max}, S_{max} y Q_{max} bajo la hipótesis de nulidad.
Resultados obtenidos - Optimización de parámetros
Se ha utilizado el conjunto de datos de entrenamiento citado para estudiar la influencia de los parámetros de inmersión m y \tau y el porcentaje de vecinos más cercanos k en la medida de precisión \Psi. En la Fig. 7 se ilustran los resultados obtenidos para Q_{max} que demuestran que el uso de una inmersión (m>1) mejora la precisión del sistema en comparación con la ausencia de dicha inmersión (m=1). Se ha establecido un amplio pico de valores próximos al máximo de \Psi, para un rango considerable de ventanas de inmersión (aproximadamente 7 < (m-1)\tau < 17). Puede verse en dicha Fig. 7 que, a partir de estos valores próximos al máximo, \Psi decrece débilmente al incrementarse más la ventana de inmersión. Unos valores de k entre 0,05 y 0,15 han sido hallados como óptimos. Por tanto, dentro de estos amplios rangos de valores relativos a la ventana de inmersión (m-1)\tau y a k, no se requiere la realización de un ajuste fino para ninguno de los parámetros para obtener una precisión cercana a la óptima. En lo siguiente se han utilizado unos valores de m = 10, \tau = 1 y k = 0,1.
Las precisiones ilustradas en la Fig. 7 han sido computadas para una penalización \gamma_{o} del principio de una disrupción y una penalización \gamma_{e} de la extensión de una disrupción. La influencia de estos parámetros de penalización se ilustra más detalladamente en la Fig. 8.
Tal y como se ha indicado anteriormente, \gamma_{o}, \gamma_{e} solamente afectan a Q_{max}, y cuando \gamma_{o}, \gamma_{e} \rightarrow \infty, la medida de Q_{max} se reduce a S_{max}, ya que la ecuación (5) se convierte en la (4). Utilizando valores finitos para estos términos, en general se incrementa la precisión, lo cual revela la ventaja de Q_{max} respecto a S_{max}. Se han encontrado unos valores de precisión para Q_{max} cercanos al óptimo, para \gamma_{o} = 5 y \gamma_{e} = 0,5.
La misma optimización de parámetros descrita anteriormente para Q_{max} se ha llevado a cabo separadamente para L_{max} y S_{max}, y ha producido como resultado que m = 10, \tau = 1 y k = 0,1 también ofrecen unas precisiones cercanas a las óptimas para estas medidas. Tampoco se ha necesitado un ajuste fino, ya que las curvas iso-\tau e iso-m obtenidas para diferentes valores de k tienen formas similares a las ilustradas para Q_{max} en la Fig. 7.
Para los datos de entrenamiento, esta optimización de parámetros "en muestra" ha conducido a las siguientes precisiones, ilustradas en la Fig. 9(a): \Psi_{max} = 0,640, \Psi_{S_{max}} = 0,728 y \Psi_{Q_{max}} = 0,813.
Precisión "fuera de la muestra"
Se han calculado también las precisiones para los datos de testeo utilizando los parámetros determinados por la optimización sobre los datos de entrenamiento, y los resultados obtenidos se ilustran en las Figs. 9(b) a 9(d). Las precisiones medias "fuera de muestra" resultantes han sido: \Psi_{L_{max}} = 0,426, \Psi_{S_{max}} = 0,543 y \Psi_{Q_{max}} = 0,667.
Estas buenas precisiones "fuera de muestra" indican que los resultados obtenidos no pueden ser debidos a una sobre optimización de parámetros. El incremento en la precisión conseguido con la derivación de L_{max} vía S_{max} hasta Q_{max}, es substancial. Y, aun más importante, este incremento en la precisión, o exactitud, se refleja también en los conjuntos de datos de testeo.
Todos los valores para L_{max}, S_{max}, y Q_{max} están significadamente fuera del rango de \Psi_{null} a lo largo de las diecinueve aleatoriaciones. Por tanto, los valores de precisión obtenidos no son consistentes con la anteriormente referida hipótesis de nulidad que asume que las matrices de similitud no tienen energía discriminatoria.
Un experto en la materia podría introducir cambios y modificaciones en los ejemplos de realización descritos sin salirse del alcance de la invención según está definido en las reivindicaciones adjuntas.

Claims (22)

1. Método para calcular medidas de similitud entre señales temporales, del tipo que comprende realizar las siguientes etapas, de manera automática:
a) adquirir unos datos (x_{i}) de al menos una primera señal (X) variable en el tiempo y unos datos (y_{j}) de una segunda señal (Y) variable en el tiempo, a lo largo de al menos parte de la duración de cada señal;
b) comparar cada uno de dichos datos (x_{i}) adquiridos de dicha primera señal (X) con al menos una parte de dichos datos (y_{j}) adquiridos de dicha segunda señal (Y), para evaluar el nivel de similitud entre ellos;
c) asignar un valor positivo predeterminado a cada dos datos comparados (x_{i}, y_{i}), si el resultado de dicha comparación es superior a un umbral determinado, y un cero si es inferior a dicho umbral determinado, creando un conjunto de datos con dichos valores positivos y dichos ceros ordenados temporalmente;
d) determinar al menos una primera secuencia temporal con al menos parte de dichos valores positivos predeterminados y dichos ceros asignados de dicho conjunto de datos, formada por una serie de subsecuencias consecutivas de valores positivos, separadas por discontinuidades formadas por uno o más ceros;
e) obtener una serie de resultados acumulados para al menos cada una de dichas subsecuencias consecutivas, sumando los valores positivos incluidos en al menos cada subsecuencia; y
f) seleccionar el resultado mayor de entre dichos resultados acumulados obtenidos en dicha etapa e), y establecer dicho resultado seleccionado como indicativo del nivel de similitud entre dichas dos señales;
estando dicho método caracterizado porque comprende, para compensar posibles diferencias en la velocidad de dichas señales (X, Y), o en parte de las mismas, llevar a cabo dicha etapa e) obteniendo un resultado acumulado para cada punto determinado i, j de un valor positivo, de cada una de dichas subsecuencias, realizando la suma de dicho valor positivo al resultado acumulado de valor máximo, de entre al menos los siguientes tres resultados acumulados obtenidos de manera análoga:
- un resultado parcial acumulado en un punto justo anterior i-1, j-1 de dicha subsecuencia,
- un resultado acumulado en un punto i-2, j-1 de una subsecuencia de una segunda secuencia temporal, y
- un resultado acumulado en un punto i-1, j-2 de una subsecuencia de una tercera secuencia temporal.
\vskip1.000000\baselineskip
2. Método según la reivindicación 1, caracterizado porque, para cada subsecuencia que comienza tras una discontinuidad, el método comprende comenzar la operación de suma de sus valores positivos que ofrezca un resultado acumulado para dicha subsecuencia, independientemente del resultado o resultados acumulados de una o más subsecuencias previas a dicha discontinuidad.
3. Método según la reivindicación 1, caracterizado porque, para cada subsecuencia que comienza tras una discontinuidad, el método comprende comenzar la operación de suma de sus valores positivos que ofrezca un resultado acumulado para dicha subsecuencia, teniendo en cuenta al menos el resultado acumulado de una subsecuencia previa a dicha discontinuidad.
4. Método según la reivindicación 3, caracterizado porque comprende comenzar la operación de suma de valores positivos que ofrezca un resultado acumulado para dicha subsecuencia posterior a una discontinuidad, a partir de un valor de resultado acumulado penalizado obtenido al aplicar al menos una penalización a dicho resultado acumulado de la subsecuencia previa, perteneciente a la misma secuencia que dicha subsecuencia posterior, o a otra secuencia temporal alternativa.
5. Método según la reivindicación 4, caracterizado porque dicha penalización comprende restar un valor determinado a dicho resultado acumulado de la subsecuencia previa.
6. Método según la reivindicación 5, caracterizado porque para cada cero de dicha discontinuidad hallado en un punto determinado i, j, el método comprende obtener dicho valor de dicho resultado acumulado penalizado restando un valor determinado a al menos el resultado acumulado de la subsecuencia previa, en un punto justo anterior i-1, j-1 a dicho cero.
7. Método según la reivindicación 6, caracterizado porque para cada cero de dicha discontinuidad hallado en un punto determinado i, j, el método comprende obtener dicho valor de dicho resultado acumulado penalizado:
- restando un valor determinado al resultado acumulado de la subsecuencia previa en un punto justo anterior i-1, j-1 a dicho cero.
- restando un valor determinado al resultado acumulado en un punto i-2, j-1 de una subsecuencia de una segunda secuencia temporal,
- restando un valor determinado al resultado acumulado en un punto i-1, j-2 de una subsecuencia de una tercera secuencia temporal, y
- seleccionar, de entre dichos tres resultados y un valor igual a cero, el que tenga un valor máximo, como dicho valor de dicho resultado acumulado penalizado.
\vskip1.000000\baselineskip
8. Método según la reivindicación 7, caracterizado porque el valor a restar a dichos resultados acumulados es uno u otro en función de que dicho punto en el que se produce dicha resta tenga un valor positivo o sea igual a cero.
9. Método según la reivindicación 1, caracterizado porque cada uno de dichos valores positivos es un valor unitario.
10. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque dicho conjunto de datos es una matriz de recurrencia cruzada.
11. Método según la reivindicación 10, caracterizado porque dicha comparación de dicha etapa b) comprende también comparar cada uno de dichos datos (y_{j}) adquiridos de dicha segunda señal (Y) con al menos una parte de dichos datos (x_{i}) adquiridos de dicha primera señal (X), para evaluar el nivel de similitud entre ellos.
12. Método según la reivindicación 11, caracterizado porque dicho umbral de dicha etapa c) es un primer umbral determinado (\varepsilon_{i}^{x}), aplicado a la comparación de los datos de dichas dos señales, tomando como referencia los de la primera señal (X), y porque comprende un segundo umbral determinado (\varepsilon_{j}^{x}), aplicado a la comparación de los datos de las dos señales, tomando como referencia los de la segunda señal (Y), llevándose a cabo dicha asignación de un valor positivo predeterminado a cada dos datos comparados (x_{i}, y_{j}), si el resultado de al menos una de dichas dos comparaciones es superior a su respectivo umbral determinado.
13. Método según la reivindicación 12, caracterizado porque dichos umbrales determinados (\varepsilon_{i}^{x} y \varepsilon_{j}^{x}) son ajustados de manera que un porcentaje máximo predeterminado de vecinos cercanos (k) es utilizado para ambas comparaciones, la que toma como referencia a la primera señal (X), y la que toma como referencia a la segunda señal (Y).
14. Método según la reivindicación 1, caracterizado porque cada una de dichas dos señales (X, Y) son dos tramos de una misma señal variable en el tiempo.
15. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque comprende utilizar dichos datos (x_{i}, y_{j}) de dichas señales (X, Y), en un espacio de estados.
16. Método según cualquiera de las reivindicaciones 1 a 13, caracterizado porque comprende utilizar dichos datos (x_{i}, y_{j}) de dichas señales (X. y), en un espacio temporal.
17. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque dichas dos señales temporales contienen información musical.
18. Método según la reivindicación 17, caracterizado porque dichas dos señales temporales (X, Y) son unas señales de audio, siendo dichos datos extraídos (x_{i}, y_{j}) relativos a los distintos valores que dichas señales de audio toman a lo largo del tiempo.
19. Método según la reivindicación 17, caracterizado porque dichas dos señales temporales (X, Y) son unas señales de audio, siendo dichos datos extraídos (x_{i}, y_{j}) relativos a unas series temporales de uno o más descriptores representativos de uno o más aspectos característicos de dichas señales de audio (X, Y), que reflejan la evolución temporal de un aspecto musical característico de dichas señales de audio (X, Y).
20. Método según la reivindicación 15, 16 ó 17, caracterizado porque está aplicado a la detección de interpretaciones o versiones de una misma pieza musical.
21. Método según cualquiera de las reivindicaciones 1 a 16, caracterizado porque dichas dos señales temporales (X, Y) contienen información referente a la evolución temporal de señales fisiológicas y/o neurológicas.
22. Método según cualquiera de las reivindicaciones 1 a 16, caracterizado porque dichas dos señales temporales (X, Y) contienen información referente a la evolución temporal de parámetros de estudio de al menos uno de los siguientes campos: economía y climatología.
ES200901057A 2009-04-23 2009-04-23 Método para calcular medidas de similitud entre señales temporales. Active ES2354330B1 (es)

Priority Applications (2)

Application Number Priority Date Filing Date Title
ES200901057A ES2354330B1 (es) 2009-04-23 2009-04-23 Método para calcular medidas de similitud entre señales temporales.
US12/764,424 US8718803B2 (en) 2009-04-23 2010-04-21 Method for calculating measures of similarity between time signals

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ES200901057A ES2354330B1 (es) 2009-04-23 2009-04-23 Método para calcular medidas de similitud entre señales temporales.

Publications (2)

Publication Number Publication Date
ES2354330A1 true ES2354330A1 (es) 2011-03-14
ES2354330B1 ES2354330B1 (es) 2012-01-30

Family

ID=43626891

Family Applications (1)

Application Number Title Priority Date Filing Date
ES200901057A Active ES2354330B1 (es) 2009-04-23 2009-04-23 Método para calcular medidas de similitud entre señales temporales.

Country Status (2)

Country Link
US (1) US8718803B2 (es)
ES (1) ES2354330B1 (es)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103488878A (zh) * 2013-09-09 2014-01-01 重庆大学 基于向量相似性的交通流时间序列变点识别方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103995808B (zh) * 2013-02-17 2018-02-02 中国电信股份有限公司 时间序列上事件检测方法和装置
CN103886195B (zh) * 2014-03-14 2015-08-26 浙江大学 数据缺失下时间序列相似性度量方法
CN105224543A (zh) * 2014-05-30 2016-01-06 国际商业机器公司 用于处理时间序列的方法和装置
CN110148072B (zh) * 2018-02-12 2023-05-02 庄龙飞 运动课程评分方法与系统
TWI681798B (zh) 2018-02-12 2020-01-11 莊龍飛 運動課程評分方法與系統、電腦程式產品
CN112101468B (zh) * 2020-09-18 2024-04-16 刘吉耘 一种在序列组合中判定异常序列的方法
CN112561948B (zh) * 2020-12-22 2023-11-21 中国联合网络通信集团有限公司 基于时空轨迹的伴随轨迹识别方法、设备及存储介质
CN115099370B (zh) * 2022-08-23 2022-12-02 北京全应科技有限公司 面向流程型工业生产数据流的评测数据集构建方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4204114A (en) * 1978-02-24 1980-05-20 Gould Inc. Method and apparatus for comparing logic functions by acquiring signals one at a time from circuit nodes
US5497468A (en) * 1990-08-29 1996-03-05 Mitsubishi Denki Kabushiki Kaisha Data processor that utilizes full data width when processing a string operation
JPH1049680A (ja) * 1996-08-05 1998-02-20 Dia Instr:Kk 印刷物の印刷パターン欠陥検査方法
US20080010330A1 (en) * 2006-07-10 2008-01-10 Tsuyoshi Ide Method and system for detecting difference between plural observed results

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6449680A (en) 1987-08-19 1989-02-27 Sumitomo Chemical Co Magenta dyestuff for sublimating transfer type thermal recording
US7812241B2 (en) * 2006-09-27 2010-10-12 The Trustees Of Columbia University In The City Of New York Methods and systems for identifying similar songs
JP5130809B2 (ja) * 2007-07-13 2013-01-30 ヤマハ株式会社 楽曲を制作するための装置およびプログラム
JP5463655B2 (ja) * 2008-11-21 2014-04-09 ソニー株式会社 情報処理装置、音声解析方法、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4204114A (en) * 1978-02-24 1980-05-20 Gould Inc. Method and apparatus for comparing logic functions by acquiring signals one at a time from circuit nodes
US5497468A (en) * 1990-08-29 1996-03-05 Mitsubishi Denki Kabushiki Kaisha Data processor that utilizes full data width when processing a string operation
JPH1049680A (ja) * 1996-08-05 1998-02-20 Dia Instr:Kk 印刷物の印刷パターン欠陥検査方法
US20080010330A1 (en) * 2006-07-10 2008-01-10 Tsuyoshi Ide Method and system for detecting difference between plural observed results

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103488878A (zh) * 2013-09-09 2014-01-01 重庆大学 基于向量相似性的交通流时间序列变点识别方法
CN103488878B (zh) * 2013-09-09 2016-08-24 重庆大学 基于向量相似性的交通流时间序列变点识别方法

Also Published As

Publication number Publication date
ES2354330B1 (es) 2012-01-30
US8718803B2 (en) 2014-05-06
US20110178615A1 (en) 2011-07-21

Similar Documents

Publication Publication Date Title
ES2354330A1 (es) Método para calcular medidas de similitud entre señales temporales.
Humphrey et al. Four Timely Insights on Automatic Chord Estimation.
Harte Towards automatic extraction of harmony information from music signals
Koduri et al. Rāga recognition based on pitch distribution methods
US7649137B2 (en) Signal processing apparatus and method, program, and recording medium
CN102959624B (zh) 用于音频媒体识别的系统和方法
Gulati et al. Time-delayed melody surfaces for rāga recognition
Ranjani et al. Carnatic music analysis: Shadja, swara identification and raga verification in alapana using stochastic models
JP2002529772A (ja) 基本波高速発見方法
Kirchhoff et al. Shift-variant non-negative matrix deconvolution for music transcription
Krebs et al. Inferring metrical structure in music using particle filters
WO2020061346A1 (en) Methods and apparatuses for tracking weak signal traces
Giannoulis et al. Improving instrument recognition in polyphonic music through system integration
Koops et al. Integration and quality assessment of heterogeneous chord sequences using data fusion
Srinivasamurthy A Data-driven bayesian approach to automatic rhythm analysis of indian art music
CN107220490B (zh) 水文序列均值跳跃变异的识别与分级方法
Chen et al. Improved score-performance alignment algorithms on polyphonic music
Giraldo et al. Performance to score sequence matching for automatic ornament detection in jazz music
Cambouropoulos et al. Idiom-independent harmonic pattern recognition based on a novel chord transition representation
CN112989105A (zh) 一种音乐结构的分析方法及系统
KR100978914B1 (ko) Svr 기반 복 수의 매칭 알고리즘을 결합한 음원 검색 시스템 및 방법
Darabi et al. Recognition of Dastgah and Maqam for Persian music with detecting skeletal melodic models
Raphael et al. Optical music recognition on the international music score library project
Kelz et al. Investigating label noise sensitivity of convolutional neural networks for fine grained audio signal labelling
Kaliakatsos-Papakostas et al. A clustering strategy for the key segmentation of musical audio

Legal Events

Date Code Title Description
FG2A Definitive protection

Ref document number: 2354330

Country of ref document: ES

Kind code of ref document: B1

Effective date: 20120130