De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

El producto de una función booleana y una matriz de Walsh es su espectro de Walsh : [1]
(1, 0, 1, 0, 0, 1, 1, 0) × H (8) = (4, 2, 0, −2 , 0, 2, 0, 2)
Transformada rápida de Walsh-Hadamard , una forma más rápida de calcular el espectro de Walsh de (1, 0, 1, 0, 0, 1, 1, 0).
La función original se puede expresar mediante su espectro de Walsh como un polinomio aritmético.

La transformada de Hadamard (también conocida como transformada de Walsh-Hadamard , transformada de Hadamard-Rademacher-Walsh , transformada de Walsh o transformada de Walsh-Fourier ) es un ejemplo de una clase generalizada de transformadas de Fourier . Se lleva a cabo un ortogonal , simétrica , involutivo , funcionamiento lineal en 2 m números reales (o complejo , o números hipercomplejos , aunque el Hadamard matrices mismos son puramente real).

La transformada de Hadamard puede considerarse construida a partir de transformadas discretas de Fourier (DFT) de tamaño 2 y, de hecho, es equivalente a una DFT multidimensional de tamaño 2 × 2 × ⋯ × 2 × 2 . [2] Descompone un vector de entrada arbitrario en una superposición de funciones de Walsh .

La transformación lleva el nombre del matemático francés Jacques Hadamard ( francés:  [adamaʁ] ), el matemático germano-estadounidense Hans Rademacher y el matemático estadounidense Joseph L. Walsh .

Definición [ editar ]

La transformada de Hadamard H m es una matriz de 2 m  × 2 m , la matriz de Hadamard (escalada por un factor de normalización), que transforma 2 m números reales x n en 2 m números reales X k . La transformada de Hadamard se puede definir de dos formas: recursivamente o utilizando la representación binaria ( base -2) de los índices n y k .

Recursivamente, definimos la transformada de Hadamard 1 × 1 H 0 por la identidad H 0 = 1, y luego definimos H m para m  > 0 por:

donde 1 / 2 es una normalización que a veces se omite.

Para m  > 1, también podemos definir H m por:

donde representa el producto Kronecker . Por lo tanto, aparte de este factor de normalización, las matrices de Hadamard se componen completamente de 1 y -1.

De manera equivalente, podemos definir la matriz de Hadamard por su ( kn ) -ésima entrada escribiendo

donde k j y n j son los dígitos binarios (0 o 1) de k y n , respectivamente. Tenga en cuenta que para el elemento en la esquina superior izquierda, definimos: . En este caso, tenemos:

Esta es exactamente la DFT multidimensional , normalizada para ser unitaria , si las entradas y salidas se consideran matrices multidimensionales indexadas por n j y k j , respectivamente.

A continuación se presentan algunos ejemplos de las matrices de Hadamard.

donde es el producto escalar bit a bit de las representaciones binarias de los números i y j. Por ejemplo, si , entonces , está de acuerdo con lo anterior (ignorando la constante general). Tenga en cuenta que el elemento de la primera fila, la primera columna de la matriz se denota con .

H 1 es precisamente el tamaño 2 DFT. También se puede considerar como la transformada de Fourier en el grupo aditivo de dos elementos de Z / (2).

Las filas de las matrices de Hadamard son las funciones de Walsh .

Relación con la transformada de Fourier [ editar ]

La transformada de Hadamard es de hecho equivalente a una DFT multidimensional de tamaño 2 × 2 × ⋯ × 2 × 2 . [2]

Otro enfoque es ver la transformada de Hadamard como una transformada de Fourier en el grupo booleano . [3] [4] Usando la transformada de Fourier en grupos finitos (abelianos) , la transformada de Fourier de una función es la función definida por

donde es un personaje de . Cada carácter tiene la forma para algunos , donde la multiplicación es el producto punto booleano en cadenas de bits, por lo que podemos identificar la entrada con ( dualidad Pontryagin ) y definir por

Esta es la transformada de Hadamard de , teniendo en cuenta la entrada y como cadenas booleanas.

