Introducción

En el análisis de datos y la modelización predictiva, es crucial comprender las relaciones entre las variables para hacer predicciones precisas y fiables. En este trabajo, exploramos dos enfoques distintos para la predicción del consumo basado en diversas características socioeconómicas: la regresión lineal múltiple y las redes neuronales artificiales.

La regresión lineal múltiple es una técnica estadística que busca modelar la relación entre una variable dependiente y varias variables independientes mediante la aproximación de una línea recta que minimiza el error de predicción. Este método es ampliamente utilizado debido a su simplicidad y facilidad de interpretación. Nos permite entender cómo cada variable independiente afecta la variable dependiente bajo el supuesto de una relación lineal.

Por otro lado, las redes neuronales artificiales son modelos de aprendizaje automático inspirados en el funcionamiento del cerebro humano. Son capaces de capturar relaciones no lineales y complejas entre las variables a través de múltiples capas de neuronas. Estas redes son particularmente útiles cuando la relación entre las variables no es simplemente lineal, permitiendo una mayor precisión en las predicciones a costa de una mayor complejidad computacional y una menor interpretabilidad.

En este trabajo, desarrollamos y comparamos estos dos modelos utilizando un conjunto de datos simulado. A través de diversas técnicas de evaluación, analizamos la precisión de cada modelo y discutimos sus ventajas y desventajas. Finalmente, aplicamos ambos modelos para predecir el consumo basado en nuevos datos, ilustrando cómo pueden ser utilizados en situaciones prácticas.

El objetivo principal es proporcionar una comprensión integral de cómo diferentes técnicas de modelización pueden ser aplicadas para resolver problemas de predicción, destacando las fortalezas y limitaciones de cada enfoque. Esta comparación nos permitirá tomar decisiones informadas sobre qué modelo utilizar dependiendo del contexto y los requisitos específicos de precisión y interpretabilidad.

Modelo de regresión lineal lineal

Un modelo de regresión lineal es una herramienta estadística que nos ayuda a entender la relación entre dos variables. Se utiliza para predecir el valor de una variable (llamada variable dependiente) basándose en el valor de otra variable (llamada variable independiente).

¿Cómo Funciona?

Dibujamos un gráfico en el que en el eje horizontal (x) colocamos la variable independiente y en el eje vertical (y) colocamos la variable dependiente. Luego, intentamos dibujar una línea recta que pase lo más cerca posible de todos los puntos del gráfico.

Ilustracion 1:Ejemplo de una regresion lineal con una variable dependiente y una independiente

La línea se representa con la fórmula matemática:

y=mx+b

Aqui,Y es la variable dependiente, X es el la variable independiente, m es la pendiente de la línea (que indica cuánto cambia el precio con cada x extra), y b es el punto donde la línea cruza el eje vertical (cuando el tamaño es 0).

¿Esto para que nos sirve ?

Imagina que quieres saber como es el consumo de las personas (variable dependiente), este se relaciona con las siguientes variables, las cuales son el ingreso, la edad, la educacion, el tamaño de la familia y l la ubicacion (variable independientes). La regresión lineal intenta encontrar una línea recta que mejor describa esta relación.

A continuación, se puede observar el siguiente ejemplo: creamos un conjunto de datos con todas sus variables.

##    Ingreso Edad Educacion TamañoFamilia Ubicacion  Consumo
## 1 3879.049   34        11             2         0 2961.092
## 2 4539.645   44        18             5         1 4539.645
## 3 8117.417   20         7             3         1 4525.679
## 4 5141.017   74        13             2         0 3598.510
## 5 5258.575   39         5             1         1 3498.791
## 6 8430.130   38        13             5         0 6254.777

Separación del Dataset

Separamos el dataset en datos de entrenamiento (80%) y de prueba (20%).

El 80% del dataset se utiliza para entrenar el modelo, es decir, para ajustar los parámetros del modelo con los datos disponibles. Durante esta fase, el modelo aprende la relación entre las variables independientes y la variable dependiente. El 20% restante se utiliza para evaluar el modelo, es decir, para medir su desempeño en datos que no ha visto antes. Esto proporciona una estimación más precisa de cómo se comportará el modelo con datos nuevos y no vistos.

Modelo de Regresión Lineal Múltiple

Construimos y evaluamos un modelo de regresión lineal múltiple.

