Si, es una funcion lineal!
Introducción al curso
Lo que aprenderás sobre álgebra lineal: vectores
Vectores
Algunos objetos matemáticos: vectores y escalares
Convención en notación
Comienza a utilizar vectores en Python
Adición entre vectores
Suma de vectores en Python
Producto escalar-vector
Producto escalar-vector en Python
Producto interno
Producto interno en Python
Proyecto: análisis de sentimientos
Funciones lineales
Funciones lineales
Algunas funciones lineales
Un teorema en funciones lineales
Funciones afines
Aproximaciones de Taylor
Ejemplo en aproximaciones de Taylor
Un modelo de regresión
Norma y distancia
Cómo calcular distancias de vectores
Distancia entre vectores
Distancia entre vectores y búsqueda de departamento
Desviación estándar
Cálculo de riesgo en inversiones
Ángulo entre vectores y correlación
Clustering
¿Qué es y por qué clustering?
Una aproximación: K-Means
K-Means en Python
Cierre
Cierre y despedida
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Convierte tus certificados en títulos universitarios en USA
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Aportes 30
Preguntas 0
Si, es una funcion lineal!
“No hay casi ninguna teoría más elemental que el álgebra lineal, a pesar de que generaciones de profesores y escritores de libros de texto han oscurecido su simplicidad mediante absurdos cálculos” Jean Dieudonne
Me está costando mucho no dormirme en estas clases
Vi algebra lineal en la universidad y estas clases se me hace que se están explicando de manera “complicada” por la sintaxis y l anotación pero creo que la escancia no está quedando muy clara
De las peores clases, no entiendo cual es la obsesión de hacerlo todo con unos y ceros, dura más de 14 minutos y creo que en 5 minutos hubiera queda bien explicado sin tanto rodeo.
def g(x):
return x[0]
a = np.array([1,1,1,1])
b = np.array([1,0,1,0])
x,y = 1,-2
print('g(x*a + y*b) = ',g(x*a + y*b))
print('x*g(a) + y*g(b) =',x*g(a) + y*g(b))
Output:
g(xa + yb) = -1
xg(a) + yg(b) = -1
SÍ ES LINEAL
<def g(x):
return x[0]
a = np.array([1,1,1,1])
b = np.array([1,0,1,0])
x,y = 1,-2 #escalares x y y
c = g(x*a + y*b)
d = g(x*a + y*b)
if c == d:
print('La funcion es homogenea')
>
if g(x*a + y*b) == x*g(a) + y*g(b):
print('la funcion g es lineal')
else:
*print('la funcion g no es lineal')
def g(x):
return x[0]
a = np.array([1,1,1,1])
b = np.array([1,0,1,0])
x,y = 1,-2
print('g(x*a + y*b) = ',g(x*a + y*b))
g(xa + yb) = -1
print('x*g(a) + y*g(b) =',x*g(a) + y*g(b))
xg(a) + yg(b) = -1
Dejo los tres ejercicios para determinar si eran funciones lineales o no. En los tres casos se trataban de tales funciones:
https://github.com/Mgobeaalcoba/proyectos_platzi/blob/main/Ejercicios_de_Funciones_Lineales.ipynb
Durante muchos años me he quejado de que los profes que enseñan matemáticas (en especial a partir de niveles avanzados) no pueden expresar en palabras simples y ejemplos digeribles la cantidad de notación que se usa. Me refiero a que llegan a abusar del formalismo y eso hace que las matemáticas lleguen a ser inaccesibles para quienes más nos cuesta. Puedo contar con una mano a quienes sean capaces de expresar una idea matemática en toda su completitud y que a su vez sea entendible y sobre todo simple. Mis felicitaciones al profe, siga así.
Verificar si la función g(x) es lineal
print('g(x*a + y*b) = ',g(x*a + y*b))
g(x*a + y*b) = -1
#Comprobando la linealidad (Propiedad de la superposición)
print('x*g(a) + y*g(b) =',x*g(a) + y*g(b))
x*g(a) + y*g(b) = -1
Si una funcion g cumple con la homogeneidad y la aditividad, cumple la superpocision. Y, si cumple con la superpocision, es lineal.
Aquí tienes otros ejemplos de funciones lineales comunes:
def identity_function(x):
return x
def scaling_function(x, scalar):
return x * scalar
import numpy as np
def rotation_2d(x, angle):
theta = np.radians(angle)
rotation_matrix = np.array([[np.cos(theta), -np.sin(theta)], [np.sin(theta), np.cos(theta)]])
return np.dot(rotation_matrix, x)
Aquí está mi función para determinar la linealidad 📈📈:
def linearity(a, b, x, y)-> bool:
return f(x*a + y*b) == x*f(a) + y*f(b)
Ejercicio propuesto en la clase:
Si se cumple la condición de linealidad.
Sí, g(x) es función lineal.
Dejo la tarea solicitada:
comprobando si es lineal la función proyección
Hola plazitueros!
Previamente definida la** función proyección** y declarados los vectores c y d (componentes iguales a los del profesor), se realiza la tarea de verificar si es lineal, es decir, si es a su vez homogénea y aditiva.
Los resultados indican que la función proyección también es lineal, al igual que la función suma estudiada previamente.
Saludos
Hola amigos,
en el min 2:57 el profe dice que f**(a,b)** = aTb, es el producto de a transpuesta por b transpuesta. En realidad quiso decir a transpuesta por b, ya que solo es la transpuesta de a en esa operación. Se comprende que fue un lapsus ya que antes y después se nota que b no es transpuesta.
Saludos
Buenas tardes como tal lo unico que hice para resolver el ejercicio de esta clase es evaluar lo que hizo el profesor pero ahora con g(x) y me dio como resultado que si era lineal porque por más que intercambiaba los valores siempre se cumplia la superposición.
a = np.array([4,3,2,1])
b = np.array([1,0,1,0])
x, y=1, -2
print(g(x*a+y*b))
print(x*g(a)+y*g(b))
Así lo resolví yo 😃
g(xa + yb) = -1
xg(a) + yg(b) = -1
Si es una función lineal
if g(x*a + y*b) == x*g(a)+y*g(b):
print('La funcion g es homogenea, aditiva y lineal')
La funcion g es homogenea, aditiva y lineal
def g(x):
return x[0]
a = np.array([1,1,1,1])
b = np.array([1,0,1,0])
x,y = 1,-2
Comprobamos si es lineal
print('g(x*a + y*b) = ',g(x*a + y*b))
g(xa + yb) = -1
print('x*g(a) + y*g(b) =',x*g(a) + y*g(b))```
xg(a) + yg(b) = -1
Es lineal
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?