Autor
Francisco Guijarro
Catedrático de Universidad (profesor funcionario a tiempo completo)
Universidad Politécnica de Valencia
En las redes neuronales artificiales se divide la muestra habitualmente en dos grupos: el grupo de entrenamiento y el grupo de test.
La propia ayuda de SPSS indica la diferencia entre ambos grupos:
La muestra de entrenamiento comprende los registros de datos utilizados para entrenar la red neuronal; cierto porcentaje de casos del conjunto de datos debe asignarse a la muestra de entrenamiento para poder obtener un modelo.
La muestra de prueba es un conjunto independiente de registros de datos que se utiliza para realizar un seguimiento de los errores durante el entrenamiento, con el fin de evitar un exceso de entrenamiento (sobreoptimización).
El entrenamiento de la red generalmente será más eficiente si la muestra de prueba es más pequeña que la muestra de entrenamiento.
Ejercicio
1Correr dos redes neuronales entre
log_valor_de_venta, con covariablelog_area_construida, y factor elestrato. La primera red con un porcentaje 70%-30% para entrenamiento-test (el que viene por defecto). La segunda red con un porcentaje 99%-1% para entrenamiento-test. Guardar los valores estimados y calcular su correlación con ellog_valor_de_venta.
Figura 1. Matriz de correlaciones entre el logaritmo del valor de venta, y los valores estimados para cada estructura de entrenamiento - test
\(~\)
Hasta el momento hemos introducido modelos sencillos de redes neuronales, donde intentamos estimar el valor de venta de los apartamentos a partir de una o dos variables explicativas.
Llega ahora el momento de completar nuestro modelo con nuevas variables, a fin de obtener estimaciones más ajustadas.
Para ello, seleccionaremos un grupo de variables después de haber realizado en un capítulo anterio un análisis preliminar de los datos. Ello nos permitió descartar algunas variables, ya que tenían muchos valores faltantes.
La variable dependiente será:
log_valor_de_ventaVamos a considerar las siguientes variables explicativas:
log_area_construida (covariable)
estrato (factor)
habitaciones (factor)
banyos (factor)
antiguedad (factor)
conjunto_cerrado (factor)
estudio_biblioteca (factor)
area_terraza_balcon (covariable)
parqueadero (factor)
parqueadero_cubierto (factor)
vigilancia (factor)
Ejercicio
2Correr un modelo de red neuronal perceptrón multicapa con las anteriores variables. Dejar que SPSS escoja automáticamente la arquitectura de la red. Guardar los valores pronosticados, así como ver la importancia de cada variable. ¿Qué variables son las más importantes y cuáles las menos importantes? ¿Qué correlación se obtiene entre
log_valor_de_ventay los valores estimados por la red neuronal? ¿A qué \(R^2\) correspondería esta correlación?
\(~\)
Figura 2. Importancia de las variables en el modelo de red neuronal
\(~\)
Figura 3. Correlación entre el logaritmo del valor de venta y los valores estimados por la red neuronal
\(~\)
Ejercicio
3Repetir el ejercicio anterior pero modificando la arquitectura de la red (dos capas, y/o diferente número de neuronas por capa). ¿Se aprecia algún cambio significativo en la importancia de las variables? ¿Se mejora la correlación?
\(~\)
En esta sección vamos a calcular dos métricas habitualmente empleadas para comparar el ajuste de los modelos:
Error cuadrático medio (MSE - Mean Square Error, RMSE - Root Mean Square Error)
Error porcentual absoluto medio (MAPE - Mean Absolute Percentage Error)
La fórmula empleada será la siguiente:
\(RMSE = \sqrt \frac{\sum_{i=1}^n \left(Valor\_estimado_i - Valor\_observado_i \right)^2}{n}\)
Es decir, es la raíz cuadrada de la suma del promedio de errores cuadráticos.
Para poder calcularlos a partir del modelo de la sección anterior, tendremos que calcular como paso previo la diferencia al cuadrado entre los valores estimados por la red y los valores observados.
El RMSE no es utilizado habitualmente como métrica por los valoradores por la dificultad en su interpretación, a diferencia de la siguiete métrica: el MAPE.
La fórmula de cálculo del MAPE es la siguiente:
\(MAPE = \frac{1}{n} \sum_{i=1}^n \mid \frac{Valor\_estimado_i - Valor\_observado_i}{Valor\_observado_i} \mid\)
Ejercicio
4Calcular el RMSE y el MAPE del modelo de red neuronal artificial de cualquiera de los dos últimos ejercicios.
Paso 1: Calcular \(valor\_estimado = 10 ** valor\_estimado\_red\)
Paso 2: Calcular una nueva variable, \(rmse = (valor\_estimado - valor\_de\_venta) ** 2\).
Paso 3: Calcular una nueva varaible, \(mape = abs(valor\_estimado - valor\_de\_venta)/valor\_de\_venta\)
Paso 4: Obtener los estadísticos descriptivos de las nuevas variables: media, desviación típica, varianza.
\(~\)
Figura 4. Descriptivos de las nuevas variables
\(~\)
El RMSE se obtiene a partir de los anteriores valores (no está calculado todavía).
Muy interesante el MAPE, que se sitúa entorno al 17%.
El valor del MAPE indicaría que en promedio estamos cometiendo un error promedio en la predicción del 17%. Estos valores nos pueden ayudar a detectar también valores atípicos.
Ejercicio
5Realizar un histograma y un diagrama de caja de la nueva variable MAPE, para comprobar si tenemos apartamentos con un valor del MAPE extraordinariamente alto. Representar en un gráfico de dispersión el valor de venta frente al MAPE.
Figura 5. Histograma del MAPE
\(~\)
Figura 6. Diagrama de caja del MAPE
\(~\)
Figura 7. Diagrama de dispersión del valor de venta frente al MAPE
\(~\)
La inclusión de apartamentos atípicos puede afectar negativamente a los resultados que obtengamos. Fundamentalmente por dos motivos:
Pueden hacer que el ajuste obtenido sea muy bajo; medido por el RMSE o el MAPE en los modelos de redes neuronales, o por el \(R^2\) en los modelos de regresión.
Pueden sesgar la importancia de las variables. Puede que algunas bajen su importancia y otras la suban, simplemente por la presencia de unos pocos atípicos.
En la siguiente figura podemos ver representado un gráfico de dispersión entre el valor de venta y el área construida. Hemos señalado 3 posibles valores atípicos, porque nos parecen que pueden representar valores extremos dentro del conjunto de datos que manejamos. Unos porque tienen una superficie muy alta, otros porque tienen la superficie muy pequeña. Aunque igualmente podríamos haber empleado el valor de venta para hacer esa distinción.
Figura 8. Diagrama de dispersión entre valor de venta y área construida
\(~\)
¿Qué ocurre si trazamos una recta que se acomode a la dispersión de los puntos? Pues en este caso, observamos como algunos valores que parecían atípicos ahora aparecen bastante cerca de la recta trazada. Esto es, que tienen un valor de venta que es acorde con su superficie, con lo que no parece razonable marcarlos como valores atípicos.
En este caso lo que hemos hecho es realizar el análisis de atípicos no de forma univariante (teniendo en cuenta una sola variable) sino de forma multivariante (dos variables, en este caso).
Figura 9. Diagrama de dispersión entre valor de venta y área construida
\(~\)
En lugar de tomar los valores extremos de una variable para identificar los apartamentos atípicos, vamos a emplear un estadístico que tiene en cuenta más de una variable y la relación entre las mismas para identificarlos: la distancia de Mahalanobis.
\(~\)
Ejercicio
6Identificar gráficamente posibles valores atípicos en la relación entre el precio de venta y el área privada (representarlas en un diagrama de dispersión).
\(~\)
Para obtener la distancia de Mahalanobis iremos a la opción Analizar -> Regresión -> Lineales, escogeremos valor_de_venta como variable dependiente y area_construida como variable independiente, y en el botón Guardar seleccionaremos distancia de Mahalanobis.
Esto hará que al correr la regresión aparezca una nueva variable al final de nuestros datos con el nombre MAH_1.
Ejercicio
7Representar un histograma de frecuencias de la variable MAH_1 y comentarlo.
Ejercicio
8Representar la variable MAH_1 en un diagrama de cajas, para poder identificar los apartamentos con valores de Mahalanobis más extremos.
Figura 10. Diagrama de caja para la variable distancia de Mahalanobis
\(~\)
Podemos ver que entre las observaciones con mayor distancia de Mahalanobis, y por lo tanto con relaciones valor de venta – área construida más atípicas, están los apartamentos 2.117, 800, 1.137, 1.959, etc.
Ejercicio
9Seleccionar únicamente los apartamentos con distancia Mahalanobis menor que 20, para poder llevar a cabo las siguientes comprobaciones.
\(~\) Si deseleccionamos los apartamentos con una distancia de Mahalanobis mayor que 20, y repetimos el gráfico de dispersión, podemos ver cómo ha afectado la eliminación de estos apartamentos al ajuste obtenido mediante una recta entre ambas variables.
Figura 11. Diagrama de dispersión entre valor de venta y área constuida una vez se han descartado algunos apartamentos sospechosos de ser atípicos
\(~\)
Este mismo criterio lo podemos aplicar, no sobre un par de variables, sino sobre un conjunto más amplio de variables que tenemos en el archivo:
Si volvemos a descartar los apartamentos con una distancia de Mahalanobis por encima de 20, veremos que se elimina un número importante de apartamentos atípicos.
De hecho, la correlación entre estas variables antes de considerar Mahalanobis era:
Figura 12. Correlación antes de aplicar Mahalanobis
\(~\)
Mientras que ahora se ha mejorado sensiblemente al eliminar aproximadamente 50 apartamentos:
Figura 13. Correlación despuéx de aplicar Mahalanobis
\(~\)
Ejercicio
10Aprovechando la opción de filtros que incorpora SPSS, excluir los atípicos y obtener la correlación entre valor de venta y área construida para los diferentes estratos.
Esto es, selecccionar únicamente los apartamentos de estrato 2, y calcular la correlación entre valor de venta y área construida. Posterioremente seleccionar los apartamentos de estrato 3 y repetir el análisis de correlación; y así sucesivamente.
¿Es la correlación igual de importante y significativa en todos ellos? ¿En qué estratos es la correlación más y menos significativa, respectivamente? Implicaciones prácticas: si la relación entre valor y área no es la misma en todos los estratos, en nuestra función de valuación el metro cuadrado tendrá un valor o peso distinto según el estrato en que se situe el apartamento.
Aquí un par de ejemplos (estratos 3 y 5):
Figura 14. Diagrama de dispersión entre valor_de_venta y area_construida, en estrato 3. Detalle del valor por metro cuadrado
\(~\)
Figura 15. Diagrama de dispersión entre valor_de_venta y area_construida, en estrato 3. Detalle del valor por metro cuadrado
\(~\)
Ejercicio
11Comentábamos en un subapartado de este capítulo que en la base de datos aparecían algunos apartamentos con un área constuida 0 o muy próxima a 0. Aunque la eliminación de atípicos ha eliminado la mayor parte de estos apartamentos, ¿queda todavía alguno? Deberíamos desechar aquellos con area_construida < 30.
\(~\)
Ejercicio
12Una vez deseleccionados apartamentos por Mahalanobis y por un área construida muy pequeña, correr de nuevo el modelo de red neuronal completo, comentando los resultados. ¿Se mejora el MAPE?
\(~\)
En el anterior apartado excluíamos los apartamentos que considerábamos atípicos, y caracterizábamos como tales aquellos apartamentos que tenían una distancia de Mahalanobis excepcionalmente grande.
Esto lo hacíamos con antelación a plantear ningún modelo de valoración. Es decir, la distancia de Mahalanobis se puede plantear como análisis previo a cualquier modelo de valoración, bien sea una red neuronal artificial o un modelo de regresión.
Lo que proponesmos en este apartado es identificar los apartamentos atípicos después de generar el modelo de valoración.
Para ello, seguimos los siguientes pasos:
Paso 1: Lanzamos un modelo de redes neuronales artificiales y nos guardamos los valores estimados por dicho modelo.
Paso 2: A partir de los valores estimados y del valor de venta de los apartamentos, calculamos el MAPE de cada uno de ellos.
Paso 3. Consideramos atípicos aquellos que sobrepasen un valor determinado de MAPE. Aquí podemos tomar diferentes enfoques, desde excluir los apartamentos que superen determinado umbral, como excluir un porcentaje determinado de apartamentos. En cualquier caso, el porcentaje de apartamentos que finalmente excluiremos de la muestra por considerarlos atípicos no deberá ser excesivamente grande. Por ejemplo, no tendría mucho sentido decir que eliminamos un 10% de apartamentos por considerarlos atípicos, ya que en la práctica profesional no suele darse la circunstancia de que un 10% de los datos sean erróneos o tengan precios muy alejados del valor de mercado.
Pas 4. Obtenemos el modelo de valoración de red neuronal a partir de los apartamentos restantes (excluyendo los atípicos).
Tras el último paso, podemos calcular de nuevo el MAPE para compararlo con el MAPE obtenido en el Paso 2.
Ejercicio
13Obtener un modelo de valoración por redes neuronales aplicando los pasos anteriores. Calcular el MAPE final.
\(~\)