245 votos

¿Cuáles son las diferencias entre una matriz y un tensor?

¿Cuál es la diferencia entre una matriz y un tensor? ¿O qué hace que un tensor sea un tensor? Sé que una matriz es una tabla de valores, ¿verdad? ¿Pero un tensor?

46 votos

Continuando con tu analogía, una matriz es simplemente una tabla bidimensional para organizar información y un tensor es simplemente su generalización. Puedes pensar en un tensor como una forma de organizar información en dimensiones más altas. Así que una matriz (5x5 por ejemplo) es un tensor de rango 2. Y un tensor de rango 3 sería una "matriz 3D" como una matriz de 5x5x5.

2 votos

Pensé que un tensor de rango n es una función multi-lineal que toma n vectores y devuelve un vector del mismo espacio vectorial?

9 votos

Un punto de confusión es que en aprendizaje automático, a menudo las personas usan el término "tensor" cuando realmente quieren decir simplemente "matriz multidimensional". Discrepo en que un tensor de rango 3 sería una "matriz 3D", pero es cierto que no es raro escuchar la palabra "tensor" usada de esta manera. stats.stackexchange.com/questions/198061/…

174voto

celtschk Puntos 13058

Tal vez para ver la diferencia entre tensores de rango 2 y matrices, lo mejor sea ver un ejemplo concreto. En realidad, esto era algo que me confundía mucho en el curso de álgebra lineal (donde no aprendimos sobre tensores, solo sobre matrices).

Como tal vez sepas, puedes especificar una transformación lineal \(a\) entre vectores mediante una matriz. Llamemos a esa matriz \(A\). Ahora, si realizas una transformación de base, esto también puede ser escrito como una transformación lineal, de modo que si el vector en la base antigua es \(v\), el vector en la nueva base es \(T^{-1}v\) (donde \(v\) es un vector columna). Ahora puedes preguntar qué matriz describe la transformación \(a\) en la nueva base. Bueno, es la matriz \(T^{-1}AT\).

Bueno, hasta aquí todo bien. Lo que memoricé en aquel entonces es que bajo un cambio de base, una matriz se transforma como \(T^{-1}AT\).

Pero luego aprendimos sobre formas cuadráticas. Estas se calculan usando una matriz \(A\) como \(u^TAv\). Aún sin problema, hasta que aprendimos cómo hacer cambios de base. Ahora, de repente, la matriz no se transformaba como \(T^{-1}AT\), sino más bien como \(T^TAT\). ¡Lo cual me confundió mucho! ¿Cómo podía un mismo objeto transformarse de manera diferente cuando se usaba en diferentes contextos?

Bueno, la solución es: ¡porque en realidad estamos hablando de objetos diferentes! En el primer caso, estamos hablando de un tensor que lleva vectores a vectores. En el segundo caso, estamos hablando de un tensor que lleva dos vectores a un escalar, o equivalentemente, que lleva un vector a un covector.

Ahora ambos tensores tienen \(n^2\) componentes, y por lo tanto es posible escribir esas componentes en una matriz de \(n\times n\). Y dado que todas las operaciones son lineales o bilineales, los productos normales de matriz-matriz y matriz-vector junto con la transposición pueden utilizarse para escribir las operaciones del tensor. Solo al mirar las transformaciones de base, se ve que ambos, en efecto, no son lo mismo, y el curso nos hizo un (bueno, al menos a mí) deservicio al no decirnos que realmente estamos viendo dos objetos diferentes, y no solo dos usos diferentes del mismo objeto, la matriz.

De hecho, hablar de un tensor de rango 2 no es muy preciso. El rango de un tensor tiene que ser dado por dos números. La asignación de vector a vector se da por un tensor de rango-(1,1), mientras que la forma cuadrática se da por un tensor de rango-(0,2). También está el tipo (2,0) que también corresponde a una matriz, pero que asigna dos covectores a un número, y que nuevamente se transforma de manera diferente.

La conclusión de todo esto es:

  • Las componentes de un tensor de rango 2 se pueden escribir en una matriz.
  • El tensor no es esa matriz, porque diferentes tipos de tensores pueden corresponder a la misma matriz.
  • Las diferencias entre esos tipos de tensores se hacen evidentes mediante las transformaciones de base (de ahí la definición de los físicos: "Un tensor es lo que se transforma como un tensor").

Por supuesto, otra diferencia entre matrices y tensores es que las matrices son, por definición, objetos de dos índices, mientras que los tensores pueden tener cualquier rango.

5 votos

Esta es una excelente respuesta, porque revela que la pregunta está equivocada. De hecho, una matriz ni siquiera es una matriz, mucho menos un tensor.

9 votos

Estoy contento con la primera oración en tu comentario @RyanReich pero totalmente confundido por: "una matriz no es ni siquiera una matriz". ¿Podrías elaborar o señalar hacia otra fuente para explicar esto (¿a menos que lo haya sacado de contexto?)? Gracias.

7 votos

