No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Regresión lineal

7/16
Recursos

¿Qué es la regresión lineal?

La regresión lineal nos permite predecir un número basándonos en las características de un conjunto de datos. Imagina que dibujas una línea que conecta las características con el objetivo de salida. Este modelo puede identificar relaciones positivas: cuando aumenta el valor de X, también lo hace Y. O relaciones negativas: a medida que X crece, Y disminuye. Sin embargo, la regresión lineal puede no ser adecuada para datos complejos. A continuación, exploraremos en profundidad los conceptos clave de este enfoque.

¿Cuáles son los elementos del proceso de decisión en regresión lineal?

El proceso de decisión en regresión lineal se centra en los parámetros: pesos y sesgos. Estos parámetros ayudan a determinar cómo cada característica de entrada influye en el objetivo de salida. Puedes imaginar los pesos como una hipótesis que mide la relación entre la característica de entrada y el objetivo de salida "Y".

  1. Pesos (W-one): Indican la relación entre la característica de entrada y el objetivo de salida. Comprender el peso te permite anticipar cómo un cambio en X afecta a Y.
  2. Sesgo (W-cero): Esto nos dice qué esperar en el objetivo final cuando la característica de entrada no existe (X-cero). Esencialmente, es el valor predicho cuando todas las características de entrada son cero.

¿Cómo funciona la función de coste?

La función de coste mide qué tan bien predice el modelo la salida correcta. Comparando los resultados predichos con los reales del conjunto de entrenamiento, tratamos de minimizar la diferencia entre ambos. En otras palabras, buscamos acortar esas líneas verticales entre los puntos de datos reales y nuestra línea de predicción.

¿Cómo se implementa la regla de actualización?

La regla de actualización ajusta los valores de los pesos y sesgos para minimizar dicha diferencia. Utiliza técnicas de optimización numérica para encontrar la línea que mejor se ajuste a los datos. De esta forma, se optimiza el modelo para predecir con mayor exactitud.

¿Cuándo es efectiva una regresión lineal?

La eficiencia de un modelo de regresión lineal se evalúa usando métricas como el error cuadrático medio o "R cuadrado". Estas métricas indican el grado de correlación entre las variables:

  • Error cuadrático medio: Mide la diferencia promedio entre los valores predichos y los reales.
  • R cuadrado: Evaluado entre 0 y 1, indica la correlación existente. Un valor cercano a 1 sugiere una fuerte correlación, mientras que un valor cerca de 0 indica lo contrario.

¿Cómo optimizar un modelo de regresión lineal?

Para optimizar un modelo de regresión lineal, se deben seguir tres pasos:

  1. Definir parámetros: Ajustar los pesos y sesgos para analizar la influencia de cada característica de entrada en la salida.
  2. Minimizar la función de coste: Reducir el error para mejorar la precisión del modelo.
  3. Aplicar la regla de actualización: Ajustar los parámetros utilizando métodos de optimización numérica para mejorar la predicción.

¿Es la regresión lineal adecuada para todas las situaciones?

No siempre. Si bien es efectiva para datasets sencillos y con relaciones lineales claras, se puede quedar corta con datos más complejos. En la próxima lección exploraremos la regresión logística, una técnica que ayuda a clasificar y etiquetar datos, ofreciendo así una perspectiva diferente para enfrentar otros tipos de problemas de predicción.

¡Continúa aprendiendo y mejorando tus habilidades en machine learning! Con cada lección dominas nuevas herramientas para abordar mejor tus desafíos analíticos.

Aportes 9

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Escribí un tutorial sobre el modelo de regresión lineal. Puedes encontrar el artículo acá: https://platzi.com/tutoriales/1766-regresion-python/11159-de-donde-viene-el-algoritmo-de-regresion-lineal/

Linear Regression : parameters

different parameters change what we think of a relation between input features (X) and the output target (y_pred).

y{pred}=w_1x+w_0_

w_1= a change in “x” means a change in "y"
w_0= the value of “y” if “x” is 0


Linear Regression : cost function

Mean-square Error