Interpretación del Resumen del Modelo:

  • Intercepto: Es el valor esperado de la variable dependiente (Consumo) cuando todas las variables independientes (Ingreso, Edad y Educación) son cero. Aunque puede no tener sentido práctico, es útil en la fórmula de predicción.

  • Coeficientes: Representan el cambio esperado en la variable dependiente por unidad de cambio en la variable independiente correspondiente, manteniendo las demás variables constantes.

    • Ingreso: El coeficiente para el ingreso es 0.53917. Esto significa que por cada unidad adicional de ingreso, el consumo aumenta en promedio en 0.53917 unidades, manteniendo las demás variables constantes. Este coeficiente es altamente significativo (p < 2e-16).

    • Edad: El coeficiente para la edad es 0.17623, pero no es estadísticamente significativo (p = 0.578), lo que sugiere que la edad no tiene un impacto significativo en el consumo en este modelo.

    • Educación: El coeficiente para la educación es 91.41481, lo que significa que por cada año adicional de educación, el consumo aumenta en promedio en 91.41481 unidades, manteniendo las demás variables constantes. Este coeficiente es altamente significativo (p < 2e-16).

  • Valor t y Pr(>|t|): Sirven para probar la hipótesis nula de que el coeficiente es igual a cero (sin efecto). Un valor p bajo (< 0.05) indica que es improbable que el coeficiente sea cero, sugiriendo que la variable independiente tiene un efecto significativo en la variable dependiente. En nuestro caso, todas las variables son significativas menos la edad.

  • R-cuadrado (R²): Indica la proporción de la variación en la variable dependiente explicada por las variables independientes. Un valor más alto de R² indica un mejor ajuste del modelo a los datos. En este caso, el 84.42% de la variación en el consumo es explicada por las variables independientes.

  • R-cuadrado Ajustado: Similar al R², pero ajustado por el número de variables en el modelo. Es útil para comparar modelos con diferentes números de variables independientes.

## 
## Call:
## lm(formula = Consumo ~ Ingreso + Edad + Educacion, data = trainData)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1949.53  -346.05    -0.66   349.60  2110.36 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -317.97520   24.36598 -13.050   <2e-16 ***
## Ingreso        0.53917    0.00294 183.366   <2e-16 ***
## Edad           0.17623    0.31642   0.557    0.578    
## Educacion     91.41481    0.94644  96.589   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 513.5 on 7996 degrees of freedom
## Multiple R-squared:  0.8442, Adjusted R-squared:  0.8442 
## F-statistic: 1.444e+04 on 3 and 7996 DF,  p-value: < 2.2e-16
## [1] "MSE Regresión Lineal: 261988.562382155"

El MSE (Error Cuadrático Medio) mide la media de los cuadrados de los errores (la diferencia entre los valores predichos y los valores reales). Un MSE más bajo indica un modelo más preciso. En este caso, el MSE para el modelo de regresión lineal es 261988.562382155. Esto significa que, en promedio, el cuadrado de la diferencia entre los valores predichos por el modelo y los valores reales es aproximadamente 261988.56 unidades cuadradas.

Evaluamos los supuestos de la regresión

Homocedasticidad

Se utiliza la prueba de Breusch-Pagan para evaluar la homocedasticidad. El test de Breusch-Pagan se emplea para detectar la presencia de heterocedasticidad en un modelo de regresión lineal. La heterocedasticidad se refiere a la situación en la que la varianza de los errores no es constante a lo largo de las observaciones. La constancia de la varianza (homocedasticidad) es uno de los supuestos fundamentales de la regresión lineal.

Hipótesis del Test de Breusch-Pagan:

  • Hipótesis nula (H0): No hay heterocedasticidad. Es decir, la varianza de los errores es constante.

  • Hipótesis alternativa (H1): Hay heterocedasticidad. Es decir, la varianza de los errores no es constante y varía con alguna variable independiente.

En nuestro caso, el valor p es 0.08, por lo tanto, no se rechaza la hipótesis nula, lo que nos indica que se cumple el supuesto de homocedasticidad.

¿Para qué sirve?

Detectar la heterocedasticidad es importante porque afecta la eficiencia de los estimadores en el modelo de regresión. En presencia de heterocedasticidad, los errores estándar de los coeficientes de regresión pueden estar sesgados, lo que afecta las pruebas de hipótesis y los intervalos de confianza.

Normalidad

Se evalúa la normalidad de los residuos mediante un histograma y un gráfico Q-Q.

