Actualizado el September 23, 20264 minutos de lectura
Introducción
Dado un conjunto de datos D={(X1,Y2),…,(XN,YN)} como Xi y Yi son continuos. El objetivo de la "regresión lineal" es encontrar la mejor línea que se ajuste a estos datos.
En otras palabras, queremos crear el modelo:
y^=a∗0+a∗1.x∗1+⋯+a∗p.x_p
donde p es el número de dimensiones de la variable X.
En este artículo veremos cómo solucionar este problema en tres escenarios:
Cuando X es unidimensional, es decir, p=1.
Cuando X es multidimensional, es decir, p>1.
Usando descenso de gradiente.
X es unidimensional (mínimos cuadrados ordinarios)
El modelo que queremos crear tiene la forma:
y^=a∗0+a∗1.x
Recuerde que el objetivo de la regresión lineal es encontrar la recta que mejor se ajuste a los datos. En otras palabras, necesitamos minimizar la distancia entre los puntos de datos y la línea.
(a∗0^,a∗1^)=(a∗0,a∗1)argmin∑∗i=1N(y∗i−y∗i^)2
=(a∗0,a∗1)argmin∑∗i=1N(y∗i−(a∗0+a∗1.x∗i))2
Pongamos:
L=∑∗i=1N(y∗i−(a∗0+a∗1.x_i))2
Para encontrar el mínimo, necesitamos resolver las siguientes ecuaciones:
Como queremos minimizar L con respecto a W, entonces podemos ignorar el primer término "YTY" porque es independiente de W y resolvamos la siguiente ecuación:
∂W∂(−2WTXTY+WTXTXW)=0−2XTY+2XTXW^=0W^=(XTX)−1XTY
Usando descenso de gradiente
Aquí está la formulación del algoritmo de descenso de gradiente:
w∗n+1=w∗n−lr×∂w_n∂f
Ahora todo lo que tenemos que hacer es aplicarlo en los dos parámetros a0 y a1 (en el caso de una variable X):
¿Cuál es la fórmula del vector de parámetros óptimos en el caso de regresión lineal multidimensional?
VAR(Y)COV(X,Y)
VAR(X)COV(X,Y)
(XTX)−1XTY"correcto"
¿Por qué ponemos la derivada a 0?
Encontrar el extremo. "correcto"
Minimizar la derivada.
Conservar únicamente la parte real de la derivada.
¿Cuál es el objetivo de la regresión lineal?
Encontrar la recta que pasa por todos los puntos.
Para encontrar la línea que mejor describa los datos."correcto"
Encontrar la línea que mejor separa los datos.
Aprende habilidades tecnológicas online con Code Labs Academy
Únete a una comunidad que te apoya, desbloquea tu potencial y impulsa tu desarrollo profesional en tecnología, tanto si empiezas desde cero como si quieres actualizar tus habilidades.