(MSE) Loss :

The cost (E) is the difference between the target value (y_i) and our line predicted value (y_pred)

j\left(w,:w_0\right)=\frac{1}{N}\sum {i=1}^N:\left(y_i-y{i:pred}\right)^2


Linear Regression : actualization rule

We want to minimize the distance (y_i pred) above each point on training data
We change w_0 and w_1 'til find a smaller distance sum is found

_update rule = min J(w_0, w_1) _


pd: i want to add the screenshot, but i don’t know why doesn’t let me, it pop up an error:

📝 Dejo aquí mi resumen de la clase 📌 La regresión lineal se utiliza en problemas de predicción numérica a partir de las características de los datos. Sin embargo éste algoritmo no funciona bien con datos complejos o que no tienen un comportamiento lineal. 🎯 El objetivo de este algoritmo es encontrar una línea recta que mejor se ajuste a los datos, en otras palabras que la recta se acerque mas a los datapoints. Para el algoritmo de regresión lineal, el proceso de decisión es la combinación lineal entre pesos y los valores de entrada (x), mientras que la función de coste nos dice el promedio de que tan buenas o certeras son las predicciones del modelo, por otro lado la regla de actualización es la manipulación de los pesos para que logren un mejor ajuste de la línea de predicción.
# Rendimiento Cabe la pregunta Cuando sabemos que mi modelo ML esta funcionando bien? En el caso de una regresion lineal utilizamos el **Error Cuadratico Medio** que es un cierto valor de la funcion de error o un termino llamado **R cuadrado**, que viene a ser la correlacion entre los valores de entrada y la salida que buscas predecir. Con tales valores puedes decir si tu relacion es fuerte o debil dependiendo de la cifra arrojada. Para **R cuadrado**, un valor cercano a 1 indica una estrecha relacion entre X e Y. Valores cercanos a 0 indica una relacion muy mala. ![](https://static.platzi.com/media/user_upload/Untitled%20%2825%29-38fa060f-45f4-4669-93da-118f48424a50.jpg)

Impecable. Que gran profe. Ojala tenga mas cursos en la plataforma.

As far as I know R^2 is not the correlation coefficient. R=correlation coefficient R^2 is coefficient of determination which can be interpreted as a percentage of how much variable x explains variable y.

Me agrada este concepto de regresion lineal. Ya quiero conocer y aprender aplicarlo y desarrollarlo con scikit-learn.

El link en los recursos tiene un error 404

Regresión lineal

from sklearn.linear_model import LinearRegression
import numpy as np

# Datos de ejemplo
X = np.array([[1], [2], [3], [4], [5]])  # Variables independientes
y = np.array([2, 4, 6, 8, 10])  # Variable dependiente

# Crear el modelo de regresión lineal
model = LinearRegression()

# Ajustar el modelo a los datos
model.fit(X, y)

# Realizar predicciones
X_new = np.array([[6], [7]])  # Nuevos datos para predecir
predictions = model.predict(X_new)

print("Coeficientes:", model.coef_)  # Coeficientes de las variables independientes
print("Intercepto:", model.intercept_)  # Término de intercepción
print("Predicciones:", predictions)  # Predicciones para los nuevos datos

Regrecion lineal parametros

from sklearn.linear_model import LinearRegression

# Datos de ejemplo
X = [[1], [2], [3], [4], [5]]  # Variables independientes
y = [2, 4, 6, 8, 10]  # Variable dependiente

# Crear el modelo de regresión lineal
model = LinearRegression()

# Ajustar el modelo a los datos
model.fit(X, y)

# Obtener los parámetros estimados
intercept = model.intercept_  # Término de intercepción
coefficients = model.coef_  # Coeficientes de las variables independientes

print("Término de intercepción:", intercept)
print("Coeficientes:", coefficients)

Regresión lineal: función de coste

MSE = (1/n) * sum((y - y_pred)^2)

import numpy as np

def mean_squared_error(y_true, y_pred):
    n = len(y_true)
    mse = np.sum((y_true - y_pred) ** 2) / n
    return mse