El gráfico evalúa si los residuos siguen una distribución normal. Un histograma con forma de campana sugiere que los residuos se distribuyen normalmente, lo cual es un supuesto importante para la validez del modelo. En este caso, utilizamos un gráfico Q-Q que compara los cuantiles de los residuos con los cuantiles de una distribución normal. Si los residuos son normales, los puntos en el gráfico Q-Q deberían alinearse aproximadamente en una línea recta, lo que confirma que se cumple el supuesto de normalidad. Esta confirmación nos asegura que las inferencias estadísticas basadas en el modelo son fiables.

Autocorrelación

La prueba de Durbin-Watson se utiliza para detectar la autocorrelación de primer orden en los residuos de un modelo de regresión lineal. La autocorrelación de primer orden ocurre cuando los residuos de una observación están correlacionados con los residuos de la siguiente observación.

Hipótesis del Test de Durbin-Watson:

  • Hipótesis nula (H0): No hay autocorrelación de primer orden en los residuos.

  • Hipótesis alternativa (H1): Hay autocorrelación positiva de primer orden en los residuos.

dw_test <- dwtest(modeloregress)
print(dw_test)
## 
##  Durbin-Watson test
## 
## data:  modeloregress
## DW = 1.9998, p-value = 0.4973
## alternative hypothesis: true autocorrelation is greater than 0

La prueba de Durbin-Watson, con un valor de 1.9998 y un valor p de 0.4973, indica que no hay evidencia de autocorrelación de primer orden en los residuos del modelo de regresión. Esto sugiere que los residuos son independientes, cumpliendo con uno de los supuestos fundamentales del modelo de regresión lineal. Esta condición asegura la validez de las inferencias estadísticas y la precisión de las predicciones del modelo.

Linealidad

Se utilizan los gráficos de componentes y residuos (Partial Residual Plots) para evaluar la linealidad de las relaciones entre las variables independientes y la variable dependiente en un modelo de regresión lineal múltiple. La linealidad es uno de los supuestos clave de la regresión lineal, y estos gráficos ayudan a verificar si este supuesto se cumple.

En nuestro caso encontramos que:

  • Existe una relación lineal fuerte y positiva entre el ingreso y el consumo, como se esperaba. La línea morada en el gráfico muestra un buen ajuste a los datos.

  • Edad: La relación entre la edad y el consumo no es clara ni fuerte. La dispersión de los puntos sugiere que la edad no es un predictor significativo del consumo en este modelo.

  • Educación: Hay una relación lineal positiva entre el nivel de educación y el consumo. La pendiente positiva de la línea morada indica que a mayor nivel de educación, mayor es el consumo.

Todo esto es crucial porque asegura que el modelo de regresión lineal es adecuado para los datos. Si se observa una relación no lineal en estos gráficos, podría ser necesario transformar las variables o considerar modelos no lineales para capturar mejor la relación entre las variables independientes y la dependiente.

Modelo de Red Neuronal

Las redes neuronales son un enfoque poderoso para el modelado predictivo, especialmente cuando se manejan relaciones no lineales complejas entre variables. En este análisis, se ha utilizado una red neuronal para predecir el consumo basado en ingreso, edad y educación.

¿Para qué sirve una Red Neuronal?

Las redes neuronales sirven para:

  • Capturar relaciones no lineales: A diferencia de los modelos de regresión lineal, las redes neuronales pueden capturar relaciones no lineales complejas entre las variables.

  • Predicción precisa: Pueden mejorar la precisión de las predicciones en muchos contextos donde los métodos lineales fallan.

  • Generalización: Son capaces de generalizar bien a datos no vistos si se entrenan adecuadamente, evitando el sobreajuste.

¿Cómo funciona una Red Neuronal?

Estructura Básica:

Neuronas y Capas: Una red neuronal está compuesta por unidades básicas llamadas neuronas, organizadas en capas (entrada, ocultas y salida).

Pesos y Bias: Cada conexión entre neuronas tiene un peso asociado, y cada neurona tiene un sesgo (bias). Los pesos y sesgos determinan la fuerza y dirección de las conexiones.

Propagación hacia Adelante (Forward Propagation):

  1. Entrada: Los datos de entrada (ingreso, edad y educación) se alimentan a la capa de entrada.

  2. Cálculos en Capas Ocultas: Los datos se transforman mediante funciones de activación en las capas ocultas. En cada neurona, se calcula una combinación lineal de las entradas, se aplica una función de activación (como la función sigmoide o ReLU) y el resultado se pasa a la siguiente capa.

  3. Salida: La última capa produce la salida del modelo (predicción del consumo).

