21 Curso de Fundamentos de Álgebra Lineal Con Python
21 Curso de Fundamentos de Álgebra Lineal Con Python
Algebra lineal: rama de la matemática encargada de estudiar las operaciones entre matrices y vectores
Las ecuaciones lineales son ecuaciones que están elevados a máximo un grado, cada una de las variables no esta multiplicada con otras variables y no están
elevadas a una potencia
Para eso con la función arange vamos a generar números para establecer los límites, adicional con la función ylim (lo que hacemos es definir los limites del
gráficos, es decir hasta que números queremos la línea de la gráfica y evaluación. Y finalmente agregamos las coordenadas con axvlinea y axhline:
Y en la grafica se nota que las sistemas de ecuación lineal se están cruzando, y eso lo que representa que hay un valor de x y un valor de y que hacen verdadera
las ecuaciones al mismo tiempo.
Haciendo el despeje manual, lo cual coincide con la grafica
Y representando todo de manera matricial las ecuaciones:
Ahora en numpy:
11. TIPOS ESPECIALES DE MATRICEZ: IDENTIDAD, INVERSA, SINGULARES
IDENTIDAD
Tiene la particularidad de no hacer ninguna modificación, es un elemento neutro en las matrices, es como el uno en los números, la matriz identidad no
transforma espacios.
INVERSA
Aquí la misión principal es que matriz multiplicada con x cosa nos arroje la matriz identidad, es es la gran pregunta
Cuando no existe la identidad, se llama una matriz singular, cuando no existe la inversa la llamamos una matriz singular, si es singular, al aplicar la inversa nos va
a arrojar un error.
Ahora para resumir aprendimos a calcular la inversa cuando la matriz es cuadrada, si la matriz es cuadrada, en el caso de que exista se puede resolver con estas
el sistema de ecuaciones lineales.
12. APLICACIÓN DE LA INVERSA PARA RESOLVER UN SISTEMA DE ECUACIONES LINEALES
Con numpy y la función set_printoptiones(suppress=True) podemos decirle a Python que si tenemos un numero muy pequeño que no lo muestre como un cero
mas bien. Para que sea mas sencilla la identificación de la matriz identidad
Lo que se había plantado para la solución era encontrar la inversa de A:
Con la matriz inversa se puede calcular un sistema lineal de ecuaciones, aunque debemos recurrir a otro tipo de métodos para llegar a la solución correcto, esto
debido a la manera como en que los equipos de computo realizan los cálculos.
13. EJEMPLOS DE SISTEMAS SIN SOLUCION, CON UNA SOLUCION Y CON INFINITAS SOLUCIONES
Este sistema tiene solución:
Ese np.concatenate quiere decir que se va a concatenar el vector con el origen que va a hacer su inicio.
Esta funcion nos conviene guardarla en un módulo separado llamado graficar vectores (otro notebook), para eso creamos una carpeta (no se, funciones
auxiliares). Ahora llamamos este notebook desde nuestro modulo original:
15. QUE ES UNA COMBINACIÓN LINEAL
Es multiplicar un vector a un escalar y después otro vector por un escalar, sumar los resultados y obtener un nuevo vector (combinación lineal de los dos)
En Python
Definiendo limites
Ahora vamos a definir una función para graficar todas las combinaciones lineales posibles de dos vectores: esa es la importancia de las combinaciones lineales,
con los vectores correctos nos permiten definir un espacio entero.
16. QUE ES UN ESPACIO Y SUBESPACIO
La combinación lineal de dos elementos solo nos podrán devolver un elemento del mismo donde ellos están viviendo.
Vamos a visualizar un espacio tridimensional:
Un hiperplano es una dimensión menos en la cual estamos trabajando, en este caso estamos trabajando en n espacio tridimensional pero se genero un espacio
en 2d
17. VECTORES LINEALMENTE INDEPENDIENTES
Y esto no es así ya que el vector b no convive en el espacio del subespacio por a y x, por lo tanto, el sistema de ecuación lineal no va a tener solución.
Y esto ocurre porque v1 es linealmente dependiente de v2, no son linealmente independiente (v1 ==-1*v2)
18. VALIDAR QUE UNA MATRIZ TENGA INVERSA
Para que un sistema de ecuaciones lineales tenga solución, necesitamos que la matriz a que representa este sistema de ecuaciones sea cuadrada y que todos sus
vectores sean linealmente independientes.
Ejemplo:
Para saber que fila es dependiente es mediante los autovalores y auto vectores (eso es una forma de descomponer nuestra matriz)
Lo que nos esta diciendo es que la fila 3 es la que es linealmente dependiente, ya que de la primera y segunda fila se puede sacar obtener esta fila:
En definitiva, para que se pueda resolver un sistema lineal de ecuaciones tenga solución, la matriz que lo representa no debe tener linealmente dependientes, ni
filas ni columnas que puedan ser escritas como combinación de otras filas o columnas.
19. QUE ES UNA NORMA Y PARA QUE SE USA- DESIGUALDAD TRINGULAR
Para medir el tamaño de un vector usamos la función norma, la norma lo que hace es recibir de entrada un vector y a este vector asociarles un numero no
negativo, puede ser cero o mayor. La norma de v es cero si y solo si v es igual a cero. La desigualdad triangular dice que si tenemos dos vectores v1 y v2 y los
sumamos y calculamos sus normas nos da un v3, el cual debe ser menor o igual a la suma de las normas de los vectores v1 y v2. La norma de un escalar por un
vector es igual al valor absoluta del escalar por la norma del vector.
Los tipos de normas se utilizan en machine learning para medir los errores, esto tiene sentido hacerlo en r2 o en r3
Ahora calculamos la norma l1, es la sumatoria de los valores absolutos del vector
Vamos a visualizar que dado dos vectores v1 y v2, la traspuesta de v1 por el producto interno de v2 = norma2(v1)*norma2(v2)*cos(angulo)
Matriz identidad la hacia especial por que es el elemento neutro del producto interno
Y la matriz inversa, si tengo una matriz y la multiplico por su inversa lo que tengo es su identidad
La propiedad de las diagonales cuando las multiplico por un vector es que no esta realizando las combinaciones lineales de las distintas coordenadas
Cuando estemos hablando de vectores ortogonales estaremos hablando de mas de un vector. Ser ortogonal es que el Angulo que forman dos vectores es de 90°,
el producto interno nos permite conocer cual es el Angulo entre los vectores.
QUE ES ORTONORMAL
Una matriz es ortogonal cuando todas sus filas son ortonormales y todas sus columnas son mutuamente ortonormales
Y efectivamente con el producto interno nos damos cuenta que son ortogonales
Ahora se hace esto con el resto de filas y columnas para validar que son ortogonales
Ahora para validar si son ortonormales verificamos su norma y si con esto podemos asegurar que son ortonormales
También necesitamos saber si las filas son ortogonales, efectivamente dan cero
Nos queda verificar si son ortonormales mediante su norma, y efectivamente da uno y sus filas ortonormales
Entonces la matriz es ortogonal con vectores ortonormales
Vemos que la traza nos devuelve la suma de los elementos de la diagonal, la traza siempre se mantiene de la misma manera
Ahora si estamos trabajando en r2 y el determinante es negativo lo que está haciendo es dándonos el espejo del espacio:
Graficamos un par de vectores
Ahora aplicando una matriz a estos dos vectores (lo que se ve es que se duplique la distancia de los vectores), como se evidencia cada uno de los vectores
cambio su tamaño.
Aca se puede evidenciar que el espacio aumento 4 veces su volumen
AHORA VAMOS A DEFINIR UNA NUEVA MATRIZ CON UN DETERMINANTE NEGATIVO y vamos a calcular el determinante el cual va a ser negativo.
La información del determinante es importante, pero no permite saber que esta ocurriendo con la rotación en el espacio.