En términos de la formulación anterior donde la transformada de Hadamard multiplica un vector de números complejos a la izquierda por la matriz de Hadamard, la equivalencia se ve tomando como entrada la cadena de bits correspondiente al índice de un elemento de , y obteniendo la salida correspondiente. elemento de .

Compare esto con la transformada discreta de Fourier habitual que, cuando se aplica a un vector de números complejos, utiliza caracteres del grupo cíclico .

Complejidad computacional [ editar ]

En el dominio clásico, la transformada de Hadamard se puede calcular en operaciones ( ), utilizando el algoritmo de transformada rápida de Hadamard .

En el dominio cuántico, la transformada de Hadamard se puede calcular en el tiempo, ya que es una puerta lógica cuántica que se puede paralelizar .

Aplicaciones de computación cuántica [ editar ]

La transformada de Hadamard se usa ampliamente en computación cuántica . La transformada Hadamard 2 × 2 es la puerta lógica cuántica conocida como puerta Hadamard, y la aplicación de una puerta Hadamard a cada qubits de un registro n-qubit en paralelo es equivalente a la transformada Hadamard .

Puerta de Hadamard [ editar ]

En computación cuántica, la puerta de Hadamard es una rotación de un qubit , mapeando los estados de base de qubit y dos estados de superposición con el mismo peso de los estados de base computacional y . Por lo general, las fases se eligen para que tengamos

en notación de Dirac . Esto corresponde a la matriz de transformación

en la base, también conocida como la base computacional . Los estados y se conocen como y respectivamente, y juntos constituyen la base polar en la computación cuántica .

Operaciones de la puerta de Hadamard [ editar ]

Una aplicación de la puerta Hadamard a 0 o 1 qubit producirá un estado cuántico que, si se observa, será un 0 o 1 con la misma probabilidad (como se ve en las dos primeras operaciones). Esto es exactamente como lanzar una moneda al aire en el modelo de cálculo probabilístico estándar . Sin embargo, si la puerta de Hadamard se aplica dos veces seguidas (como se hace efectivamente en las dos últimas operaciones), entonces el estado final es siempre el mismo que el estado inicial.

Transformada de Hadamard en algoritmos cuánticos [ editar ]

Calcular la transformada cuántica de Hadamard es simplemente la aplicación de una puerta de Hadamard a cada qubit individualmente debido a la estructura del producto tensorial de la transformada de Hadamard. Este simple resultado significa que la transformada cuántica de Hadamard requiere log n operaciones, en comparación con el caso clásico de n  log  n operaciones.

Muchos algoritmos cuánticos utilizan la transformada de Hadamard como paso inicial, ya que mapea m qubits inicializados con una superposición de todos los estados ortogonales de 2 m en la base con el mismo peso. Por ejemplo, este se utiliza en el algoritmo de Deutsch-Jozsa , el algoritmo de Simon , el algoritmo de Bernstein-Vazirani , y en el algoritmo de Grover . Tenga en cuenta que el algoritmo de Shor utiliza tanto una transformada inicial de Hadamard como la transformada cuántica de Fourier , que son ambos tipos de transformadas de Fourier en grupos finitos ; el primero encendido y el segundo encendido .

Aplicaciones de la filogenética molecular (biología evolutiva) [ editar ]

La transformada de Hadamard se puede utilizar para estimar árboles filogenéticos a partir de datos moleculares. [5] [6] [7] La filogenética es el subcampo de la biología evolutiva que se centra en comprender las relaciones entre los organismos. Una transformada de Hadamard aplicada a un vector (o matriz) de frecuencias de patrón de sitio obtenidas de una alineación de secuencia múltiple de ADN se puede usar para generar otro vector que transporta información sobre la topología del árbol. La naturaleza invertible de la transformada filogenética de Hadamard también permite el cálculo de las probabilidades de un sitio a partir de un vector de topología de árbol, lo que permite utilizar la transformada de Hadamard para una estimación de la máxima verosimilitud.de árboles filogenéticos. Sin embargo, la última aplicación es menos útil que la transformación del vector de patrón de sitio al vector de árbol porque hay otras formas de calcular las probabilidades de sitio [8] [9] que son mucho más eficientes. Sin embargo, la naturaleza invertible de la transformada filogenética de Hadamard proporciona una herramienta elegante para la filogenia matemática. [10] [11]

