En matemáticas , el producto de Kronecker , a veces denotado por ⊗, es una operación sobre dos matrices de tamaño arbitrario que da como resultado una matriz de bloques . Es una especialización del producto tensorial (que se denota con el mismo símbolo) de vectores a matrices y da como resultado la matriz de la función lineal del producto tensorial con respecto a una elección estándar de base . El producto de Kronecker debe distinguirse de la multiplicación de matrices habitual , que es una operación completamente diferente. El producto de Kronecker también se denomina a veces producto directo de matrices . [1]
El producto de Kronecker recibe su nombre del matemático alemán Leopold Kronecker (1823-1891), aunque hay poca evidencia de que él fuera el primero en definirlo y utilizarlo. El producto de Kronecker también se ha denominado matriz de Zehfuss y producto de Zehfuss , en honor a Johann Georg Zehfuss [de] , quien en 1858 describió esta operación matricial, pero el producto de Kronecker es actualmente el término más utilizado. [2] [3] La atribución errónea a Kronecker en lugar de a Zehfuss se debió a Kurt Hensel . [4]
Definición
Si A es una matriz m × n y B es una matriz p × q , entonces el producto de Kronecker A ⊗ B es la matriz de bloques pm × qn :
Más explícitamente:
Usando y para denotar la división entera truncada y el resto , respectivamente, y numerando los elementos de la matriz comenzando desde 0, se obtiene
Para la numeración habitual a partir de 1, se obtiene
Si A y B representan transformaciones lineales V 1 → W 1 y V 2 → W 2 , respectivamente, entonces el producto tensorial de las dos aplicaciones está representado por A ⊗ B , que es lo mismo que V 1 ⊗ V 2 → W 1 ⊗ W 2 .
En general, A ⊗ B y B ⊗ A son matrices diferentes. Sin embargo, A ⊗ B y B ⊗ A son equivalentes en permutaciones, lo que significa que existen matrices de permutaciones P y Q tales que [5]
Si A y B son matrices cuadradas, entonces A ⊗ B y B ⊗ A son permutaciones pares similares , lo que significa que podemos tomar P = Q T .
Las matrices P y Q son matrices de barajado perfectas. [6] La matriz de barajado perfecta S p , q se puede construir tomando porciones de la matriz identidad I r , donde .
La propiedad del producto mixto también funciona para el producto elemento por elemento. Si A y C son matrices del mismo tamaño, B y D son matrices del mismo tamaño, entonces [7]
La inversa de un producto Kronecker:
De ello se deduce que A ⊗ B es invertible si y solo si tanto A como B son invertibles, en cuyo caso la inversa viene dada por
En el lenguaje de la teoría de categorías , la propiedad de producto mixto del producto de Kronecker (y el producto tensorial más general) muestra que la categoría Mat F de matrices sobre un cuerpo F es, de hecho, una categoría monoidal , con objetos números naturales n , morfismos n → m son matrices n × m con entradas en F , la composición está dada por la multiplicación de matrices, las flechas identidad son simplemente matrices identidad n × n I n , y el producto tensorial está dado por el producto de Kronecker. [9]
Mat F es una categoría esqueleto concreta para la categoría equivalente FinVect F de espacios vectoriales de dimensión finita sobre F , cuyos objetos son tales espacios vectoriales de dimensión finita V , las flechas son aplicaciones F -lineales L : V → W , y las flechas identidad son las aplicaciones identidad de los espacios. La equivalencia de categorías supone elegir simultáneamente una base en cada espacio vectorial de dimensión finita V sobre F ; los elementos de las matrices representan estas aplicaciones con respecto a las bases elegidas; y, asimismo, el producto de Kronecker es la representación del producto tensorial en las bases elegidas.
Si A es n × n , B es m × m e I k denota la matriz identidad k × k entonces podemos definir lo que a veces se llama suma de Kronecker , ⊕, por
Esto es diferente de la suma directa de dos matrices. Esta operación está relacionada con el producto tensorial en las álgebras de Lie , como se detalla a continuación (#Propiedades abstractas) en el punto "Relación con el producto tensorial abstracto ".
Tenemos la siguiente fórmula para la matriz exponencial , que es útil en algunas evaluaciones numéricas. [10]
Sea una matriz y una matriz. Cuando se intercambia el orden del producto de Kronecker y la vectorización, las dos operaciones se pueden vincular linealmente a través de una función que involucra a la matriz de conmutación . Es decir, y tienen la siguiente relación:
Además, la relación anterior se puede reorganizar en términos de o de la siguiente manera:
dónde
Producto exterior :Si y son vectores arbitrarios, entonces el producto externo entre y se define como . El producto de Kronecker está relacionado con el producto externo por: .
Supóngase que A y B son matrices cuadradas de tamaño n y m respectivamente. Sean λ 1 , ..., λ n los valores propios de A y μ 1 , ..., μ m los de B (enumerados según su multiplicidad ). Entonces los valores propios de A ⊗ B son
De ello se deduce que la traza y el determinante de un producto de Kronecker están dados por
Si A y B son matrices rectangulares, entonces se pueden considerar sus valores singulares . Supongamos que A tiene r A valores singulares distintos de cero, es decir
De manera similar, denotemos los valores singulares distintos de cero de B por
Entonces el producto de Kronecker A ⊗ B tiene r A r B valores singulares distintos de cero, es decir
Dado que el rango de una matriz es igual al número de valores singulares distintos de cero, encontramos que
El producto Kronecker de matrices corresponde al producto tensorial abstracto de aplicaciones lineales. Específicamente, si los espacios vectoriales V , W , X e Y tienen bases { v 1 , ..., v m }, { w 1 , ..., w n }, { x 1 , ..., x d } y { y 1 , ..., y e }, respectivamente, y si las matrices A y B representan las transformaciones lineales S : V → X y T : W → Y , respectivamente en las bases apropiadas, entonces la matriz A ⊗ B representa el producto tensorial de las dos aplicaciones, S ⊗ T : V ⊗ W → X ⊗ Y con respecto a la base { v 1 ⊗ w 1 , v 1 ⊗ w 2 , ..., v 2 ⊗ w 1 , ..., v m ⊗ w n } de V ⊗ W y la base definida de manera similar de X ⊗ Y con la propiedad de que A ⊗ B ( v i ⊗ w j ) = ( Av i ) ⊗ ( Bw j ) , donde i y j son números enteros en el rango apropiado. [11]
Cuando V y W son álgebras de Lie , y S : V → V y T : W → W son homomorfismos de álgebras de Lie , la suma de Kronecker de A y B representa los homomorfismos de álgebras de Lie inducidos V ⊗ W → V ⊗ W. [ cita requerida ]
El producto de Kronecker se puede utilizar para obtener una representación conveniente de algunas ecuaciones matriciales. Consideremos, por ejemplo, la ecuación AXB = C , donde A , B y C son matrices dadas y la matriz X es la incógnita. Podemos utilizar el "truco vec" para reescribir esta ecuación como
Aquí, vec( X ) denota la vectorización de la matriz X , formada al apilar las columnas de X en un solo vector columna .
De las propiedades del producto de Kronecker se deduce ahora que la ecuación AXB = C tiene una solución única, si y sólo si A y B son invertibles (Horn y Johnson 1991, Lema 4.3.1).
Si X y C están ordenados por filas en los vectores columna u y v , respectivamente, entonces (Jain 1989, 2.8 Matrices de bloques y productos de Kronecker)
Otro ejemplo es cuando una matriz puede factorizarse como un producto de Kronecker, entonces la multiplicación de matrices puede realizarse más rápido utilizando la fórmula anterior. Esto puede aplicarse de forma recursiva, como se hace en la FFT de base 2 y la transformada rápida de Walsh-Hadamard . Dividir una matriz conocida en el producto de Kronecker de dos matrices más pequeñas se conoce como el problema del "producto de Kronecker más cercano", y puede resolverse exactamente [13] utilizando la SVD . Dividir una matriz en el producto de Kronecker de más de dos matrices, de manera óptima, es un problema difícil y el tema de investigación en curso; algunos autores lo plantean como un problema de descomposición tensorial. [14] [15]
Dos operaciones matriciales relacionadas son los productos de Tracy–Singh y Khatri–Rao , que operan sobre matrices particionadas . Sea la matriz A m × n particionada en los bloques A ij m i × n j y la matriz B p × q en los bloques B kl p k × q ℓ , con, por supuesto, Σ i m i = m , Σ j n j = n , Σ k p k = p y Σ ℓ q ℓ = q .
Producto de Tracy-Singh
El producto Tracy-Singh se define como [17] [18] [19]
lo que significa que el ( ij )-ésimo subbloque del producto mp × nq A B es la matriz m i p × n j q A ij B , de la cual el ( kℓ )-ésimo subbloque es igual a la matriz m i p k × n j q ℓ A ij ⊗ B kℓ . Esencialmente, el producto de Tracy-Singh es el producto Kronecker por pares para cada par de particiones en las dos matrices.
Por ejemplo, si A y B son matrices particionadas de 2 × 2 , por ejemplo:
^ Weisstein, Eric W. "Producto Kronecker". mathworld.wolfram.com . Consultado el 6 de septiembre de 2020 .
^ Zehfuss, G. (1858). "Ueber eine gewisse Determinante". Zeitschrift für Mathematik und Physik . 3 : 298–301.
^ Henderson, Harold V.; Pukelsheim, Friedrich; Searle, Shayle R. (1983). "Sobre la historia del producto Kronecker". Álgebra lineal y multilineal . 14 (2): 113–120. doi :10.1080/03081088308817548. hdl : 1813/32834 . ISSN 0308-1087.
^ Sayed, Ali H. (22 de diciembre de 2022). Inferencia y aprendizaje a partir de datos: fundamentos. Cambridge University Press. ISBN978-1-009-21812-2.
^ Henderson, HV; Searle, SR (1980). "La matriz de permutación vec, el operador vec y los productos de Kronecker: una revisión" (PDF) . Álgebra lineal y multilineal . 9 (4): 271–288. doi :10.1080/03081088108817379. hdl : 1813/32747 .
^ abc Liu, Shuangzhe; Trenkler, Götz; Kollo, Tõnu; von Rosen, Dietrich; Baksalary, Oskar Maria (2023). "El profesor Heinz Neudecker y el cálculo diferencial matricial". Documentos estadísticos . doi :10.1007/s00362-023-01499-w.
^ Langville, Amy N. ; Stewart, William J. (1 de junio de 2004). "El producto de Kronecker y las redes de autómatas estocásticos". Revista de Matemática Computacional y Aplicada . 167 (2): 429–447. Bibcode :2004JCoAM.167..429L. doi : 10.1016/j.cam.2003.10.010 .
^ Macedo, Hugo Daniel; Oliveira, José Nuño (2013). "Escribiendo álgebra lineal: un enfoque orientado a biproductos". Ciencia de la programación informática . 78 (11): 2160–2191. arXiv : 1312.4818 . Código Bib : 2013arXiv1312.4818M. CiteSeerX 10.1.1.747.2083 . doi :10.1016/j.scico.2012.07.012. S2CID 9846072.
^ Brewer, JW (1969). "Una nota sobre productos matriciales de Kronecker y sistemas de ecuaciones matriciales". Revista SIAM de Matemáticas Aplicadas . 17 (3): 603–606. doi :10.1137/0117057.
^ Dummit, David S.; Foote, Richard M. (1999). Álgebra abstracta (2.ª ed.). Nueva York: John Wiley and Sons. págs. 401–402. ISBN978-0-471-36857-1.
^ Véase Knuth, DE "Pre-Fascicle 0a: Introduction to Combinatorial Algorithms" (impresión cero, revisión 2 ed.). respuesta al ejercicio 96. Archivado desde el original el 2019-05-13 . Consultado el 2007-10-24 ,para aparecer como parte de Knuth, DE El arte de la programación informática . Vol. 4A.
^ Van Loan, C.; Pitsianis, N. (1992). Aproximación con productos Kronecker . Ithaca, NY: Cornell University Press.
^ King Keung Wu; Yam, Yeung; Meng, Helen; Mesbahi, Mehran (2016). "Aproximación del producto de Kronecker con matrices de múltiples factores a través del algoritmo del producto tensorial". 2016 IEEE International Conference on Systems, Man, and Cybernetics (SMC) . págs. 004277–004282. doi :10.1109/SMC.2016.7844903. ISBN978-1-5090-1897-0.S2CID30695585 .
^ Dantas, Cássio F.; Cohen, Jérémy E.; Gribonval, Rémi (2018). "Aprendizaje rápido de diccionarios para representaciones dispersas mediante descomposiciones tensoriales de bajo rango". Análisis de variables latentes y separación de señales (PDF) . Apuntes de clase en informática. Vol. 10891. págs. 456–466. doi :10.1007/978-3-319-93764-9_42. ISBN978-3-319-93763-2. Número de identificación del sujeto 46963798.
^ Li, Algo; et al. (4 de septiembre de 2010). «Calibración simultánea entre el mundo robótico y la mano y el ojo mediante cuaterniones duales y el producto de Kronecker» (PDF) . Revista internacional de ciencias físicas . 5 (10): 1530–1536. S2CID 7446157. Archivado desde el original (PDF) el 9 de febrero de 2020.
^ Tracy, DS; Singh, RP (1972). "Un nuevo producto matricial y sus aplicaciones en la diferenciación matricial". Statistica Neerlandica . 26 (4): 143–157. doi :10.1111/j.1467-9574.1972.tb00199.x.
^ Liu, Shuangzhe (1999). "Resultados matriciales de los productos Khatri–Rao y Tracy–Singh". Álgebra lineal y sus aplicaciones . 289 (1–3): 267–277. doi : 10.1016/S0024-3795(98)10209-4 .
^ Liu, Shuangzhe; Trenkler, Götz (2008). "Hadamard, Khatri-Rao, Kronecker y otros productos matriciales". Revista Internacional de Ciencias de la Información y de Sistemas . 4 (1): 160–177.
^ ab Slyusar, Vadym (1999). "Nuevas operaciones matriciales para DSP" (conferencia autopublicada). doi :10.13140/RG.2.2.31620.76164/1 – vía ResearchGate .{{cite journal}}: Requiere citar revista |journal=( ayuda )
^ ab Slyusar, VI (13 de marzo de 1998). "Una familia de productos faciales de matrices y sus propiedades" (PDF) . Análisis de sistemas y cibernética C/C de Kibernetika I Sistemnyi Analiz. 1999 . 35 (3): 379–384. doi :10.1007/BF02733426. S2CID 119661450.
^ Slyusar, VI (15 de septiembre de 1997). Nuevas operaciones de productos de matrices para aplicaciones de radares (PDF) . Problemas directos e inversos de la teoría de ondas electromagnéticas y acústicas (DIPED-97), Lviv. pp. 73–74.
^ Ahle, Thomas Dybdahl; Knudsen, Jakob Bæk Tejs (3 de septiembre de 2019). "Bosquejo tensorial casi óptimo". arXiv : 1909.01821 [cs.DS].
^ Ninh, Pham; Pagh, Rasmus (2013). Núcleos polinómicos rápidos y escalables a través de mapas de características explícitas . Conferencia internacional SIGKDD sobre descubrimiento de conocimiento y minería de datos. Association for Computing Machinery. CiteSeerX 10.1.1.718.2766 . doi :10.1145/2487575.2487591.
Jain, Anil K. (1989). Fundamentos del procesamiento de imágenes digitales. Prentice Hall. Bibcode :1989fdip.book.....J. ISBN978-0-13-336165-0.
Steeb, Willi-Hans (1997). Cálculo matricial y producto de Kronecker con aplicaciones y programas en C++ . World Scientific Publishing. ISBN978-981-02-3241-2.
Steeb, Willi-Hans (2006). Problemas y soluciones en cálculo matricial introductorio y avanzado. World Scientific Publishing. ISBN978-981-256-916-5.
Liu, Shuangzhe; Trenkler, Götz (2008), "Hadamard, Khatri-Rao, Kronecker y otros productos matriciales", Revista internacional de ciencias de la información y sistemas , 4 : 160–177