Entrenamiento de la Red:

  • Error y Retropropagación (Backpropagation): Se calcula el error entre las predicciones y los valores reales utilizando una función de pérdida (como el error cuadrático medio). Este error se propaga hacia atrás a través de la red, ajustando los pesos y sesgos para minimizar el error.

  • Optimización: Se utiliza un algoritmo de optimización (como el descenso de gradiente) para ajustar iterativamente los pesos y sesgos, reduciendo el error en cada iteración.

Predicción: Una vez entrenada, la red neuronal puede hacer predicciones en nuevos datos de entrada utilizando el modelo aprendido.

Implementación en R: A continuación se muestra cómo se ha implementado y evaluado la red neuronal en este análisis:

  • Normalización de los datos: Los datos de entrada se escalan para que estén en el mismo rango, mejorando la eficiencia del entrenamiento.
# Red Neuronal
f <- as.formula("Consumo ~ Ingreso + Edad + Educacion")
nn <- neuralnet(f, data = scaled_trainData, hidden = c(5, 3), linear.output = TRUE)
  • Fórmula: Define la relación entre las variables independientes y la dependiente.

  • Estructura: La red tiene dos capas ocultas con 5 y 3 neuronas respectivamente.

  • Salida Lineal: linear.output = TRUE indica que la salida es una combinación lineal de las entradas.

## [1] "MSE Red Neuronal: 240744.305820813"

Comparación de Modelos

MSE Red Neuronal: 240744.305820813 MSE Regresión Lineal: 261988.562382155

Al comparar este MSE con el MSE del modelo de regresión lineal múltiple , podemos ver que la red neuronal tiene un MSE más bajo. Esto sugiere que la red neuronal es más precisa en sus predicciones del consumo que el modelo de regresión lineal.

Predicción con Nuevos Datos

Realizamos predicciones con ambos modelos utilizando un nuevo conjunto de datos. Para esto primero, creamos un nuevo conjunto de datos con las variables de entrada que queremos utilizar para hacer las predicciones. En este caso, estamos utilizando un nuevo dato con un ingreso de 6000, una edad de 35 años y 16 años de educación.

## [1] "Predicción Regresión Lineal para el nuevo dato: 4385.8205722786"
## [1] "Predicción Red Neuronal para el nuevo dato: 4445.44232198108"

Ambas predicciones son similares, pero la red neuronal ha capturado ligeramente más complejidad y precisión en los datos, lo que se refleja en una predicción ligeramente diferente. Comparar estos dos valores nos da una idea de cómo diferentes modelos pueden abordar la misma tarea de predicción con distintos niveles de precisión y complejidad. ## Visualizacion de resultados

Los dos gráficos de dispersión siguientes muestran que la proximidad de los puntos a la línea roja (y = x) indica un buen ajuste del modelo. La dispersión alrededor de esta línea representa el error de predicción. Una alineación cercana sugiere un modelo preciso.

Los siguientes dos histogramas evalúan la distribución de los errores de predicción. Una distribución centrada alrededor de cero indica que los errores no están sesgados. La forma y dispersión de la distribución ayudan a evaluar la precisión y sesgo del modelo.

Conclusiones

En conclusión, hemos desarrollado y comparado dos enfoques de modelado para predecir el consumo: la regresión lineal múltiple y las redes neuronales. Ambos enfoques presentan ventajas y desventajas, pero en este caso específico, la red neuronal mostró un menor error cuadrático medio (MSE) en comparación con el modelo de regresión lineal. Esto sugiere que la red neuronal puede ser una mejor opción para predecir el consumo en este contexto particular. Sin embargo, es importante considerar la complejidad y el tiempo de computación adicional asociado con el entrenamiento de redes neuronales.

Además, se debe evaluar la interpretabilidad de los modelos, ya que los modelos de regresión lineal son más fáciles de interpretar que las redes neuronales. La selección del modelo final depende del balance entre precisión, interpretabilidad y recursos disponibles. En general, podemos observar que a partir de los errores cuadráticos medios (MSE), la red neuronal muestra un MSE menor que el modelo de regresión lineal, lo que sugiere que la red neuronal es más precisa en sus predicciones para este conjunto de datos.