La mecánica de la transformada filogenética de Hadamard implica el cálculo de un vector que proporciona información sobre la topología y las longitudes de las ramas del árbol utilizando el vector de patrón de sitio o la matriz .

donde está la matriz de Hadamard del tamaño apropiado. Esta ecuación se puede reescribir como una serie de tres ecuaciones para simplificar su interpretación:

La naturaleza invertible de esta ecuación permite calcular un vector de patrón de sitio esperado (o matriz) de la siguiente manera:

Podemos utilizar el modelo de sustitución de dos estados de Cavender-Farris- Neyman (CFN) para el ADN codificando los nucleótidos como caracteres binarios (las purinas A y G se codifican como R y las pirimidinas C y T se codifican como Y). Esto hace posible codificar la alineación de múltiples secuencias como el vector de patrón de sitio que se puede convertir en un vector de árbol , como se muestra en el siguiente ejemplo:

El ejemplo que se muestra en esta tabla usa el esquema simplificado de tres ecuaciones y es para un árbol de cuatro taxones que se puede escribir como ((A, B), (C, D)); en formato newick . Los patrones del sitio están escritos en el orden ABCD. Este árbol en particular tiene dos ramas terminales largas (0,2 sustituciones de transversión por sitio), dos ramas terminales cortas (0,025 sustituciones de transversión por sitio) y una rama interna corta (0,025 sustituciones de transversión por sitio); por lo tanto, se escribiría como ((A: 0.025, B: 0.2): 0.025, (C: 0.025, D: 0.2)); en formato newick. Este árbol exhibirá atracción de rama larga si los datos se analizan utilizando la máxima parsimoniacriterio (asumiendo que la secuencia analizada es lo suficientemente larga para que las frecuencias del patrón del sitio observado estén cerca de las frecuencias esperadas que se muestran en la columna). La atracción de la rama larga refleja el hecho de que el número esperado de patrones de sitio con índice 6 - que sostienen el árbol ((A, C), (B, D)); - exceder el número esperado de patrones de sitios que soportan el árbol verdadero (índice 4). Obviamente, la naturaleza invertible de la transformada filogenética de Hadamard significa que el vector de árbol significa que el vector de árbol corresponde al árbol correcto. Por lo tanto, el análisis de parsimonia después de la transformación es estadísticamente consistente , [13] como sería un análisis de probabilidad máxima estándar utilizando el modelo correcto (en este caso el modelo CFN).

Tenga en cuenta que el patrón de sitio con 0 corresponde a los sitios que no han cambiado (después de codificar los nucleótidos como purinas o pirimidinas). Los índices con asteriscos (3, 5 y 6) son "informativos de parsimonia" y. los índices restantes representan patrones de sitios donde un solo taxón difiere de los otros tres taxones (por lo que son el equivalente a las longitudes de las ramas terminales en un árbol filogenético de máxima verosimilitud estándar).

Si se desea utilizar datos de nucleótidos sin recodificar como R e Y (y finalmente como 0 y 1), es posible codificar los patrones del sitio como una matriz. Si consideramos un árbol de cuatro taxones, hay un total de 256 patrones de sitio (cuatro nucleótidos a la potencia). Sin embargo, las simetrías del modelo de tres parámetros de Kimura (o K81) nos permiten reducir los 256 patrones de sitios posibles para el ADN a 64 patrones, lo que hace posible codificar los datos de nucleótidos para un árbol de cuatro taxones como una matriz de 8 x 8 [ 14] de una manera similar al vector de 8 elementos utilizado anteriormente para patrones de sitio de transversión (RY). Esto se logra recodificando los datos usando los cuatro grupos de Klein :

Al igual que con los datos de RY, los patrones de sitio se indexan en relación con la base en el primer taxón elegido arbitrariamente con las bases en los taxones posteriores codificadas en relación con esa primera base. Por tanto, el primer taxón recibe el par de bits (0,0). Usando esos pares de bits, uno puede producir dos vectores similares a los vectores RY y luego poblar la matriz usando esos vectores. Esto se puede ilustrar usando el ejemplo de Hendy et al. (1994), [14] que se basa en una alineación de secuencia múltiple de cuatro pseudogenes de hemoglobina de primates:

El número mucho mayor de patrones de sitios en la columna 0 refleja el hecho de que la columna 0 corresponde a las diferencias de transición , que se acumulan más rápidamente que las diferencias de transversión en prácticamente todas las comparaciones de regiones genómicas (y definitivamente se acumulan más rápidamente en los pseudogenes de hemoglobina utilizados para este ejemplo trabajado [15]). Si consideramos el patrón de sitio AAGG, sería el patrón binario 0000 para el segundo elemento del par de bits del grupo de Klein y 0011 para el primer elemento. en este caso, el patrón binario basado en el primer elemento, el primer elemento corresponde al índice 3 (por lo tanto, la fila 3 en la columna 0; indicada con un solo asterisco en la tabla). Los patrones de sitio GGAA, CCTT y TTCC se codificarían exactamente de la misma manera. El patrón de sitio AACT se codificaría con el patrón binario 0011 basado en el segundo elemento y 0001 basado en el primer elemento; esto produce el índice 1 para el primer elemento y el índice 3 para el segundo. El índice basado en el segundo par de bits del grupo de Klein se multiplica por 8 para obtener el índice de la columna (en este caso sería la columna 24). La celda que incluiría el recuento de patrones de sitio AACT se indica con dos asteriscos; sin emabargo,la ausencia de un número en el ejemplo indica que el alineamiento de secuencia no incluye patrones de sitios AACT (de igual manera, los patrones de sitios CCAG, GGTC y TTGA, que estarían codificados de la misma manera, están ausentes).

Otras aplicaciones [ editar ]

La transformación de Hadamard también se utiliza en el cifrado de datos , así como en muchos algoritmos de procesamiento de señales y compresión de datos , como JPEG XR y MPEG-4 AVC . En aplicaciones de compresión de video , generalmente se usa en forma de suma de diferencias transformadas absolutas . También es una parte crucial del algoritmo de Grover y el algoritmo de Shor en la computación cuántica. La transformada de Hadamard también se aplica en técnicas experimentales como RMN , espectrometría de masas y cristalografía . También se utiliza en algunas versiones dehash sensible a la localidad , para obtener rotaciones de matriz pseudoaleatorias.

Ver también [ editar ]

  • Transformada rápida de Walsh-Hadamard
  • Transformada pseudo-Hadamard
  • Haar transform
  • Ley distributiva generalizada

Enlaces externos [ editar ]

  • Ritter, Terry (agosto de 1996). "Transformaciones de Walsh-Hadamard: una encuesta de literatura" .
  • Akansu, AN; Poluri, R. (julio de 2007). "Códigos ortogonales de fase no lineal tipo Walsh para comunicaciones CDMA de secuencia directa" (PDF) . Transacciones IEEE sobre procesamiento de señales . 55 (7): 3800–6. doi : 10.1109 / TSP.2007.894229 .
  • Método de cifrado de datos Pan, Jeng-shyang mediante la transformación fraccional discreta de Hadamard (28 de mayo de 2009)
  • Lachowicz, Dr. Pawel. Transformada de Walsh-Hadamard y pruebas de aleatoriedad de la serie de rendimiento financiero (7 de abril de 2015)
  • Beddard, Godfrey; Yorke, Briony A. (enero de 2011). "Espectroscopia de sonda de bomba usando transformadas de Hadamard" (PDF) .
  • Yorke, Briony A .; Beddard, Godfrey; Owen, Robin L .; Pearson, Arwen R. (septiembre de 2014). "Cristalografía resuelta en el tiempo utilizando la transformada de Hadamard" . Métodos de la naturaleza . 11 (11): 1131-1134. doi : 10.1038 / nmeth.3139 . PMC  4216935 . PMID  25282611 .

