Multiplicación de matrices - Producto indefinido

Estoy aprendiendo álgebra lineal para una clase de aprendizaje automático y tengo una pregunta sobre la multiplicación de matrices. El producto de dos matrices no está definido siempre que las filas de la primera matriz (leyendo de derecha a izquierda) no coincidan con la columna de la segunda matriz.

Sin embargo, digamos que necesitaría (por alguna razón) multiplicar una matriz de 3x3 por una de 2x2. ¿No podría simplemente completar la operación agregando la "fila faltante" con las coordenadas [0,0]? Lo estoy pensando porque si las matrices representan transformaciones lineales del espacio, entonces una matriz de 2x2 representa una transformación bidimensional. Sin embargo, ¿no es una transformación bidimensional simplemente una transformación en la que todas las demás dimensiones son iguales a 0?

Para ilustrar eso, digamos que quiero aplicar una transformación lineal [-1,0;0,1] al vector [3,3]. El vector resultante sería un vector bidimensional [-3,3]. Ahora digamos que después de esta transformación quiero aplicar otra transformación al mismo vector, pero esta vez en tres dimensiones. Para mantener el ejemplo lo más simple posible, usemos la transformación de identidad para esto: [1,0,0;0,1,0;0,0,1]. Hacer esto requeriría multiplicar la matriz de 3x3 [1,0,0;0,1,0;0,0,1] por la de 2x3 [-1,0;0,1], lo que técnicamente no es posible. Sin embargo, si aplico el método anterior (es decir, agrego una tercera fila con todos los 0 a la matriz de 2x3), aún podría calcular la transformación y obtener el resultado [-1,0,0;0,1,0]. Luego puedo multiplicar esto por mi vector original y obtener [-3,3,0]. La única diferencia que puedo ver entre [-3,3,0] y [-3,

¿Que me estoy perdiendo aqui?

Saludos,

federico

Respuestas (3)

Tienes que ser un poco más explícito sobre lo que quieres hacer. Técnicamente hablando, simplemente no puedes multiplicar una matriz de 2x2 por una de 3x3. Así que no estoy seguro de lo que buscas allí.

Pero si A METRO 2 × 2 y quieres encontrar B METRO 3 × 3 para que siempre que ( X 1 , X 2 , X 3 ) R 3 tenemos A ( X 1 , X 2 ) T idéntica a la proyección de B ( X 1 , X 2 , X 3 ) T en sus dos primeras coordenadas, entonces eso es definitivamente factible. De hecho, supongamos

A = ( a b C d )
Entonces tienes que dejar
B = ( a b 0 C d 0 )
donde las estrellas pueden ser lo que quieras.

Hola @Ben W, no estoy investigando ninguna aplicación en particular. Estoy tratando de entender conceptualmente por qué usar sus palabras "Técnicamente hablando, simplemente no puede multiplicar una matriz de 2x2 por una de 3x3".
@fcorte Ya sabes que la multiplicación de matrices solo está definida para × metro y metro × norte matrices (es decir, donde el número de columnas de la primera matriz coincide con el número de filas de la segunda). No estoy seguro de qué más hay que decir al respecto.
¿Por qué solo se define para lxm y mxn si todavía se puede calcular una transformación lineal multiplicando lxm por anxn? Es decir, simplemente asumiendo que cualquier coordenada adicional o vector base en la matriz de mayor dimensión se puede colapsar a 0 en la matriz de menor dimensión al aplicar las reglas de multiplicación estándar. Si hace esto, aún obtiene una respuesta definida, aunque implica perder algo de información al colapsar de n + x dimensiones a n unos. Vea también mi pregunta a Chris Culter a continuación.
@fcorte Puedes definir el mapa lineal q : METRO 2 × 2 METRO 3 × 3 Dejando q A sea ​​la matriz formada al agregar ceros a la izquierda y al final de A . Entonces para cualquier B METRO 3 × 3 puedes multiplicar q A y B juntos. Eso está bien hasta donde llega, pero no es lo mismo que multiplicar A y B , cuya operación no está definida. Si lo desea, puede "extender" la definición de multiplicación de matrices y escribir A B para ( q A ) B cuando el contexto es claro. Pero no estoy seguro de lo útil que sería.

Diría que se puede usar el núcleo de la idea, pero una matriz que contiene solo 0 no deja el vector sin cambios, el mapa de unidades no cambia el vector, por lo que si desea usar un mapa 2D en un objeto 3D puede optar por elegir 1 eje a lo largo del cual no se cambiará nada utilizando el mapa de unidades en lugar del mapa cero.

Cada matriz cuadrada representa un mapa lineal independientemente de sus entradas. Entonces, la matriz cero y la matriz identidad son ambas lineales, por ejemplo.
Lo siento, mala redacción. Una matriz que contiene solo 0 es un mapa lineal, pero no uno que no hace nada. Intenté cambiarlo en mi respuesta.

Efectivamente estás haciendo cálculos en F S METRO ( R ) , el anillo de apoyo finito norte × norte Matrices bidimensionales de valores reales. Y está considerando que cada una de esas matrices es equivalente a cualquier segmento de dimensión finita que contenga todas sus entradas distintas de cero. Esto generalmente funciona bien: por ejemplo, la multiplicación en F S METRO ( R ) es asociativo. Pero no hay matriz identidad, ya que necesitaría tener infinitas 1 s, y eso es inconveniente.

Dicho esto, ¡solo porque puedas hacer esto no significa necesariamente que debas hacerlo ! Para expresar esto en una configuración aplicada: digamos que está diseñando un paquete de álgebra lineal desde cero. Si el usuario intenta multiplicar dos matrices con formas inesperadas, es probable que sea un error, por lo que es mejor señalar un gran error, en lugar de convertir silenciosamente la mitad de sus datos en ceros. Si el usuario realmente quiere realizar la multiplicación, solicítele que describa explícitamente cómo quiere que las entradas se formen primero. Por ejemplo, vea la manipulación de matrices y las funciones de relleno de numpy .

Creo que entiendo el punto de tu respuesta. Para aclarar: me parece que no hay diferencia entre las matrices [a,b;c,d] y [a,b,n;c,d,n;n,n,n] para n=0. ¿Es esto lo que también quiere decir con "cada una de esas matrices es equivalente a cualquier segmento de dimensión finita que contiene todas sus entradas distintas de cero"? Si es correcto y como implica mi ejemplo anterior, entonces multiplicar una matriz de 3x3 por una de 2x2 hace que las tres dimensiones colapsen en dos. Veo cómo esto pierde algo de "información", pero ¿no sigue siendo un caso "definido" que de hecho se puede calcular usando las reglas estándar? ¿Por qué se considera esto "indefinido"?