@AJP Ha pasado un tiempo, pero creo que lo que quise decir con eso era que una matriz (array de números) es diferente de una matriz (transformación lineal = (1,1) tensor). El mismo array de números puede representar varios objetos diferentes e independientes de la base cuando se elige una base particular para ellos.

58voto

Filip Ekberg Puntos 22189

De hecho, hay algunas "confusiones" que algunas personas hacen al hablar sobre tensores. Esto sucede principalmente en Física donde los tensores suelen describirse como "objetos con componentes que se transforman de la manera correcta". Para comprender realmente este tema, primero recordemos que esos objetos pertenecen al ámbito del álgebra lineal. Aunque se utilizan mucho en muchas ramas de las matemáticas, el área de las matemáticas dedicada al estudio sistemático de esos objetos es realmente el álgebra lineal.

Así que comencemos con dos espacios vectoriales $V,W$ sobre algún campo de escalares $\Bbb F$. Ahora, sea $T : V \to W$ una transformación lineal. Voy a suponer que sabes que podemos asociar una matriz con $T$. Ahora, podrías decir: ¡así que las transformaciones lineales y las matrices son lo mismo! Y si dices eso, estarías equivocado. La cuestión es: uno puede asociar una matriz con $T$ solo cuando se fija una base de $V$ y una base de $W$. En ese caso obtendremos $T$ representado en esas bases, pero si no introducimos esas bases, $T$ seguirá siendo $T$ y las matrices seguirán siendo matrices (arreglos rectangulares de números, o cualquier otra definición que prefieras).

Ahora, la construcción de tensores es mucho más elaborada que simplemente decir: "toma un conjunto de números, etiquétalos por componentes, deja que se transformen de la manera correcta, obtienes un tensor". En realidad, esta "definición" es una consecuencia de la definición real. De hecho, la definición real de un tensor tiene como objetivo introducir lo que llamamos "Propiedad Universal".

La cuestión es que si tenemos una colección de $p$ espacios vectoriales $V_i$ y otro espacio vectorial $W$ podemos formar funciones de varias variables $f: V_1\times \cdots \times V_p \to W$. Una función como esta se llamará multilineal si es lineal en cada argumento con los demás fijos. Ahora, dado que sabemos cómo estudiar transformaciones lineales, nos preguntamos: ¿existe una construcción de un espacio vectorial $S$ y una única aplicación multilineal $T : V_1 \times \cdots \times V_p \to S$ tal que $f = g \circ T$ para algún $g : S \to W$ lineal y tal que esto se cumple para todos los $f$? Si esto siempre es posible, reduciremos el estudio de aplicaciones multilineales al estudio de aplicaciones lineales.

La parte feliz de la historia es que esto siempre es posible, la construcción está bien definida y $S$ se denota $V_1 \otimes \cdots \otimes V_p$ y se llama el producto tensorial de los espacios vectoriales y la aplicación $T$ es el producto tensorial de los vectores. Un elemento $t \in S$ se llama un tensor. Ahora es posible probar que si $V_i$ tiene dimensión $n_i$ entonces se cumple la siguiente relación:

$$\dim(V_1\otimes \cdots \otimes V_p)=\prod_{i=1}^p n_i$$

Esto significa que $S$ tiene una base con $\prod_{i=1}^p n_i$ elementos. En ese caso, como sabemos de álgebra lineal básica, podemos asociar a cada $t \in S$ sus componentes en alguna base. Ahora, esas componentes son lo que la gente suele llamar "el tensor". De hecho, cuando en Física ves a la gente diciendo: "considera el tensor $T^{\alpha \beta}$" lo que realmente están diciendo es "considera el tensor $T$ cuyas componentes en alguna base entendida por contexto son $T^{\alpha \beta}$".

Entonces, si consideramos dos espacios vectoriales $V_1$ y $V_2$ con dimensiones respectivamente $n$ y $m$, por el resultado que he mencionado $\dim(V_1 \otimes V_2)=nm$, por lo tanto para cada tensor $t \in V_1 \otimes V_2$ se puede asociar un conjunto de $nm$ escalares (las componentes de $t$), y evidentemente se pueden introducir esos valores en una matriz $M(t)$ y así hay una correspondencia de tensores de rango $2$ con matrices.

Sin embargo, exactamente como en el caso de las transformaciones lineales, esta correspondencia solo es posible cuando se han seleccionado bases en los espacios vectoriales con los que estamos tratando. Finalmente, con cada tensor también es posible asociar una aplicación multilineal. Por lo tanto, los tensores pueden entenderse en su forma completamente abstracta y algebraica como elementos del producto tensorial de espacios vectoriales, y también pueden entenderse como aplicaciones multilineales (esto es mejor para la intuición) y podemos asociar matrices a esos.

Así que después de todo este problema con el álgebra lineal, la respuesta corta a tu pregunta es: las matrices son matrices, los tensores de rango 2 son tensores de rango 2, sin embargo hay una correspondencia entre ellos siempre que se fije una base en el espacio de tensores.