Referencias [ editar ]

  1. ^ Compare la Figura 1 en Townsend, WJ; Thornton, MA "Cálculos del espectro de Walsh utilizando gráficos de Cayley". CiteSeerX 10.1.1.74.8029 .  Cite journal requires |journal= (help)
  2. ↑ a b Kunz, HO (1979). "Sobre la equivalencia entre Walsh-Hadamard discreto unidimensional y transformadas de Fourier discretas multidimensionales". Transacciones IEEE en computadoras . 28 (3): 267–8. doi : 10.1109 / TC.1979.1675334 .
  3. ^ Análisis de Fourier de mapas booleanos - Un tutorial -, págs. 12-13
  4. ^ Clase 5: Algoritmos cuánticos básicos, Rajat Mittal, págs. 4-5
  5. ^ Hendy, Michael D .; Penny, David (diciembre de 1989). "Un marco para el estudio cuantitativo de árboles evolutivos" . Zoología sistemática . 38 (4): 297. doi : 10.2307 / 2992396 .
  6. ^ Hendy, Michael D .; Penny, David (enero de 1993). "Análisis espectral de datos filogenéticos" . Revista de clasificación . 10 (1): 5–24. doi : 10.1007 / BF02638451 . ISSN 0176-4268 . 
  7. ^ Székely, LA, Erdős, PL, Steel, MA y Penny, D. (1993). Una fórmula de inversión de Fourier para árboles evolutivos. Letras de matemáticas aplicadas , 6 (2), 13-16.
  8. ^ Felsenstein, Joseph (noviembre de 1981). "Árboles evolutivos de secuencias de ADN: un enfoque de máxima verosimilitud" . Revista de evolución molecular . 17 (6): 368–376. doi : 10.1007 / BF01734359 . ISSN 0022-2844 . 
  9. ^ Stamatakis, Alexandros (2019), Warnow, Tandy (ed.), "Una revisión de enfoques para optimizar cálculos de verosimilitud filogenética" , Bioinformática y filogenética , Cham: Springer International Publishing, 29 , págs. 1-19, doi : 10.1007 / 978-3-030-10837-3_1 , ISBN 978-3-030-10836-6, consultado el 10 de octubre de 2020
  10. ^ Chor, Benny; Hendy, Michael D .; Holanda, Barbara R .; Penny, David (1 de octubre de 2000). "Múltiples máximos de probabilidad en árboles filogenéticos: un enfoque analítico" . Biología Molecular y Evolución . 17 (10): 1529-1541. doi : 10.1093 / oxfordjournals.molbev.a026252 . ISSN 1537-1719 . 
  11. ^ Matsen, Frederick A .; Steel, Mike (1 de octubre de 2007). Ané, Cécile; Sullivan, Jack (eds.). "Las mezclas filogenéticas en un solo árbol pueden imitar un árbol de otra topología" . Biología sistemática . 56 (5): 767–775. doi : 10.1080 / 10635150701627304 . ISSN 1076-836X . 
  12. ^ Waddell, Peter J; Steel, MA (diciembre de 1997). "Distancias generales reversibles en el tiempo con tasas desiguales entre sitios: mezcla Γ y distribuciones gaussianas inversas con sitios invariantes". Filogenética molecular y evolución . 8 (3): 398–414. doi : 10.1006 / mpev.1997.0452 .
  13. ^ Acero, MA; Hendy, MD; Penny, D. (1 de diciembre de 1993). "¡La parsimonia puede ser consistente!" . Biología sistemática . 42 (4): 581–587. doi : 10.1093 / sysbio / 42.4.581 . ISSN 1063-5157 . 
  14. ^ a b c Hendy, MD; Penny, D .; Steel, MA (12 de abril de 1994). "Un análisis de Fourier discreto para árboles evolutivos" . Actas de la Academia Nacional de Ciencias . 91 (8): 3339–3343. doi : 10.1073 / pnas.91.8.3339 . ISSN 0027-8424 . PMC 43572 . PMID 8159749 .   
  15. ^ Miyamoto, MM; Koop, BF; Slightom, JL; Goodman, M .; Tennant, MR (1 de octubre de 1988). "Sistemática molecular de primates superiores: relaciones genealógicas y clasificación" . Actas de la Academia Nacional de Ciencias . 85 (20): 7627–7631. doi : 10.1073 / pnas.85.20.7627 . ISSN 0027-8424 . PMC 282245 . PMID 3174657 .