Curso de Matemáticas para IA · Lección 31 de 180
Una base da a los vectores de IA un sistema de coordenadas reversible
Comprueba si unos vectores forman una base, calcula coordenadas en un nuevo marco y observa cómo un modelo lineal mantiene la misma puntuación tras un cambio coordinado.
El mismo punto en la representación bidimensional de un modelo puede escribirse como (1, 7) o (3, 2). Ambos pares pueden representar el vector cuya primera coordenada es 1 y la segunda es 7, siempre que indiquemos qué sistema de coordenadas usamos. El primer par utiliza los conocidos ejes horizontal y vertical. El segundo usa dos vectores de base inclinados. Una base hace que esta alternativa permita describir todos los vectores del espacio de forma completa y sin ambigüedades.
Al terminar esta lección, podrás comprobar si un conjunto de vectores es una base, calcular las coordenadas de un vector en esa base y explicar qué debe cambiar en un modelo lineal cuando cambian las coordenadas de entrada.
Objetivo de aprendizaje: Verificar una base y expresar un vector en coordenadas de esa base.
Esta lección se apoya en la independencia lineal y el espacio generado: una base combina ambas ideas. La explicación sigue la sección 2.6 de Mathematics for Machine Learning, mientras que el ejemplo numérico, el cálculo de la puntuación del modelo, el explorador y las preguntas siguientes son originales.
Una base ofrece justo las direcciones necesarias
Trabajamos en un espacio vectorial de dimensión finita. Un conjunto de vectores es una base de un espacio cuando cumple dos pruebas:
- Genera el espacio: todo vector del espacio se puede construir como combinación lineal del conjunto.
- Es linealmente independiente: ninguno de sus vectores es redundante; solo la combinación lineal con todos los coeficientes iguales a cero produce el vector cero.
En conjunto, estas condiciones indican que hay direcciones suficientes para alcanzar todos los vectores y que no hay ninguna dirección adicional que genere ambigüedad. La sección 2.6 del libro ofrece caracterizaciones equivalentes: una base es un conjunto generador mínimo y un conjunto linealmente independiente maximal, y cada vector tiene una única combinación lineal en esa base.
En , una base tiene exactamente vectores. Para un subespacio menor, contiene tantos vectores como direcciones independientes tenga ese subespacio. Por ejemplo, dos vectores pueden ser una base de un plano dentro de sin ser una base de todo .
Por qué las coordenadas son únicas
Supongamos que forman una base y que es cualquier vector del espacio. La propiedad generadora garantiza que al menos un conjunto de coeficientes lo representa:
Imaginemos ahora que otro conjunto, , produce el mismo vector. Al restar las dos expresiones se obtiene
Como los vectores de la base son linealmente independientes, todos los coeficientes de esta combinación nula deben ser cero. Por tanto, para cada . Las coordenadas son únicas porque la base no tiene direcciones redundantes.
Escribimos la columna de coordenadas como . El subíndice importa: indica qué base proporciona esas coordenadas. El vector y su columna de coordenadas están relacionados, pero no son objetos intercambiables.
Calcular un cambio de coordenadas
Tomemos estos dos vectores de :
Coloca los vectores de la base en las columnas de una matriz:
Son linealmente independientes: el determinante es , distinto de cero. Como hay dos vectores linealmente independientes en , también generan el plano y forman una base.
Busquemos las coordenadas de . La columna de coordenadas debe cumplir . Al escribir , esa ecuación matricial se convierte en dos ecuaciones ordinarias:
Restamos la primera ecuación de la segunda: , así que . Entonces , por lo que . Comprobemos directamente la reconstrucción:
El par de coordenadas significa «tres pasos en la dirección de y dos en la de ». Nombra el mismo punto final que las coordenadas estándar .
Un vector, dos sistemas de coordenadas
Coordenadas en la base seleccionada: (1, 7)
Vector en coordenadas estándar: (1, 7)
v = c₁b₁ + c₂b₂
Coordenadas en la base seleccionada: (1, 7)El explorador empieza con las coordenadas estándar. Usa el selector accesible mediante el teclado para cambiar a la base inclinada: la flecha hacia termina en el mismo punto, mientras que las coordenadas mostradas cambian de a . El pie de figura y la lectura también presentan el resultado en texto, además de en el diagrama.
Deja que NumPy resuelva la ecuación de coordenadas
Para una base mayor, la misma relación es un sistema lineal. Guarda los vectores de la base como columnas y resuelve :
import numpy as np
B = np.array([[1, -1],
[1, 2]]) # columns are b1=(1, 1) and b2=(-1, 2)
v = np.array([1, 7])
rank = np.linalg.matrix_rank(B)
coordinates = np.linalg.solve(B, v)
reconstructed = B @ coordinates
print(rank) # 2: full rank in R^2
print(coordinates) # [3. 2.]
print(np.allclose(reconstructed, v)) # True
Para esta matriz cuadrada en , tener rango completo significa que sus dos columnas son linealmente independientes, lo cual basta para establecer que forman una base. numpy.linalg.solve devuelve la solución del sistema cuadrado de rango completo; NumPy genera LinAlgError cuando la matriz es singular o no es cuadrada. El resultado del rango aquí es un diagnóstico numérico: NumPy lo estima mediante valores singulares y una tolerancia, así que los datos de coma flotante casi dependientes pueden requerir una tolerancia elegida según la escala y la precisión de medida de la aplicación. Consulta las referencias oficiales de NumPy para matrix_rank y solve.
Para ejemplos pequeños y exactos con enteros, un cálculo manual como el determinante anterior ofrece una demostración concluyente. Para datos reales, comprobar la reconstrucción resulta útil, pero no basta por sí solo para verificar que se trata de una base: una matriz singular aún puede reconstruir algunos vectores. Comprueba también que la matriz tiene la forma adecuada y rango completo.
Los pesos de un modelo deben seguir a sus coordenadas
Un cambio de base puede aclarar la representación interna de un modelo, pero debe coordinarse con las operaciones que la utilizan. Consideremos la puntuación lineal con y . En coordenadas estándar, la puntuación es
En la base inclinada, con . Entonces
Los pesos correspondientes en las coordenadas nuevas son , y la puntuación sigue siendo . Si aplicáramos directamente los pesos originales al nuevo par de coordenadas, la puntuación pasaría a ser . Se ha descrito de nuevo la representación, pero los parámetros del modelo no se han actualizado para adaptarse.
Esta igualdad es exacta para la puntuación lineal mostrada. Una red neuronal que aplica activaciones no lineales, normalización u otras operaciones entre capas quizá no conserve su comportamiento ante un cambio de base arbitrario. En la práctica, las coordenadas de una representación están ligadas a los parámetros aprendidos y a las operaciones que las rodean; cambiar una sola pieza puede modificar las predicciones.
Cuando un conjunto candidato no cumple
Dos vectores candidatos pueden apuntar en la misma dirección y aun así parecer dos elementos distintos de una lista:
El segundo es el doble del primero. Su determinante es cero y su espacio generado es solo la recta , no todo el plano. No es posible alcanzar el vector con ellos. Incluso un vector alcanzable puede tener coordenadas ambiguas: se puede escribir como o como .
Unos vectores casi paralelos pueden superar una prueba exacta de independencia y aun así producir coordenadas sensibles a pequeños cambios de medición o redondeo. Es un problema de condicionamiento numérico: las coordenadas matemáticas quizá sean únicas, aunque los valores calculados sean frágiles. La estimación del rango y el residuo de reconstrucción responden a preguntas distintas; interpreta ambos teniendo en cuenta la precisión de los datos.
Por tanto, una base es más que una lista compacta de vectores. Es un contrato: se puede alcanzar todo vector del espacio elegido y, una vez fijada la base, cada vector tiene una única tupla de coordenadas. El número de vectores de la base proporciona entonces la dimensión del espacio, el siguiente paso para conectar el álgebra lineal con las representaciones de modelos.
Comprueba lo que has aprendido
Pregunta 1
¿Forman (2, 0) y (1, 3) una base de ℝ²? Muestra la prueba de independencia y explica por qué aquí es suficiente.
Mostrar la solución paso a paso
Coloca los vectores como columnas de una matriz:
Su determinante es , que no es cero; por tanto, las columnas son linealmente independientes. Hay dos vectores linealmente independientes en ; generan el plano y forman una base.
Pregunta 2
Con b₁=(1, 1) y b₂=(−1, 2), calcula las coordenadas de v=(1, 7) en esa base. Verifica la respuesta mediante la reconstrucción.
Mostrar la solución paso a paso
Plantea . Al comparar componentes se obtiene y . Resta la primera ecuación de la segunda: , así que . Entonces . Reconstruye: . Las coordenadas son .
Pregunta 3
En la misma base inclinada, ¿qué vector representan las coordenadas (−2, 4) en coordenadas estándar?
Mostrar la solución paso a paso
Sustituye las coordenadas en la combinación lineal: . La primera componente es ; la segunda es . Por tanto, el vector representado es .
Pregunta 4
¿Por qué una base solo puede dar una tupla de coordenadas para cada vector?
Mostrar la solución paso a paso
Supongamos que tanto como . Al restar las expresiones se obtiene . La independencia lineal establece que la única forma de producir el vector cero es que todos los coeficientes sean cero. Por tanto, para cada vector de la base.
Pregunta 5
Sean a₁=(1, 2) y a₂=(2, 4). ¿Pueden representar (3, 1)? Da un vector alcanzable que tenga más de una descripción de coordenadas.
Mostrar la solución paso a paso
Ambos vectores están en la recta , así que cualquier combinación lineal también pertenece a ella. Como no cumple , no se puede alcanzar. El vector alcanzable tiene dos descripciones: y . La dependencia provoca tanto la incapacidad de generar todo el plano como coordenadas no únicas para algunos vectores alcanzables.
Pregunta 6
En ℝ³, sean a₁=(1, 0, 1), a₂=(0, 1, 1) y a₃=(1, 1, 2). ¿Forman una base de todo ℝ³? ¿Podrían a₁ y a₂ formar una base de un espacio menor?
Mostrar la solución paso a paso
Observa que , de modo que el conjunto de tres vectores es dependiente. No puede ser una base de ; como máximo genera un plano. Los dos primeros vectores son linealmente independientes, así que forman una base de su espacio generado: el plano generado por y .
Pregunta 7
Para B=[[1, −1], [1, 2]], con los vectores de la base almacenados como columnas, ¿qué devuelve `np.linalg.solve(B, [1, 7])` y qué conviene comprobar después?
Mostrar la solución paso a paso
El sistema es y . Su solución es . Reconstruye con para comprobar que devuelve ; una comprobación numérica del residuo, como np.allclose(B @ coordinates, v), puede detectar un error de transposición o de índices. Comprueba también que sea cuadrada y tenga rango completo antes de considerar sus columnas una base de .
Pregunta 8
Un modelo lineal calcula la puntuación de v=(1, 7) con w=(2, 1). Si las coordenadas cambian a c=(3, 2) en la base inclinada, ¿qué pesos correspondientes mantienen la puntuación? ¿Qué ocurre si se conservan los pesos antiguos?
Mostrar la solución paso a paso
Escribe . Entonces , así que los nuevos pesos son . La puntuación es , igual a la anterior, . Si se aplican sin cambios los pesos antiguos a , la puntuación es y la salida del modelo cambia.