Mi sugerencia es que leas el capítulo $4$ de álgebra multilineal de Kostrikin en "Álgebra Lineal y Geometría". Este libro es difícil, pero es bueno para realmente entender las ideas. Además, puedes aprender sobre tensores (construcciones en términos de aplicaciones multilineales) en buenos libros de Análisis multivariable como "Cálculo en variedades" de Michael Spivak o "Análisis en variedades" de James Munkres.

1 votos

Debo estar pasando por alto algo, pero ¿no puedes simplemente establecer $S=W, g=\mathrm Id_W$?

3 votos

El punto es que queremos un espacio $S$ construido a partir de los espacios vectoriales $V_i$ de modo que podamos usarlo para todos los $W$. En otras palabras, dado simplemente $V_i$, podemos construir el par $(S,g)$ y usarlo de una vez por todas para cualquier $W$ y $f$. Por eso se llama propiedad universal.

35voto

Drealmer Puntos 2284

Como una respuesta de marcador de posición esperando quizás aclaración por la reacción del que hace la pregunta (y otros): dado que tu contexto tiene una matriz que sea una tabla de valores (lo cual puede ser completamente razonable)...

En ese contexto, un "vector" es una lista de valores, una "matriz" es una tabla (o lista de listas), el siguiente elemento sería una lista de tablas (equivalentemente, una tabla de listas, o lista de listas de listas), luego una tabla de tablas (equivalentemente, una lista de tablas de listas, o lista de listas de tablas...). Y así sucesivamente. Todo esto son "tensores".

No sorprende que haya muchos puntos de vista más sofisticados que se puedan tomar, ¿pero quizás esta pequeña consigna sea útil?

1 votos

Además de la respuesta de celtschk, ahora los tensores tienen más sentido para mí (y sus diferentes grados)

2 votos

Entonces, básicamente un tensor es una matriz de objetos en programación. Tensor1 = array. Tensor2 = array de array. Tensor3 = array de array de array.

1 votos

@Pacerier, sí, desde un punto de vista de programación, esa sería una versión inicial razonable de lo que es un tensor. Sin embargo, como se menciona en mi respuesta, en varios contextos matemáticos hay complicaciones, debido, en efecto, al "colapso" en el esquema de indexación.

18voto

Muphrid Puntos 12245

Los tensores son objetos cuyas leyes de transformación les otorgan un significado geométrico. Sí, soy físico y para mí, eso es lo que es un tensor: hay una idea general de que los tensores son objetos simplemente descritos usando componentes con respecto a alguna base, y a medida que cambian las coordenadas (y por lo tanto la base asociada cambia), los componentes del tensor deben transformarse en consecuencia. De allí se deducen esas leyes basadas en la regla de la cadena del cálculo multivariable, nada más.

¿Qué es una matriz? Una representación de un mapa lineal, también con respecto a alguna base. Por lo tanto, algunos tensores pueden ser representados con matrices.

¿Por qué algunos? Bueno, a diferencia de lo que has escuchado, no todos los tensores son inherentemente mapas lineales. Sí, puedes construir un mapa lineal a partir de cualquier tensor, pero eso no es lo que el tensor es. A partir de un vector, puedes construir un mapa lineal que actúa sobre un covector para producir un escalar; de allí surge la idea, pero es engañosa. Considera un tipo diferente de cantidad, que representa un plano orientado. Lo llamaremos un bivector: A partir de un bivector, puedes construir un mapa lineal que recibe un covector y devuelve un vector, o un mapa lineal que toma dos covectores y devuelve un escalar.

El hecho de que puedas construir múltiples mapas a partir de un bivector debería indicar que el bivector no es, en sí mismo, ninguno de estos mapas, sino un objeto geométrico más fundamental. Los bivectores se representan usando tensores antisimétricos de 2 índices o matrices antisimétricas. De hecho, puedes formar bivectores a partir de dos vectores. Si bien puedes hacer que encaje con la imagen del mapeo, comienza a sentirse increíblemente arbitrario.

Algunos tensores son inherentemente mapas lineales, sin embargo, y todos estos mapas pueden escribirse en términos de alguna base como una matriz. Incluso el tensor de Riemann, que tiene $\binom{n}{2}$ por $\binom{n}{2}$ componentes, puede escribirse de esta manera, aunque generalmente se considera un mapa de dos vectores a dos vectores, tres vectores a un vector, cuatro vectores a un escalar... Podría seguir.

Pero no todas las matrices representan información que sea adecuada para tales consideraciones geométricas.

0 votos

Su interpretación de los bivectores como tensores antisimétricos de rango 2 es muy interesante. ¿Dónde encuentra su justificación? ¿Se podría construir algo similar o análogo para "cobivectores", productos exteriores de 2 covectores, o 2-formas? Esto podría ayudar a proporcionar visualizaciones interesantes de 2-formas.

4voto

Tim Lohnes Puntos 376

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X