x | y |
---|---|
0 | 0 |
1 | 10 |
3 | 30 |
7 | 70 |
20 | 200 |
El objetivo es encontrar la recta que mejor se ajuste a los datos:
Ecuación de la recta: y = a + bx
En nuestro caso, a = 0 y b = 10 ⇒ y = 10x.
Con la ecuación anterior, podemos inferir el valor de y ante cualquier x.
Otro ejemplo con a <> 0:
y = 100 + 10x
En la vida real, los datos no se alinean de forma perfecta, con lo que cada dato estará representado por:
$\displaystyle y_{i}= a + bx_{i} + \epsilon_{i}$
En el gráfico anterior podemos trazar varias rectas:
¿Cuál de ellas se ajusta mejor a los datos? Para saberlo, necesitamos utilizar alguna métrica.
$\displaystyle Y = a + b_{1}x_{1} + b_{2}x_{2} + b_{3}x_{3}+ … + b_{i}x_{i}$
Para saber qué recta se ajusta mejor a nuestros datos, necesitamos calcular el error de cada una de ellas y quedarnos con el que sea menor. Para calcular el error utilizamos alguna función (función de coste).
La función más básica sería calcular la suma de los residuos (resultado real - predicción):
$\displaystyle error = \sum_{i=1}^{N}(y_{i} - \hat{y_{i}})$
Esta función de coste no nos sirve, ya que los residuos se pueden anular unos a otros (puede haber valores positivos y negativos):
Errores parciales (residuos): 0 -2 1 0 2 2 **Error total: 0**
Por ejemplo, si queremos predecir la altura de los hijos en función de la de los padres, estas dos rectas de regresión serían válidas, ya que el error sería 0:
Vamos a ver algunas de las métricas más utilizadas en problemas de regresión.
Promedio de diferencias absolutas entre los valores objetivo y las predicciones:
$\displaystyle MAE = \frac{1}{N} \sum_{i=1}^{N}|(y_{i} - \hat{y_{i}})|$
Menos sensible a los valores atípicos que MSE y RMSE
Promedio de los cuadrados de las diferencias entre los valores objetivo y las predicciones:
$\displaystyle MSE = \frac{1}{N} \sum_{i=1}^{N}(y_{i} - \hat{y_{i}})²$
Es una de la más utilizada en problemas de regresión (junto a RMSE)
Raiz cuadrada de MSE (para que la escala del error sea igual a la escala de los objetivos)
$\displaystyle RMSE = \sqrt{\frac{1}{N} \sum_{i=1}^{N}(y_{i} - \hat{y_{i}})²}$
Es difícil darse cuenta si nuestro modelo es bueno o no al observar los valores absolutos de MSE o RMSE.
El coeficiente de determinación, o R², es otra medida que podemos usar para evaluar un modelo y está estrechamente relacionada con la MSE, pero tiene la ventaja de estar libre de escala . No importa si Los valores de salida son muy grandes o muy pequeños, el R² siempre estará entre -∞ y 1.
Cuando R² es negativo, significa que el modelo es peor que predecir la media.
$\displaystyle R² = 1 - \frac{MSE(model)}{MSE(baseline)}$
MSE(model) se calcula con la fórmula anterior.
$\displaystyle MSE(baseline) = \frac{1}{N} \sum_{i=1}^{N}(y_{i} - \overline{y})²$
donde $\displaystyle \overline{y}$ es la media de la Y observada.
Si tenemos valores anómalos en las muestras que no son errores de medición (queremos que nuestro modelo los tenga en cuenta), mejor usar MAE. En caso contrario, usar MSE.
Cuando tenemos un número elevado de características o demasiadas instancias de entrenamiento para caber en la memoria, las funciones de coste anteriores pueden no ser adecuadas. Para estos casos, podemos utilizar una manera muy diferente para minimizar la función de coste: descenso de gradiente.
Para encontrar el mínimo en una función de coste, el descenso de gradiente empieza en un punto aleatorio. En sucesivas iteraciones, va calculando las derivadas parciales (pendiente de la función) para ir aproximándose al mínimo cada vez más.
Un parámetro importante en el descenso de gradiente es el tamaño de los pasos, determinado por el hiperparámetro tasa de aprendizaje. Si la tasa de aprendizaje es demasiado pequeña, el algoritmo tendrá que pasar por muchos pasos para converger (si llega a hacerlo antes de terminar las iteraciones), lo cual llevará mucho más tiempo.
Por el contrario, si la tasa de aprendizaje es demasiado grande, el algoritmo puede no converger nunca.
Otro problema es que no todas las funciones de coste tienen una forma regular con un sólo mínimo. Pueden haber muchos socavones, crestas, mesetas y todo tipo de terrenos irregulares, lo que dificulta la convergencia en el mínimo global.
Por suerte, la función de coste MSE para un modelo de regresión es una función convexa. Eso implica que no hay mínimos locales, sólo hay un mínimo global.
La regresión polinomial es un modelo de análisis de regresión en el que la relación entre la variable independiente X y la variable dependiente y se modela con un polinomio de n-ésimo grado.
Aunque la regresión polinomial ajusta un modelo no lineal a los datos, como problema de estimación estadística es lineal, en el sentido de que la función de regresión es lineal en los parámetros desconocidos que se estiman a partir de los datos. Por esta razón, la regresión polinomial se considera un caso especial de regresión lineal múltiple.
Ejemplo:
Si intentamos sacar la recta de regresión, nuestras predicciones no serán muy precisas:
$\displaystyle y = 4472.11 + 136.86x$
Podemos aumentar el grado del polinomio para intentar ajustar mejor a los datos:
$\displaystyle y = 330.46 - 13.77x + 4.83x^2 + 0.11x^3$